Emil Lundmark
5c2f117a22
clk: imx: fix integer overflow in AV PLL round rate
...
Since 'parent_rate * mfn' may overflow 32 bits, the result should be
stored using 64 bits.
The problem was discovered when trying to set the rate of the audio PLL
(pll4_post_div) on an i.MX6Q. The desired rate was 196.608 MHz, but
the actual rate returned was 192.000570 MHz. The round rate function should
have been able to return 196.608 MHz, i.e., the desired rate.
Fixes: ba7f4f557e ("clk: imx: correct AV PLL rate formula")
Cc: Anson Huang <b20788@freescale.com>
Signed-off-by: Emil Lundmark <emil@limesaudio.com>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Acked-by: Shawn Guo <shawnguo@kernel.org>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
2016-11-01 17:07:54 -07:00
..
at91
clk: at91: Fix a return value in case of error
2016-10-20 16:37:56 -07:00
axis
clk: axis: Use new macro CLK_OF_DECLARE_DRIVER
2016-08-12 18:00:37 -07:00
axs10x
clk/axs10x: Add I2S PLL clock driver
2016-05-06 10:35:04 -07:00
bcm
clk: bcm2835: Clamp the PLL's requested rate to the hardware limits.
2016-10-17 15:34:36 -07:00
berlin
clk: berlin: Migrate to clk_hw based registration and OF APIs
2016-08-18 11:30:01 -07:00
h8300
clk: h8300: Migrate to clk_hw based registration APIs
2016-08-24 17:37:10 -07:00
hisilicon
clk: hi6220: use CLK_OF_DECLARE_DRIVER for sysctrl and mediactrl clock init
2016-10-17 15:42:58 -07:00
imx
clk: imx: fix integer overflow in AV PLL round rate
2016-11-01 17:07:54 -07:00
ingenic
clk: ingenic: Allow divider value to be divided
2016-05-12 14:48:25 -07:00
keystone
loongson1
CLK: Add Loongson1C clock support
2016-09-23 14:49:21 -07:00
mediatek
clk: mediatek: Add hardware dependency
2016-10-17 15:22:26 -07:00
meson
ARM: SoC: late DT updates for v4.9
2016-10-07 21:34:49 -07:00
microchip
clk: microchip: Initialize SOSC clock rate for PIC32MZDA.
2016-08-24 16:05:24 -07:00
mmp
clk: mmp: add missing header dependencies
2016-09-14 11:16:59 -07:00
mvebu
clk: mvebu: armada-37xx-periph: Fix the clock gate flag
2016-10-17 15:35:10 -07:00
mxs
clk: mxs: Remove CLK_IS_ROOT
2016-03-02 17:44:59 -08:00
nxp
clk: nxp: clk-lpc32xx: Unmap region obtained by of_iomap
2016-09-21 13:46:21 -07:00
pistachio
pxa
The clk changes for this release cycle are mostly dominated by
2016-03-23 06:06:45 -07:00
qcom
clk: Add USB3 PHY reset lines
2016-09-16 16:19:50 -07:00
renesas
clk/Renesas-MSTP: Use kmalloc_array() in cpg_mstp_clocks_init()
2016-09-16 16:13:09 -07:00
rockchip
The biggest addition is probably the special clock-type for ddr clock
2016-09-06 18:12:24 -07:00
samsung
clk/samsung: Use CLK_OF_DECLARE_DRIVER initialization method for CLKOUT
2016-10-27 17:26:54 -07:00
sirf
clk: sirf: Remove CLK_IS_ROOT
2016-04-15 16:50:04 -07:00
socfpga
clk: socfpga: allow for multiple parents on Arria10 periph clocks
2016-02-22 14:17:37 -08:00
spear
clk: spear: Remove CLK_IS_ROOT
2016-03-02 17:46:55 -08:00
st
drivers: clk: st: Handle clk synchronous mode for video clocks
2016-09-16 16:01:41 -07:00
sunxi
Merge branch 'clk-fixes' into clk-next
2016-09-08 12:57:10 -07:00
sunxi-ng
clk: sunxi-ng: Fix reset offset for the A23 and A33
2016-09-20 17:04:31 -07:00
tegra
clk: tegra: remove TEGRA_PLL_USE_LOCK for PLLD/PLLD2
2016-08-24 10:54:17 -07:00
ti
ARM: DT updates for v4.8
2016-08-01 18:37:45 -04:00
uniphier
clk: uniphier: rename MIO clock to SD clock for Pro5, PXs2, LD20 SoCs
2016-10-19 13:15:05 -07:00
ux500
ARM: ux500: use CLK_OF_DECLARE()
2016-07-12 11:24:07 +02:00
versatile
clk: versatile/icst: support for AP baseboard clocks
2016-08-29 11:38:51 -07:00
x86
clk: x86: Remove clkdev.h and clk.h includes
2016-03-03 11:27:26 -08:00
zte
clk: zx296718: register driver earlier with core_initcall
2016-09-23 14:42:13 -07:00
zynq
clk: zynq: Remove CLK_IS_ROOT
2016-03-02 17:48:26 -08:00
clk-asm9260.c
clk: asm9260: Migrate to clk_hw based registration and OF APIs
2016-08-24 16:08:33 -07:00
clk-axi-clkgen.c
clk: axi-clkgen: Migrate to clk_hw based OF and registration APIs
2016-08-24 16:10:31 -07:00
clk-axm5516.c
clk: axm5516: Migrate to clk_hw based OF and registration APIs
2016-08-24 16:11:07 -07:00
clk-cdce706.c
clk: cdce: Migrate to clk_hw based OF and registration APIs
2016-08-24 16:12:38 -07:00
clk-cdce925.c
clk: cdce925: Migrate to clk_hw based OF and provider APIs
2016-08-24 17:18:13 -07:00
clk-clps711x.c
clk: clps711x: Migrate to clk_hw based OF and registration APIs
2016-08-24 17:19:26 -07:00
clk-composite.c
Merge branch 'clk-hw-register' (early part) into clk-next
2016-04-21 14:47:18 -07:00
clk-conf.c
clk: clk-conf: Fix error message when clock isn't found
2016-07-08 11:27:58 -07:00
clk-cs2000-cp.c
clk: cs2000: Migrate to clk_hw based OF and registration APIs
2016-08-24 17:20:31 -07:00
clk-devres.c
clk-divider.c
clk: divider: Fix clk_divider_round_rate() to use clk_readl()
2016-08-12 17:33:09 -07:00
clk-efm32gg.c
clk: efm32gg: Migrate to clk_hw based OF and registration APIs
2016-08-24 17:21:48 -07:00
clk-fixed-factor.c
clk: fixed-factor: Remove export symbol on setup function
2016-08-15 15:08:03 -07:00
clk-fixed-rate.c
clk: fixed-rate: Remove export symbol on setup function
2016-08-15 15:08:06 -07:00
clk-fractional-divider.c
clk: fractional-divider: Add hw based registration APIs
2016-04-19 16:56:28 -07:00
clk-gate.c
clk: gate: Add hw based registration APIs
2016-04-19 16:55:01 -07:00
clk-gpio.c
clk: gpio: Add hw based registration APIs
2016-04-19 16:56:28 -07:00
clk-highbank.c
clk: highbank: Migrate to clk_hw based registration and OF APIs
2016-06-30 12:25:28 -07:00
clk-max77686.c
clk: max77686: fix number of clocks setup for clk_hw based registration
2016-10-17 15:31:59 -07:00
clk-mb86s7x.c
clk: mb86s7x: Migrate to clk_hw based OF and registration APIs
2016-08-24 17:23:01 -07:00
clk-moxart.c
clk: moxart: Migrate to clk_hw based OF and registration APIs
2016-08-24 17:23:20 -07:00
clk-multiplier.c
clk: multiplier: Prevent the multiplier from under / over flowing
2016-06-20 13:00:00 -07:00
clk-mux.c
clk: mux: Add hw based registration APIs
2016-04-19 16:55:01 -07:00
clk-nomadik.c
clk: nomadik: Migrate to clk_hw based OF and registration APIs
2016-06-30 12:25:53 -07:00
clk-nspire.c
clk: nspire: Migrate to clk_hw based OF and registration APIs
2016-08-24 17:23:21 -07:00
clk-oxnas.c
clk: oxnas: make it explicitly non-modular
2016-07-06 15:20:33 -07:00
clk-palmas.c
clk: palmas: Migrate to clk_hw based OF and registration APIs
2016-08-24 17:23:23 -07:00
clk-pwm.c
clk: pwm: Migrate to clk_hw based OF and registration APIs
2016-08-24 17:23:27 -07:00
clk-qoriq.c
clk: qoriq: fix a register offset error
2016-08-18 16:52:24 -07:00
clk-rk808.c
clk: rk808: Pass the right pointer as the get_hw context
2016-09-09 11:07:07 -07:00
clk-s2mps11.c
clk: s2mps11: Migrate to clk_hw based OF and registration APIs
2016-06-30 12:29:14 -07:00
clk-scpi.c
clk: scpi: Migrate to clk_hw based OF and registration APIs
2016-08-24 17:29:58 -07:00
clk-si514.c
clk: si514: Migrate to clk_hw based OF and registration APIs
2016-08-24 17:29:59 -07:00
clk-si570.c
clk: si570: Migrate to clk_hw based OF and registration APIs
2016-08-24 17:30:01 -07:00
clk-si5351.c
clk: si5351: Migrate to clk_hw based OF and registration APIs
2016-08-24 17:30:00 -07:00
clk-si5351.h
clk-stm32f4.c
clk: stm32f4: fix error handling
2016-07-06 17:55:31 -07:00
clk-tango4.c
clk: tango4: improve clkgen driver
2016-04-15 17:16:06 -07:00
clk-twl6040.c
clk: twl6040: Migrate to clk_hw based registration APIs
2016-08-24 17:34:11 -07:00
clk-u300.c
clk: u300: Migrate to clk_hw based registration APIs
2016-06-30 12:26:18 -07:00
clk-vt8500.c
clk: vt8500: Migrate to clk_hw based registration APIs
2016-08-24 17:35:48 -07:00
clk-wm831x.c
clk: wm831x: Migrate to clk_hw based registration APIs
2016-08-24 17:35:53 -07:00
clk-xgene.c
clk: xgene: Don't call __pa on ioremaped address
2016-10-28 11:03:47 -07:00
clk.c
clk: core: Force setting the phase delay when no change
2016-08-30 14:52:26 -07:00
clk.h
clkdev.c
treewide: replace obsolete _refok by __ref
2016-08-02 17:31:41 -04:00
Kconfig
clk: uniphier: add core support code for UniPhier clock driver
2016-09-16 16:31:33 -07:00
Makefile
clk: Loongson1: Refactor Loongson1 clock
2016-09-23 14:48:56 -07:00