alistair23-linux/drivers/clk
Archit Taneja 811a498e5e clk: qcom: Fix pre-divider usage for pixel RCG
The clk_rcg_pixel_set_rate clk_op sets up the pre-divider by reading
its current value from the NS register.

Using the pre-divider wasn't really intended when creating these ops.
The pixel RCG was only intended to achieve fractional multiplication
provided in the pixel_table array. Leaving the pre-divider to the
existing register value results in a wrong pixel clock when the
bootloader sets up the display. This was left unidentified because
the IFC6410 Plus board on which this was verified didn't have a
bootloader that configured the display.

Don't set the RCG pre-divider in freq_tbl to the existing NS register
value. Force it to 1 and only use the M/N counter to achieve the desired
fractional multiplication.

Cc: Vinay Simha <vinaysimha@inforcecomputing.com>
Signed-off-by: Archit Taneja <architt@codeaurora.org>
Tested-by: John Stultz <john.stultz@linaro.org>
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
2016-02-29 12:57:06 -08:00
..
at91 clk: at91: Remove impossible checks for of_clk_get_parent_count() 2016-02-26 16:01:32 -08:00
bcm clk: bcm2835: added missing clock register definitions 2016-02-25 16:07:59 -08:00
berlin
h8300 clk: h8300: Properly cast to __iomem pointer 2016-02-26 16:01:32 -08:00
hisilicon
imx clk: move the common clock's to_clk_*(_hw) macros to clk-provider.h 2016-01-29 12:59:50 -08:00
ingenic
keystone
mediatek clk: mediatek: Fix memory leak on clock init fail 2016-01-29 13:02:51 -08:00
meson clk: meson: Fix meson_clk_register_clks() signature type mismatch 2016-02-08 14:22:44 -08:00
mmp clk: mmp: stop using platform headers 2015-12-01 21:44:22 +01:00
mvebu clk: mvebu: Move corediv config to mvebu config 2016-02-25 15:05:53 -08:00
mxs clk: move the common clock's to_clk_*(_hw) macros to clk-provider.h 2016-01-29 12:59:50 -08:00
nxp clk: lpc32xx: add HCLK PLL output configuration 2016-02-10 12:45:16 -08:00
pistachio
pxa ARM: pxa: make more mach/*.h files local 2015-12-01 21:52:50 +01:00
qcom clk: qcom: Fix pre-divider usage for pixel RCG 2016-02-29 12:57:06 -08:00
rockchip Introduction of a factor type and a variant containing a gate 2016-02-15 11:59:45 -08:00
samsung Mostly correction of errors in the exynos5433 SoC 2016-02-25 15:18:12 -08:00
shmobile clk: shmobile: Free 'clock' on error path 2016-02-25 12:25:31 -08:00
sirf
socfpga clk: socfpga: allow for multiple parents on Arria10 periph clocks 2016-02-22 14:17:37 -08:00
spear
st clk: st: Remove impossible check for of_clk_get_parent_count() < 0 2016-02-26 16:01:32 -08:00
sunxi clk: sunxi: Use proper type for of_clk_get_parent_count() return value 2016-02-26 16:01:32 -08:00
tegra clk: tegra: super: Fix sparse warnings for functions not declared as static 2016-02-02 15:49:34 +01:00
ti clk: ti: Update for of_clk_get_parent_count() returning unsigned int 2016-02-26 16:01:32 -08:00
ux500
versatile clk: versatile: sp810: support reentrance 2016-02-25 15:03:28 -08:00
x86
zte
zynq
clk-asm9260.c
clk-axi-clkgen.c clk: axi-clkgen: Remove sometimes impossible check 2016-01-29 17:11:02 -08:00
clk-axm5516.c
clk-cdce706.c
clk-cdce925.c
clk-clps711x.c
clk-composite.c clk: move the common clock's to_clk_*(_hw) macros to clk-provider.h 2016-01-29 12:59:50 -08:00
clk-conf.c
clk-cs2000-cp.c clk: add CS2000 Fractional-N driver 2015-11-30 16:33:38 -08:00
clk-devres.c
clk-divider.c clk: optimize the divider walk in clk_divider_bestdiv() 2016-01-29 16:45:32 -08:00
clk-efm32gg.c
clk-fixed-factor.c clk: add clk_unregister_fixed_factor() 2016-01-29 16:35:49 -08:00
clk-fixed-rate.c clk: add clk_unregister_fixed_rate() 2016-01-29 16:37:24 -08:00
clk-fractional-divider.c clk: move the common clock's to_clk_*(_hw) macros to clk-provider.h 2016-01-29 12:59:50 -08:00
clk-gate.c clk: move the common clock's to_clk_*(_hw) macros to clk-provider.h 2016-01-29 12:59:50 -08:00
clk-gpio.c clk: gpio: Remove impossible check for of_clk_get_parent_count() < 0 2016-02-26 16:01:32 -08:00
clk-highbank.c
clk-ls1x.c
clk-max-gen.c
clk-max-gen.h
clk-max77686.c
clk-max77802.c
clk-mb86s7x.c
clk-moxart.c
clk-multiplier.c clk: move the common clock's to_clk_*(_hw) macros to clk-provider.h 2016-01-29 12:59:50 -08:00
clk-mux.c clk: move the common clock's to_clk_*(_hw) macros to clk-provider.h 2016-01-29 12:59:50 -08:00
clk-nomadik.c
clk-nspire.c
clk-palmas.c clk: palmas: fix a possible NULL dereference 2016-01-29 16:57:09 -08:00
clk-pwm.c
clk-qoriq.c
clk-rk808.c
clk-s2mps11.c clk: s2mps11: remove redundant code 2016-01-29 12:47:22 -08:00
clk-scpi.c clk: scpi: Fix checking return value of platform_device_register_simple() 2016-01-29 12:07:59 -08:00
clk-si514.c
clk-si570.c
clk-si5351.c
clk-si5351.h
clk-stm32f4.c
clk-tango4.c
clk-twl6040.c
clk-u300.c
clk-vt8500.c clk: vt8500: don't return possibly uninitialized data 2016-02-02 11:53:17 -08:00
clk-wm831x.c
clk-xgene.c clk: xgene: Remove return from void function 2016-01-29 12:57:54 -08:00
clk.c clk: Make of_clk_get_parent_count() return unsigned ints 2016-02-26 16:01:32 -08:00
clk.h
clkdev.c
Kconfig clk: Get rid of HAVE_MACH_CLKDEV 2016-02-25 14:41:20 -08:00
Makefile clk: shmobile: Remove ARCH_SHMOBILE_MULTI 2016-02-25 15:44:09 -08:00