linux_dsm_epyc7002/drivers/clk
Zdenko Pulitika 7937c6c57e clk: pistachio: Fix PLL rate calculation in integer mode
.recalc_rate callback for the fractional PLL doesn't take operating
mode into account when calculating PLL rate. This results in
the incorrect PLL rates when PLL is operating in integer mode.

Operating mode of fractional PLL is based on the value of the
fractional divider. Currently it assumes that the PLL will always
be configured in fractional mode which may not be
the case. This may result in the wrong output frequency.

Also vco was calculated based on the current operating mode which
makes no sense because .set_rate is setting operating mode. Instead,
vco should be calculated using PLL settings that are about to be set.

Fixes: 43049b0c83f17("CLK: Pistachio: Add PLL driver")
Cc: <stable@vger.kernel.org> # 4.1
Reviewed-by: Andrew Bresticker <abrestic@chromium.org>
Signed-off-by: Zdenko Pulitika <zdenko.pulitika@imgtec.com>
Signed-off-by: Govindraj Raja <govindraj.raja@imgtec.com>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
2015-08-26 11:34:41 -07:00
..
at91 clk: at91: Convert to clk_hw based provider APIs 2015-08-24 16:48:47 -07:00
bcm clk: bcm: Convert to clk_hw based provider APIs 2015-08-24 16:48:48 -07:00
berlin clk: Convert __clk_get_name(hw->clk) to clk_hw_get_name(hw) 2015-08-24 16:49:12 -07:00
h8300 Merge branch 'cleanup-clk-h-includes' into clk-next 2015-07-28 11:59:09 -07:00
hisilicon clk: Hi6220: add stub clock driver 2015-08-24 16:49:10 -07:00
imx Merge tag 'imx-clk-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into clk-next 2015-08-12 00:59:00 -07:00
ingenic clk: ingenic: Include clk.h 2015-07-20 11:11:36 -07:00
keystone Merge branch 'cleanup-clk-h-includes' into clk-next 2015-07-28 11:59:09 -07:00
mediatek Merge branch 'cleanup-clk-h-includes' into clk-next 2015-07-28 11:59:09 -07:00
meson
mmp clk: mmp: Convert to clk_hw based provider APIs 2015-08-24 16:48:49 -07:00
mvebu clk: mvebu: Convert to clk_hw based provider APIs 2015-08-24 16:48:50 -07:00
mxs clk: mxs: Include clk.h in C files that use it 2015-07-20 11:11:07 -07:00
nxp clk: nxp: Remove clk.h include 2015-07-20 11:11:08 -07:00
pistachio clk: pistachio: Fix PLL rate calculation in integer mode 2015-08-26 11:34:41 -07:00
pxa clk: pxa: fix core frequency reporting unit 2015-07-28 11:59:14 -07:00
qcom clk: qcom: Fix MSM8916 prng clock enable bit 2015-08-25 11:29:21 -07:00
rockchip clk: rockchip: register pll mux before pll itself 2015-08-24 16:49:15 -07:00
samsung clk: Convert __clk_get_name(hw->clk) to clk_hw_get_name(hw) 2015-08-24 16:49:12 -07:00
shmobile clk: Convert __clk_get_name(hw->clk) to clk_hw_get_name(hw) 2015-08-24 16:49:12 -07:00
sirf clk: atlas7: fix pll missed divide NR in fraction mode 2015-08-24 16:49:08 -07:00
socfpga clk: socfpga: Add a second parent option for the dbg_base_clk 2015-08-24 16:49:03 -07:00
spear clk: spear: Convert to clk_hw based provider APIs 2015-08-24 16:48:55 -07:00
st clk: Convert __clk_get_name(hw->clk) to clk_hw_get_name(hw) 2015-08-24 16:49:12 -07:00
sunxi clk: sunxi: Convert to clk_hw based provider APIs 2015-08-24 16:48:56 -07:00
tegra clk: tegra: Fix some static checker problems 2015-08-25 16:03:42 -07:00
ti clk: Convert __clk_get_name(hw->clk) to clk_hw_get_name(hw) 2015-08-24 16:49:12 -07:00
ux500 clk/ARM: move Ux500 PRCC bases to the device tree 2015-08-24 16:49:14 -07:00
versatile drivers/clk: appropriate __init annotation for const data 2015-08-24 16:59:32 -07:00
x86
zte clk: zx: Constify parent names in clock init data 2015-07-28 11:59:39 -07:00
zynq clk: zynq: Include clk.h 2015-07-20 11:11:29 -07:00
clk-asm9260.c
clk-axi-clkgen.c
clk-axm5516.c
clk-bcm2835.c clk: bcm2835: Drop the fixed sys_pclk. 2015-08-12 00:59:20 -07:00
clk-cdce706.c clk: Convert __clk_get_flags() to clk_hw_get_flags() 2015-08-24 16:48:44 -07:00
clk-cdce925.c clk: cdce925: Include clk.h 2015-07-20 11:11:32 -07:00
clk-clps711x.c
clk-composite.c clk: Convert basic types to clk_hw based provider APIs 2015-08-24 16:48:48 -07:00
clk-conf.c
clk-devres.c
clk-divider.c clk: Convert basic types to clk_hw based provider APIs 2015-08-24 16:48:48 -07:00
clk-efm32gg.c
clk-fixed-factor.c clk: Convert basic types to clk_hw based provider APIs 2015-08-24 16:48:48 -07:00
clk-fixed-rate.c
clk-fractional-divider.c clk: basic-type: Silence warnings about lock imbalances 2015-07-28 11:59:28 -07:00
clk-gate.c clk: basic-type: Silence warnings about lock imbalances 2015-07-28 11:59:28 -07:00
clk-gpio.c clk: gpio: Mark parent_names array const 2015-07-28 11:59:24 -07:00
clk-highbank.c clk: highbank: Include clk.h 2015-07-20 11:11:22 -07:00
clk-ls1x.c
clk-max77686.c
clk-max77802.c
clk-max-gen.c
clk-max-gen.h
clk-mb86s7x.c
clk-moxart.c clk: moxart: Include clk.h 2015-07-20 11:11:33 -07:00
clk-mux.c clk: Replace __clk_get_num_parents with clk_hw_get_num_parents() 2015-08-24 16:48:43 -07:00
clk-nomadik.c
clk-nspire.c
clk-palmas.c
clk-pwm.c
clk-qoriq.c
clk-rk808.c
clk-s2mps11.c clk: s2mps11: Use kcalloc instead of kzalloc for array allocation 2015-07-28 11:59:32 -07:00
clk-si570.c clk: si570: Include clk.h 2015-07-20 11:11:35 -07:00
clk-si5351.c clk: si5351: Convert __clk_get_name() to clk_hw_get_name() 2015-08-24 16:49:01 -07:00
clk-si5351.h
clk-stm32f4.c clk: stm32f4: Convert to clk_hw based provider APIs 2015-08-24 16:48:51 -07:00
clk-twl6040.c Merge branch 'cleanup-clk-h-includes' into clk-next 2015-07-28 11:59:09 -07:00
clk-u300.c
clk-vt8500.c
clk-wm831x.c
clk-xgene.c clk: Convert __clk_get_name(hw->clk) to clk_hw_get_name(hw) 2015-08-24 16:49:12 -07:00
clk.c clk: remove duplicated code with __clk_set_parent_after 2015-08-24 16:49:13 -07:00
clk.h
clkdev.c
Kconfig
Makefile