2022-09-24 08:18:28

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 00/32] pinctrl/arm64: qcom: continued - fix Qualcomm TLMM pinctrl schema warnings

Hi,

Overview
========
This is the third patchset around Qualcomm pinctrl in recent days:
1. First round of TLMM fixes: merged
2. LPASS fixes: https://lore.kernel.org/linux-devicetree/[email protected]/T/#t
3. Second round of TLMM fixes: THIS PATCHSET

Dependencies
============
1. No dependencies.
2. dt-bindings are independent of DTS patches.

Best regards,
Krzysztof

Krzysztof Kozlowski (32):
arm64: dts: qcom: ipq6018-cp01-c1: correct blspi1 pins
arm64: dts: qcom: ipq6018: align TLMM pin configuration with DT schema
ARM: dts: qcom: sdx55: add gpio-ranges to TLMM pinctrl
ARM: dts: qcom: sdx55: align TLMM pin configuration with DT schema
ARM: dts: qcom: msm8226: align TLMM pin configuration with DT schema
ARM: dts: qcom: msm8974: align TLMM pin configuration with DT schema
dt-bindings: pinctrl: qcom,ipq6018: add qpic_pad function
dt-bindings: pinctrl: qcom,ipq6018: increase number of pins in pinmux
dt-bindings: pinctrl: qcom,ipq6018: fix matching pin config
dt-bindings: pinctrl: qcom,ipq6018: do not require function on
non-GPIOs
dt-bindings: pinctrl: qcom,ipq6018: fix indentation in example
dt-bindings: pinctrl: qcom,msm8226: fix matching pin config
dt-bindings: pinctrl: qcom,msm8226: do not require function on
non-GPIOs
dt-bindings: pinctrl: qcom,msm8226: add functions and input-enable
dt-bindings: pinctrl: qcom,msm8226: fix indentation in example
dt-bindings: pinctrl: qcom,msm8909-tlmm: fix matching pin config
dt-bindings: pinctrl: qcom,msm8909-tlmm: do not require function on
non-GPIOs
dt-bindings: pinctrl: qcom,msm8909-tlmm: fix indentation in example
dt-bindings: pinctrl: qcom,msm8953: fix matching pin config
dt-bindings: pinctrl: qcom,msm8953: do not require function on
non-GPIOs
dt-bindings: pinctrl: qcom,msm8953: fix indentation in example
dt-bindings: pinctrl: qcom,mdm9607: do not require function on
non-GPIOs
dt-bindings: pinctrl: qcom,mdm9607: fix indentation in example
dt-bindings: pinctrl: qcom,qcm2290: fix matching pin config
dt-bindings: pinctrl: qcom,qcm2290: do not require function on
non-GPIOs
dt-bindings: pinctrl: qcom,sdx55: fix matching pin config
dt-bindings: pinctrl: qcom,sdx55: do not require function on non-GPIOs
dt-bindings: pinctrl: qcom,sdx55: fix indentation in example
dt-bindings: pinctrl: qcom,sdx65: fix matching pin config
dt-bindings: pinctrl: qcom,sdx65: do not require function on non-GPIOs
dt-bindings: pinctrl: qcom,sc7280: fix matching pin config
dt-bindings: pinctrl: qcom,sc8280xp: fix indentation in example
(remaining piece)

.../pinctrl/qcom,ipq6018-pinctrl.yaml | 67 ++++++++++-------
.../pinctrl/qcom,mdm9607-pinctrl.yaml | 34 +++++----
.../pinctrl/qcom,msm8226-pinctrl.yaml | 70 ++++++++++-------
.../bindings/pinctrl/qcom,msm8909-tlmm.yaml | 75 +++++++++++--------
.../pinctrl/qcom,msm8953-pinctrl.yaml | 58 ++++++++------
.../pinctrl/qcom,qcm2290-pinctrl.yaml | 20 +++--
.../bindings/pinctrl/qcom,sc7280-pinctrl.yaml | 14 +++-
.../pinctrl/qcom,sc8280xp-pinctrl.yaml | 4 +-
.../bindings/pinctrl/qcom,sdx55-pinctrl.yaml | 58 ++++++++------
.../bindings/pinctrl/qcom,sdx65-pinctrl.yaml | 20 +++--
arch/arm/boot/dts/qcom-apq8026-lg-lenok.dts | 6 +-
arch/arm/boot/dts/qcom-msm8226.dtsi | 24 +++---
.../qcom-msm8974-lge-nexus5-hammerhead.dts | 30 ++++----
.../boot/dts/qcom-sdx55-telit-fn980-tlb.dts | 45 ++++-------
arch/arm/boot/dts/qcom-sdx55.dtsi | 1 +
arch/arm64/boot/dts/qcom/ipq6018-cp01-c1.dts | 8 +-
arch/arm64/boot/dts/qcom/ipq6018.dtsi | 4 +-
17 files changed, 316 insertions(+), 222 deletions(-)

--
2.34.1


2022-09-24 08:18:32

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 26/32] dt-bindings: pinctrl: qcom,sdx55: fix matching pin config

The TLMM pin controller follows generic pin-controller bindings, so
should have subnodes with '-state' and '-pins'. Otherwise the subnodes
(level one and two) are not properly matched.

qcom-sdx55-telit-fn980-tlb.dtb: pinctrl@f100000: 'pcie_ep_clkreq_default', 'pcie_ep_perst_default', 'pcie_ep_wake_default' do not match any of the regexes: '-pins$', 'pinctrl-[0-9]+'

This method also unifies the bindings with other Qualcomm TLMM and LPASS
pinctrl bindings.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
.../bindings/pinctrl/qcom,sdx55-pinctrl.yaml | 14 +++++++++++---
1 file changed, 11 insertions(+), 3 deletions(-)

diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,sdx55-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,sdx55-pinctrl.yaml
index a38090b14aab..fff57abf4fbc 100644
--- a/Documentation/devicetree/bindings/pinctrl/qcom,sdx55-pinctrl.yaml
+++ b/Documentation/devicetree/bindings/pinctrl/qcom,sdx55-pinctrl.yaml
@@ -45,9 +45,17 @@ properties:
gpio-reserved-ranges:
maxItems: 1

-#PIN CONFIGURATION NODES
patternProperties:
- '-pins$':
+ "-state$":
+ oneOf:
+ - $ref: "#/$defs/qcom-sdx55-tlmm-state"
+ - patternProperties:
+ "-pins$":
+ $ref: "#/$defs/qcom-sdx55-tlmm-state"
+ additionalProperties: false
+
+$defs:
+ qcom-sdx55-tlmm-state:
type: object
description:
Pinctrl node's client devices use subnodes for desired pin configuration.
@@ -146,7 +154,7 @@ examples:
#interrupt-cells = <2>;
interrupts = <GIC_SPI 212 IRQ_TYPE_LEVEL_HIGH>;

- serial-pins {
+ serial-state {
pins = "gpio8", "gpio9";
function = "blsp_uart3";
drive-strength = <8>;
--
2.34.1

2022-09-24 08:18:33

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 09/32] dt-bindings: pinctrl: qcom,ipq6018: fix matching pin config

The TLMM pin controller follows generic pin-controller bindings, so
should have subnodes with '-state' and '-pins'. Otherwise the subnodes
(level one and two) are not properly matched. This method also unifies
the bindings with other Qualcomm TLMM and LPASS pinctrl bindings.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
.../bindings/pinctrl/qcom,ipq6018-pinctrl.yaml | 15 +++++++++++----
1 file changed, 11 insertions(+), 4 deletions(-)

diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,ipq6018-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,ipq6018-pinctrl.yaml
index 9c6958a9cfe4..e7f3106ccd39 100644
--- a/Documentation/devicetree/bindings/pinctrl/qcom,ipq6018-pinctrl.yaml
+++ b/Documentation/devicetree/bindings/pinctrl/qcom,ipq6018-pinctrl.yaml
@@ -42,10 +42,17 @@ properties:
gpio-ranges:
maxItems: 1

-#PIN CONFIGURATION NODES
patternProperties:
- '-pinmux$':
- type: object
+ "-state$":
+ oneOf:
+ - $ref: "#/$defs/qcom-ipq6018-tlmm-state"
+ - patternProperties:
+ "-pins$":
+ $ref: "#/$defs/qcom-ipq6018-tlmm-state"
+ additionalProperties: false
+
+$defs:
+ qcom-ipq6018-tlmm-state:
description:
Pinctrl node's client devices use subnodes for desired pin configuration.
Client device subnodes use below standard properties.
@@ -146,7 +153,7 @@ examples:
#gpio-cells = <2>;
gpio-ranges = <&tlmm 0 0 80>;

- serial3-pinmux {
+ serial3-state {
pins = "gpio44", "gpio45";
function = "blsp2_uart";
drive-strength = <8>;
--
2.34.1

2022-09-24 08:18:57

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 24/32] dt-bindings: pinctrl: qcom,qcm2290: fix matching pin config

The TLMM pin controller follows generic pin-controller bindings, so
should have subnodes with '-state' and '-pins'. Otherwise the subnodes
(level one and two) are not properly matched. This method also unifies
the bindings with other Qualcomm TLMM and LPASS pinctrl bindings.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
.../bindings/pinctrl/qcom,qcm2290-pinctrl.yaml | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,qcm2290-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,qcm2290-pinctrl.yaml
index 3f4f1c0360b5..5324b61eb4f7 100644
--- a/Documentation/devicetree/bindings/pinctrl/qcom,qcm2290-pinctrl.yaml
+++ b/Documentation/devicetree/bindings/pinctrl/qcom,qcm2290-pinctrl.yaml
@@ -50,8 +50,9 @@ patternProperties:
oneOf:
- $ref: "#/$defs/qcom-qcm2290-tlmm-state"
- patternProperties:
- ".*":
+ "-pins$":
$ref: "#/$defs/qcom-qcm2290-tlmm-state"
+ additionalProperties: false

'$defs':
qcom-qcm2290-tlmm-state:
@@ -146,19 +147,19 @@ examples:
gpio-ranges = <&tlmm 0 0 127>;

sdc2_on_state: sdc2-on-state {
- clk {
+ clk-pins {
pins = "sdc2_clk";
bias-disable;
drive-strength = <16>;
};

- cmd {
+ cmd-pins {
pins = "sdc2_cmd";
bias-pull-up;
drive-strength = <10>;
};

- data {
+ data-pins {
pins = "sdc2_data";
bias-pull-up;
drive-strength = <10>;
--
2.34.1

2022-09-24 08:19:21

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 28/32] dt-bindings: pinctrl: qcom,sdx55: fix indentation in example

Bindings example should be indented with 4-spaces.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
.../bindings/pinctrl/qcom,sdx55-pinctrl.yaml | 34 +++++++++----------
1 file changed, 17 insertions(+), 17 deletions(-)

diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,sdx55-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,sdx55-pinctrl.yaml
index 006aeec7794f..e381769e42ae 100644
--- a/Documentation/devicetree/bindings/pinctrl/qcom,sdx55-pinctrl.yaml
+++ b/Documentation/devicetree/bindings/pinctrl/qcom,sdx55-pinctrl.yaml
@@ -151,23 +151,23 @@ additionalProperties: false

examples:
- |
- #include <dt-bindings/interrupt-controller/arm-gic.h>
- tlmm: pinctrl@1f00000 {
- compatible = "qcom,sdx55-pinctrl";
- reg = <0x0f100000 0x300000>;
- gpio-controller;
- #gpio-cells = <2>;
- gpio-ranges = <&tlmm 0 0 108>;
- interrupt-controller;
- #interrupt-cells = <2>;
- interrupts = <GIC_SPI 212 IRQ_TYPE_LEVEL_HIGH>;
-
- serial-state {
- pins = "gpio8", "gpio9";
- function = "blsp_uart3";
- drive-strength = <8>;
- bias-disable;
- };
+ #include <dt-bindings/interrupt-controller/arm-gic.h>
+ tlmm: pinctrl@1f00000 {
+ compatible = "qcom,sdx55-pinctrl";
+ reg = <0x0f100000 0x300000>;
+ gpio-controller;
+ #gpio-cells = <2>;
+ gpio-ranges = <&tlmm 0 0 108>;
+ interrupt-controller;
+ #interrupt-cells = <2>;
+ interrupts = <GIC_SPI 212 IRQ_TYPE_LEVEL_HIGH>;
+
+ serial-state {
+ pins = "gpio8", "gpio9";
+ function = "blsp_uart3";
+ drive-strength = <8>;
+ bias-disable;
};
+ };

...
--
2.34.1

2022-09-24 08:19:35

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 06/32] ARM: dts: qcom: msm8974: align TLMM pin configuration with DT schema

DT schema expects TLMM pin configuration nodes to be named with
'-state' suffix and their optional children with '-pins' suffix.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
.../qcom-msm8974-lge-nexus5-hammerhead.dts | 30 +++++++++----------
1 file changed, 15 insertions(+), 15 deletions(-)

diff --git a/arch/arm/boot/dts/qcom-msm8974-lge-nexus5-hammerhead.dts b/arch/arm/boot/dts/qcom-msm8974-lge-nexus5-hammerhead.dts
index 6daceaa87802..8138f37233aa 100644
--- a/arch/arm/boot/dts/qcom-msm8974-lge-nexus5-hammerhead.dts
+++ b/arch/arm/boot/dts/qcom-msm8974-lge-nexus5-hammerhead.dts
@@ -573,43 +573,43 @@ bcrmf@1 {
};

&tlmm {
- sdc1_on: sdc1-on {
- clk {
+ sdc1_on: sdc1-on-state {
+ clk-pins {
pins = "sdc1_clk";
drive-strength = <16>;
bias-disable;
};

- cmd-data {
+ cmd-data-pins {
pins = "sdc1_cmd", "sdc1_data";
drive-strength = <10>;
bias-pull-up;
};
};

- sdc2_on: sdc2-on {
- clk {
+ sdc2_on: sdc2-on-state {
+ clk-pins {
pins = "sdc2_clk";
drive-strength = <6>;
bias-disable;
};

- cmd-data {
+ cmd-data-pins {
pins = "sdc2_cmd", "sdc2_data";
drive-strength = <6>;
bias-pull-up;
};
};

- mpu6515_pin: mpu6515 {
+ mpu6515_pin: mpu6515-state {
pins = "gpio73";
function = "gpio";
bias-disable;
input-enable;
};

- touch_pin: touch {
- int {
+ touch_pin: touch-state {
+ int-pins {
pins = "gpio5";
function = "gpio";

@@ -618,7 +618,7 @@ int {
input-enable;
};

- reset {
+ reset-pins {
pins = "gpio8";
function = "gpio";

@@ -627,25 +627,25 @@ reset {
};
};

- panel_pin: panel {
+ panel_pin: panel-state {
pins = "gpio12";
function = "mdp_vsync";
drive-strength = <2>;
bias-disable;
};

- bt_pin: bt {
- hostwake {
+ bt_pin: bt-state {
+ hostwake-pins {
pins = "gpio42";
function = "gpio";
};

- devwake {
+ devwake-pins {
pins = "gpio62";
function = "gpio";
};

- shutdown {
+ shutdown-pins {
pins = "gpio41";
function = "gpio";
};
--
2.34.1

2022-09-24 08:27:29

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 29/32] dt-bindings: pinctrl: qcom,sdx65: fix matching pin config

The TLMM pin controller follows generic pin-controller bindings, so
should have subnodes with '-state' and '-pins'. Otherwise the subnodes
(level one and two) are not properly matched. This method also unifies
the bindings with other Qualcomm TLMM and LPASS pinctrl bindings.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
.../devicetree/bindings/pinctrl/qcom,sdx65-pinctrl.yaml | 8 +++++---
1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,sdx65-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,sdx65-pinctrl.yaml
index cdfcf29dffee..0f796f1f0104 100644
--- a/Documentation/devicetree/bindings/pinctrl/qcom,sdx65-pinctrl.yaml
+++ b/Documentation/devicetree/bindings/pinctrl/qcom,sdx65-pinctrl.yaml
@@ -49,8 +49,10 @@ patternProperties:
oneOf:
- $ref: "#/$defs/qcom-sdx65-tlmm-state"
- patternProperties:
- ".*":
+ "-pins$":
$ref: "#/$defs/qcom-sdx65-tlmm-state"
+ additionalProperties: false
+
'$defs':
qcom-sdx65-tlmm-state:
type: object
@@ -175,13 +177,13 @@ examples:
};

uart-w-subnodes-state {
- rx {
+ rx-pins {
pins = "gpio4";
function = "blsp_uart1";
bias-pull-up;
};

- tx {
+ tx-pins {
pins = "gpio5";
function = "blsp_uart1";
bias-disable;
--
2.34.1

2022-09-24 08:27:38

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 17/32] dt-bindings: pinctrl: qcom,msm8909-tlmm: do not require function on non-GPIOs

Certain pins, like SDcard related, do not have functions and such should
not be required.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
.../bindings/pinctrl/qcom,msm8909-tlmm.yaml | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,msm8909-tlmm.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,msm8909-tlmm.yaml
index b1735918fa90..e4332e628698 100644
--- a/Documentation/devicetree/bindings/pinctrl/qcom,msm8909-tlmm.yaml
+++ b/Documentation/devicetree/bindings/pinctrl/qcom,msm8909-tlmm.yaml
@@ -53,7 +53,6 @@ $defs:
description:
Pinctrl node's client devices use subnodes for desired pin configuration.
Client device subnodes use below standard properties.
- $ref: "qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state"

properties:
pins:
@@ -113,7 +112,16 @@ $defs:

required:
- pins
- - function
+
+ allOf:
+ - $ref: "qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state"
+ - if:
+ properties:
+ pins:
+ pattern: "^gpio([0-9]|[1-9][0-9]|10[0-9]|11[0-7])$"
+ then:
+ required:
+ - function

additionalProperties: false

--
2.34.1

2022-09-24 08:47:18

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 20/32] dt-bindings: pinctrl: qcom,msm8953: do not require function on non-GPIOs

Certain pins, like SDcard related, do not have functions and such should
not be required.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
.../bindings/pinctrl/qcom,msm8953-pinctrl.yaml | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,msm8953-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,msm8953-pinctrl.yaml
index c162796ab604..67d3d90839ad 100644
--- a/Documentation/devicetree/bindings/pinctrl/qcom,msm8953-pinctrl.yaml
+++ b/Documentation/devicetree/bindings/pinctrl/qcom,msm8953-pinctrl.yaml
@@ -59,7 +59,6 @@ $defs:
description:
Pinctrl node's client devices use subnodes for desired pin configuration.
Client device subnodes use below standard properties.
- $ref: "/schemas/pinctrl/pincfg-node.yaml"

properties:
pins:
@@ -139,7 +138,16 @@ $defs:

required:
- pins
- - function
+
+ allOf:
+ - $ref: /schemas/pinctrl/pincfg-node.yaml
+ - if:
+ properties:
+ pins:
+ pattern: "^gpio([0-9]|[1-9][0-9]|1[0-7][0-9])$"
+ then:
+ required:
+ - function

additionalProperties: false

--
2.34.1

2022-09-24 08:47:18

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 27/32] dt-bindings: pinctrl: qcom,sdx55: do not require function on non-GPIOs

Certain pins, like SDcard related, do not have functions and such should
not be required.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
.../bindings/pinctrl/qcom,sdx55-pinctrl.yaml | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,sdx55-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,sdx55-pinctrl.yaml
index fff57abf4fbc..006aeec7794f 100644
--- a/Documentation/devicetree/bindings/pinctrl/qcom,sdx55-pinctrl.yaml
+++ b/Documentation/devicetree/bindings/pinctrl/qcom,sdx55-pinctrl.yaml
@@ -60,7 +60,6 @@ $defs:
description:
Pinctrl node's client devices use subnodes for desired pin configuration.
Client device subnodes use below standard properties.
- $ref: "/schemas/pinctrl/pincfg-node.yaml"

properties:
pins:
@@ -122,7 +121,16 @@ $defs:

required:
- pins
- - function
+
+ allOf:
+ - $ref: /schemas/pinctrl/pincfg-node.yaml
+ - if:
+ properties:
+ pins:
+ pattern: "^gpio([0-9]|[1-9][0-9]|1[0-1][0-6])$"
+ then:
+ required:
+ - function

additionalProperties: false

--
2.34.1

2022-09-24 08:49:28

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 21/32] dt-bindings: pinctrl: qcom,msm8953: fix indentation in example

Bindings example should be indented with 4-spaces.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
.../pinctrl/qcom,msm8953-pinctrl.yaml | 34 +++++++++----------
1 file changed, 17 insertions(+), 17 deletions(-)

diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,msm8953-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,msm8953-pinctrl.yaml
index 67d3d90839ad..3e3fcfc0261d 100644
--- a/Documentation/devicetree/bindings/pinctrl/qcom,msm8953-pinctrl.yaml
+++ b/Documentation/devicetree/bindings/pinctrl/qcom,msm8953-pinctrl.yaml
@@ -168,21 +168,21 @@ additionalProperties: false

examples:
- |
- #include <dt-bindings/interrupt-controller/arm-gic.h>
- tlmm: pinctrl@1000000 {
- compatible = "qcom,msm8953-pinctrl";
- reg = <0x01000000 0x300000>;
- interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
- interrupt-controller;
- #interrupt-cells = <2>;
- gpio-controller;
- #gpio-cells = <2>;
- gpio-ranges = <&tlmm 0 0 142>;
-
- serial_default: serial-state {
- pins = "gpio4", "gpio5";
- function = "blsp_uart2";
- drive-strength = <2>;
- bias-disable;
- };
+ #include <dt-bindings/interrupt-controller/arm-gic.h>
+ tlmm: pinctrl@1000000 {
+ compatible = "qcom,msm8953-pinctrl";
+ reg = <0x01000000 0x300000>;
+ interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-controller;
+ #interrupt-cells = <2>;
+ gpio-controller;
+ #gpio-cells = <2>;
+ gpio-ranges = <&tlmm 0 0 142>;
+
+ serial_default: serial-state {
+ pins = "gpio4", "gpio5";
+ function = "blsp_uart2";
+ drive-strength = <2>;
+ bias-disable;
};
+ };
--
2.34.1

2022-09-24 08:51:49

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 25/32] dt-bindings: pinctrl: qcom,qcm2290: do not require function on non-GPIOs

Certain pins, like SDcard related, do not have functions and such should
not be required.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
.../bindings/pinctrl/qcom,qcm2290-pinctrl.yaml | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,qcm2290-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,qcm2290-pinctrl.yaml
index 5324b61eb4f7..89453cb60c12 100644
--- a/Documentation/devicetree/bindings/pinctrl/qcom,qcm2290-pinctrl.yaml
+++ b/Documentation/devicetree/bindings/pinctrl/qcom,qcm2290-pinctrl.yaml
@@ -60,7 +60,6 @@ patternProperties:
description:
Pinctrl node's client devices use subnodes for desired pin configuration.
Client device subnodes use below standard properties.
- $ref: "qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state"

properties:
pins:
@@ -116,6 +115,16 @@ patternProperties:
required:
- pins

+ allOf:
+ - $ref: "qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state"
+ - if:
+ properties:
+ pins:
+ pattern: "^gpio([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-6])$"
+ then:
+ required:
+ - function
+
additionalProperties: false

allOf:
--
2.34.1

2022-09-24 08:55:09

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 10/32] dt-bindings: pinctrl: qcom,ipq6018: do not require function on non-GPIOs

Certain pins, like SDcard related, do not have functions and such should
not be required.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
.../bindings/pinctrl/qcom,ipq6018-pinctrl.yaml | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,ipq6018-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,ipq6018-pinctrl.yaml
index e7f3106ccd39..2026fdac9fa8 100644
--- a/Documentation/devicetree/bindings/pinctrl/qcom,ipq6018-pinctrl.yaml
+++ b/Documentation/devicetree/bindings/pinctrl/qcom,ipq6018-pinctrl.yaml
@@ -56,7 +56,6 @@ $defs:
description:
Pinctrl node's client devices use subnodes for desired pin configuration.
Client device subnodes use below standard properties.
- $ref: "/schemas/pinctrl/pincfg-node.yaml"

properties:
pins:
@@ -121,7 +120,16 @@ $defs:

required:
- pins
- - function
+
+ allOf:
+ - $ref: /schemas/pinctrl/pincfg-node.yaml
+ - if:
+ properties:
+ pins:
+ pattern: "^gpio([1-9]|[1-7][0-9]|80)$"
+ then:
+ required:
+ - function

additionalProperties: false

--
2.34.1

2022-09-24 08:55:13

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 15/32] dt-bindings: pinctrl: qcom,msm8226: fix indentation in example

Bindings example should be indented with 4-spaces.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
.../pinctrl/qcom,msm8226-pinctrl.yaml | 36 +++++++++----------
1 file changed, 18 insertions(+), 18 deletions(-)

diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,msm8226-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,msm8226-pinctrl.yaml
index e665ae7ffe3c..61200fe7a748 100644
--- a/Documentation/devicetree/bindings/pinctrl/qcom,msm8226-pinctrl.yaml
+++ b/Documentation/devicetree/bindings/pinctrl/qcom,msm8226-pinctrl.yaml
@@ -128,22 +128,22 @@ additionalProperties: false

examples:
- |
- #include <dt-bindings/interrupt-controller/arm-gic.h>
- msmgpio: pinctrl@fd510000 {
- compatible = "qcom,msm8226-pinctrl";
- reg = <0xfd510000 0x4000>;
-
- gpio-controller;
- #gpio-cells = <2>;
- gpio-ranges = <&msmgpio 0 0 117>;
- interrupt-controller;
- #interrupt-cells = <2>;
- interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
-
- serial-state {
- pins = "gpio8", "gpio9";
- function = "blsp_uart3";
- drive-strength = <8>;
- bias-disable;
- };
+ #include <dt-bindings/interrupt-controller/arm-gic.h>
+ msmgpio: pinctrl@fd510000 {
+ compatible = "qcom,msm8226-pinctrl";
+ reg = <0xfd510000 0x4000>;
+
+ gpio-controller;
+ #gpio-cells = <2>;
+ gpio-ranges = <&msmgpio 0 0 117>;
+ interrupt-controller;
+ #interrupt-cells = <2>;
+ interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
+
+ serial-state {
+ pins = "gpio8", "gpio9";
+ function = "blsp_uart3";
+ drive-strength = <8>;
+ bias-disable;
};
+ };
--
2.34.1

2022-09-24 08:57:20

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 11/32] dt-bindings: pinctrl: qcom,ipq6018: fix indentation in example

Bindings example should be indented with 4-spaces.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
.../pinctrl/qcom,ipq6018-pinctrl.yaml | 34 +++++++++----------
1 file changed, 17 insertions(+), 17 deletions(-)

diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,ipq6018-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,ipq6018-pinctrl.yaml
index 2026fdac9fa8..075d014b2ec5 100644
--- a/Documentation/devicetree/bindings/pinctrl/qcom,ipq6018-pinctrl.yaml
+++ b/Documentation/devicetree/bindings/pinctrl/qcom,ipq6018-pinctrl.yaml
@@ -150,21 +150,21 @@ additionalProperties: false

examples:
- |
- #include <dt-bindings/interrupt-controller/arm-gic.h>
- tlmm: pinctrl@1000000 {
- compatible = "qcom,ipq6018-pinctrl";
- reg = <0x01000000 0x300000>;
- interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
- interrupt-controller;
- #interrupt-cells = <2>;
- gpio-controller;
- #gpio-cells = <2>;
- gpio-ranges = <&tlmm 0 0 80>;
-
- serial3-state {
- pins = "gpio44", "gpio45";
- function = "blsp2_uart";
- drive-strength = <8>;
- bias-pull-down;
- };
+ #include <dt-bindings/interrupt-controller/arm-gic.h>
+ tlmm: pinctrl@1000000 {
+ compatible = "qcom,ipq6018-pinctrl";
+ reg = <0x01000000 0x300000>;
+ interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
+ interrupt-controller;
+ #interrupt-cells = <2>;
+ gpio-controller;
+ #gpio-cells = <2>;
+ gpio-ranges = <&tlmm 0 0 80>;
+
+ serial3-state {
+ pins = "gpio44", "gpio45";
+ function = "blsp2_uart";
+ drive-strength = <8>;
+ bias-pull-down;
};
+ };
--
2.34.1

2022-09-24 08:58:07

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 22/32] dt-bindings: pinctrl: qcom,mdm9607: do not require function on non-GPIOs

Certain pins, like SDcard related, do not have functions and such should
not be required.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
.../bindings/pinctrl/qcom,mdm9607-pinctrl.yaml | 12 ++++++++++--
1 file changed, 10 insertions(+), 2 deletions(-)

diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,mdm9607-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,mdm9607-pinctrl.yaml
index f7bd4be1739e..ef22090fd6d6 100644
--- a/Documentation/devicetree/bindings/pinctrl/qcom,mdm9607-pinctrl.yaml
+++ b/Documentation/devicetree/bindings/pinctrl/qcom,mdm9607-pinctrl.yaml
@@ -53,7 +53,6 @@ patternProperties:
description:
Pinctrl node's client devices use subnodes for desired pin configuration.
Client device subnodes use below standard properties.
- $ref: "qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state"

properties:
pins:
@@ -115,7 +114,16 @@ patternProperties:

required:
- pins
- - function
+
+ allOf:
+ - $ref: "qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state"
+ - if:
+ properties:
+ pins:
+ pattern: "^gpio([1-9]|[1-7][0-9]|80)$"
+ then:
+ required:
+ - function

additionalProperties: false

--
2.34.1

2022-09-24 09:01:23

by Krzysztof Kozlowski

[permalink] [raw]
Subject: [PATCH 04/32] ARM: dts: qcom: sdx55: align TLMM pin configuration with DT schema

DT schema expects TLMM pin configuration nodes to be named with
'-state' suffix and their optional children with '-pins' suffix. Schema
also requires 'function' property, so two nodes for the same gpio (mux
and config) should be merged into one.

Signed-off-by: Krzysztof Kozlowski <[email protected]>
---
.../boot/dts/qcom-sdx55-telit-fn980-tlb.dts | 45 +++++++------------
1 file changed, 15 insertions(+), 30 deletions(-)

diff --git a/arch/arm/boot/dts/qcom-sdx55-telit-fn980-tlb.dts b/arch/arm/boot/dts/qcom-sdx55-telit-fn980-tlb.dts
index a4fa468a095f..ac8b4626ae9a 100644
--- a/arch/arm/boot/dts/qcom-sdx55-telit-fn980-tlb.dts
+++ b/arch/arm/boot/dts/qcom-sdx55-telit-fn980-tlb.dts
@@ -282,40 +282,25 @@ &remoteproc_mpss {
};

&tlmm {
- pcie_ep_clkreq_default: pcie_ep_clkreq_default {
- mux {
- pins = "gpio56";
- function = "pcie_clkreq";
- };
- config {
- pins = "gpio56";
- drive-strength = <2>;
- bias-disable;
- };
+ pcie_ep_clkreq_default: pcie-ep-clkreq-default-state {
+ pins = "gpio56";
+ function = "pcie_clkreq";
+ drive-strength = <2>;
+ bias-disable;
};

- pcie_ep_perst_default: pcie_ep_perst_default {
- mux {
- pins = "gpio57";
- function = "gpio";
- };
- config {
- pins = "gpio57";
- drive-strength = <2>;
- bias-pull-down;
- };
+ pcie_ep_perst_default: pcie-ep-perst-default-state {
+ pins = "gpio57";
+ function = "gpio";
+ drive-strength = <2>;
+ bias-pull-down;
};

- pcie_ep_wake_default: pcie_ep_wake_default {
- mux {
- pins = "gpio53";
- function = "gpio";
- };
- config {
- pins = "gpio53";
- drive-strength = <2>;
- bias-disable;
- };
+ pcie_ep_wake_default: pcie-ep-wake-default-state {
+ pins = "gpio53";
+ function = "gpio";
+ drive-strength = <2>;
+ bias-disable;
};
};

--
2.34.1

2022-09-25 14:21:20

by Stephan Gerhold

[permalink] [raw]
Subject: Re: [PATCH 17/32] dt-bindings: pinctrl: qcom,msm8909-tlmm: do not require function on non-GPIOs

Hi Krzysztof,

On Sat, Sep 24, 2022 at 10:04:44AM +0200, Krzysztof Kozlowski wrote:
> Certain pins, like SDcard related, do not have functions and such should
> not be required.
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>

Thanks a lot for all your effort to clean this up!

> ---
> .../bindings/pinctrl/qcom,msm8909-tlmm.yaml | 12 ++++++++++--
> 1 file changed, 10 insertions(+), 2 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,msm8909-tlmm.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,msm8909-tlmm.yaml
> index b1735918fa90..e4332e628698 100644
> --- a/Documentation/devicetree/bindings/pinctrl/qcom,msm8909-tlmm.yaml
> +++ b/Documentation/devicetree/bindings/pinctrl/qcom,msm8909-tlmm.yaml
> @@ -53,7 +53,6 @@ $defs:
> description:
> Pinctrl node's client devices use subnodes for desired pin configuration.
> Client device subnodes use below standard properties.
> - $ref: "qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state"
>
> properties:
> pins:
> @@ -113,7 +112,16 @@ $defs:
>
> required:
> - pins
> - - function
> +
> + allOf:
> + - $ref: "qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state"
> + - if:
> + properties:
> + pins:
> + pattern: "^gpio([0-9]|[1-9][0-9]|10[0-9]|11[0-7])$"
> + then:
> + required:
> + - function
>

Is it possible to place this into qcom,tlmm-common.yaml? If the pattern
is only used to make "function" required for GPIOs, then it should not
matter if it matches just the prefix ("^gpio") or the exact set of
allowed GPIO numbers. The definition of the "pins" property will already
take care of validating those.

Or are there some Qcom SoCs where a GPIO without "function" is valid?

Thanks,
Stephan

2022-09-26 07:31:21

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH 17/32] dt-bindings: pinctrl: qcom,msm8909-tlmm: do not require function on non-GPIOs

On 25/09/2022 16:00, Stephan Gerhold wrote:
>> + allOf:
>> + - $ref: "qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state"
>> + - if:
>> + properties:
>> + pins:
>> + pattern: "^gpio([0-9]|[1-9][0-9]|10[0-9]|11[0-7])$"
>> + then:
>> + required:
>> + - function
>>
>
> Is it possible to place this into qcom,tlmm-common.yaml? If the pattern
> is only used to make "function" required for GPIOs, then it should not
> matter if it matches just the prefix ("^gpio") or the exact set of
> allowed GPIO numbers. The definition of the "pins" property will already
> take care of validating those.

Hm, very good idea.

>
> Or are there some Qcom SoCs where a GPIO without "function" is valid?

Quick look at drivers says there is no such case. I can try adding it to
common schema and look for errors.


Best regards,
Krzysztof

2022-09-26 23:20:13

by Rob Herring (Arm)

[permalink] [raw]
Subject: Re: [PATCH 20/32] dt-bindings: pinctrl: qcom,msm8953: do not require function on non-GPIOs

On Sat, 24 Sep 2022 10:04:47 +0200, Krzysztof Kozlowski wrote:
> Certain pins, like SDcard related, do not have functions and such should
> not be required.
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>
> ---
> .../bindings/pinctrl/qcom,msm8953-pinctrl.yaml | 12 ++++++++++--
> 1 file changed, 10 insertions(+), 2 deletions(-)
>

Reviewed-by: Rob Herring <[email protected]>

2022-09-26 23:45:12

by Rob Herring (Arm)

[permalink] [raw]
Subject: Re: [PATCH 25/32] dt-bindings: pinctrl: qcom,qcm2290: do not require function on non-GPIOs

On Sat, 24 Sep 2022 10:04:52 +0200, Krzysztof Kozlowski wrote:
> Certain pins, like SDcard related, do not have functions and such should
> not be required.
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>
> ---
> .../bindings/pinctrl/qcom,qcm2290-pinctrl.yaml | 11 ++++++++++-
> 1 file changed, 10 insertions(+), 1 deletion(-)
>

Reviewed-by: Rob Herring <[email protected]>

2022-09-26 23:54:47

by Rob Herring (Arm)

[permalink] [raw]
Subject: Re: [PATCH 27/32] dt-bindings: pinctrl: qcom,sdx55: do not require function on non-GPIOs

On Sat, 24 Sep 2022 10:04:54 +0200, Krzysztof Kozlowski wrote:
> Certain pins, like SDcard related, do not have functions and such should
> not be required.
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>
> ---
> .../bindings/pinctrl/qcom,sdx55-pinctrl.yaml | 12 ++++++++++--
> 1 file changed, 10 insertions(+), 2 deletions(-)
>

Reviewed-by: Rob Herring <[email protected]>

2022-09-27 00:16:33

by Rob Herring (Arm)

[permalink] [raw]
Subject: Re: [PATCH 10/32] dt-bindings: pinctrl: qcom,ipq6018: do not require function on non-GPIOs

On Sat, 24 Sep 2022 10:04:37 +0200, Krzysztof Kozlowski wrote:
> Certain pins, like SDcard related, do not have functions and such should
> not be required.
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>
> ---
> .../bindings/pinctrl/qcom,ipq6018-pinctrl.yaml | 12 ++++++++++--
> 1 file changed, 10 insertions(+), 2 deletions(-)
>

Reviewed-by: Rob Herring <[email protected]>

2022-09-27 00:16:50

by Rob Herring (Arm)

[permalink] [raw]
Subject: Re: [PATCH 25/32] dt-bindings: pinctrl: qcom,qcm2290: do not require function on non-GPIOs

On Sat, Sep 24, 2022 at 10:04:52AM +0200, Krzysztof Kozlowski wrote:
> Certain pins, like SDcard related, do not have functions and such should
> not be required.
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>
> ---
> .../bindings/pinctrl/qcom,qcm2290-pinctrl.yaml | 11 ++++++++++-
> 1 file changed, 10 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,qcm2290-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,qcm2290-pinctrl.yaml
> index 5324b61eb4f7..89453cb60c12 100644
> --- a/Documentation/devicetree/bindings/pinctrl/qcom,qcm2290-pinctrl.yaml
> +++ b/Documentation/devicetree/bindings/pinctrl/qcom,qcm2290-pinctrl.yaml
> @@ -60,7 +60,6 @@ patternProperties:
> description:
> Pinctrl node's client devices use subnodes for desired pin configuration.
> Client device subnodes use below standard properties.
> - $ref: "qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state"
>
> properties:
> pins:
> @@ -116,6 +115,16 @@ patternProperties:
> required:
> - pins
>
> + allOf:
> + - $ref: "qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state"

You can drop the quotes here.

> + - if:
> + properties:
> + pins:
> + pattern: "^gpio([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-6])$"
> + then:
> + required:
> + - function
> +
> additionalProperties: false
>
> allOf:
> --
> 2.34.1
>
>

2022-09-27 12:21:23

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH 25/32] dt-bindings: pinctrl: qcom,qcm2290: do not require function on non-GPIOs

On 27/09/2022 01:15, Rob Herring wrote:
>> properties:
>> pins:
>> @@ -116,6 +115,16 @@ patternProperties:
>> required:
>> - pins
>>
>> + allOf:
>> + - $ref: "qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state"
>
> You can drop the quotes here.
>

Ack.

Best regards,
Krzysztof

2022-09-27 12:22:45

by Dmitry Baryshkov

[permalink] [raw]
Subject: Re: [PATCH 25/32] dt-bindings: pinctrl: qcom,qcm2290: do not require function on non-GPIOs

On Sat, 24 Sept 2022 at 11:07, Krzysztof Kozlowski
<[email protected]> wrote:
>
> Certain pins, like SDcard related, do not have functions and such should
> not be required.
>
> Signed-off-by: Krzysztof Kozlowski <[email protected]>
> ---
> .../bindings/pinctrl/qcom,qcm2290-pinctrl.yaml | 11 ++++++++++-
> 1 file changed, 10 insertions(+), 1 deletion(-)
>
> diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,qcm2290-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,qcm2290-pinctrl.yaml
> index 5324b61eb4f7..89453cb60c12 100644
> --- a/Documentation/devicetree/bindings/pinctrl/qcom,qcm2290-pinctrl.yaml
> +++ b/Documentation/devicetree/bindings/pinctrl/qcom,qcm2290-pinctrl.yaml
> @@ -60,7 +60,6 @@ patternProperties:
> description:
> Pinctrl node's client devices use subnodes for desired pin configuration.
> Client device subnodes use below standard properties.
> - $ref: "qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state"
>
> properties:
> pins:
> @@ -116,6 +115,16 @@ patternProperties:
> required:
> - pins
>
> + allOf:

Nit: I think you can drop allOf here and move the $ref up a few lines.

> + - $ref: "qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state"
> + - if:
> + properties:
> + pins:
> + pattern: "^gpio([0-9]|[1-9][0-9]|1[0-1][0-9]|12[0-6])$"
> + then:
> + required:
> + - function
> +
> additionalProperties: false
>
> allOf:
> --
> 2.34.1
>


--
With best wishes
Dmitry

2022-09-27 14:51:06

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH 25/32] dt-bindings: pinctrl: qcom,qcm2290: do not require function on non-GPIOs

On 27/09/2022 13:42, Dmitry Baryshkov wrote:
> On Sat, 24 Sept 2022 at 11:07, Krzysztof Kozlowski
> <[email protected]> wrote:
>>
>> Certain pins, like SDcard related, do not have functions and such should
>> not be required.
>>
>> Signed-off-by: Krzysztof Kozlowski <[email protected]>
>> ---
>> .../bindings/pinctrl/qcom,qcm2290-pinctrl.yaml | 11 ++++++++++-
>> 1 file changed, 10 insertions(+), 1 deletion(-)
>>
>> diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,qcm2290-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,qcm2290-pinctrl.yaml
>> index 5324b61eb4f7..89453cb60c12 100644
>> --- a/Documentation/devicetree/bindings/pinctrl/qcom,qcm2290-pinctrl.yaml
>> +++ b/Documentation/devicetree/bindings/pinctrl/qcom,qcm2290-pinctrl.yaml
>> @@ -60,7 +60,6 @@ patternProperties:
>> description:
>> Pinctrl node's client devices use subnodes for desired pin configuration.
>> Client device subnodes use below standard properties.
>> - $ref: "qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state"
>>
>> properties:
>> pins:
>> @@ -116,6 +115,16 @@ patternProperties:
>> required:
>> - pins
>>
>> + allOf:
>
> Nit: I think you can drop allOf here and move the $ref up a few lines.
>

It's anyway different in v2 - there is no if:then.

Best regards,
Krzysztof

2022-10-03 22:23:30

by Linus Walleij

[permalink] [raw]
Subject: Re: [PATCH 00/32] pinctrl/arm64: qcom: continued - fix Qualcomm TLMM pinctrl schema warnings

On Sat, Sep 24, 2022 at 10:05 AM Krzysztof Kozlowski
<[email protected]> wrote:

> This is the third patchset around Qualcomm pinctrl in recent days:
> 1. First round of TLMM fixes: merged
> 2. LPASS fixes: https://lore.kernel.org/linux-devicetree/[email protected]/T/#t
> 3. Second round of TLMM fixes: THIS PATCHSET

Same thing with TLMM as LPASS! Stack up the bindings, send me pull
requests, because I trust you.

Yours,
Linus Walleij