2023-03-11 13:13:58

by Nishanth Menon

[permalink] [raw]
Subject: [PATCH 0/2] dt-bindings: pinctrl: ti-k3: Move k3.h to arch specific

Hi,

As discussed in [1], lets do some basic cleanups and move pin ctrl
definitions to arch folder.

Base: next-20230310

Nishanth Menon (2):
dt-bindings: net: ti: k3-am654-cpsw-nuss: Drop pinmux header
dt-bindings: pinctrl: Move k3.h to arch

.../devicetree/bindings/net/ti,k3-am654-cpsw-nuss.yaml | 1 -
MAINTAINERS | 1 -
arch/arm64/boot/dts/ti/k3-am62.dtsi | 3 ++-
arch/arm64/boot/dts/ti/k3-am62a.dtsi | 3 ++-
arch/arm64/boot/dts/ti/k3-am64.dtsi | 3 ++-
arch/arm64/boot/dts/ti/k3-am65.dtsi | 3 ++-
arch/arm64/boot/dts/ti/k3-j7200.dtsi | 3 ++-
arch/arm64/boot/dts/ti/k3-j721e.dtsi | 3 ++-
arch/arm64/boot/dts/ti/k3-j721s2.dtsi | 3 ++-
arch/arm64/boot/dts/ti/k3-j784s4.dtsi | 3 ++-
.../pinctrl/k3.h => arch/arm64/boot/dts/ti/k3-pinctrl.h | 6 +++---
11 files changed, 19 insertions(+), 13 deletions(-)
rename include/dt-bindings/pinctrl/k3.h => arch/arm64/boot/dts/ti/k3-pinctrl.h (94%)

[1] https://lore.kernel.org/all/[email protected]/
--
2.37.2



2023-03-11 13:14:02

by Nishanth Menon

[permalink] [raw]
Subject: [PATCH 2/2] dt-bindings: pinctrl: Move k3.h to arch

Move the k3 pinctrl definition to arch dts folder.

While at this, fixup MAINTAINERS and header guard macro to better
reflect the changes.

Suggested-by: Krzysztof Kozlowski <[email protected]>
Suggested-by: Linus Walleij <[email protected]>
Link: https://lore.kernel.org/all/[email protected]/
Signed-off-by: Nishanth Menon <[email protected]>
---

There is no specific case I can think of at the moment to create a
pinctrl.dtsi for the SoCs.. So, unlike other SoCs, I had not done that
in the series, if folks have a better opinion about this, please let us
discuss.

MAINTAINERS | 1 -
arch/arm64/boot/dts/ti/k3-am62.dtsi | 3 ++-
arch/arm64/boot/dts/ti/k3-am62a.dtsi | 3 ++-
arch/arm64/boot/dts/ti/k3-am64.dtsi | 3 ++-
arch/arm64/boot/dts/ti/k3-am65.dtsi | 3 ++-
arch/arm64/boot/dts/ti/k3-j7200.dtsi | 3 ++-
arch/arm64/boot/dts/ti/k3-j721e.dtsi | 3 ++-
arch/arm64/boot/dts/ti/k3-j721s2.dtsi | 3 ++-
arch/arm64/boot/dts/ti/k3-j784s4.dtsi | 3 ++-
.../pinctrl/k3.h => arch/arm64/boot/dts/ti/k3-pinctrl.h | 6 +++---
10 files changed, 19 insertions(+), 12 deletions(-)
rename include/dt-bindings/pinctrl/k3.h => arch/arm64/boot/dts/ti/k3-pinctrl.h (94%)

diff --git a/MAINTAINERS b/MAINTAINERS
index 2892858cb040..442ac29e1fce 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -2933,7 +2933,6 @@ F: Documentation/devicetree/bindings/arm/ti/k3.yaml
F: Documentation/devicetree/bindings/hwinfo/ti,k3-socinfo.yaml
F: arch/arm64/boot/dts/ti/Makefile
F: arch/arm64/boot/dts/ti/k3-*
-F: include/dt-bindings/pinctrl/k3.h

ARM/TOSHIBA VISCONTI ARCHITECTURE
M: Nobuhiro Iwamatsu <[email protected]>
diff --git a/arch/arm64/boot/dts/ti/k3-am62.dtsi b/arch/arm64/boot/dts/ti/k3-am62.dtsi
index 37fcbe7a3c33..a401f5225243 100644
--- a/arch/arm64/boot/dts/ti/k3-am62.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am62.dtsi
@@ -8,9 +8,10 @@
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
-#include <dt-bindings/pinctrl/k3.h>
#include <dt-bindings/soc/ti,sci_pm_domain.h>

+#include "k3-pinctrl.h"
+
/ {
model = "Texas Instruments K3 AM625 SoC";
compatible = "ti,am625";
diff --git a/arch/arm64/boot/dts/ti/k3-am62a.dtsi b/arch/arm64/boot/dts/ti/k3-am62a.dtsi
index 6eb87c3f9f3c..fe60c9ce21e3 100644
--- a/arch/arm64/boot/dts/ti/k3-am62a.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am62a.dtsi
@@ -8,9 +8,10 @@
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
-#include <dt-bindings/pinctrl/k3.h>
#include <dt-bindings/soc/ti,sci_pm_domain.h>

+#include "k3-pinctrl.h"
+
/ {
model = "Texas Instruments K3 AM62A SoC";
compatible = "ti,am62a7";
diff --git a/arch/arm64/boot/dts/ti/k3-am64.dtsi b/arch/arm64/boot/dts/ti/k3-am64.dtsi
index c858725133af..60fe95b48312 100644
--- a/arch/arm64/boot/dts/ti/k3-am64.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am64.dtsi
@@ -8,9 +8,10 @@
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
-#include <dt-bindings/pinctrl/k3.h>
#include <dt-bindings/soc/ti,sci_pm_domain.h>

+#include "k3-pinctrl.h"
+
/ {
model = "Texas Instruments K3 AM642 SoC";
compatible = "ti,am642";
diff --git a/arch/arm64/boot/dts/ti/k3-am65.dtsi b/arch/arm64/boot/dts/ti/k3-am65.dtsi
index c538a0bf3cdd..3093ef6b9b23 100644
--- a/arch/arm64/boot/dts/ti/k3-am65.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-am65.dtsi
@@ -8,9 +8,10 @@
#include <dt-bindings/gpio/gpio.h>
#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
-#include <dt-bindings/pinctrl/k3.h>
#include <dt-bindings/soc/ti,sci_pm_domain.h>

+#include "k3-pinctrl.h"
+
/ {
model = "Texas Instruments K3 AM654 SoC";
compatible = "ti,am654";
diff --git a/arch/arm64/boot/dts/ti/k3-j7200.dtsi b/arch/arm64/boot/dts/ti/k3-j7200.dtsi
index d74f86b0f622..bbe380c72a7e 100644
--- a/arch/arm64/boot/dts/ti/k3-j7200.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-j7200.dtsi
@@ -7,9 +7,10 @@

#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
-#include <dt-bindings/pinctrl/k3.h>
#include <dt-bindings/soc/ti,sci_pm_domain.h>

+#include "k3-pinctrl.h"
+
/ {
model = "Texas Instruments K3 J7200 SoC";
compatible = "ti,j7200";
diff --git a/arch/arm64/boot/dts/ti/k3-j721e.dtsi b/arch/arm64/boot/dts/ti/k3-j721e.dtsi
index 6975cae644d9..4c7d5f9d61a8 100644
--- a/arch/arm64/boot/dts/ti/k3-j721e.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-j721e.dtsi
@@ -7,9 +7,10 @@

#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
-#include <dt-bindings/pinctrl/k3.h>
#include <dt-bindings/soc/ti,sci_pm_domain.h>

+#include "k3-pinctrl.h"
+
/ {
model = "Texas Instruments K3 J721E SoC";
compatible = "ti,j721e";
diff --git a/arch/arm64/boot/dts/ti/k3-j721s2.dtsi b/arch/arm64/boot/dts/ti/k3-j721s2.dtsi
index 78295ee0fee5..376924726f1f 100644
--- a/arch/arm64/boot/dts/ti/k3-j721s2.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-j721s2.dtsi
@@ -10,9 +10,10 @@

#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
-#include <dt-bindings/pinctrl/k3.h>
#include <dt-bindings/soc/ti,sci_pm_domain.h>

+#include "k3-pinctrl.h"
+
/ {

model = "Texas Instruments K3 J721S2 SoC";
diff --git a/arch/arm64/boot/dts/ti/k3-j784s4.dtsi b/arch/arm64/boot/dts/ti/k3-j784s4.dtsi
index 3eb0d0568959..2e03d84da7d2 100644
--- a/arch/arm64/boot/dts/ti/k3-j784s4.dtsi
+++ b/arch/arm64/boot/dts/ti/k3-j784s4.dtsi
@@ -10,9 +10,10 @@

#include <dt-bindings/interrupt-controller/irq.h>
#include <dt-bindings/interrupt-controller/arm-gic.h>
-#include <dt-bindings/pinctrl/k3.h>
#include <dt-bindings/soc/ti,sci_pm_domain.h>

+#include "k3-pinctrl.h"
+
/ {
model = "Texas Instruments K3 J784S4 SoC";
compatible = "ti,j784s4";
diff --git a/include/dt-bindings/pinctrl/k3.h b/arch/arm64/boot/dts/ti/k3-pinctrl.h
similarity index 94%
rename from include/dt-bindings/pinctrl/k3.h
rename to arch/arm64/boot/dts/ti/k3-pinctrl.h
index 469bd29651db..6004e0967ec5 100644
--- a/include/dt-bindings/pinctrl/k3.h
+++ b/arch/arm64/boot/dts/ti/k3-pinctrl.h
@@ -3,10 +3,10 @@
* This header provides constants for pinctrl bindings for TI's K3 SoC
* family.
*
- * Copyright (C) 2018-2021 Texas Instruments Incorporated - https://www.ti.com/
+ * Copyright (C) 2018-2023 Texas Instruments Incorporated - https://www.ti.com/
*/
-#ifndef _DT_BINDINGS_PINCTRL_TI_K3_H
-#define _DT_BINDINGS_PINCTRL_TI_K3_H
+#ifndef DTS_ARM64_TI_K3_PINCTRL_H
+#define DTS_ARM64_TI_K3_PINCTRL_H

#define PULLUDEN_SHIFT (16)
#define PULLTYPESEL_SHIFT (17)
--
2.37.2


2023-03-11 15:47:02

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH 2/2] dt-bindings: pinctrl: Move k3.h to arch

On 11/03/2023 14:13, Nishanth Menon wrote:
> Move the k3 pinctrl definition to arch dts folder.
>
> While at this, fixup MAINTAINERS and header guard macro to better
> reflect the changes.
>
> Suggested-by: Krzysztof Kozlowski <[email protected]>
> Suggested-by: Linus Walleij <[email protected]>
> Link: https://lore.kernel.org/all/[email protected]/
> Signed-off-by: Nishanth Menon <[email protected]>
> ---
>
> There is no specific case I can think of at the moment to create a
> pinctrl.dtsi for the SoCs.. So, unlike other SoCs, I had not done that
> in the series, if folks have a better opinion about this, please let us
> discuss.
>
> MAINTAINERS | 1 -
> arch/arm64/boot/dts/ti/k3-am62.dtsi | 3 ++-
> arch/arm64/boot/dts/ti/k3-am62a.dtsi | 3 ++-
> arch/arm64/boot/dts/ti/k3-am64.dtsi | 3 ++-
> arch/arm64/boot/dts/ti/k3-am65.dtsi | 3 ++-
> arch/arm64/boot/dts/ti/k3-j7200.dtsi | 3 ++-
> arch/arm64/boot/dts/ti/k3-j721e.dtsi | 3 ++-
> arch/arm64/boot/dts/ti/k3-j721s2.dtsi | 3 ++-
> arch/arm64/boot/dts/ti/k3-j784s4.dtsi | 3 ++-
> .../pinctrl/k3.h => arch/arm64/boot/dts/ti/k3-pinctrl.h | 6 +++---

Bindings are separate from other changes (also DTS). Split the patches.

(...)

> / {
> model = "Texas Instruments K3 J784S4 SoC";
> compatible = "ti,j784s4";
> diff --git a/include/dt-bindings/pinctrl/k3.h b/arch/arm64/boot/dts/ti/k3-pinctrl.h
> similarity index 94%
> rename from include/dt-bindings/pinctrl/k3.h
> rename to arch/arm64/boot/dts/ti/k3-pinctrl.h
> index 469bd29651db..6004e0967ec5 100644
> --- a/include/dt-bindings/pinctrl/k3.h
> +++ b/arch/arm64/boot/dts/ti/k3-pinctrl.h

Dropping this file is going to break existing code and I would say is
also a break of the ABI. You need to keep the header for at least one
cycle, you can add there a warning for coming deprecation.

See for example:
https://lore.kernel.org/all/[email protected]/

Best regards,
Krzysztof


2023-03-13 16:00:42

by Nishanth Menon

[permalink] [raw]
Subject: Re: [PATCH 2/2] dt-bindings: pinctrl: Move k3.h to arch

On 16:46-20230311, Krzysztof Kozlowski wrote:
> On 11/03/2023 14:13, Nishanth Menon wrote:
> > Move the k3 pinctrl definition to arch dts folder.
> >
> > While at this, fixup MAINTAINERS and header guard macro to better
> > reflect the changes.
> >
> > Suggested-by: Krzysztof Kozlowski <[email protected]>
> > Suggested-by: Linus Walleij <[email protected]>
> > Link: https://lore.kernel.org/all/[email protected]/
> > Signed-off-by: Nishanth Menon <[email protected]>
> > ---
> >
> > There is no specific case I can think of at the moment to create a
> > pinctrl.dtsi for the SoCs.. So, unlike other SoCs, I had not done that
> > in the series, if folks have a better opinion about this, please let us
> > discuss.
> >
> > MAINTAINERS | 1 -
> > arch/arm64/boot/dts/ti/k3-am62.dtsi | 3 ++-
> > arch/arm64/boot/dts/ti/k3-am62a.dtsi | 3 ++-
> > arch/arm64/boot/dts/ti/k3-am64.dtsi | 3 ++-
> > arch/arm64/boot/dts/ti/k3-am65.dtsi | 3 ++-
> > arch/arm64/boot/dts/ti/k3-j7200.dtsi | 3 ++-
> > arch/arm64/boot/dts/ti/k3-j721e.dtsi | 3 ++-
> > arch/arm64/boot/dts/ti/k3-j721s2.dtsi | 3 ++-
> > arch/arm64/boot/dts/ti/k3-j784s4.dtsi | 3 ++-
> > .../pinctrl/k3.h => arch/arm64/boot/dts/ti/k3-pinctrl.h | 6 +++---
>
> Bindings are separate from other changes (also DTS). Split the patches.
>
> (...)
>
> > / {
> > model = "Texas Instruments K3 J784S4 SoC";
> > compatible = "ti,j784s4";
> > diff --git a/include/dt-bindings/pinctrl/k3.h b/arch/arm64/boot/dts/ti/k3-pinctrl.h
> > similarity index 94%
> > rename from include/dt-bindings/pinctrl/k3.h
> > rename to arch/arm64/boot/dts/ti/k3-pinctrl.h
> > index 469bd29651db..6004e0967ec5 100644
> > --- a/include/dt-bindings/pinctrl/k3.h
> > +++ b/arch/arm64/boot/dts/ti/k3-pinctrl.h
>
> Dropping this file is going to break existing code and I would say is
> also a break of the ABI. You need to keep the header for at least one
> cycle, you can add there a warning for coming deprecation.
>
> See for example:
> https://lore.kernel.org/all/[email protected]/


Makes complete sense. Thanks. will follow the lead and redo the series.

--
Regards,
Nishanth Menon
Key (0xDDB5849D1736249D) / Fingerprint: F8A2 8693 54EB 8232 17A3 1A34 DDB5 849D 1736 249D