]> git.itanic.dy.fi Git - linux-stable/commit
arm64: dts: imx8-ss-dma: fix pwm lpcg indices
authorFrank Li <Frank.Li@nxp.com>
Mon, 1 Apr 2024 22:25:06 +0000 (18:25 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 17 Apr 2024 09:23:38 +0000 (11:23 +0200)
commit40b50cb4bc008397d062a0bacef37699e16f7aaf
tree3c64c535fa1ec99f5cb957380a292387bf3c7141
parentea044f32ee5a01ba87c22a22bbe440b728ec888f
arm64: dts: imx8-ss-dma: fix pwm lpcg indices

commit 9055d87bce7276234173fa90e9702af31b3f5353 upstream.

adma_pwm_lpcg: clock-controller@5a590000 {
...  col1 col2
clocks = <&clk IMX_SC_R_LCD_0_PWM_0 IMX_SC_PM_CLK_PER>,// 0   0
 <&dma_ipg_clk>;                               // 1   4
clock-indices = <IMX_LPCG_CLK_0>, <IMX_LPCG_CLK_4>;
        ...
};

Col1: index, which existing dts try to get.
Col2: actual index in lpcg driver.

adma_pwm: pwm@5a190000 {
...
clocks = <&adma_pwm_lpcg 1>, <&adma_pwm_lpcg 0>;
 ^^      ^^
Should be
clocks = <&adma_pwm_lpcg IMX_LPCG_CLK_4>,
 <&adma_pwm_lpcg IMX_LPCG_CLK_0>;
};

Arg0 will be divided by 4 in lcpg driver, so pwm will get IMX_SC_PM_CLK_PER
by <&adma_pwm_lpcg 1>, <&adma_pwm_lpcg 0>. Although function can work, code
logic is wrong. Fix it by use correct indices.

Cc: stable@vger.kernel.org
Fixes: f1d6a6b991ef ("arm64: dts: imx8qxp: add adma_pwm in adma")
Signed-off-by: Frank Li <Frank.Li@nxp.com>
Signed-off-by: Shawn Guo <shawnguo@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/arm64/boot/dts/freescale/imx8-ss-dma.dtsi