2023-05-05 14:40:16

by Aidan MacDonald

[permalink] [raw]
Subject: [PATCH v2] mips: dts: ingenic: Remove unnecessary AIC clocks

The "ext" and "pll half" clocks don't belong in the DT. They are
not consumed directly by the AIC and are only used as the parent
clocks of the "i2s" clock. An operating system should be able to
figure out that information itself because it presumably knows the
layout of the clock tree.

Removing these from the DT should be safe from a compatibility
point of view because the jz4740-i2s driver in Linux does not, and
never did depend on them.

Signed-off-by: Aidan MacDonald <[email protected]>
Link: https://lore.kernel.org/all/[email protected]/
---
This is a resend of patch 2/3 from a previous submission which is linked above.

v1->v2: updated commit message

arch/mips/boot/dts/ingenic/jz4725b.dtsi | 7 ++-----
arch/mips/boot/dts/ingenic/jz4740.dtsi | 7 ++-----
arch/mips/boot/dts/ingenic/jz4770.dtsi | 5 ++---
3 files changed, 6 insertions(+), 13 deletions(-)

diff --git a/arch/mips/boot/dts/ingenic/jz4725b.dtsi b/arch/mips/boot/dts/ingenic/jz4725b.dtsi
index e9e48022f631..acbbe8c4664c 100644
--- a/arch/mips/boot/dts/ingenic/jz4725b.dtsi
+++ b/arch/mips/boot/dts/ingenic/jz4725b.dtsi
@@ -198,11 +198,8 @@ aic: audio-controller@10020000 {

#sound-dai-cells = <0>;

- clocks = <&cgu JZ4725B_CLK_AIC>,
- <&cgu JZ4725B_CLK_I2S>,
- <&cgu JZ4725B_CLK_EXT>,
- <&cgu JZ4725B_CLK_PLL_HALF>;
- clock-names = "aic", "i2s", "ext", "pll half";
+ clocks = <&cgu JZ4725B_CLK_AIC>, <&cgu JZ4725B_CLK_I2S>;
+ clock-names = "aic", "i2s";

interrupt-parent = <&intc>;
interrupts = <10>;
diff --git a/arch/mips/boot/dts/ingenic/jz4740.dtsi b/arch/mips/boot/dts/ingenic/jz4740.dtsi
index 7f76cba03a08..bdd6f4d82ec9 100644
--- a/arch/mips/boot/dts/ingenic/jz4740.dtsi
+++ b/arch/mips/boot/dts/ingenic/jz4740.dtsi
@@ -192,11 +192,8 @@ aic: audio-controller@10020000 {
interrupt-parent = <&intc>;
interrupts = <18>;

- clocks = <&cgu JZ4740_CLK_AIC>,
- <&cgu JZ4740_CLK_I2S>,
- <&cgu JZ4740_CLK_EXT>,
- <&cgu JZ4740_CLK_PLL_HALF>;
- clock-names = "aic", "i2s", "ext", "pll half";
+ clocks = <&cgu JZ4740_CLK_AIC>, <&cgu JZ4740_CLK_I2S>;
+ clock-names = "aic", "i2s";

dmas = <&dmac 25 0xffffffff>, <&dmac 24 0xffffffff>;
dma-names = "rx", "tx";
diff --git a/arch/mips/boot/dts/ingenic/jz4770.dtsi b/arch/mips/boot/dts/ingenic/jz4770.dtsi
index bda0a3a86ed5..9c0099919db7 100644
--- a/arch/mips/boot/dts/ingenic/jz4770.dtsi
+++ b/arch/mips/boot/dts/ingenic/jz4770.dtsi
@@ -238,9 +238,8 @@ aic: audio-controller@10020000 {

#sound-dai-cells = <0>;

- clocks = <&cgu JZ4770_CLK_AIC>, <&cgu JZ4770_CLK_I2S>,
- <&cgu JZ4770_CLK_EXT>, <&cgu JZ4770_CLK_PLL0>;
- clock-names = "aic", "i2s", "ext", "pll half";
+ clocks = <&cgu JZ4770_CLK_AIC>, <&cgu JZ4770_CLK_I2S>;
+ clock-names = "aic", "i2s";

interrupt-parent = <&intc>;
interrupts = <34>;
--
2.39.2


2023-05-05 17:08:43

by Paul Cercueil

[permalink] [raw]
Subject: Re: [PATCH v2] mips: dts: ingenic: Remove unnecessary AIC clocks

Hi Aidan,

Le vendredi 05 mai 2023 à 15:24 +0100, Aidan MacDonald a écrit :
> The "ext" and "pll half" clocks don't belong in the DT. They are
> not consumed directly by the AIC and are only used as the parent
> clocks of the "i2s" clock. An operating system should be able to
> figure out that information itself because it presumably knows the
> layout of the clock tree.
>
> Removing these from the DT should be safe from a compatibility
> point of view because the jz4740-i2s driver in Linux does not, and
> never did depend on them.

Agreed.

> Signed-off-by: Aidan MacDonald <[email protected]>
> Link:
> https://lore.kernel.org/all/[email protected]/

Reviewed-by: Paul Cercueil <[email protected]>

Cheers,
-Paul

> ---
> This is a resend of patch 2/3 from a previous submission which is
> linked above.
>
> v1->v2: updated commit message
>
>  arch/mips/boot/dts/ingenic/jz4725b.dtsi | 7 ++-----
>  arch/mips/boot/dts/ingenic/jz4740.dtsi  | 7 ++-----
>  arch/mips/boot/dts/ingenic/jz4770.dtsi  | 5 ++---
>  3 files changed, 6 insertions(+), 13 deletions(-)
>
> diff --git a/arch/mips/boot/dts/ingenic/jz4725b.dtsi
> b/arch/mips/boot/dts/ingenic/jz4725b.dtsi
> index e9e48022f631..acbbe8c4664c 100644
> --- a/arch/mips/boot/dts/ingenic/jz4725b.dtsi
> +++ b/arch/mips/boot/dts/ingenic/jz4725b.dtsi
> @@ -198,11 +198,8 @@ aic: audio-controller@10020000 {
>  
>                 #sound-dai-cells = <0>;
>  
> -               clocks = <&cgu JZ4725B_CLK_AIC>,
> -                        <&cgu JZ4725B_CLK_I2S>,
> -                        <&cgu JZ4725B_CLK_EXT>,
> -                        <&cgu JZ4725B_CLK_PLL_HALF>;
> -               clock-names = "aic", "i2s", "ext", "pll half";
> +               clocks = <&cgu JZ4725B_CLK_AIC>, <&cgu
> JZ4725B_CLK_I2S>;
> +               clock-names = "aic", "i2s";
>  
>                 interrupt-parent = <&intc>;
>                 interrupts = <10>;
> diff --git a/arch/mips/boot/dts/ingenic/jz4740.dtsi
> b/arch/mips/boot/dts/ingenic/jz4740.dtsi
> index 7f76cba03a08..bdd6f4d82ec9 100644
> --- a/arch/mips/boot/dts/ingenic/jz4740.dtsi
> +++ b/arch/mips/boot/dts/ingenic/jz4740.dtsi
> @@ -192,11 +192,8 @@ aic: audio-controller@10020000 {
>                 interrupt-parent = <&intc>;
>                 interrupts = <18>;
>  
> -               clocks = <&cgu JZ4740_CLK_AIC>,
> -                        <&cgu JZ4740_CLK_I2S>,
> -                        <&cgu JZ4740_CLK_EXT>,
> -                        <&cgu JZ4740_CLK_PLL_HALF>;
> -               clock-names = "aic", "i2s", "ext", "pll half";
> +               clocks = <&cgu JZ4740_CLK_AIC>, <&cgu
> JZ4740_CLK_I2S>;
> +               clock-names = "aic", "i2s";
>  
>                 dmas = <&dmac 25 0xffffffff>, <&dmac 24 0xffffffff>;
>                 dma-names = "rx", "tx";
> diff --git a/arch/mips/boot/dts/ingenic/jz4770.dtsi
> b/arch/mips/boot/dts/ingenic/jz4770.dtsi
> index bda0a3a86ed5..9c0099919db7 100644
> --- a/arch/mips/boot/dts/ingenic/jz4770.dtsi
> +++ b/arch/mips/boot/dts/ingenic/jz4770.dtsi
> @@ -238,9 +238,8 @@ aic: audio-controller@10020000 {
>  
>                 #sound-dai-cells = <0>;
>  
> -               clocks = <&cgu JZ4770_CLK_AIC>, <&cgu
> JZ4770_CLK_I2S>,
> -                        <&cgu JZ4770_CLK_EXT>, <&cgu
> JZ4770_CLK_PLL0>;
> -               clock-names = "aic", "i2s", "ext", "pll half";
> +               clocks = <&cgu JZ4770_CLK_AIC>, <&cgu
> JZ4770_CLK_I2S>;
> +               clock-names = "aic", "i2s";
>  
>                 interrupt-parent = <&intc>;
>                 interrupts = <34>;

2023-05-23 09:30:17

by Thomas Bogendoerfer

[permalink] [raw]
Subject: Re: [PATCH v2] mips: dts: ingenic: Remove unnecessary AIC clocks

On Fri, May 05, 2023 at 03:24:00PM +0100, Aidan MacDonald wrote:
> The "ext" and "pll half" clocks don't belong in the DT. They are
> not consumed directly by the AIC and are only used as the parent
> clocks of the "i2s" clock. An operating system should be able to
> figure out that information itself because it presumably knows the
> layout of the clock tree.
>
> Removing these from the DT should be safe from a compatibility
> point of view because the jz4740-i2s driver in Linux does not, and
> never did depend on them.
>
> Signed-off-by: Aidan MacDonald <[email protected]>
> Link: https://lore.kernel.org/all/[email protected]/
> ---
> This is a resend of patch 2/3 from a previous submission which is linked above.
>
> v1->v2: updated commit message
>
> arch/mips/boot/dts/ingenic/jz4725b.dtsi | 7 ++-----
> arch/mips/boot/dts/ingenic/jz4740.dtsi | 7 ++-----
> arch/mips/boot/dts/ingenic/jz4770.dtsi | 5 ++---
> 3 files changed, 6 insertions(+), 13 deletions(-)

applied to mips-next.

Thomas.

--
Crap can work. Given enough thrust pigs will fly, but it's not necessarily a
good idea. [ RFC1925, 2.3 ]