2024-01-24 18:47:49

by Andrew Davis

[permalink] [raw]
Subject: [PATCH 01/11] arm64: dts: ti: k3-am64: Convert serdes_ln_ctrl node into reg-mux

This removes a dependency on the parent node being a syscon node.
Convert from mmio-mux to reg-mux adjusting node name and properties
as needed.

Signed-off-by: Andrew Davis <[email protected]>
---
arch/arm64/boot/dts/ti/k3-am64-main.dtsi | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/arch/arm64/boot/dts/ti/k3-am64-main.dtsi b/arch/arm64/boot/dts/ti/k3-am64-main.dtsi
index e348114f42e01..34c45f83eb64d 100644
--- a/arch/arm64/boot/dts/ti/k3-am64-main.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am64-main.dtsi
@@ -51,10 +51,11 @@ chipid@14 {
reg = <0x00000014 0x4>;
};

- serdes_ln_ctrl: mux-controller {
- compatible = "mmio-mux";
+ serdes_ln_ctrl: mux-controller@4080 {
+ compatible = "reg-mux";
+ reg = <0x4080 0x4>;
#mux-control-cells = <1>;
- mux-reg-masks = <0x4080 0x3>; /* SERDES0 lane0 select */
+ mux-reg-masks = <0x0 0x3>; /* SERDES0 lane0 select */
};

phy_gmii_sel: phy@4044 {
--
2.39.2



2024-01-24 18:48:20

by Andrew Davis

[permalink] [raw]
Subject: [PATCH 04/11] arm64: dts: ti: k3-j7200: Convert usb_serdes_mux node into reg-mux

This removes a dependency on the parent node being a syscon node.
Convert from mmio-mux to reg-mux adjusting node name and properties
as needed.

Signed-off-by: Andrew Davis <[email protected]>
---
arch/arm64/boot/dts/ti/k3-j7200-main.dtsi | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/arch/arm64/boot/dts/ti/k3-j7200-main.dtsi b/arch/arm64/boot/dts/ti/k3-j7200-main.dtsi
index 50d1f173bde31..e9898d52d83a7 100644
--- a/arch/arm64/boot/dts/ti/k3-j7200-main.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-j7200-main.dtsi
@@ -48,9 +48,10 @@ cpsw0_phy_gmii_sel: phy@4044 {
};

usb_serdes_mux: mux-controller@4000 {
- compatible = "mmio-mux";
+ compatible = "reg-mux";
+ reg = <0x4000 0x4>;
#mux-control-cells = <1>;
- mux-reg-masks = <0x4000 0x8000000>; /* USB0 to SERDES0 lane 1/3 mux */
+ mux-reg-masks = <0x0 0x8000000>; /* USB0 to SERDES0 lane 1/3 mux */
};
};

--
2.39.2


2024-01-24 18:48:20

by Andrew Davis

[permalink] [raw]
Subject: [PATCH 03/11] arm64: dts: ti: k3-j7200: Convert serdes_ln_ctrl node into reg-mux

This removes a dependency on the parent node being a syscon node.
Convert from mmio-mux to reg-mux adjusting node name and properties
as needed.

Signed-off-by: Andrew Davis <[email protected]>
---
arch/arm64/boot/dts/ti/k3-j7200-main.dtsi | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/arch/arm64/boot/dts/ti/k3-j7200-main.dtsi b/arch/arm64/boot/dts/ti/k3-j7200-main.dtsi
index da67bf8fe703e..50d1f173bde31 100644
--- a/arch/arm64/boot/dts/ti/k3-j7200-main.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-j7200-main.dtsi
@@ -33,10 +33,11 @@ scm_conf: scm-conf@100000 {
ranges = <0x00 0x00 0x00100000 0x1c000>;

serdes_ln_ctrl: mux-controller@4080 {
- compatible = "mmio-mux";
+ compatible = "reg-mux";
+ reg = <0x4080 0x20>;
#mux-control-cells = <1>;
- mux-reg-masks = <0x4080 0x3>, <0x4084 0x3>, /* SERDES0 lane0/1 select */
- <0x4088 0x3>, <0x408c 0x3>; /* SERDES0 lane2/3 select */
+ mux-reg-masks = <0x0 0x3>, <0x4 0x3>, /* SERDES0 lane0/1 select */
+ <0x8 0x3>, <0xc 0x3>; /* SERDES0 lane2/3 select */
};

cpsw0_phy_gmii_sel: phy@4044 {
--
2.39.2


2024-01-24 18:48:46

by Andrew Davis

[permalink] [raw]
Subject: [PATCH 02/11] arm64: dts: ti: k3-am65: Convert serdes_mux node into reg-mux

This removes a dependency on the parent node being a syscon node.
Convert from mmio-mux to reg-mux adjusting node name and properties
as needed.

Signed-off-by: Andrew Davis <[email protected]>
---
arch/arm64/boot/dts/ti/k3-am65-main.dtsi | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/arch/arm64/boot/dts/ti/k3-am65-main.dtsi b/arch/arm64/boot/dts/ti/k3-am65-main.dtsi
index fcea544656360..a18edd34283c7 100644
--- a/arch/arm64/boot/dts/ti/k3-am65-main.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am65-main.dtsi
@@ -492,11 +492,12 @@ serdes1_clk: clock@4090 {
reg = <0x00004090 0x4>;
};

- serdes_mux: mux-controller {
- compatible = "mmio-mux";
+ serdes_mux: mux-controller@4080 {
+ compatible = "reg-mux";
+ reg = <0x4080 0x14>;
#mux-control-cells = <1>;
- mux-reg-masks = <0x4080 0x3>, /* SERDES0 lane select */
- <0x4090 0x3>; /* SERDES1 lane select */
+ mux-reg-masks = <0x0 0x3>, /* SERDES0 lane select */
+ <0x10 0x3>; /* SERDES1 lane select */
};

dss_oldi_io_ctrl: dss-oldi-io-ctrl@41e0 {
--
2.39.2


2024-01-24 18:49:08

by Andrew Davis

[permalink] [raw]
Subject: [PATCH 07/11] arm64: dts: ti: k3-j721s2: Convert usb_serdes_mux node into reg-mux

This removes a dependency on the parent node being a syscon node.
Convert from mmio-mux to reg-mux adjusting node name and properties
as needed.

Signed-off-by: Andrew Davis <[email protected]>
---
arch/arm64/boot/dts/ti/k3-j721s2-main.dtsi | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/arm64/boot/dts/ti/k3-j721s2-main.dtsi b/arch/arm64/boot/dts/ti/k3-j721s2-main.dtsi
index ea7f2b2ab165d..d985250d7caf4 100644
--- a/arch/arm64/boot/dts/ti/k3-j721s2-main.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-j721s2-main.dtsi
@@ -45,7 +45,7 @@ scm_conf: syscon@104000 {
ranges = <0x00 0x00 0x00104000 0x18000>;

usb_serdes_mux: mux-controller@0 {
- compatible = "mmio-mux";
+ compatible = "reg-mux";
reg = <0x0 0x4>;
#mux-control-cells = <1>;
mux-reg-masks = <0x0 0x8000000>; /* USB0 to SERDES0 lane 1/3 mux */
--
2.39.2


2024-01-24 18:49:13

by Andrew Davis

[permalink] [raw]
Subject: [PATCH 06/11] arm64: dts: ti: k3-j721e: Convert usb_serdes_mux node into reg-mux

This removes a dependency on the parent node being a syscon node.
Convert from mmio-mux to reg-mux adjusting node name and properties
as needed.

Signed-off-by: Andrew Davis <[email protected]>
---
arch/arm64/boot/dts/ti/k3-j721e-main.dtsi | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/arch/arm64/boot/dts/ti/k3-j721e-main.dtsi b/arch/arm64/boot/dts/ti/k3-j721e-main.dtsi
index c168bfbd303da..db3855ae798a2 100644
--- a/arch/arm64/boot/dts/ti/k3-j721e-main.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-j721e-main.dtsi
@@ -70,10 +70,11 @@ cpsw0_phy_gmii_sel: phy@4044 {
};

usb_serdes_mux: mux-controller@4000 {
- compatible = "mmio-mux";
+ compatible = "reg-mux";
+ reg = <0x4000 0x20>;
#mux-control-cells = <1>;
- mux-reg-masks = <0x4000 0x8000000>, /* USB0 to SERDES0/3 mux */
- <0x4010 0x8000000>; /* USB1 to SERDES1/2 mux */
+ mux-reg-masks = <0x0 0x8000000>, /* USB0 to SERDES0/3 mux */
+ <0x10 0x8000000>; /* USB1 to SERDES1/2 mux */
};

ehrpwm_tbclk: clock-controller@4140 {
--
2.39.2


2024-01-24 18:49:14

by Andrew Davis

[permalink] [raw]
Subject: [PATCH 08/11] arm64: dts: ti: k3-j721s2: Convert serdes_ln_ctrl node into reg-mux

This removes a dependency on the parent node being a syscon node.
Convert from mmio-mux to reg-mux adjusting node name and properties
as needed.

Signed-off-by: Andrew Davis <[email protected]>
---
arch/arm64/boot/dts/ti/k3-j721s2-main.dtsi | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/arch/arm64/boot/dts/ti/k3-j721s2-main.dtsi b/arch/arm64/boot/dts/ti/k3-j721s2-main.dtsi
index d985250d7caf4..2abfc35abeb87 100644
--- a/arch/arm64/boot/dts/ti/k3-j721s2-main.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-j721s2-main.dtsi
@@ -58,11 +58,11 @@ phy_gmii_sel_cpsw: phy@34 {
};

serdes_ln_ctrl: mux-controller@80 {
- compatible = "mmio-mux";
+ compatible = "reg-mux";
reg = <0x80 0x10>;
#mux-control-cells = <1>;
- mux-reg-masks = <0x80 0x3>, <0x84 0x3>, /* SERDES0 lane0/1 select */
- <0x88 0x3>, <0x8c 0x3>; /* SERDES0 lane2/3 select */
+ mux-reg-masks = <0x0 0x3>, <0x4 0x3>, /* SERDES0 lane0/1 select */
+ <0x8 0x3>, <0xc 0x3>; /* SERDES0 lane2/3 select */
};

ehrpwm_tbclk: clock-controller@140 {
--
2.39.2


2024-01-24 18:49:16

by Andrew Davis

[permalink] [raw]
Subject: [PATCH 05/11] arm64: dts: ti: k3-j721e: Convert serdes_ln_ctrl node into reg-mux

This removes a dependency on the parent node being a syscon node.
Convert from mmio-mux to reg-mux adjusting node name and properties
as needed.

Signed-off-by: Andrew Davis <[email protected]>
---
arch/arm64/boot/dts/ti/k3-j721e-main.dtsi | 16 ++++++++--------
1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/arch/arm64/boot/dts/ti/k3-j721e-main.dtsi b/arch/arm64/boot/dts/ti/k3-j721e-main.dtsi
index 2569b4c08ffb8..c168bfbd303da 100644
--- a/arch/arm64/boot/dts/ti/k3-j721e-main.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-j721e-main.dtsi
@@ -45,15 +45,15 @@ scm_conf: scm-conf@100000 {
ranges = <0x0 0x0 0x00100000 0x1c000>;

serdes_ln_ctrl: mux-controller@4080 {
- compatible = "mmio-mux";
- reg = <0x00004080 0x50>;
+ compatible = "reg-mux";
+ reg = <0x4080 0x50>;
#mux-control-cells = <1>;
- mux-reg-masks = <0x4080 0x3>, <0x4084 0x3>, /* SERDES0 lane0/1 select */
- <0x4090 0x3>, <0x4094 0x3>, /* SERDES1 lane0/1 select */
- <0x40a0 0x3>, <0x40a4 0x3>, /* SERDES2 lane0/1 select */
- <0x40b0 0x3>, <0x40b4 0x3>, /* SERDES3 lane0/1 select */
- <0x40c0 0x3>, <0x40c4 0x3>, <0x40c8 0x3>, <0x40cc 0x3>;
- /* SERDES4 lane0/1/2/3 select */
+ mux-reg-masks = <0x0 0x3>, <0x4 0x3>, /* SERDES0 lane0/1 select */
+ <0x10 0x3>, <0x14 0x3>, /* SERDES1 lane0/1 select */
+ <0x20 0x3>, <0x24 0x3>, /* SERDES2 lane0/1 select */
+ <0x30 0x3>, <0x34 0x3>, /* SERDES3 lane0/1 select */
+ <0x40 0x3>, <0x44 0x3>, /* SERDES4 lane0/1 select */
+ <0x48 0x3>, <0x4c 0x3>; /* SERDES4 lane2/3 select */
idle-states = <J721E_SERDES0_LANE0_PCIE0_LANE0>, <J721E_SERDES0_LANE1_PCIE0_LANE1>,
<J721E_SERDES1_LANE0_PCIE1_LANE0>, <J721E_SERDES1_LANE1_PCIE1_LANE1>,
<J721E_SERDES2_LANE0_PCIE2_LANE0>, <J721E_SERDES2_LANE1_PCIE2_LANE1>,
--
2.39.2


2024-01-24 18:49:19

by Andrew Davis

[permalink] [raw]
Subject: [PATCH 10/11] arm64: dts: ti: k3-am62: Make the main_conf node a simple-bus

The main_conf node does not need to be a syscon, so change to
"simple-bus". This removes a DTS check warning.

Signed-off-by: Andrew Davis <[email protected]>
---
arch/arm64/boot/dts/ti/k3-am62-main.dtsi | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/arch/arm64/boot/dts/ti/k3-am62-main.dtsi b/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
index 464b7565d085d..bbb26e9c1a021 100644
--- a/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
@@ -42,9 +42,8 @@ gic_its: msi-controller@1820000 {
};
};

- main_conf: syscon@100000 {
- compatible = "syscon", "simple-mfd";
- reg = <0x00 0x00100000 0x00 0x20000>;
+ main_conf: bus@100000 {
+ compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <1>;
ranges = <0x0 0x00 0x00100000 0x20000>;
--
2.39.2


2024-01-24 18:49:50

by Andrew Davis

[permalink] [raw]
Subject: [PATCH 09/11] arm64: dts: ti: k3-j7200: Make the FSS node a simple-bus

To do this we convert hbmc-mux to "reg-mux", then the FSS node
does not need to be a syscon, so change to "simple-bus". This
removes a DTS check warning.

Signed-off-by: Andrew Davis <[email protected]>
---
arch/arm64/boot/dts/ti/k3-j7200-mcu-wakeup.dtsi | 11 ++++++-----
1 file changed, 6 insertions(+), 5 deletions(-)

diff --git a/arch/arm64/boot/dts/ti/k3-j7200-mcu-wakeup.dtsi b/arch/arm64/boot/dts/ti/k3-j7200-mcu-wakeup.dtsi
index 60b26374ae0cc..d501bd5f02248 100644
--- a/arch/arm64/boot/dts/ti/k3-j7200-mcu-wakeup.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-j7200-mcu-wakeup.dtsi
@@ -518,17 +518,18 @@ mcu_spi2: spi@40320000 {
status = "disabled";
};

- fss: syscon@47000000 {
- compatible = "syscon", "simple-mfd";
+ fss: bus@47000000 {
+ compatible = "simple-bus";
reg = <0x00 0x47000000 0x00 0x100>;
#address-cells = <2>;
#size-cells = <2>;
ranges;

- hbmc_mux: hbmc-mux {
- compatible = "mmio-mux";
+ hbmc_mux: mux-controller@47000004 {
+ compatible = "reg-mux";
+ reg = <0x00 0x47000004 0x00 0x4>;
#mux-control-cells = <1>;
- mux-reg-masks = <0x4 0x2>; /* HBMC select */
+ mux-reg-masks = <0x0 0x2>; /* HBMC select */
};

hbmc: hyperbus@47034000 {
--
2.39.2


2024-01-24 18:50:00

by Andrew Davis

[permalink] [raw]
Subject: [PATCH 11/11] arm64: dts: ti: k3-am62a: Make the main_conf node a simple-bus

The main_conf node does not need to be a syscon, so change to
"simple-bus". This removes a DTS check warning.

Signed-off-by: Andrew Davis <[email protected]>
---
arch/arm64/boot/dts/ti/k3-am62a-main.dtsi | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)

diff --git a/arch/arm64/boot/dts/ti/k3-am62a-main.dtsi b/arch/arm64/boot/dts/ti/k3-am62a-main.dtsi
index f0b8c9ab14593..eb3b6679e612c 100644
--- a/arch/arm64/boot/dts/ti/k3-am62a-main.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am62a-main.dtsi
@@ -42,9 +42,8 @@ gic_its: msi-controller@1820000 {
};
};

- main_conf: syscon@100000 {
- compatible = "ti,j721e-system-controller", "syscon", "simple-mfd";
- reg = <0x00 0x00100000 0x00 0x20000>;
+ main_conf: bus@100000 {
+ compatible = "simple-bus";
#address-cells = <1>;
#size-cells = <1>;
ranges = <0x00 0x00 0x00100000 0x20000>;
--
2.39.2


2024-01-30 18:53:23

by Andrew Davis

[permalink] [raw]
Subject: Re: [PATCH 02/11] arm64: dts: ti: k3-am65: Convert serdes_mux node into reg-mux

On 1/24/24 12:47 PM, Andrew Davis wrote:
> This removes a dependency on the parent node being a syscon node.
> Convert from mmio-mux to reg-mux adjusting node name and properties
> as needed.
>
> Signed-off-by: Andrew Davis <[email protected]>
> ---

This one patch is not needed, I'm going to fix this for AM65 in
a slightly different way. The rest of the series is still fine.

Andrew

> arch/arm64/boot/dts/ti/k3-am65-main.dtsi | 9 +++++----
> 1 file changed, 5 insertions(+), 4 deletions(-)
>
> diff --git a/arch/arm64/boot/dts/ti/k3-am65-main.dtsi b/arch/arm64/boot/dts/ti/k3-am65-main.dtsi
> index fcea544656360..a18edd34283c7 100644
> --- a/arch/arm64/boot/dts/ti/k3-am65-main.dtsi
> +++ b/arch/arm64/boot/dts/ti/k3-am65-main.dtsi
> @@ -492,11 +492,12 @@ serdes1_clk: clock@4090 {
> reg = <0x00004090 0x4>;
> };
>
> - serdes_mux: mux-controller {
> - compatible = "mmio-mux";
> + serdes_mux: mux-controller@4080 {
> + compatible = "reg-mux";
> + reg = <0x4080 0x14>;
> #mux-control-cells = <1>;
> - mux-reg-masks = <0x4080 0x3>, /* SERDES0 lane select */
> - <0x4090 0x3>; /* SERDES1 lane select */
> + mux-reg-masks = <0x0 0x3>, /* SERDES0 lane select */
> + <0x10 0x3>; /* SERDES1 lane select */
> };
>
> dss_oldi_io_ctrl: dss-oldi-io-ctrl@41e0 {

2024-02-15 09:48:07

by Vignesh Raghavendra

[permalink] [raw]
Subject: Re: (subset) [PATCH 01/11] arm64: dts: ti: k3-am64: Convert serdes_ln_ctrl node into reg-mux

Hi Andrew Davis,

On Wed, 24 Jan 2024 12:47:12 -0600, Andrew Davis wrote:
> This removes a dependency on the parent node being a syscon node.
> Convert from mmio-mux to reg-mux adjusting node name and properties
> as needed.
>
>

Dropping 2/11 as indicated. Rest applied.

I have applied the following to branch ti-k3-dts-next on [1].
Thank you!

[01/11] arm64: dts: ti: k3-am64: Convert serdes_ln_ctrl node into reg-mux
commit: 91e93fdae6bab038f5913f766a9640371f9c630a
[02/11] arm64: dts: tidd: k3-am65: Convert serdes_mux node into reg-mux
(no commit info)
[03/11] arm64: dts: ti: k3-j7200: Convert serdes_ln_ctrl node into reg-mux
commit: 80d835defb8c9c696be35d86cb7949e5e7c0f1f6
[04/11] arm64: dts: ti: k3-j7200: Convert usb_serdes_mux node into reg-mux
commit: 6b52caf93289a0f0f9980b7d21a5ae376c2afe8e
[05/11] arm64: dts: ti: k3-j721e: Convert serdes_ln_ctrl node into reg-mux
commit: 4cd6d56c3c81e31aba3d69a6cf872770e8945dc7
[06/11] arm64: dts: ti: k3-j721e: Convert usb_serdes_mux node into reg-mux
commit: 62b19a64e121e9ce081d18a77436a846585b9c7e
[07/11] arm64: dts: ti: k3-j721s2: Convert usb_serdes_mux node into reg-mux
commit: 6b3a4da3ed71473126036c363261c5f1271e8e51
[08/11] arm64: dts: ti: k3-j721s2: Convert serdes_ln_ctrl node into reg-mux
commit: 0985bf59052fbc932ff05ea760c8d177f390f20c
[09/11] arm64: dts: ti: k3-j7200: Make the FSS node a simple-bus
commit: 3829ee48a4c44c28e397859c8df1d9e2ed7c5b3b
[10/11] arm64: dts: ti: k3-am62: Make the main_conf node a simple-bus
commit: 3f6de97ee917ddabea8dcfab315fa6806cf7f230
[11/11] arm64: dts: ti: k3-am62a: Make the main_conf node a simple-bus
commit: ad163bb36344f0432d8aee48553a17997b926c29

All being well this means that it will be integrated into the linux-next
tree (usually sometime in the next 24 hours) and sent up the chain during
the next merge window (or sooner if it is a relevant bug fix), however if
problems are discovered then the patch may be dropped or reverted.

You may get further e-mails resulting from automated or manual testing
and review of the tree, please engage with people reporting problems and
send followup patches addressing any issues that are reported if needed.

If any updates are required or you are submitting further changes they
should be sent as incremental updates against current git, existing
patches will not be replaced.

Please add any relevant lists and maintainers to the CCs when replying
to this mail.

[1] https://git.kernel.org/pub/scm/linux/kernel/git/ti/linux.git
--
Vignesh