linux/drivers/clk/qcom
Archit Taneja 4138de5469 clk: qcom: fix RCG M/N counter configuration
commit 0b21503dbb upstream.

Currently, a RCG's M/N counter (used for fraction division) is
set to either 'bypass' (counter disabled) or 'dual edge' (counter
enabled) based on whether the corresponding rcg struct has a mnd
field specified and a non-zero N.

In the case where M and N are the same value, the M/N counter is
still enabled by code even though no division takes place.
Leaving the RCG in such a state can result in improper behavior.
This was observed with the DSI pixel clock RCG when M and N were
both set to 1.

Add an additional check (M != N) to enable the M/N counter only
when it's needed for fraction division.

Signed-off-by: Archit Taneja <architt@codeaurora.org>
Fixes: bcd61c0f53 (clk: qcom: Add support for root clock
generators (RCGs))
Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Signed-off-by: Luis Henriques <luis.henriques@canonical.com>
History 2015-05-06 11:33:01 +01:00
..
clk-branch.c clk: qcom: Add support for branches/gate clocks 2014-01-16 12:01:01 -08:00
clk-branch.h clk: qcom: Add support for branches/gate clocks 2014-01-16 12:01:01 -08:00
clk-pll.c clk: qcom: Add support for phase locked loops (PLLs) 2014-01-16 12:00:59 -08:00
clk-pll.h clk: qcom: Add support for phase locked loops (PLLs) 2014-01-16 12:00:59 -08:00
clk-rcg.c clk: qcom: Add support for root clock generators (RCGs) 2014-01-16 12:01:00 -08:00
clk-rcg.h clk: qcom: Support display RCG clocks 2014-05-29 09:30:23 -07:00
clk-rcg2.c clk: qcom: fix RCG M/N counter configuration 2015-05-06 11:33:01 +01:00
clk-regmap.c clk: qcom: Add a regmap type clock struct 2014-01-16 12:00:58 -08:00
clk-regmap.h clk: qcom: Add a regmap type clock struct 2014-01-16 12:00:58 -08:00
common.c clk: qcom: Fix PLL rate configurations 2014-10-05 13:41:12 -07:00
common.h clk: qcom: Fix PLL rate configurations 2014-10-05 13:41:12 -07:00
gcc-msm8660.c clk: qcom: Fix msm8660 GCC probe 2014-05-16 16:53:07 -07:00
gcc-msm8960.c clk: qcom: Various fixes for MSM8960's global clock controller 2014-04-30 11:54:16 -07:00
gcc-msm8974.c clk: qcom: Support msm8974pro global clock control hardware 2014-05-29 09:30:24 -07:00
Kconfig clk: qcom: Add basic support for APQ8064 global clock controller clocks 2014-04-30 11:54:16 -07:00
Makefile clk: qcom: Consolidate common probe code 2014-04-30 11:51:51 -07:00
mmcc-msm8960.c clk: qcom: mdp_lut_clk is a child of mdp_src 2014-10-05 13:41:12 -07:00
mmcc-msm8974.c clk: qcom: Fix PLL rate configurations 2014-10-05 13:41:12 -07:00
reset.c clk: qcom: Add reset controller support 2014-01-16 12:01:02 -08:00
reset.h clk: qcom: Add reset controller support 2014-01-16 12:01:02 -08:00