mbox series

[v2,00/28] pinctrl: dt-bindings: samsung: convert to dtschema

Message ID 20220111201426.326777-1-krzysztof.kozlowski@canonical.com (mailing list archive)
Headers show
Series pinctrl: dt-bindings: samsung: convert to dtschema | expand

Message

Krzysztof Kozlowski Jan. 11, 2022, 8:13 p.m. UTC
Hi,

Changes since v1
================
1. Patch #1: add missing pin assignment (Alim).
2. Patch #2: correct double sizeof() (Alim).
3. Patch #7, #8: put label-override in proper patch (Alim).
4. Patch #24: Extend doc, change the 'if' clause for wake-up interrupts.
5. New patches: #25 - #28.
   Exynos850 and ExynosAutov9 seems to be different in pin ctrl interrupt
   handling, so they need their own compatibles.
   Please kindly review and provide feedback on these as I do not have
   details.
6. Add review tags.

Dependencies
============
1. Patch #2 ("pinctrl: samsung: accept GPIO bank nodes with a suffix") is
   necessary for DTS patches.

2. Last patches #27 and #28 depend on patch #26 adding the compatibles.

Best regards,
Krzysztof

Krzysztof Kozlowski (28):
  pinctrl: samsung: drop pin banks references on error paths
  pinctrl: samsung: accept GPIO bank nodes with a suffix
  ARM: dts: exynos: drop unused pinctrl defines in Exynos3250
  ARM: dts: exynos: simplify PMIC DVS pin configuration in Odroid XU
  ARM: dts: exynos: override pins by label in Peach Pit
  ARM: dts: exynos: simplify PMIC DVS pin configuration in Peach Pit
  ARM: dts: exynos: override pins by label in Peach Pi
  ARM: dts: exynos: simplify PMIC DVS pin configuration in Peach Pi
  ARM: dts: s3c64xx: drop unneeded pinctrl wake-up interrupt mapping
  ARM: dts: exynos: align pinctrl with dtschema in Exynos3250
  ARM: dts: exynos: align pinctrl with dtschema in Exynos4210
  ARM: dts: exynos: align pinctrl with dtschema in Exynos4412
  ARM: dts: exynos: align pinctrl with dtschema in Exynos5250
  ARM: dts: exynos: align pinctrl with dtschema in Exynos5260
  ARM: dts: exynos: align pinctrl with dtschema in Exynos5410
  ARM: dts: exynos: align pinctrl with dtschema in Exynos542x/5800
  arm64: dts: exynos: align pinctrl with dtschema in Exynos5433
  arm64: dts: exynos: align pinctrl with dtschema in Exynos7
  arm64: dts: exynos: align pinctrl with dtschema in Exynos850
  arm64: dts: exynos: align pinctrl with dtschema in ExynosAutov9
  ARM: dts: s3c24xx: align pinctrl with dtschema
  ARM: dts: s3c64xx: align pinctrl with dtschema
  ARM: dts: s5pv210: align pinctrl with dtschema
  dt-bindings: pinctrl: samsung: convert to dtschema
  dt-bindings: pinctrl: samsung: describe Exynos850 and ExynosAutov9
    wake-ups
  pinctrl: samsung: add support for Exynos850 and ExynosAutov9 wake-ups
  arm64: dts: exynos: use dedicated wake-up pinctrl compatible in
    Exynos850
  arm64: dts: exynos: use dedicated wake-up pinctrl compatible in
    ExynosAutov9

 .../pinctrl/samsung,pinctrl-gpio-bank.yaml    |  52 +++
 .../pinctrl/samsung,pinctrl-pins-cfg.yaml     |  81 ++++
 .../samsung,pinctrl-wakeup-interrupt.yaml     | 106 +++++
 .../bindings/pinctrl/samsung,pinctrl.yaml     | 392 ++++++++++++++++++
 .../bindings/pinctrl/samsung-pinctrl.txt      | 383 -----------------
 MAINTAINERS                                   |   2 +-
 arch/arm/boot/dts/exynos3250-artik5.dtsi      |  10 +-
 arch/arm/boot/dts/exynos3250-pinctrl.dtsi     | 165 ++++----
 arch/arm/boot/dts/exynos4210-i9100.dts        |  30 +-
 arch/arm/boot/dts/exynos4210-origen.dts       |   2 +-
 arch/arm/boot/dts/exynos4210-pinctrl.dtsi     | 226 +++++-----
 arch/arm/boot/dts/exynos4210-smdkv310.dts     |   4 +-
 arch/arm/boot/dts/exynos4210-trats.dts        |   6 +-
 .../boot/dts/exynos4210-universal_c210.dts    |  12 +-
 arch/arm/boot/dts/exynos4412-galaxy-s3.dtsi   |   4 +-
 arch/arm/boot/dts/exynos4412-itop-elite.dts   |   2 +-
 .../boot/dts/exynos4412-itop-scp-core.dtsi    |   2 +-
 arch/arm/boot/dts/exynos4412-midas.dtsi       |  30 +-
 .../boot/dts/exynos4412-odroid-common.dtsi    |   8 +-
 arch/arm/boot/dts/exynos4412-odroidx.dts      |   2 +-
 arch/arm/boot/dts/exynos4412-origen.dts       |   4 +-
 arch/arm/boot/dts/exynos4412-p4note.dtsi      |  44 +-
 arch/arm/boot/dts/exynos4412-pinctrl.dtsi     | 252 +++++------
 arch/arm/boot/dts/exynos4412-smdk4412.dts     |   4 +-
 arch/arm/boot/dts/exynos5250-arndale.dts      |   2 +-
 arch/arm/boot/dts/exynos5250-pinctrl.dtsi     | 220 +++++-----
 arch/arm/boot/dts/exynos5250-smdk5250.dts     |   2 +-
 arch/arm/boot/dts/exynos5250-snow-common.dtsi |  22 +-
 arch/arm/boot/dts/exynos5250-snow-rev5.dts    |   2 +-
 arch/arm/boot/dts/exynos5250-snow.dts         |   2 +-
 arch/arm/boot/dts/exynos5250-spring.dts       |  20 +-
 arch/arm/boot/dts/exynos5260-pinctrl.dtsi     | 148 +++----
 arch/arm/boot/dts/exynos5260-xyref5260.dts    |   2 +-
 arch/arm/boot/dts/exynos5410-odroidxu.dts     |  22 +-
 arch/arm/boot/dts/exynos5410-pinctrl.dtsi     | 170 ++++----
 arch/arm/boot/dts/exynos5410-smdk5410.dts     |   4 +-
 arch/arm/boot/dts/exynos5420-arndale-octa.dts |   2 +-
 arch/arm/boot/dts/exynos5420-peach-pit.dts    |  89 ++--
 arch/arm/boot/dts/exynos5420-pinctrl.dtsi     | 194 ++++-----
 arch/arm/boot/dts/exynos5420-smdk5420.dts     |   6 +-
 arch/arm/boot/dts/exynos5422-odroid-core.dtsi |   2 +-
 .../boot/dts/exynos5422-odroidxu3-common.dtsi |   6 +-
 arch/arm/boot/dts/exynos5800-peach-pi.dts     |  89 ++--
 arch/arm/boot/dts/s3c2416-pinctrl.dtsi        |  60 +--
 arch/arm/boot/dts/s3c6410-mini6410.dts        |   4 +-
 arch/arm/boot/dts/s3c64xx-pinctrl.dtsi        | 210 +++++-----
 arch/arm/boot/dts/s3c64xx.dtsi                |  16 +-
 arch/arm/boot/dts/s5pv210-aquila.dts          |   2 +-
 arch/arm/boot/dts/s5pv210-aries.dtsi          |  40 +-
 arch/arm/boot/dts/s5pv210-fascinate4g.dts     |  12 +-
 arch/arm/boot/dts/s5pv210-galaxys.dts         |  16 +-
 arch/arm/boot/dts/s5pv210-pinctrl.dtsi        | 226 +++++-----
 .../boot/dts/exynos/exynos5433-pinctrl.dtsi   | 211 +++++-----
 .../dts/exynos/exynos5433-tm2-common.dtsi     | 259 ++++++------
 .../boot/dts/exynos/exynos7-espresso.dts      |   6 +-
 .../boot/dts/exynos/exynos7-pinctrl.dtsi      | 176 ++++----
 .../boot/dts/exynos/exynos850-pinctrl.dtsi    |  52 +--
 arch/arm64/boot/dts/exynos/exynos850.dtsi     |   4 +-
 .../boot/dts/exynos/exynosautov9-pinctrl.dtsi |  50 +--
 arch/arm64/boot/dts/exynos/exynosautov9.dtsi  |   2 +-
 drivers/pinctrl/samsung/pinctrl-exynos.c      |   4 +
 drivers/pinctrl/samsung/pinctrl-samsung.c     |  87 +++-
 62 files changed, 2261 insertions(+), 2003 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/pinctrl/samsung,pinctrl-gpio-bank.yaml
 create mode 100644 Documentation/devicetree/bindings/pinctrl/samsung,pinctrl-pins-cfg.yaml
 create mode 100644 Documentation/devicetree/bindings/pinctrl/samsung,pinctrl-wakeup-interrupt.yaml
 create mode 100644 Documentation/devicetree/bindings/pinctrl/samsung,pinctrl.yaml
 delete mode 100644 Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt

Comments

Sam Protsenko Jan. 14, 2022, 6:31 p.m. UTC | #1
On Tue, 11 Jan 2022 at 22:15, Krzysztof Kozlowski
<krzysztof.kozlowski@canonical.com> wrote:
>
> Hi,
>
> Changes since v1
> ================
> 1. Patch #1: add missing pin assignment (Alim).
> 2. Patch #2: correct double sizeof() (Alim).
> 3. Patch #7, #8: put label-override in proper patch (Alim).
> 4. Patch #24: Extend doc, change the 'if' clause for wake-up interrupts.
> 5. New patches: #25 - #28.
>    Exynos850 and ExynosAutov9 seems to be different in pin ctrl interrupt
>    handling, so they need their own compatibles.
>    Please kindly review and provide feedback on these as I do not have
>    details.
> 6. Add review tags.
>
> Dependencies
> ============
> 1. Patch #2 ("pinctrl: samsung: accept GPIO bank nodes with a suffix") is
>    necessary for DTS patches.
>
> 2. Last patches #27 and #28 depend on patch #26 adding the compatibles.
>
> Best regards,
> Krzysztof
>
> Krzysztof Kozlowski (28):
>   pinctrl: samsung: drop pin banks references on error paths
>   pinctrl: samsung: accept GPIO bank nodes with a suffix
>   ARM: dts: exynos: drop unused pinctrl defines in Exynos3250
>   ARM: dts: exynos: simplify PMIC DVS pin configuration in Odroid XU
>   ARM: dts: exynos: override pins by label in Peach Pit
>   ARM: dts: exynos: simplify PMIC DVS pin configuration in Peach Pit
>   ARM: dts: exynos: override pins by label in Peach Pi
>   ARM: dts: exynos: simplify PMIC DVS pin configuration in Peach Pi
>   ARM: dts: s3c64xx: drop unneeded pinctrl wake-up interrupt mapping
>   ARM: dts: exynos: align pinctrl with dtschema in Exynos3250
>   ARM: dts: exynos: align pinctrl with dtschema in Exynos4210
>   ARM: dts: exynos: align pinctrl with dtschema in Exynos4412
>   ARM: dts: exynos: align pinctrl with dtschema in Exynos5250
>   ARM: dts: exynos: align pinctrl with dtschema in Exynos5260
>   ARM: dts: exynos: align pinctrl with dtschema in Exynos5410
>   ARM: dts: exynos: align pinctrl with dtschema in Exynos542x/5800
>   arm64: dts: exynos: align pinctrl with dtschema in Exynos5433
>   arm64: dts: exynos: align pinctrl with dtschema in Exynos7
>   arm64: dts: exynos: align pinctrl with dtschema in Exynos850
>   arm64: dts: exynos: align pinctrl with dtschema in ExynosAutov9
>   ARM: dts: s3c24xx: align pinctrl with dtschema
>   ARM: dts: s3c64xx: align pinctrl with dtschema
>   ARM: dts: s5pv210: align pinctrl with dtschema
>   dt-bindings: pinctrl: samsung: convert to dtschema
>   dt-bindings: pinctrl: samsung: describe Exynos850 and ExynosAutov9
>     wake-ups
>   pinctrl: samsung: add support for Exynos850 and ExynosAutov9 wake-ups
>   arm64: dts: exynos: use dedicated wake-up pinctrl compatible in
>     Exynos850
>   arm64: dts: exynos: use dedicated wake-up pinctrl compatible in
>     ExynosAutov9
>

Maybe it makes sense to include my patch [1] for gpm6/gpm7 in this series?

[1] https://lore.kernel.org/linux-arm-kernel/20220103181826.2136-1-semen.protsenko@linaro.org/T/

>  .../pinctrl/samsung,pinctrl-gpio-bank.yaml    |  52 +++
>  .../pinctrl/samsung,pinctrl-pins-cfg.yaml     |  81 ++++
>  .../samsung,pinctrl-wakeup-interrupt.yaml     | 106 +++++
>  .../bindings/pinctrl/samsung,pinctrl.yaml     | 392 ++++++++++++++++++
>  .../bindings/pinctrl/samsung-pinctrl.txt      | 383 -----------------
>  MAINTAINERS                                   |   2 +-
>  arch/arm/boot/dts/exynos3250-artik5.dtsi      |  10 +-
>  arch/arm/boot/dts/exynos3250-pinctrl.dtsi     | 165 ++++----
>  arch/arm/boot/dts/exynos4210-i9100.dts        |  30 +-
>  arch/arm/boot/dts/exynos4210-origen.dts       |   2 +-
>  arch/arm/boot/dts/exynos4210-pinctrl.dtsi     | 226 +++++-----
>  arch/arm/boot/dts/exynos4210-smdkv310.dts     |   4 +-
>  arch/arm/boot/dts/exynos4210-trats.dts        |   6 +-
>  .../boot/dts/exynos4210-universal_c210.dts    |  12 +-
>  arch/arm/boot/dts/exynos4412-galaxy-s3.dtsi   |   4 +-
>  arch/arm/boot/dts/exynos4412-itop-elite.dts   |   2 +-
>  .../boot/dts/exynos4412-itop-scp-core.dtsi    |   2 +-
>  arch/arm/boot/dts/exynos4412-midas.dtsi       |  30 +-
>  .../boot/dts/exynos4412-odroid-common.dtsi    |   8 +-
>  arch/arm/boot/dts/exynos4412-odroidx.dts      |   2 +-
>  arch/arm/boot/dts/exynos4412-origen.dts       |   4 +-
>  arch/arm/boot/dts/exynos4412-p4note.dtsi      |  44 +-
>  arch/arm/boot/dts/exynos4412-pinctrl.dtsi     | 252 +++++------
>  arch/arm/boot/dts/exynos4412-smdk4412.dts     |   4 +-
>  arch/arm/boot/dts/exynos5250-arndale.dts      |   2 +-
>  arch/arm/boot/dts/exynos5250-pinctrl.dtsi     | 220 +++++-----
>  arch/arm/boot/dts/exynos5250-smdk5250.dts     |   2 +-
>  arch/arm/boot/dts/exynos5250-snow-common.dtsi |  22 +-
>  arch/arm/boot/dts/exynos5250-snow-rev5.dts    |   2 +-
>  arch/arm/boot/dts/exynos5250-snow.dts         |   2 +-
>  arch/arm/boot/dts/exynos5250-spring.dts       |  20 +-
>  arch/arm/boot/dts/exynos5260-pinctrl.dtsi     | 148 +++----
>  arch/arm/boot/dts/exynos5260-xyref5260.dts    |   2 +-
>  arch/arm/boot/dts/exynos5410-odroidxu.dts     |  22 +-
>  arch/arm/boot/dts/exynos5410-pinctrl.dtsi     | 170 ++++----
>  arch/arm/boot/dts/exynos5410-smdk5410.dts     |   4 +-
>  arch/arm/boot/dts/exynos5420-arndale-octa.dts |   2 +-
>  arch/arm/boot/dts/exynos5420-peach-pit.dts    |  89 ++--
>  arch/arm/boot/dts/exynos5420-pinctrl.dtsi     | 194 ++++-----
>  arch/arm/boot/dts/exynos5420-smdk5420.dts     |   6 +-
>  arch/arm/boot/dts/exynos5422-odroid-core.dtsi |   2 +-
>  .../boot/dts/exynos5422-odroidxu3-common.dtsi |   6 +-
>  arch/arm/boot/dts/exynos5800-peach-pi.dts     |  89 ++--
>  arch/arm/boot/dts/s3c2416-pinctrl.dtsi        |  60 +--
>  arch/arm/boot/dts/s3c6410-mini6410.dts        |   4 +-
>  arch/arm/boot/dts/s3c64xx-pinctrl.dtsi        | 210 +++++-----
>  arch/arm/boot/dts/s3c64xx.dtsi                |  16 +-
>  arch/arm/boot/dts/s5pv210-aquila.dts          |   2 +-
>  arch/arm/boot/dts/s5pv210-aries.dtsi          |  40 +-
>  arch/arm/boot/dts/s5pv210-fascinate4g.dts     |  12 +-
>  arch/arm/boot/dts/s5pv210-galaxys.dts         |  16 +-
>  arch/arm/boot/dts/s5pv210-pinctrl.dtsi        | 226 +++++-----
>  .../boot/dts/exynos/exynos5433-pinctrl.dtsi   | 211 +++++-----
>  .../dts/exynos/exynos5433-tm2-common.dtsi     | 259 ++++++------
>  .../boot/dts/exynos/exynos7-espresso.dts      |   6 +-
>  .../boot/dts/exynos/exynos7-pinctrl.dtsi      | 176 ++++----
>  .../boot/dts/exynos/exynos850-pinctrl.dtsi    |  52 +--
>  arch/arm64/boot/dts/exynos/exynos850.dtsi     |   4 +-
>  .../boot/dts/exynos/exynosautov9-pinctrl.dtsi |  50 +--
>  arch/arm64/boot/dts/exynos/exynosautov9.dtsi  |   2 +-
>  drivers/pinctrl/samsung/pinctrl-exynos.c      |   4 +
>  drivers/pinctrl/samsung/pinctrl-samsung.c     |  87 +++-
>  62 files changed, 2261 insertions(+), 2003 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/pinctrl/samsung,pinctrl-gpio-bank.yaml
>  create mode 100644 Documentation/devicetree/bindings/pinctrl/samsung,pinctrl-pins-cfg.yaml
>  create mode 100644 Documentation/devicetree/bindings/pinctrl/samsung,pinctrl-wakeup-interrupt.yaml
>  create mode 100644 Documentation/devicetree/bindings/pinctrl/samsung,pinctrl.yaml
>  delete mode 100644 Documentation/devicetree/bindings/pinctrl/samsung-pinctrl.txt
>
> --
> 2.32.0
>
Krzysztof Kozlowski Jan. 15, 2022, 3:46 p.m. UTC | #2
On 14/01/2022 19:31, Sam Protsenko wrote:
> On Tue, 11 Jan 2022 at 22:15, Krzysztof Kozlowski
> <krzysztof.kozlowski@canonical.com> wrote:
>>
>> Hi,
>>
>> Changes since v1
>> ================
>> 1. Patch #1: add missing pin assignment (Alim).
>> 2. Patch #2: correct double sizeof() (Alim).
>> 3. Patch #7, #8: put label-override in proper patch (Alim).
>> 4. Patch #24: Extend doc, change the 'if' clause for wake-up interrupts.
>> 5. New patches: #25 - #28.
>>    Exynos850 and ExynosAutov9 seems to be different in pin ctrl interrupt
>>    handling, so they need their own compatibles.
>>    Please kindly review and provide feedback on these as I do not have
>>    details.
>> 6. Add review tags.
>>
>> Dependencies
>> ============
>> 1. Patch #2 ("pinctrl: samsung: accept GPIO bank nodes with a suffix") is
>>    necessary for DTS patches.
>>
>> 2. Last patches #27 and #28 depend on patch #26 adding the compatibles.
>>
>> Best regards,
>> Krzysztof
>>
>> Krzysztof Kozlowski (28):
>>   pinctrl: samsung: drop pin banks references on error paths
>>   pinctrl: samsung: accept GPIO bank nodes with a suffix
>>   ARM: dts: exynos: drop unused pinctrl defines in Exynos3250
>>   ARM: dts: exynos: simplify PMIC DVS pin configuration in Odroid XU
>>   ARM: dts: exynos: override pins by label in Peach Pit
>>   ARM: dts: exynos: simplify PMIC DVS pin configuration in Peach Pit
>>   ARM: dts: exynos: override pins by label in Peach Pi
>>   ARM: dts: exynos: simplify PMIC DVS pin configuration in Peach Pi
>>   ARM: dts: s3c64xx: drop unneeded pinctrl wake-up interrupt mapping
>>   ARM: dts: exynos: align pinctrl with dtschema in Exynos3250
>>   ARM: dts: exynos: align pinctrl with dtschema in Exynos4210
>>   ARM: dts: exynos: align pinctrl with dtschema in Exynos4412
>>   ARM: dts: exynos: align pinctrl with dtschema in Exynos5250
>>   ARM: dts: exynos: align pinctrl with dtschema in Exynos5260
>>   ARM: dts: exynos: align pinctrl with dtschema in Exynos5410
>>   ARM: dts: exynos: align pinctrl with dtschema in Exynos542x/5800
>>   arm64: dts: exynos: align pinctrl with dtschema in Exynos5433
>>   arm64: dts: exynos: align pinctrl with dtschema in Exynos7
>>   arm64: dts: exynos: align pinctrl with dtschema in Exynos850
>>   arm64: dts: exynos: align pinctrl with dtschema in ExynosAutov9
>>   ARM: dts: s3c24xx: align pinctrl with dtschema
>>   ARM: dts: s3c64xx: align pinctrl with dtschema
>>   ARM: dts: s5pv210: align pinctrl with dtschema
>>   dt-bindings: pinctrl: samsung: convert to dtschema
>>   dt-bindings: pinctrl: samsung: describe Exynos850 and ExynosAutov9
>>     wake-ups
>>   pinctrl: samsung: add support for Exynos850 and ExynosAutov9 wake-ups
>>   arm64: dts: exynos: use dedicated wake-up pinctrl compatible in
>>     Exynos850
>>   arm64: dts: exynos: use dedicated wake-up pinctrl compatible in
>>     ExynosAutov9
>>
> 
> Maybe it makes sense to include my patch [1] for gpm6/gpm7 in this series?
> 
> [1] https://lore.kernel.org/linux-arm-kernel/20220103181826.2136-1-semen.protsenko@linaro.org/T/
> 

Yes, if I am going to resend, I'll include yours. Otherwise, I will try
to remember when applying.


Best regards,
Krzysztof
Krzysztof Kozlowski Jan. 23, 2022, 11:46 a.m. UTC | #3
On Tue, 11 Jan 2022 21:13:58 +0100, Krzysztof Kozlowski wrote:
> Changes since v1
> ================
> 1. Patch #1: add missing pin assignment (Alim).
> 2. Patch #2: correct double sizeof() (Alim).
> 3. Patch #7, #8: put label-override in proper patch (Alim).
> 4. Patch #24: Extend doc, change the 'if' clause for wake-up interrupts.
> 5. New patches: #25 - #28.
>    Exynos850 and ExynosAutov9 seems to be different in pin ctrl interrupt
>    handling, so they need their own compatibles.
>    Please kindly review and provide feedback on these as I do not have
>    details.
> 6. Add review tags.
> 
> [...]

Applied, thanks!

To Samsung pinctrl tree:

[01/28] pinctrl: samsung: drop pin banks references on error paths
        commit: 50ebd19e3585b9792e994cfa8cbee8947fe06371
[02/28] pinctrl: samsung: accept GPIO bank nodes with a suffix
        commit: a29681b0cc3778c9ff6abdbcad579cba776dbb81
[24/28] dt-bindings: pinctrl: samsung: convert to dtschema
        commit: af030d83da1dc0d750d7bcc88d57dd1cae5f6b61
[25/28] dt-bindings: pinctrl: samsung: describe Exynos850 and ExynosAutov9 wake-ups
        commit: 1755e227c21636ade047dc9b920f647c1d53b4e9
[26/28] pinctrl: samsung: add support for Exynos850 and ExynosAutov9 wake-ups
        commit: 832ae134ccc1c78a2f5ec81b7010dd24c3c49535

Best regards,