linux-arm-msm.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 0/6] arm: qcom: mdm9615: second round of bindings and DT fixes
@ 2022-10-06  9:57 Neil Armstrong
  2022-10-06  9:57 ` [PATCH 1/6] dt-bindings: pinctrl: convert qcom,mdm9615-pinctrl.txt to dt-schema Neil Armstrong
                   ` (5 more replies)
  0 siblings, 6 replies; 22+ messages in thread
From: Neil Armstrong @ 2022-10-06  9:57 UTC (permalink / raw)
  To: Konrad Dybcio, Andy Gross, Lee Jones, Bjorn Andersson,
	Linus Walleij, Mark Brown, Krzysztof Kozlowski, Rob Herring,
	Liam Girdwood
  Cc: linux-gpio, Neil Armstrong, linux-kernel, linux-arm-msm, devicetree

This is a second round of bindings & DT fixes for the MDM9615 platform.

This second round focuses on less trivial changes like pinctrl & regulators bindings,
the remaining work will mainly be fixing the qcom,kpss-timer/qcom,msm-timer situation and
add bindings for qcom,lcc-mdm9615, qcom,kpss-gcc & swir,mangoh-iotport-spi.

Dependencies:
- patch 1-2, 4-6: None
- patch 3: bindings dependency on 20221005-mdm9615-sx1509q-yaml-v1-0-0c26649b637c@linaro.org

To: Bjorn Andersson <andersson@kernel.org>
To: Andy Gross <agross@kernel.org>
To: Konrad Dybcio <konrad.dybcio@somainline.org>
To: Linus Walleij <linus.walleij@linaro.org>
To: Rob Herring <robh+dt@kernel.org>
To: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>
To: Lee Jones <lee@kernel.org>
To: Liam Girdwood <lgirdwood@gmail.com>
To: Mark Brown <broonie@kernel.org>
Cc: linux-arm-msm@vger.kernel.org
Cc: linux-gpio@vger.kernel.org
Cc: devicetree@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>

---
Neil Armstrong (6):
      dt-bindings: pinctrl: convert qcom,mdm9615-pinctrl.txt to dt-schema
      arm: dts: qcom: mdm9615: fix pinctrl subnodes
      arm: dts: qcom: mdm9615: wp8548-mangoh-green: fix sx150xq node names and probe-reset property
      dt-bindings: soc: qcom: convert non-smd RPM bindings to dt-schema
      dt-bindings: regulators: convert non-smd RPM Regulators bindings to dt-schema
      dt-bindings: soc: qcom: ipc-rpm: refer to qcom,ipc-rpm-regulator.yaml

 Documentation/devicetree/bindings/mfd/qcom-rpm.txt | 283 ---------------------
 .../bindings/pinctrl/qcom,mdm9615-pinctrl.txt      | 161 ------------
 .../bindings/pinctrl/qcom,mdm9615-pinctrl.yaml     | 101 ++++++++
 .../bindings/regulator/qcom,ipc-rpm-regulator.yaml | 127 +++++++++
 .../devicetree/bindings/soc/qcom/qcom,ipc-rpm.yaml |  73 ++++++
 .../boot/dts/qcom-mdm9615-wp8548-mangoh-green.dts  |  20 +-
 arch/arm/boot/dts/qcom-mdm9615-wp8548.dtsi         |  22 +-
 7 files changed, 322 insertions(+), 465 deletions(-)
---
base-commit: 6b8b72b0cdd146fe66c6009d86a1784eb24ec798
change-id: 20221005-mdm9615-pinctrl-yaml-13f5c18a4d3a

Best regards,
-- 
Neil Armstrong <neil.armstrong@linaro.org>

^ permalink raw reply	[flat|nested] 22+ messages in thread

* [PATCH 1/6] dt-bindings: pinctrl: convert qcom,mdm9615-pinctrl.txt to dt-schema
  2022-10-06  9:57 [PATCH 0/6] arm: qcom: mdm9615: second round of bindings and DT fixes Neil Armstrong
@ 2022-10-06  9:57 ` Neil Armstrong
  2022-10-06 11:09   ` Krzysztof Kozlowski
  2022-10-06 12:27   ` Rob Herring
  2022-10-06  9:57 ` [PATCH 2/6] arm: dts: qcom: mdm9615: fix pinctrl subnodes Neil Armstrong
                   ` (4 subsequent siblings)
  5 siblings, 2 replies; 22+ messages in thread
From: Neil Armstrong @ 2022-10-06  9:57 UTC (permalink / raw)
  To: Konrad Dybcio, Andy Gross, Lee Jones, Bjorn Andersson,
	Linus Walleij, Mark Brown, Krzysztof Kozlowski, Rob Herring,
	Liam Girdwood
  Cc: linux-gpio, Neil Armstrong, linux-kernel, linux-arm-msm, devicetree

Convert the MDM9515 pinctrl bindings to dt-schema.

Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
---
 .../bindings/pinctrl/qcom,mdm9615-pinctrl.txt      | 161 ---------------------
 .../bindings/pinctrl/qcom,mdm9615-pinctrl.yaml     | 101 +++++++++++++
 2 files changed, 101 insertions(+), 161 deletions(-)

diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,mdm9615-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/qcom,mdm9615-pinctrl.txt
deleted file mode 100644
index d46973968873..000000000000
--- a/Documentation/devicetree/bindings/pinctrl/qcom,mdm9615-pinctrl.txt
+++ /dev/null
@@ -1,161 +0,0 @@
-Qualcomm MDM9615 TLMM block
-
-This binding describes the Top Level Mode Multiplexer block found in the
-MDM9615 platform.
-
-- compatible:
-	Usage: required
-	Value type: <string>
-	Definition: must be "qcom,mdm9615-pinctrl"
-
-- reg:
-	Usage: required
-	Value type: <prop-encoded-array>
-	Definition: the base address and size of the TLMM register space.
-
-- interrupts:
-	Usage: required
-	Value type: <prop-encoded-array>
-	Definition: should specify the TLMM summary IRQ.
-
-- interrupt-controller:
-	Usage: required
-	Value type: <none>
-	Definition: identifies this node as an interrupt controller
-
-- #interrupt-cells:
-	Usage: required
-	Value type: <u32>
-	Definition: must be 2. Specifying the pin number and flags, as defined
-		    in <dt-bindings/interrupt-controller/irq.h>
-
-- gpio-controller:
-	Usage: required
-	Value type: <none>
-	Definition: identifies this node as a gpio controller
-
-- #gpio-cells:
-	Usage: required
-	Value type: <u32>
-	Definition: must be 2. Specifying the pin number and flags, as defined
-		    in <dt-bindings/gpio/gpio.h>
-
-- gpio-ranges:
-	Usage: required
-	Definition:  see ../gpio/gpio.txt
-
-- gpio-reserved-ranges:
-	Usage: optional
-	Definition: see ../gpio/gpio.txt
-
-Please refer to ../gpio/gpio.txt and ../interrupt-controller/interrupts.txt for
-a general description of GPIO and interrupt bindings.
-
-Please refer to pinctrl-bindings.txt in this directory for details of the
-common pinctrl bindings used by client devices, including the meaning of the
-phrase "pin configuration node".
-
-The pin configuration nodes act as a container for an arbitrary number of
-subnodes. Each of these subnodes represents some desired configuration for a
-pin, a group, or a list of pins or groups. This configuration can include the
-mux function to select on those pin(s)/group(s), and various pin configuration
-parameters, such as pull-up, drive strength, etc.
-
-
-PIN CONFIGURATION NODES:
-
-The name of each subnode is not important; all subnodes should be enumerated
-and processed purely based on their content.
-
-Each subnode only affects those parameters that are explicitly listed. In
-other words, a subnode that lists a mux function but no pin configuration
-parameters implies no information about any pin configuration parameters.
-Similarly, a pin subnode that describes a pullup parameter implies no
-information about e.g. the mux function.
-
-
-The following generic properties as defined in pinctrl-bindings.txt are valid
-to specify in a pin configuration subnode:
-
-- pins:
-	Usage: required
-	Value type: <string-array>
-	Definition: List of gpio pins affected by the properties specified in
-		    this subnode.  Valid pins are:
-		    gpio0-gpio87
-
-- function:
-	Usage: required
-	Value type: <string>
-	Definition: Specify the alternative function to be configured for the
-		    specified pins.
-		    Valid values are:
-		    gpio, gsbi2_i2c, gsbi3, gsbi4, gsbi5_i2c, gsbi5_uart,
-		    sdc2, ebi2_lcdc, ps_hold, prim_audio, sec_audio,
-		    cdc_mclk
-
-- bias-disable:
-	Usage: optional
-	Value type: <none>
-	Definition: The specified pins should be configured as no pull.
-
-- bias-pull-down:
-	Usage: optional
-	Value type: <none>
-	Definition: The specified pins should be configured as pull down.
-
-- bias-pull-up:
-	Usage: optional
-	Value type: <none>
-	Definition: The specified pins should be configured as pull up.
-
-- output-high:
-	Usage: optional
-	Value type: <none>
-	Definition: The specified pins are configured in output mode, driven
-		    high.
-
-- output-low:
-	Usage: optional
-	Value type: <none>
-	Definition: The specified pins are configured in output mode, driven
-		    low.
-
-- drive-strength:
-	Usage: optional
-	Value type: <u32>
-	Definition: Selects the drive strength for the specified pins, in mA.
-		    Valid values are: 2, 4, 6, 8, 10, 12, 14 and 16
-
-Example:
-
-	msmgpio: pinctrl@800000 {
-		compatible = "qcom,mdm9615-pinctrl";
-		reg = <0x800000 0x4000>;
-
-		gpio-controller;
-		#gpio-cells = <2>;
-		gpio-ranges = <&msmgpio 0 0 88>;
-		interrupt-controller;
-		#interrupt-cells = <2>;
-		interrupts = <0 16 0x4>;
-
-		gsbi8_uart: gsbi8-uart {
-			mux {
-				pins = "gpio34", "gpio35";
-				function = "gsbi8";
-			};
-
-			tx {
-				pins = "gpio34";
-				drive-strength = <4>;
-				bias-disable;
-			};
-
-			rx {
-				pins = "gpio35";
-				drive-strength = <2>;
-				bias-pull-up;
-			};
-		};
-	};
diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,mdm9615-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,mdm9615-pinctrl.yaml
new file mode 100644
index 000000000000..6a5966fc0098
--- /dev/null
+++ b/Documentation/devicetree/bindings/pinctrl/qcom,mdm9615-pinctrl.yaml
@@ -0,0 +1,101 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/pinctrl/qcom,mdm9615-pinctrl.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Qualcomm Technologies, Inc. MDM9615 TLMM block
+
+maintainers:
+  - Bjorn Andersson <andersson@kernel.org>
+
+description: |
+  This binding describes the Top Level Mode Multiplexer block found in the
+  MDM9615 platform.
+
+allOf:
+  - $ref: "pinctrl.yaml#"
+  - $ref: /schemas/pinctrl/qcom,tlmm-common.yaml#
+
+properties:
+  compatible:
+    const: qcom,mdm9615-pinctrl
+
+  reg:
+    maxItems: 1
+
+  interrupts: true
+  interrupt-controller: true
+  '#interrupt-cells': true
+  gpio-controller: true
+  '#gpio-cells': true
+  gpio-ranges: true
+
+required:
+  - compatible
+  - reg
+
+additionalProperties: false
+
+patternProperties:
+  '-state$':
+    oneOf:
+      - $ref: "#/$defs/qcom-mdm9615-pinctrl-state"
+      - patternProperties:
+          "-pins$":
+            $ref: "#/$defs/qcom-mdm9615-pinctrl-state"
+
+'$defs':
+  qcom-mdm9615-pinctrl-state:
+    type: object
+    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:
+        description:
+          List of gpio pins affected by the properties specified in this
+          subnode.
+        items:
+          oneOf:
+            - pattern: "^gpio([0-9]|[1-7][0-9]|8[0-7])$"
+        minItems: 1
+        maxItems: 16
+
+      function:
+        description:
+          Specify the alternative function to be configured for the specified
+          pins.
+
+        enum: [ gpio, gsbi2_i2c, gsbi3, gsbi4, gsbi5_i2c, gsbi5_uart,
+                sdc2, ebi2_lcdc, ps_hold, prim_audio, sec_audio, cdc_mclk, ]
+
+      bias-disable: true
+      bias-pull-down: true
+      bias-pull-up: true
+      drive-strength: true
+      output-high: true
+      output-low: true
+      input-enable: true
+
+    required:
+      - pins
+      - function
+
+    additionalProperties: false
+
+examples:
+  - |
+        #include <dt-bindings/interrupt-controller/arm-gic.h>
+        tlmm: pinctrl@1000000 {
+          compatible = "qcom,mdm9615-pinctrl";
+          reg = <0x01000000 0x300000>;
+          interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
+          gpio-controller;
+          gpio-ranges = <&msmgpio 0 0 88>;
+          #gpio-cells = <2>;
+          interrupt-controller;
+          #interrupt-cells = <2>;
+        };

-- 
b4 0.10.1

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [PATCH 2/6] arm: dts: qcom: mdm9615: fix pinctrl subnodes
  2022-10-06  9:57 [PATCH 0/6] arm: qcom: mdm9615: second round of bindings and DT fixes Neil Armstrong
  2022-10-06  9:57 ` [PATCH 1/6] dt-bindings: pinctrl: convert qcom,mdm9615-pinctrl.txt to dt-schema Neil Armstrong
@ 2022-10-06  9:57 ` Neil Armstrong
  2022-10-06 11:10   ` Krzysztof Kozlowski
  2022-10-07 19:36   ` Konrad Dybcio
  2022-10-06  9:58 ` [PATCH 3/6] arm: dts: qcom: mdm9615: wp8548-mangoh-green: fix sx150xq node names and probe-reset property Neil Armstrong
                   ` (3 subsequent siblings)
  5 siblings, 2 replies; 22+ messages in thread
From: Neil Armstrong @ 2022-10-06  9:57 UTC (permalink / raw)
  To: Konrad Dybcio, Andy Gross, Lee Jones, Bjorn Andersson,
	Linus Walleij, Mark Brown, Krzysztof Kozlowski, Rob Herring,
	Liam Girdwood
  Cc: linux-gpio, Neil Armstrong, linux-kernel, linux-arm-msm, devicetree

Fix the MDM9615 DT to the expected subnodes namings.

Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
---
 .../boot/dts/qcom-mdm9615-wp8548-mangoh-green.dts  |  8 ++++----
 arch/arm/boot/dts/qcom-mdm9615-wp8548.dtsi         | 22 +++++++++++-----------
 2 files changed, 15 insertions(+), 15 deletions(-)

diff --git a/arch/arm/boot/dts/qcom-mdm9615-wp8548-mangoh-green.dts b/arch/arm/boot/dts/qcom-mdm9615-wp8548-mangoh-green.dts
index 4e53b3d70195..30a110984597 100644
--- a/arch/arm/boot/dts/qcom-mdm9615-wp8548-mangoh-green.dts
+++ b/arch/arm/boot/dts/qcom-mdm9615-wp8548-mangoh-green.dts
@@ -45,8 +45,8 @@ &msmgpio {
 	 * - 42: IOT0_GPIO1 and SD Card Detect
 	 */
 
-	gpioext1_pins: gpioext1_pins {
-		pins {
+	gpioext1_pins: gpioext1-state {
+		gpioext1-pins {
 			pins = "gpio2";
 			function = "gpio";
 			input-enable;
@@ -54,8 +54,8 @@ pins {
 		};
 	};
 
-	sdc_cd_pins: sdc_cd_pins {
-		pins {
+	sdc_cd_pins: sdc-cd-state {
+		sdc-cd-pins {
 			pins = "gpio42";
 			function = "gpio";
 			drive-strength = <2>;
diff --git a/arch/arm/boot/dts/qcom-mdm9615-wp8548.dtsi b/arch/arm/boot/dts/qcom-mdm9615-wp8548.dtsi
index 2fe8693dc3cd..92c8003dac25 100644
--- a/arch/arm/boot/dts/qcom-mdm9615-wp8548.dtsi
+++ b/arch/arm/boot/dts/qcom-mdm9615-wp8548.dtsi
@@ -22,8 +22,8 @@ &msmgpio {
 	pinctrl-0 = <&reset_out_pins>;
 	pinctrl-names = "default";
 
-	gsbi3_pins: gsbi3_pins {
-		mux {
+	gsbi3_pins: gsbi3-state {
+		gsbi3-pins {
 			pins = "gpio8", "gpio9", "gpio10", "gpio11";
 			function = "gsbi3";
 			drive-strength = <8>;
@@ -31,8 +31,8 @@ mux {
 		};
 	};
 
-	gsbi4_pins: gsbi4_pins {
-		mux {
+	gsbi4_pins: gsbi4-state {
+		gsbi4-pins {
 			pins = "gpio12", "gpio13", "gpio14", "gpio15";
 			function = "gsbi4";
 			drive-strength = <8>;
@@ -40,15 +40,15 @@ mux {
 		};
 	};
 
-	gsbi5_i2c_pins: gsbi5_i2c_pins {
-		pin16 {
+	gsbi5_i2c_pins: gsbi5-i2c-state {
+		sda-pins {
 			pins = "gpio16";
 			function = "gsbi5_i2c";
 			drive-strength = <8>;
 			bias-disable;
 		};
 
-		pin17 {
+		scl-pins {
 			pins = "gpio17";
 			function = "gsbi5_i2c";
 			drive-strength = <2>;
@@ -56,8 +56,8 @@ pin17 {
 		};
 	};
 
-	gsbi5_uart_pins: gsbi5_uart_pins {
-		mux {
+	gsbi5_uart_pins: gsbi5-uart-state {
+		gsbi5-uart-pins {
 			pins = "gpio18", "gpio19";
 			function = "gsbi5_uart";
 			drive-strength = <8>;
@@ -65,8 +65,8 @@ mux {
 		};
 	};
 
-	reset_out_pins: reset_out_pins {
-		pins {
+	reset_out_pins: reset-out-state {
+		reset-out-pins {
 			pins = "gpio66";
 			function = "gpio";
 			drive-strength = <2>;

-- 
b4 0.10.1

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [PATCH 3/6] arm: dts: qcom: mdm9615: wp8548-mangoh-green: fix sx150xq node names and probe-reset property
  2022-10-06  9:57 [PATCH 0/6] arm: qcom: mdm9615: second round of bindings and DT fixes Neil Armstrong
  2022-10-06  9:57 ` [PATCH 1/6] dt-bindings: pinctrl: convert qcom,mdm9615-pinctrl.txt to dt-schema Neil Armstrong
  2022-10-06  9:57 ` [PATCH 2/6] arm: dts: qcom: mdm9615: fix pinctrl subnodes Neil Armstrong
@ 2022-10-06  9:58 ` Neil Armstrong
  2022-10-07 19:38   ` Konrad Dybcio
  2022-10-06  9:58 ` [PATCH 4/6] dt-bindings: soc: qcom: convert non-smd RPM bindings to dt-schema Neil Armstrong
                   ` (2 subsequent siblings)
  5 siblings, 1 reply; 22+ messages in thread
From: Neil Armstrong @ 2022-10-06  9:58 UTC (permalink / raw)
  To: Konrad Dybcio, Andy Gross, Lee Jones, Bjorn Andersson,
	Linus Walleij, Mark Brown, Krzysztof Kozlowski, Rob Herring,
	Liam Girdwood
  Cc: linux-gpio, Neil Armstrong, linux-kernel, linux-arm-msm, devicetree

Fix the sx150xq node names to pinctrl and use the right probe-reset property.

Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
---
 arch/arm/boot/dts/qcom-mdm9615-wp8548-mangoh-green.dts | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/arch/arm/boot/dts/qcom-mdm9615-wp8548-mangoh-green.dts b/arch/arm/boot/dts/qcom-mdm9615-wp8548-mangoh-green.dts
index 30a110984597..a8304769b509 100644
--- a/arch/arm/boot/dts/qcom-mdm9615-wp8548-mangoh-green.dts
+++ b/arch/arm/boot/dts/qcom-mdm9615-wp8548-mangoh-green.dts
@@ -116,7 +116,7 @@ i2c@4 {
 			#size-cells = <0>;
 			reg = <4>;
 
-			gpioext0: gpio@3e {
+			gpioext0: pinctrl@3e {
 				/* GPIO Expander 0 Mapping :
 				 * - 0: ARDUINO_RESET_Level shift
 				 * - 1: BattChrgr_PG_N
@@ -142,7 +142,7 @@ gpioext0: gpio@3e {
 				interrupt-parent = <&gpioext1>;
 				interrupts = <0 IRQ_TYPE_EDGE_FALLING>;
 
-				probe-reset;
+				semtech,probe-reset;
 
 				gpio-controller;
 				interrupt-controller;
@@ -154,7 +154,7 @@ i2c@5 {
 			#size-cells = <0>;
 			reg = <5>;
 
-			gpioext1: gpio@3f {
+			gpioext1: pinctrl@3f {
 				/* GPIO Expander 1 Mapping :
 				 * - 0: GPIOEXP_INT1
 				 * - 1: Battery detect
@@ -183,7 +183,7 @@ gpioext1: gpio@3f {
 				interrupt-parent = <&msmgpio>;
 				interrupts = <0 IRQ_TYPE_EDGE_FALLING>;
 
-				probe-reset;
+				semtech,probe-reset;
 
 				gpio-controller;
 				interrupt-controller;
@@ -195,7 +195,7 @@ i2c@6 {
 			#size-cells = <0>;
 			reg = <6>;
 
-			gpioext2: gpio@70 {
+			gpioext2: pinctrl@70 {
 				/* GPIO Expander 2 Mapping :
 				 * - 0: USB_HUB_INTn
 				 * - 1: HUB_CONNECT
@@ -221,7 +221,7 @@ gpioext2: gpio@70 {
 				interrupt-parent = <&gpioext1>;
 				interrupts = <14 IRQ_TYPE_EDGE_FALLING>;
 
-				probe-reset;
+				semtech,probe-reset;
 
 				gpio-controller;
 				interrupt-controller;

-- 
b4 0.10.1

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [PATCH 4/6] dt-bindings: soc: qcom: convert non-smd RPM bindings to dt-schema
  2022-10-06  9:57 [PATCH 0/6] arm: qcom: mdm9615: second round of bindings and DT fixes Neil Armstrong
                   ` (2 preceding siblings ...)
  2022-10-06  9:58 ` [PATCH 3/6] arm: dts: qcom: mdm9615: wp8548-mangoh-green: fix sx150xq node names and probe-reset property Neil Armstrong
@ 2022-10-06  9:58 ` Neil Armstrong
  2022-10-06 19:53   ` Rob Herring
  2022-10-06  9:58 ` [PATCH 5/6] dt-bindings: regulators: convert non-smd RPM Regulators " Neil Armstrong
  2022-10-06  9:58 ` [PATCH 6/6] dt-bindings: soc: qcom: ipc-rpm: refer to qcom,ipc-rpm-regulator.yaml Neil Armstrong
  5 siblings, 1 reply; 22+ messages in thread
From: Neil Armstrong @ 2022-10-06  9:58 UTC (permalink / raw)
  To: Konrad Dybcio, Andy Gross, Lee Jones, Bjorn Andersson,
	Linus Walleij, Mark Brown, Krzysztof Kozlowski, Rob Herring,
	Liam Girdwood
  Cc: linux-gpio, Neil Armstrong, linux-kernel, linux-arm-msm, devicetree

Convert the non-SMD RPM node bindings to dt-schema, the regulators subnode
refers to regulators,yaml until we have the proper bindings.

Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
---
 Documentation/devicetree/bindings/mfd/qcom-rpm.txt | 39 +-----------
 .../devicetree/bindings/soc/qcom/qcom,ipc-rpm.yaml | 73 ++++++++++++++++++++++
 2 files changed, 74 insertions(+), 38 deletions(-)

diff --git a/Documentation/devicetree/bindings/mfd/qcom-rpm.txt b/Documentation/devicetree/bindings/mfd/qcom-rpm.txt
index b823b8625243..b622359e73c2 100644
--- a/Documentation/devicetree/bindings/mfd/qcom-rpm.txt
+++ b/Documentation/devicetree/bindings/mfd/qcom-rpm.txt
@@ -5,44 +5,7 @@ various Qualcomm platforms. The RPM allows each component in the system to vote
 for state of the system resources, such as clocks, regulators and bus
 frequencies.
 
-- compatible:
-	Usage: required
-	Value type: <string>
-	Definition: must be one of:
-		    "qcom,rpm-apq8064"
-		    "qcom,rpm-msm8660"
-		    "qcom,rpm-msm8960"
-		    "qcom,rpm-ipq8064"
-		    "qcom,rpm-mdm9615"
-
-- reg:
-	Usage: required
-	Value type: <prop-encoded-array>
-	Definition: base address and size of the RPM's message ram
-
-- interrupts:
-	Usage: required
-	Value type: <prop-encoded-array>
-	Definition: three entries specifying the RPM's:
-		    1. acknowledgement interrupt
-		    2. error interrupt
-		    3. wakeup interrupt
-
-- interrupt-names:
-	Usage: required
-	Value type: <string-array>
-	Definition: must be the three strings "ack", "err" and "wakeup", in order
-
-- qcom,ipc:
-	Usage: required
-	Value type: <prop-encoded-array>
-
-	Definition: three entries specifying the outgoing ipc bit used for
-		    signaling the RPM:
-		    - phandle to a syscon node representing the apcs registers
-		    - u32 representing offset to the register within the syscon
-		    - u32 representing the ipc bit within the register
-
+Please refer to soc/qcom/qcom,ipc-rpm.yaml
 
 = SUBNODES
 
diff --git a/Documentation/devicetree/bindings/soc/qcom/qcom,ipc-rpm.yaml b/Documentation/devicetree/bindings/soc/qcom/qcom,ipc-rpm.yaml
new file mode 100644
index 000000000000..d416950189d1
--- /dev/null
+++ b/Documentation/devicetree/bindings/soc/qcom/qcom,ipc-rpm.yaml
@@ -0,0 +1,73 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: "http://devicetree.org/schemas/soc/qcom/qcom,ipc-rpm.yaml#"
+$schema: "http://devicetree.org/meta-schemas/core.yaml#"
+
+title: Qualcomm Resource Power Manager (RPM) over IPC
+
+description: |
+  This driver is used to interface with the Resource Power Manager (RPM) found
+  in various Qualcomm platforms. The RPM allows each component in the system
+  to vote for state of the system resources, such as clocks, regulators and bus
+  frequencies.
+
+maintainers:
+  - Bjorn Andersson <andersson@kernel.org>
+
+properties:
+  compatible:
+    enum:
+      - qcom,rpm-apq8064
+      - qcom,rpm-msm8660
+      - qcom,rpm-msm8960
+      - qcom,rpm-ipq8064
+      - qcom,rpm-mdm9615
+
+  reg: true
+
+  interrupts:
+    minItems: 3
+
+  interrupt-names:
+    items:
+      - const: ack
+      - const: err
+      - const: wakeup
+
+  qcom,ipc:
+    $ref: /schemas/types.yaml#/definitions/phandle-array
+    items:
+      - items:
+          - description: phandle to a syscon node representing the APCS registers
+          - description: u32 representing offset to the register within the syscon
+          - description: u32 representing the ipc bit within the register
+    description:
+      Three entries specifying the outgoing ipc bit used for signaling the RPM.
+
+  regulators:
+    type: object
+    $ref: /schemas/regulator/regulator.yaml#
+
+required:
+  - compatible
+  - reg
+  - interrupts
+  - interrupt-names
+  - qcom,ipc
+
+additionalProperties: false
+
+examples:
+  - |
+    #include <dt-bindings/interrupt-controller/arm-gic.h>
+    #include <dt-bindings/interrupt-controller/irq.h>
+
+    rpm@108000 {
+      compatible = "qcom,rpm-msm8960";
+      reg = <0x108000 0x1000>;
+      qcom,ipc = <&apcs 0x8 2>;
+
+      interrupts = <GIC_SPI 19 IRQ_TYPE_NONE>, <GIC_SPI 21 IRQ_TYPE_NONE>, <GIC_SPI 22 IRQ_TYPE_NONE>;
+      interrupt-names = "ack", "err", "wakeup";
+    };

-- 
b4 0.10.1

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [PATCH 5/6] dt-bindings: regulators: convert non-smd RPM Regulators bindings to dt-schema
  2022-10-06  9:57 [PATCH 0/6] arm: qcom: mdm9615: second round of bindings and DT fixes Neil Armstrong
                   ` (3 preceding siblings ...)
  2022-10-06  9:58 ` [PATCH 4/6] dt-bindings: soc: qcom: convert non-smd RPM bindings to dt-schema Neil Armstrong
@ 2022-10-06  9:58 ` Neil Armstrong
  2022-10-06 12:27   ` Rob Herring
  2022-10-06 20:04   ` Rob Herring
  2022-10-06  9:58 ` [PATCH 6/6] dt-bindings: soc: qcom: ipc-rpm: refer to qcom,ipc-rpm-regulator.yaml Neil Armstrong
  5 siblings, 2 replies; 22+ messages in thread
From: Neil Armstrong @ 2022-10-06  9:58 UTC (permalink / raw)
  To: Konrad Dybcio, Andy Gross, Lee Jones, Bjorn Andersson,
	Linus Walleij, Mark Brown, Krzysztof Kozlowski, Rob Herring,
	Liam Girdwood
  Cc: linux-gpio, Neil Armstrong, linux-kernel, linux-arm-msm, devicetree

Convert the non-SMD Regulators  bindings to dt-schema and remove the
old text based bindings now we have migrated all the content.

Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
---
 Documentation/devicetree/bindings/mfd/qcom-rpm.txt | 246 ---------------------
 .../bindings/regulator/qcom,ipc-rpm-regulator.yaml | 127 +++++++++++
 2 files changed, 127 insertions(+), 246 deletions(-)

diff --git a/Documentation/devicetree/bindings/mfd/qcom-rpm.txt b/Documentation/devicetree/bindings/mfd/qcom-rpm.txt
deleted file mode 100644
index b622359e73c2..000000000000
--- a/Documentation/devicetree/bindings/mfd/qcom-rpm.txt
+++ /dev/null
@@ -1,246 +0,0 @@
-Qualcomm Resource Power Manager (RPM)
-
-This driver is used to interface with the Resource Power Manager (RPM) found in
-various Qualcomm platforms. The RPM allows each component in the system to vote
-for state of the system resources, such as clocks, regulators and bus
-frequencies.
-
-Please refer to soc/qcom/qcom,ipc-rpm.yaml
-
-= SUBNODES
-
-The RPM exposes resources to its subnodes. The below bindings specify the set
-of valid subnodes that can operate on these resources.
-
-== Regulators
-
-Regulator nodes are identified by their compatible:
-
-- compatible:
-	Usage: required
-	Value type: <string>
-	Definition: must be one of:
-		    "qcom,rpm-pm8058-regulators"
-		    "qcom,rpm-pm8901-regulators"
-		    "qcom,rpm-pm8921-regulators"
-		    "qcom,rpm-pm8018-regulators"
-		    "qcom,rpm-smb208-regulators"
-
-- vdd_l0_l1_lvs-supply:
-- vdd_l2_l11_l12-supply:
-- vdd_l3_l4_l5-supply:
-- vdd_l6_l7-supply:
-- vdd_l8-supply:
-- vdd_l9-supply:
-- vdd_l10-supply:
-- vdd_l13_l16-supply:
-- vdd_l14_l15-supply:
-- vdd_l17_l18-supply:
-- vdd_l19_l20-supply:
-- vdd_l21-supply:
-- vdd_l22-supply:
-- vdd_l23_l24_l25-supply:
-- vdd_ncp-supply:
-- vdd_s0-supply:
-- vdd_s1-supply:
-- vdd_s2-supply:
-- vdd_s3-supply:
-- vdd_s4-supply:
-	Usage: optional (pm8058 only)
-	Value type: <phandle>
-	Definition: reference to regulator supplying the input pin, as
-		    described in the data sheet
-
-- lvs0_in-supply:
-- lvs1_in-supply:
-- lvs2_in-supply:
-- lvs3_in-supply:
-- mvs_in-supply:
-- vdd_l0-supply:
-- vdd_l1-supply:
-- vdd_l2-supply:
-- vdd_l3-supply:
-- vdd_l4-supply:
-- vdd_l5-supply:
-- vdd_l6-supply:
-- vdd_s0-supply:
-- vdd_s1-supply:
-- vdd_s2-supply:
-- vdd_s3-supply:
-- vdd_s4-supply:
-	Usage: optional (pm8901 only)
-	Value type: <phandle>
-	Definition: reference to regulator supplying the input pin, as
-		    described in the data sheet
-
-- vdd_l1_l2_l12_l18-supply:
-- vdd_l3_l15_l17-supply:
-- vdd_l4_l14-supply:
-- vdd_l5_l8_l16-supply:
-- vdd_l6_l7-supply:
-- vdd_l9_l11-supply:
-- vdd_l10_l22-supply:
-- vdd_l21_l23_l29-supply:
-- vdd_l24-supply:
-- vdd_l25-supply:
-- vdd_l26-supply:
-- vdd_l27-supply:
-- vdd_l28-supply:
-- vdd_ncp-supply:
-- vdd_s1-supply:
-- vdd_s2-supply:
-- vdd_s4-supply:
-- vdd_s5-supply:
-- vdd_s6-supply:
-- vdd_s7-supply:
-- vdd_s8-supply:
-- vin_5vs-supply:
-- vin_lvs1_3_6-supply:
-- vin_lvs2-supply:
-- vin_lvs4_5_7-supply:
-	Usage: optional (pm8921 only)
-	Value type: <phandle>
-	Definition: reference to regulator supplying the input pin, as
-		    described in the data sheet
-
-- vin_lvs1-supply:
-- vdd_l7-supply:
-- vdd_l8-supply:
-- vdd_l9_l10_l11_l12-supply:
-	Usage: optional (pm8018 only)
-	Value type: <phandle>
-	Definition: reference to regulator supplying the input pin, as
-		    described in the data sheet
-
-The regulator node houses sub-nodes for each regulator within the device. Each
-sub-node is identified using the node's name, with valid values listed for each
-of the pmics below.
-
-pm8058:
-	l0, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11, l12, l13, l14, l15,
-	l16, l17, l18, l19, l20, l21, l22, l23, l24, l25, s0, s1, s2, s3, s4,
-	lvs0, lvs1, ncp
-
-pm8901:
-	l0, l1, l2, l3, l4, l5, l6, s0, s1, s2, s3, s4, lvs0, lvs1, lvs2, lvs3,
-	mvs
-
-pm8921:
-	s1, s2, s3, s4, s7, s8, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11,
-	l12, l14, l15, l16, l17, l18, l21, l22, l23, l24, l25, l26, l27, l28,
-	l29, lvs1, lvs2, lvs3, lvs4, lvs5, lvs6, lvs7, usb-switch, hdmi-switch,
-	ncp
-
-pm8018:
-	s1, s2, s3, s4, s5, , l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11,
-	l12, l14, lvs1
-
-smb208:
-	s1a, s1b, s2a, s2b
-
-The content of each sub-node is defined by the standard binding for regulators -
-see regulator.txt - with additional custom properties described below:
-
-=== Switch-mode Power Supply regulator custom properties
-
-- bias-pull-down:
-	Usage: optional
-	Value type: <empty>
-	Definition: enable pull down of the regulator when inactive
-
-- qcom,switch-mode-frequency:
-	Usage: required
-	Value type: <u32>
-	Definition: Frequency (Hz) of the switch-mode power supply;
-		    must be one of:
-		    19200000, 9600000, 6400000, 4800000, 3840000, 3200000,
-		    2740000, 2400000, 2130000, 1920000, 1750000, 1600000,
-		    1480000, 1370000, 1280000, 1200000
-
-- qcom,force-mode:
-	Usage: optional (default if no other qcom,force-mode is specified)
-	Value type: <u32>
-	Definition: indicates that the regulator should be forced to a
-		   particular mode, valid values are:
-		   QCOM_RPM_FORCE_MODE_NONE - do not force any mode
-		   QCOM_RPM_FORCE_MODE_LPM - force into low power mode
-		   QCOM_RPM_FORCE_MODE_HPM - force into high power mode
-		   QCOM_RPM_FORCE_MODE_AUTO - allow regulator to automatically
-					      select its own mode based on
-					      realtime current draw, only for:
-					      pm8921 smps and ftsmps
-
-- qcom,power-mode-hysteretic:
-	Usage: optional
-	Value type: <empty>
-	Definition: select that the power supply should operate in hysteretic
-		    mode, instead of the default pwm mode
-
-=== Low-dropout regulator custom properties
-
-- bias-pull-down:
-	Usage: optional
-	Value type: <empty>
-	Definition: enable pull down of the regulator when inactive
-
-- qcom,force-mode:
-	Usage: optional
-	Value type: <u32>
-	Definition: indicates that the regulator should not be forced to any
-		   particular mode, valid values are:
-		   QCOM_RPM_FORCE_MODE_NONE - do not force any mode
-		   QCOM_RPM_FORCE_MODE_LPM - force into low power mode
-		   QCOM_RPM_FORCE_MODE_HPM - force into high power mode
-		   QCOM_RPM_FORCE_MODE_BYPASS - set regulator to use bypass
-						mode, i.e.  to act as a switch
-						and not regulate, only for:
-						pm8921 pldo, nldo and nldo1200
-
-=== Negative Charge Pump custom properties
-
-- qcom,switch-mode-frequency:
-	Usage: required
-	Value type: <u32>
-	Definition: Frequency (Hz) of the switch mode power supply;
-		    must be one of:
-		    19200000, 9600000, 6400000, 4800000, 3840000, 3200000,
-		    2740000, 2400000, 2130000, 1920000, 1750000, 1600000,
-		    1480000, 1370000, 1280000, 1200000
-
-= EXAMPLE
-
-	#include <dt-bindings/mfd/qcom-rpm.h>
-
-	rpm@108000 {
-		compatible = "qcom,rpm-msm8960";
-		reg = <0x108000 0x1000>;
-		qcom,ipc = <&apcs 0x8 2>;
-
-		interrupts = <0 19 0>, <0 21 0>, <0 22 0>;
-		interrupt-names = "ack", "err", "wakeup";
-
-		regulators {
-			compatible = "qcom,rpm-pm8921-regulators";
-			vdd_l1_l2_l12_l18-supply = <&pm8921_s4>;
-
-			s1 {
-				regulator-min-microvolt = <1225000>;
-				regulator-max-microvolt = <1225000>;
-
-				bias-pull-down;
-
-				qcom,switch-mode-frequency = <3200000>;
-			};
-
-			pm8921_s4: s4 {
-				regulator-min-microvolt = <1800000>;
-				regulator-max-microvolt = <1800000>;
-
-				qcom,switch-mode-frequency = <1600000>;
-				bias-pull-down;
-
-				qcom,force-mode = <QCOM_RPM_FORCE_MODE_AUTO>;
-			};
-		};
-	};
-
diff --git a/Documentation/devicetree/bindings/regulator/qcom,ipc-rpm-regulator.yaml b/Documentation/devicetree/bindings/regulator/qcom,ipc-rpm-regulator.yaml
new file mode 100644
index 000000000000..e18bb8b87c43
--- /dev/null
+++ b/Documentation/devicetree/bindings/regulator/qcom,ipc-rpm-regulator.yaml
@@ -0,0 +1,127 @@
+# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/regulator/qcom,ipc-rpm-regulator.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: QCOM IPC RPM REGULATOR
+
+description:
+  The Qualcomm RPM over IPC regulator is modelled as a subdevice of the RPM.
+
+  Please refer to Documentation/devicetree/bindings/soc/qcom/qcom,ipc-rpm.yaml
+  for information regarding the RPM node.
+
+  The regulator node houses sub-nodes for each regulator within the device.
+  Each sub-node is identified using the node's name, with valid values listed
+  for each of the pmics below.
+
+  For pm8058 l0, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11, l12, l13, l14, l15,
+  l16, l17, l18, l19, l20, l21, l22, l23, l24, l25, s0, s1, s2, s3, s4,
+  lvs0, lvs1, ncp
+
+  For pm8901 l0, l1, l2, l3, l4, l5, l6, s0, s1, s2, s3, s4, lvs0, lvs1, lvs2, lvs3,
+  mvs
+
+  For pm8921 s1, s2, s3, s4, s7, s8, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11,
+  l12, l14, l15, l16, l17, l18, l21, l22, l23, l24, l25, l26, l27, l28,
+  l29, lvs1, lvs2, lvs3, lvs4, lvs5, lvs6, lvs7, usb-switch, hdmi-switch,
+  ncp
+
+  For pm8018 s1, s2, s3, s4, s5, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11,
+  l12, l14, lvs1
+
+  For smb208 s1a, s1b, s2a, s2b
+
+maintainers:
+  - Bjorn Andersson <andersson@kernel.org>
+
+properties:
+  compatible:
+    enum:
+      - qcom,rpm-pm8058-regulators
+      - qcom,rpm-pm8901-regulators
+      - qcom,rpm-pm8921-regulators
+      - qcom,rpm-pm8018-regulators
+      - qcom,rpm-smb208-regulators
+
+patternProperties:
+  ".*-supply$":
+    description: Input supply phandle(s) for this node
+
+  "^((s|l|lvs)[0-9]*)|(s[1-2][a-b])|(ncp)|(mvs)|(usb-switch)|(hdmi-switch)$":
+    description: List of regulators and its properties
+    $ref: regulator.yaml#
+    properties:
+      bias-pull-down:
+        description: enable pull down of the regulator when inactive
+        type: boolean
+
+      qcom,switch-mode-frequency:
+        description: Frequency (Hz) of the switch-mode power supply
+        $ref: /schemas/types.yaml#/definitions/uint32
+        enum:
+          - 19200000
+          - 9600000
+          - 6400000
+          - 4800000
+          - 3840000
+          - 3200000
+          - 2740000
+          - 2400000
+          - 2130000
+          - 1920000
+          - 1750000
+          - 1600000
+          - 1480000
+          - 1370000
+          - 1280000
+          - 1200000
+
+      qcom,force-mode:
+        description: Indicates that the regulator should be forced to a particular mode
+        $ref: /schemas/types.yaml#/definitions/uint32
+        enum:
+          - 0 # QCOM_RPM_FORCE_MODE_NONE do not force any mode
+          - 1 # QCOM_RPM_FORCE_MODE_LPM force into low power mode
+          - 2 # QCOM_RPM_FORCE_MODE_HPM force into high power mode
+          - 3 # QCOM_RPM_FORCE_MODE_AUTO allow regulator to automatically select its own mode
+              # based on realtime current draw, only for pm8921 smps and ftsmps
+
+      qcom,power-mode-hysteretic:
+        description: select that the power supply should operate in hysteretic mode,
+          instead of the default pwm mode
+        type: boolean
+
+additionalProperties: false
+
+required:
+  - compatible
+
+examples:
+  - |
+    #include <dt-bindings/mfd/qcom-rpm.h>
+    regulators {
+      compatible = "qcom,rpm-pm8921-regulators";
+      vdd_l1_l2_l12_l18-supply = <&pm8921_s4>;
+
+      s1 {
+        regulator-min-microvolt = <1225000>;
+        regulator-max-microvolt = <1225000>;
+
+        bias-pull-down;
+
+        qcom,switch-mode-frequency = <3200000>;
+      };
+
+      pm8921_s4: s4 {
+        regulator-min-microvolt = <1800000>;
+        regulator-max-microvolt = <1800000>;
+
+        qcom,switch-mode-frequency = <1600000>;
+        bias-pull-down;
+
+        qcom,force-mode = <QCOM_RPM_FORCE_MODE_AUTO>;
+      };
+    };
+...

-- 
b4 0.10.1

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* [PATCH 6/6] dt-bindings: soc: qcom: ipc-rpm: refer to qcom,ipc-rpm-regulator.yaml
  2022-10-06  9:57 [PATCH 0/6] arm: qcom: mdm9615: second round of bindings and DT fixes Neil Armstrong
                   ` (4 preceding siblings ...)
  2022-10-06  9:58 ` [PATCH 5/6] dt-bindings: regulators: convert non-smd RPM Regulators " Neil Armstrong
@ 2022-10-06  9:58 ` Neil Armstrong
  2022-10-06 12:27   ` Rob Herring
  2022-10-06 20:05   ` Rob Herring
  5 siblings, 2 replies; 22+ messages in thread
From: Neil Armstrong @ 2022-10-06  9:58 UTC (permalink / raw)
  To: Konrad Dybcio, Andy Gross, Lee Jones, Bjorn Andersson,
	Linus Walleij, Mark Brown, Krzysztof Kozlowski, Rob Herring,
	Liam Girdwood
  Cc: linux-gpio, Neil Armstrong, linux-kernel, linux-arm-msm, devicetree

Now we have bindings for the expected regulators subnode, refer
to the right qcom,ipc-rpm-regulator.yaml bindings.

Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
---
 Documentation/devicetree/bindings/soc/qcom/qcom,ipc-rpm.yaml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/Documentation/devicetree/bindings/soc/qcom/qcom,ipc-rpm.yaml b/Documentation/devicetree/bindings/soc/qcom/qcom,ipc-rpm.yaml
index d416950189d1..d18200d5c5b5 100644
--- a/Documentation/devicetree/bindings/soc/qcom/qcom,ipc-rpm.yaml
+++ b/Documentation/devicetree/bindings/soc/qcom/qcom,ipc-rpm.yaml
@@ -47,7 +47,7 @@ properties:
 
   regulators:
     type: object
-    $ref: /schemas/regulator/regulator.yaml#
+    $ref: /schemas/regulator/qcom,ipc-rpm-regulator.yaml#
 
 required:
   - compatible

-- 
b4 0.10.1

^ permalink raw reply related	[flat|nested] 22+ messages in thread

* Re: [PATCH 1/6] dt-bindings: pinctrl: convert qcom,mdm9615-pinctrl.txt to dt-schema
  2022-10-06  9:57 ` [PATCH 1/6] dt-bindings: pinctrl: convert qcom,mdm9615-pinctrl.txt to dt-schema Neil Armstrong
@ 2022-10-06 11:09   ` Krzysztof Kozlowski
  2022-10-06 16:20     ` Neil Armstrong
  2022-10-06 12:27   ` Rob Herring
  1 sibling, 1 reply; 22+ messages in thread
From: Krzysztof Kozlowski @ 2022-10-06 11:09 UTC (permalink / raw)
  To: Neil Armstrong, Konrad Dybcio, Andy Gross, Lee Jones,
	Bjorn Andersson, Linus Walleij, Mark Brown, Krzysztof Kozlowski,
	Rob Herring, Liam Girdwood
  Cc: linux-gpio, linux-kernel, linux-arm-msm, devicetree

On 06/10/2022 11:57, Neil Armstrong wrote:
> Convert the MDM9515 pinctrl bindings to dt-schema.
> 
> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
> ---
>  .../bindings/pinctrl/qcom,mdm9615-pinctrl.txt      | 161 ---------------------
>  .../bindings/pinctrl/qcom,mdm9615-pinctrl.yaml     | 101 +++++++++++++
>  2 files changed, 101 insertions(+), 161 deletions(-)
> 

Thank you for your patch. There is something to discuss/improve.

> -		};
> -	};
> diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,mdm9615-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,mdm9615-pinctrl.yaml
> new file mode 100644
> index 000000000000..6a5966fc0098
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/pinctrl/qcom,mdm9615-pinctrl.yaml
> @@ -0,0 +1,101 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/pinctrl/qcom,mdm9615-pinctrl.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Qualcomm Technologies, Inc. MDM9615 TLMM block
> +
> +maintainers:
> +  - Bjorn Andersson <andersson@kernel.org>
> +
> +description: |

No need for |

> +  This binding describes the Top Level Mode Multiplexer block found in the
> +  MDM9615 platform.

Instead: "Top Level Mode Multiplexer pin controller node in Qualcomm
MDM9615 SoC."

I see this pattern is coming from other file, so I will fix all of them.

> +
> +allOf:
> +  - $ref: "pinctrl.yaml#"

Drop it, it's included from tlmm-common

> +  - $ref: /schemas/pinctrl/qcom,tlmm-common.yaml#
> +
> +properties:
> +  compatible:
> +    const: qcom,mdm9615-pinctrl
> +
> +  reg:
> +    maxItems: 1
> +
> +  interrupts: true
> +  interrupt-controller: true
> +  '#interrupt-cells': true
> +  gpio-controller: true
> +  '#gpio-cells': true
> +  gpio-ranges: true
> +
> +required:
> +  - compatible
> +  - reg
> +
> +additionalProperties: false
> +
> +patternProperties:
> +  '-state$':

Use " as quotes

> +    oneOf:
> +      - $ref: "#/$defs/qcom-mdm9615-pinctrl-state"
> +      - patternProperties:
> +          "-pins$":
> +            $ref: "#/$defs/qcom-mdm9615-pinctrl-state"
> +
> +'$defs':

No need for quotes

> +  qcom-mdm9615-pinctrl-state:
> +    type: object
> +    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"

No need for quotes

> +
> +    properties:
> +      pins:
> +        description:
> +          List of gpio pins affected by the properties specified in this
> +          subnode.
> +        items:
> +          oneOf:
> +            - pattern: "^gpio([0-9]|[1-7][0-9]|8[0-7])$"

No sd-like functions? If so, then drop oneOf

> +        minItems: 1
> +        maxItems: 16
> +
> +      function:
> +        description:
> +          Specify the alternative function to be configured for the specified
> +          pins.
> +
> +        enum: [ gpio, gsbi2_i2c, gsbi3, gsbi4, gsbi5_i2c, gsbi5_uart,
> +                sdc2, ebi2_lcdc, ps_hold, prim_audio, sec_audio, cdc_mclk, ]
> +
> +      bias-disable: true
> +      bias-pull-down: true
> +      bias-pull-up: true
> +      drive-strength: true
> +      output-high: true
> +      output-low: true
> +      input-enable: true
> +
> +    required:
> +      - pins
> +      - function
> +
> +    additionalProperties: false
> +
> +examples:
> +  - |
> +        #include <dt-bindings/interrupt-controller/arm-gic.h>
> +        tlmm: pinctrl@1000000 {

Use 4 spaces indentation.

> +          compatible = "qcom,mdm9615-pinctrl";
> +          reg = <0x01000000 0x300000>;
> +          interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
> +          gpio-controller;
> +          gpio-ranges = <&msmgpio 0 0 88>;
> +          #gpio-cells = <2>;
> +          interrupt-controller;
> +          #interrupt-cells = <2>;

Add example of -state with and without -pins node.

You dropped it with conversion.


> +        };
> 

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH 2/6] arm: dts: qcom: mdm9615: fix pinctrl subnodes
  2022-10-06  9:57 ` [PATCH 2/6] arm: dts: qcom: mdm9615: fix pinctrl subnodes Neil Armstrong
@ 2022-10-06 11:10   ` Krzysztof Kozlowski
  2022-10-07 19:36   ` Konrad Dybcio
  1 sibling, 0 replies; 22+ messages in thread
From: Krzysztof Kozlowski @ 2022-10-06 11:10 UTC (permalink / raw)
  To: Neil Armstrong, Konrad Dybcio, Andy Gross, Lee Jones,
	Bjorn Andersson, Linus Walleij, Mark Brown, Krzysztof Kozlowski,
	Rob Herring, Liam Girdwood
  Cc: linux-gpio, linux-kernel, linux-arm-msm, devicetree

On 06/10/2022 11:57, Neil Armstrong wrote:
> Fix the MDM9615 DT to the expected subnodes namings.

Remove "fix" from the commit title and description, because it might
encourage AUTOSEL to pick it up. There was nothing particularly wrong
with DTS, so there is nothing to fix. One way to describe it is aligning
with DT schema.

> 
> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
> ---


Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH 5/6] dt-bindings: regulators: convert non-smd RPM Regulators bindings to dt-schema
  2022-10-06  9:58 ` [PATCH 5/6] dt-bindings: regulators: convert non-smd RPM Regulators " Neil Armstrong
@ 2022-10-06 12:27   ` Rob Herring
  2022-10-06 20:04   ` Rob Herring
  1 sibling, 0 replies; 22+ messages in thread
From: Rob Herring @ 2022-10-06 12:27 UTC (permalink / raw)
  To: Neil Armstrong
  Cc: Linus Walleij, Liam Girdwood, Rob Herring, Krzysztof Kozlowski,
	Mark Brown, Konrad Dybcio, devicetree, linux-gpio, Lee Jones,
	linux-arm-msm, linux-kernel, Bjorn Andersson, Andy Gross

On Thu, 06 Oct 2022 09:58:02 +0000, Neil Armstrong wrote:
> Convert the non-SMD Regulators  bindings to dt-schema and remove the
> old text based bindings now we have migrated all the content.
> 
> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
> ---
>  Documentation/devicetree/bindings/mfd/qcom-rpm.txt | 246 ---------------------
>  .../bindings/regulator/qcom,ipc-rpm-regulator.yaml | 127 +++++++++++
>  2 files changed, 127 insertions(+), 246 deletions(-)
> 

Running 'make dtbs_check' with the schema in this patch gives the
following warnings. Consider if they are expected or the schema is
incorrect. These may not be new warnings.

Note that it is not yet a requirement to have 0 warnings for dtbs_check.
This will change in the future.

Full log is available here: https://patchwork.ozlabs.org/patch/


pm8058-regulators: vdd_ncp-supply: [[30]] is not of type 'object'
	arch/arm/boot/dts/qcom-apq8060-dragonboard.dtb

pm8901-regulators: lvs0_in-supply: [[8]] is not of type 'object'
	arch/arm/boot/dts/qcom-apq8060-dragonboard.dtb

pm8901-regulators: lvs1_in-supply: [[29]] is not of type 'object'
	arch/arm/boot/dts/qcom-apq8060-dragonboard.dtb

pm8901-regulators: lvs2_in-supply: [[10]] is not of type 'object'
	arch/arm/boot/dts/qcom-apq8060-dragonboard.dtb

pm8901-regulators: lvs3_in-supply: [[31]] is not of type 'object'
	arch/arm/boot/dts/qcom-apq8060-dragonboard.dtb

pm8901-regulators: mvs_in-supply: [[8]] is not of type 'object'
	arch/arm/boot/dts/qcom-apq8060-dragonboard.dtb

regulators: vdd_ncp-supply: [[10]] is not of type 'object'
	arch/arm/boot/dts/qcom-msm8960-cdp.dtb

regulators: vdd_ncp-supply: [[50]] is not of type 'object'
	arch/arm/boot/dts/qcom-apq8064-asus-nexus7-flo.dtb

regulators: vin_ncp-supply: [[48]] is not of type 'object'
	arch/arm/boot/dts/qcom-apq8064-sony-xperia-lagan-yuga.dtb


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH 1/6] dt-bindings: pinctrl: convert qcom,mdm9615-pinctrl.txt to dt-schema
  2022-10-06  9:57 ` [PATCH 1/6] dt-bindings: pinctrl: convert qcom,mdm9615-pinctrl.txt to dt-schema Neil Armstrong
  2022-10-06 11:09   ` Krzysztof Kozlowski
@ 2022-10-06 12:27   ` Rob Herring
  2022-10-06 16:21     ` Neil Armstrong
  1 sibling, 1 reply; 22+ messages in thread
From: Rob Herring @ 2022-10-06 12:27 UTC (permalink / raw)
  To: Neil Armstrong
  Cc: Lee Jones, linux-arm-msm, Bjorn Andersson, linux-kernel,
	Linus Walleij, Krzysztof Kozlowski, Andy Gross, Konrad Dybcio,
	linux-gpio, Liam Girdwood, devicetree, Mark Brown, Rob Herring

On Thu, 06 Oct 2022 09:57:58 +0000, Neil Armstrong wrote:
> Convert the MDM9515 pinctrl bindings to dt-schema.
> 
> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
> ---
>  .../bindings/pinctrl/qcom,mdm9615-pinctrl.txt      | 161 ---------------------
>  .../bindings/pinctrl/qcom,mdm9615-pinctrl.yaml     | 101 +++++++++++++
>  2 files changed, 101 insertions(+), 161 deletions(-)
> 

Running 'make dtbs_check' with the schema in this patch gives the
following warnings. Consider if they are expected or the schema is
incorrect. These may not be new warnings.

Note that it is not yet a requirement to have 0 warnings for dtbs_check.
This will change in the future.

Full log is available here: https://patchwork.ozlabs.org/patch/


pinctrl@800000: 'gpioext1_pins', 'gsbi3_pins', 'gsbi4_pins', 'gsbi5_i2c_pins', 'gsbi5_uart_pins', 'reset_out_pins', 'sdc_cd_pins' do not match any of the regexes: '-state$', 'pinctrl-[0-9]+'
	arch/arm/boot/dts/qcom-mdm9615-wp8548-mangoh-green.dtb


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH 6/6] dt-bindings: soc: qcom: ipc-rpm: refer to qcom,ipc-rpm-regulator.yaml
  2022-10-06  9:58 ` [PATCH 6/6] dt-bindings: soc: qcom: ipc-rpm: refer to qcom,ipc-rpm-regulator.yaml Neil Armstrong
@ 2022-10-06 12:27   ` Rob Herring
  2022-10-06 20:05   ` Rob Herring
  1 sibling, 0 replies; 22+ messages in thread
From: Rob Herring @ 2022-10-06 12:27 UTC (permalink / raw)
  To: Neil Armstrong
  Cc: Bjorn Andersson, Rob Herring, Linus Walleij, devicetree,
	linux-kernel, linux-gpio, Mark Brown, linux-arm-msm,
	Konrad Dybcio, Liam Girdwood, Krzysztof Kozlowski, Lee Jones,
	Andy Gross

On Thu, 06 Oct 2022 09:58:03 +0000, Neil Armstrong wrote:
> Now we have bindings for the expected regulators subnode, refer
> to the right qcom,ipc-rpm-regulator.yaml bindings.
> 
> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
> ---
>  Documentation/devicetree/bindings/soc/qcom/qcom,ipc-rpm.yaml | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 

Running 'make dtbs_check' with the schema in this patch gives the
following warnings. Consider if they are expected or the schema is
incorrect. These may not be new warnings.

Note that it is not yet a requirement to have 0 warnings for dtbs_check.
This will change in the future.

Full log is available here: https://patchwork.ozlabs.org/patch/


rpm@104000: 'clock-controller', 'clock-names', 'clocks', 'pm8058-regulators', 'pm8901-regulators' do not match any of the regexes: 'pinctrl-[0-9]+'
	arch/arm/boot/dts/qcom-apq8060-dragonboard.dtb
	arch/arm/boot/dts/qcom-msm8660-surf.dtb

rpm@108000: 'clock-controller', 'clock-names', 'clocks' do not match any of the regexes: 'pinctrl-[0-9]+'
	arch/arm/boot/dts/qcom-ipq8064-ap148.dtb
	arch/arm/boot/dts/qcom-ipq8064-rb3011.dtb

rpm@108000: 'clock-controller' does not match any of the regexes: 'pinctrl-[0-9]+'
	arch/arm/boot/dts/qcom-apq8064-asus-nexus7-flo.dtb
	arch/arm/boot/dts/qcom-apq8064-cm-qs600.dtb
	arch/arm/boot/dts/qcom-apq8064-ifc6410.dtb
	arch/arm/boot/dts/qcom-apq8064-sony-xperia-lagan-yuga.dtb

rpm@108000: regulators:vdd_ncp-supply: [[10]] is not of type 'object'
	arch/arm/boot/dts/qcom-msm8960-cdp.dtb

rpm@108000: regulators:vdd_ncp-supply: [[50]] is not of type 'object'
	arch/arm/boot/dts/qcom-apq8064-asus-nexus7-flo.dtb

rpm@108000: regulators:vin_ncp-supply: [[48]] is not of type 'object'
	arch/arm/boot/dts/qcom-apq8064-sony-xperia-lagan-yuga.dtb


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH 1/6] dt-bindings: pinctrl: convert qcom,mdm9615-pinctrl.txt to dt-schema
  2022-10-06 11:09   ` Krzysztof Kozlowski
@ 2022-10-06 16:20     ` Neil Armstrong
  2022-10-06 20:20       ` Krzysztof Kozlowski
  0 siblings, 1 reply; 22+ messages in thread
From: Neil Armstrong @ 2022-10-06 16:20 UTC (permalink / raw)
  To: Krzysztof Kozlowski, Konrad Dybcio, Andy Gross, Lee Jones,
	Bjorn Andersson, Linus Walleij, Mark Brown, Krzysztof Kozlowski,
	Rob Herring, Liam Girdwood
  Cc: linux-gpio, linux-kernel, linux-arm-msm, devicetree

Hi,

On 06/10/2022 13:09, Krzysztof Kozlowski wrote:
> On 06/10/2022 11:57, Neil Armstrong wrote:
>> Convert the MDM9515 pinctrl bindings to dt-schema.
>>
>> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
>> ---
>>   .../bindings/pinctrl/qcom,mdm9615-pinctrl.txt      | 161 ---------------------
>>   .../bindings/pinctrl/qcom,mdm9615-pinctrl.yaml     | 101 +++++++++++++
>>   2 files changed, 101 insertions(+), 161 deletions(-)
>>
> 
> Thank you for your patch. There is something to discuss/improve.
> 
>> -		};
>> -	};
>> diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,mdm9615-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,mdm9615-pinctrl.yaml
>> new file mode 100644
>> index 000000000000..6a5966fc0098
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/pinctrl/qcom,mdm9615-pinctrl.yaml
>> @@ -0,0 +1,101 @@
>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/pinctrl/qcom,mdm9615-pinctrl.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Qualcomm Technologies, Inc. MDM9615 TLMM block
>> +
>> +maintainers:
>> +  - Bjorn Andersson <andersson@kernel.org>
>> +
>> +description: |
> 
> No need for |

Ack

> 
>> +  This binding describes the Top Level Mode Multiplexer block found in the
>> +  MDM9615 platform.
> 
> Instead: "Top Level Mode Multiplexer pin controller node in Qualcomm
> MDM9615 SoC."
> 
> I see this pattern is coming from other file, so I will fix all of them.

Ack, wil use this.

> 
>> +
>> +allOf:
>> +  - $ref: "pinctrl.yaml#"
> 
> Drop it, it's included from tlmm-common

Ack

> 
>> +  - $ref: /schemas/pinctrl/qcom,tlmm-common.yaml#
>> +
>> +properties:
>> +  compatible:
>> +    const: qcom,mdm9615-pinctrl
>> +
>> +  reg:
>> +    maxItems: 1
>> +
>> +  interrupts: true
>> +  interrupt-controller: true
>> +  '#interrupt-cells': true
>> +  gpio-controller: true
>> +  '#gpio-cells': true
>> +  gpio-ranges: true
>> +
>> +required:
>> +  - compatible
>> +  - reg
>> +
>> +additionalProperties: false
>> +
>> +patternProperties:
>> +  '-state$':
> 
> Use " as quotes

Ack

> 
>> +    oneOf:
>> +      - $ref: "#/$defs/qcom-mdm9615-pinctrl-state"
>> +      - patternProperties:
>> +          "-pins$":
>> +            $ref: "#/$defs/qcom-mdm9615-pinctrl-state"

Interesting, if I add this subnode (that should be valid):
       gsbi3-state {
         pins = "gpio8", "gpio9", "gpio10", "gpio11";
         function = "gsbi3";
         drive-strength = <8>;
         bias-disable;
       };

then I get the following warning from dt_bindings_check:

Documentation/devicetree/bindings/pinctrl/qcom,mdm9615-pinctrl.example.dtb: pinctrl@1000000: gsbi3-state: More than one condition true in oneOf schema:
         {'oneOf': [{'$ref': '#/$defs/qcom-mdm9615-pinctrl-state'},
                    {'patternProperties': {'-pins$': {'$ref': '#/$defs/qcom-mdm9615-pinctrl-state'},
                                           'pinctrl-[0-9]+': True},
                     'properties': {'$nodename': True,
                                    'phandle': True,
                                    'pinctrl-names': True,
                                    'secure-status': True,
                                    'status': True}}]}
 From schema: /Documentation/devicetree/bindings/pinctrl/qcom,mdm9615-pinctrl.yaml

And I don't understand why, the nodename should not match "-pins$" nor "pinctrl-[0-9]+'...

>> +
>> +'$defs':
> 
> No need for quotes
> 
>> +  qcom-mdm9615-pinctrl-state:
>> +    type: object
>> +    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"
> 
> No need for quotes

Ack

> 
>> +
>> +    properties:
>> +      pins:
>> +        description:
>> +          List of gpio pins affected by the properties specified in this
>> +          subnode.
>> +        items:
>> +          oneOf:
>> +            - pattern: "^gpio([0-9]|[1-7][0-9]|8[0-7])$"
> 
> No sd-like functions? If so, then drop oneOf

Ack

> 
>> +        minItems: 1
>> +        maxItems: 16
>> +
>> +      function:
>> +        description:
>> +          Specify the alternative function to be configured for the specified
>> +          pins.
>> +
>> +        enum: [ gpio, gsbi2_i2c, gsbi3, gsbi4, gsbi5_i2c, gsbi5_uart,
>> +                sdc2, ebi2_lcdc, ps_hold, prim_audio, sec_audio, cdc_mclk, ]
>> +
>> +      bias-disable: true
>> +      bias-pull-down: true
>> +      bias-pull-up: true
>> +      drive-strength: true
>> +      output-high: true
>> +      output-low: true
>> +      input-enable: true
>> +
>> +    required:
>> +      - pins
>> +      - function
>> +
>> +    additionalProperties: false
>> +
>> +examples:
>> +  - |
>> +        #include <dt-bindings/interrupt-controller/arm-gic.h>
>> +        tlmm: pinctrl@1000000 {
> 
> Use 4 spaces indentation.
> 
>> +          compatible = "qcom,mdm9615-pinctrl";
>> +          reg = <0x01000000 0x300000>;
>> +          interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
>> +          gpio-controller;
>> +          gpio-ranges = <&msmgpio 0 0 88>;
>> +          #gpio-cells = <2>;
>> +          interrupt-controller;
>> +          #interrupt-cells = <2>;
> 
> Add example of -state with and without -pins node.
> 
> You dropped it with conversion.

Ack, done but I have a weird warning, see upper.

> 
> 
>> +        };
>>
> 
> Best regards,
> Krzysztof
> 

Thanks,
Neil

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH 1/6] dt-bindings: pinctrl: convert qcom,mdm9615-pinctrl.txt to dt-schema
  2022-10-06 12:27   ` Rob Herring
@ 2022-10-06 16:21     ` Neil Armstrong
  2022-10-06 19:42       ` Rob Herring
  0 siblings, 1 reply; 22+ messages in thread
From: Neil Armstrong @ 2022-10-06 16:21 UTC (permalink / raw)
  To: Rob Herring
  Cc: Lee Jones, linux-arm-msm, Bjorn Andersson, linux-kernel,
	Linus Walleij, Krzysztof Kozlowski, Andy Gross, Konrad Dybcio,
	linux-gpio, Liam Girdwood, devicetree, Mark Brown, Rob Herring

On 06/10/2022 14:27, Rob Herring wrote:
> On Thu, 06 Oct 2022 09:57:58 +0000, Neil Armstrong wrote:
>> Convert the MDM9515 pinctrl bindings to dt-schema.
>>
>> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
>> ---
>>   .../bindings/pinctrl/qcom,mdm9615-pinctrl.txt      | 161 ---------------------
>>   .../bindings/pinctrl/qcom,mdm9615-pinctrl.yaml     | 101 +++++++++++++
>>   2 files changed, 101 insertions(+), 161 deletions(-)
>>
> 
> Running 'make dtbs_check' with the schema in this patch gives the
> following warnings. Consider if they are expected or the schema is
> incorrect. These may not be new warnings.
> 
> Note that it is not yet a requirement to have 0 warnings for dtbs_check.
> This will change in the future.
> 
> Full log is available here: https://patchwork.ozlabs.org/patch/
> 
> 
> pinctrl@800000: 'gpioext1_pins', 'gsbi3_pins', 'gsbi4_pins', 'gsbi5_i2c_pins', 'gsbi5_uart_pins', 'reset_out_pins', 'sdc_cd_pins' do not match any of the regexes: '-state$', 'pinctrl-[0-9]+'
> 	arch/arm/boot/dts/qcom-mdm9615-wp8548-mangoh-green.dtb
> 

Yes it's fixed in the next patch, should I move the fix before the bindings conversion ?

Neil

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH 1/6] dt-bindings: pinctrl: convert qcom,mdm9615-pinctrl.txt to dt-schema
  2022-10-06 16:21     ` Neil Armstrong
@ 2022-10-06 19:42       ` Rob Herring
  0 siblings, 0 replies; 22+ messages in thread
From: Rob Herring @ 2022-10-06 19:42 UTC (permalink / raw)
  To: Neil Armstrong
  Cc: Lee Jones, linux-arm-msm, Bjorn Andersson, linux-kernel,
	Linus Walleij, Krzysztof Kozlowski, Andy Gross, Konrad Dybcio,
	linux-gpio, Liam Girdwood, devicetree, Mark Brown

On Thu, Oct 06, 2022 at 06:21:28PM +0200, Neil Armstrong wrote:
> On 06/10/2022 14:27, Rob Herring wrote:
> > On Thu, 06 Oct 2022 09:57:58 +0000, Neil Armstrong wrote:
> > > Convert the MDM9515 pinctrl bindings to dt-schema.
> > > 
> > > Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
> > > ---
> > >   .../bindings/pinctrl/qcom,mdm9615-pinctrl.txt      | 161 ---------------------
> > >   .../bindings/pinctrl/qcom,mdm9615-pinctrl.yaml     | 101 +++++++++++++
> > >   2 files changed, 101 insertions(+), 161 deletions(-)
> > > 
> > 
> > Running 'make dtbs_check' with the schema in this patch gives the
> > following warnings. Consider if they are expected or the schema is
> > incorrect. These may not be new warnings.
> > 
> > Note that it is not yet a requirement to have 0 warnings for dtbs_check.
> > This will change in the future.
> > 
> > Full log is available here: https://patchwork.ozlabs.org/patch/
> > 
> > 
> > pinctrl@800000: 'gpioext1_pins', 'gsbi3_pins', 'gsbi4_pins', 'gsbi5_i2c_pins', 'gsbi5_uart_pins', 'reset_out_pins', 'sdc_cd_pins' do not match any of the regexes: '-state$', 'pinctrl-[0-9]+'
> > 	arch/arm/boot/dts/qcom-mdm9615-wp8548-mangoh-green.dtb
> > 
> 
> Yes it's fixed in the next patch, should I move the fix before the bindings conversion ?

No, because I don't apply the dts patches. It's just informational and 
ignore if you already took care of it.

Rob

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH 4/6] dt-bindings: soc: qcom: convert non-smd RPM bindings to dt-schema
  2022-10-06  9:58 ` [PATCH 4/6] dt-bindings: soc: qcom: convert non-smd RPM bindings to dt-schema Neil Armstrong
@ 2022-10-06 19:53   ` Rob Herring
  0 siblings, 0 replies; 22+ messages in thread
From: Rob Herring @ 2022-10-06 19:53 UTC (permalink / raw)
  To: Neil Armstrong
  Cc: Konrad Dybcio, Andy Gross, Lee Jones, Bjorn Andersson,
	Linus Walleij, Mark Brown, Krzysztof Kozlowski, Liam Girdwood,
	linux-gpio, linux-kernel, linux-arm-msm, devicetree

On Thu, Oct 06, 2022 at 09:58:01AM +0000, Neil Armstrong wrote:
> Convert the non-SMD RPM node bindings to dt-schema, the regulators subnode
> refers to regulators,yaml until we have the proper bindings.
> 
> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
> ---
>  Documentation/devicetree/bindings/mfd/qcom-rpm.txt | 39 +-----------
>  .../devicetree/bindings/soc/qcom/qcom,ipc-rpm.yaml | 73 ++++++++++++++++++++++
>  2 files changed, 74 insertions(+), 38 deletions(-)


> diff --git a/Documentation/devicetree/bindings/soc/qcom/qcom,ipc-rpm.yaml b/Documentation/devicetree/bindings/soc/qcom/qcom,ipc-rpm.yaml
> new file mode 100644
> index 000000000000..d416950189d1
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/soc/qcom/qcom,ipc-rpm.yaml
> @@ -0,0 +1,73 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: "http://devicetree.org/schemas/soc/qcom/qcom,ipc-rpm.yaml#"
> +$schema: "http://devicetree.org/meta-schemas/core.yaml#"
> +
> +title: Qualcomm Resource Power Manager (RPM) over IPC
> +
> +description: |
> +  This driver is used to interface with the Resource Power Manager (RPM) found
> +  in various Qualcomm platforms. The RPM allows each component in the system
> +  to vote for state of the system resources, such as clocks, regulators and bus
> +  frequencies.
> +
> +maintainers:
> +  - Bjorn Andersson <andersson@kernel.org>
> +
> +properties:
> +  compatible:
> +    enum:
> +      - qcom,rpm-apq8064
> +      - qcom,rpm-msm8660
> +      - qcom,rpm-msm8960
> +      - qcom,rpm-ipq8064
> +      - qcom,rpm-mdm9615
> +
> +  reg: true
> +
> +  interrupts:
> +    minItems: 3

maxItems: 3

(Instead)

> +
> +  interrupt-names:
> +    items:
> +      - const: ack
> +      - const: err
> +      - const: wakeup
> +
> +  qcom,ipc:
> +    $ref: /schemas/types.yaml#/definitions/phandle-array
> +    items:
> +      - items:
> +          - description: phandle to a syscon node representing the APCS registers
> +          - description: u32 representing offset to the register within the syscon
> +          - description: u32 representing the ipc bit within the register
> +    description:
> +      Three entries specifying the outgoing ipc bit used for signaling the RPM.
> +
> +  regulators:
> +    type: object
> +    $ref: /schemas/regulator/regulator.yaml#

regulator.yaml applies to a single regulator, but 'regulators' sounds 
like a container node with multiple regulators.

Would be good if the example showed...

> +
> +required:
> +  - compatible
> +  - reg
> +  - interrupts
> +  - interrupt-names
> +  - qcom,ipc
> +
> +additionalProperties: false
> +
> +examples:
> +  - |
> +    #include <dt-bindings/interrupt-controller/arm-gic.h>
> +    #include <dt-bindings/interrupt-controller/irq.h>
> +
> +    rpm@108000 {
> +      compatible = "qcom,rpm-msm8960";
> +      reg = <0x108000 0x1000>;
> +      qcom,ipc = <&apcs 0x8 2>;
> +
> +      interrupts = <GIC_SPI 19 IRQ_TYPE_NONE>, <GIC_SPI 21 IRQ_TYPE_NONE>, <GIC_SPI 22 IRQ_TYPE_NONE>;
> +      interrupt-names = "ack", "err", "wakeup";
> +    };
> 
> -- 
> b4 0.10.1
> 

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH 5/6] dt-bindings: regulators: convert non-smd RPM Regulators bindings to dt-schema
  2022-10-06  9:58 ` [PATCH 5/6] dt-bindings: regulators: convert non-smd RPM Regulators " Neil Armstrong
  2022-10-06 12:27   ` Rob Herring
@ 2022-10-06 20:04   ` Rob Herring
  1 sibling, 0 replies; 22+ messages in thread
From: Rob Herring @ 2022-10-06 20:04 UTC (permalink / raw)
  To: Neil Armstrong
  Cc: Konrad Dybcio, Andy Gross, Lee Jones, Bjorn Andersson,
	Linus Walleij, Mark Brown, Krzysztof Kozlowski, Liam Girdwood,
	linux-gpio, linux-kernel, linux-arm-msm, devicetree

On Thu, Oct 06, 2022 at 09:58:02AM +0000, Neil Armstrong wrote:
> Convert the non-SMD Regulators  bindings to dt-schema and remove the
> old text based bindings now we have migrated all the content.
> 
> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
> ---
>  Documentation/devicetree/bindings/mfd/qcom-rpm.txt | 246 ---------------------
>  .../bindings/regulator/qcom,ipc-rpm-regulator.yaml | 127 +++++++++++
>  2 files changed, 127 insertions(+), 246 deletions(-)

Ah, the 'regulators' node for the parent should reference this schema.

> diff --git a/Documentation/devicetree/bindings/regulator/qcom,ipc-rpm-regulator.yaml b/Documentation/devicetree/bindings/regulator/qcom,ipc-rpm-regulator.yaml
> new file mode 100644
> index 000000000000..e18bb8b87c43
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/regulator/qcom,ipc-rpm-regulator.yaml
> @@ -0,0 +1,127 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/regulator/qcom,ipc-rpm-regulator.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: QCOM IPC RPM REGULATOR
> +
> +description:

'|' if you want to maintain the formatting.

> +  The Qualcomm RPM over IPC regulator is modelled as a subdevice of the RPM.
> +
> +  Please refer to Documentation/devicetree/bindings/soc/qcom/qcom,ipc-rpm.yaml
> +  for information regarding the RPM node.
> +
> +  The regulator node houses sub-nodes for each regulator within the device.
> +  Each sub-node is identified using the node's name, with valid values listed
> +  for each of the pmics below.
> +
> +  For pm8058 l0, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11, l12, l13, l14, l15,
> +  l16, l17, l18, l19, l20, l21, l22, l23, l24, l25, s0, s1, s2, s3, s4,
> +  lvs0, lvs1, ncp
> +
> +  For pm8901 l0, l1, l2, l3, l4, l5, l6, s0, s1, s2, s3, s4, lvs0, lvs1, lvs2, lvs3,
> +  mvs
> +
> +  For pm8921 s1, s2, s3, s4, s7, s8, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11,
> +  l12, l14, l15, l16, l17, l18, l21, l22, l23, l24, l25, l26, l27, l28,
> +  l29, lvs1, lvs2, lvs3, lvs4, lvs5, lvs6, lvs7, usb-switch, hdmi-switch,
> +  ncp
> +
> +  For pm8018 s1, s2, s3, s4, s5, l1, l2, l3, l4, l5, l6, l7, l8, l9, l10, l11,
> +  l12, l14, lvs1
> +
> +  For smb208 s1a, s1b, s2a, s2b
> +
> +maintainers:
> +  - Bjorn Andersson <andersson@kernel.org>
> +
> +properties:
> +  compatible:
> +    enum:
> +      - qcom,rpm-pm8058-regulators
> +      - qcom,rpm-pm8901-regulators
> +      - qcom,rpm-pm8921-regulators
> +      - qcom,rpm-pm8018-regulators
> +      - qcom,rpm-smb208-regulators
> +
> +patternProperties:
> +  ".*-supply$":
> +    description: Input supply phandle(s) for this node
> +
> +  "^((s|l|lvs)[0-9]*)|(s[1-2][a-b])|(ncp)|(mvs)|(usb-switch)|(hdmi-switch)$":
> +    description: List of regulators and its properties
> +    $ref: regulator.yaml#

       unevaluatedProperties: false

> +    properties:
> +      bias-pull-down:
> +        description: enable pull down of the regulator when inactive
> +        type: boolean
> +
> +      qcom,switch-mode-frequency:
> +        description: Frequency (Hz) of the switch-mode power supply
> +        $ref: /schemas/types.yaml#/definitions/uint32
> +        enum:
> +          - 19200000
> +          - 9600000
> +          - 6400000
> +          - 4800000
> +          - 3840000
> +          - 3200000
> +          - 2740000
> +          - 2400000
> +          - 2130000
> +          - 1920000
> +          - 1750000
> +          - 1600000
> +          - 1480000
> +          - 1370000
> +          - 1280000
> +          - 1200000
> +
> +      qcom,force-mode:
> +        description: Indicates that the regulator should be forced to a particular mode
> +        $ref: /schemas/types.yaml#/definitions/uint32
> +        enum:
> +          - 0 # QCOM_RPM_FORCE_MODE_NONE do not force any mode
> +          - 1 # QCOM_RPM_FORCE_MODE_LPM force into low power mode
> +          - 2 # QCOM_RPM_FORCE_MODE_HPM force into high power mode
> +          - 3 # QCOM_RPM_FORCE_MODE_AUTO allow regulator to automatically select its own mode
> +              # based on realtime current draw, only for pm8921 smps and ftsmps
> +
> +      qcom,power-mode-hysteretic:
> +        description: select that the power supply should operate in hysteretic mode,
> +          instead of the default pwm mode
> +        type: boolean
> +
> +additionalProperties: false
> +
> +required:
> +  - compatible
> +
> +examples:
> +  - |
> +    #include <dt-bindings/mfd/qcom-rpm.h>
> +    regulators {
> +      compatible = "qcom,rpm-pm8921-regulators";
> +      vdd_l1_l2_l12_l18-supply = <&pm8921_s4>;
> +
> +      s1 {
> +        regulator-min-microvolt = <1225000>;
> +        regulator-max-microvolt = <1225000>;
> +
> +        bias-pull-down;
> +
> +        qcom,switch-mode-frequency = <3200000>;
> +      };
> +
> +      pm8921_s4: s4 {
> +        regulator-min-microvolt = <1800000>;
> +        regulator-max-microvolt = <1800000>;
> +
> +        qcom,switch-mode-frequency = <1600000>;
> +        bias-pull-down;
> +
> +        qcom,force-mode = <QCOM_RPM_FORCE_MODE_AUTO>;
> +      };
> +    };
> +...
> 
> -- 
> b4 0.10.1
> 

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH 6/6] dt-bindings: soc: qcom: ipc-rpm: refer to qcom,ipc-rpm-regulator.yaml
  2022-10-06  9:58 ` [PATCH 6/6] dt-bindings: soc: qcom: ipc-rpm: refer to qcom,ipc-rpm-regulator.yaml Neil Armstrong
  2022-10-06 12:27   ` Rob Herring
@ 2022-10-06 20:05   ` Rob Herring
  1 sibling, 0 replies; 22+ messages in thread
From: Rob Herring @ 2022-10-06 20:05 UTC (permalink / raw)
  To: Neil Armstrong
  Cc: Konrad Dybcio, Andy Gross, Lee Jones, Bjorn Andersson,
	Linus Walleij, Mark Brown, Krzysztof Kozlowski, Liam Girdwood,
	linux-gpio, linux-kernel, linux-arm-msm, devicetree

On Thu, Oct 06, 2022 at 09:58:03AM +0000, Neil Armstrong wrote:
> Now we have bindings for the expected regulators subnode, refer
> to the right qcom,ipc-rpm-regulator.yaml bindings.
> 
> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
> ---
>  Documentation/devicetree/bindings/soc/qcom/qcom,ipc-rpm.yaml | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/Documentation/devicetree/bindings/soc/qcom/qcom,ipc-rpm.yaml b/Documentation/devicetree/bindings/soc/qcom/qcom,ipc-rpm.yaml
> index d416950189d1..d18200d5c5b5 100644
> --- a/Documentation/devicetree/bindings/soc/qcom/qcom,ipc-rpm.yaml
> +++ b/Documentation/devicetree/bindings/soc/qcom/qcom,ipc-rpm.yaml
> @@ -47,7 +47,7 @@ properties:
>  
>    regulators:
>      type: object
> -    $ref: /schemas/regulator/regulator.yaml#
> +    $ref: /schemas/regulator/qcom,ipc-rpm-regulator.yaml#

Just reorder your patches.

Rob

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH 1/6] dt-bindings: pinctrl: convert qcom,mdm9615-pinctrl.txt to dt-schema
  2022-10-06 16:20     ` Neil Armstrong
@ 2022-10-06 20:20       ` Krzysztof Kozlowski
  0 siblings, 0 replies; 22+ messages in thread
From: Krzysztof Kozlowski @ 2022-10-06 20:20 UTC (permalink / raw)
  To: neil.armstrong, Konrad Dybcio, Andy Gross, Lee Jones,
	Bjorn Andersson, Linus Walleij, Mark Brown, Krzysztof Kozlowski,
	Rob Herring, Liam Girdwood
  Cc: linux-gpio, linux-kernel, linux-arm-msm, devicetree

On 06/10/2022 18:20, Neil Armstrong wrote:
> Hi,
> 
> On 06/10/2022 13:09, Krzysztof Kozlowski wrote:
>> On 06/10/2022 11:57, Neil Armstrong wrote:
>>> Convert the MDM9515 pinctrl bindings to dt-schema.
>>>
>>> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
>>> ---
>>>   .../bindings/pinctrl/qcom,mdm9615-pinctrl.txt      | 161 ---------------------
>>>   .../bindings/pinctrl/qcom,mdm9615-pinctrl.yaml     | 101 +++++++++++++
>>>   2 files changed, 101 insertions(+), 161 deletions(-)
>>>
>>
>> Thank you for your patch. There is something to discuss/improve.
>>
>>> -		};
>>> -	};
>>> diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,mdm9615-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,mdm9615-pinctrl.yaml
>>> new file mode 100644
>>> index 000000000000..6a5966fc0098
>>> --- /dev/null
>>> +++ b/Documentation/devicetree/bindings/pinctrl/qcom,mdm9615-pinctrl.yaml
>>> @@ -0,0 +1,101 @@
>>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
>>> +%YAML 1.2
>>> +---
>>> +$id: http://devicetree.org/schemas/pinctrl/qcom,mdm9615-pinctrl.yaml#
>>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>>> +
>>> +title: Qualcomm Technologies, Inc. MDM9615 TLMM block
>>> +
>>> +maintainers:
>>> +  - Bjorn Andersson <andersson@kernel.org>
>>> +
>>> +description: |
>>
>> No need for |
> 
> Ack
> 
>>
>>> +  This binding describes the Top Level Mode Multiplexer block found in the
>>> +  MDM9615 platform.
>>
>> Instead: "Top Level Mode Multiplexer pin controller node in Qualcomm
>> MDM9615 SoC."
>>
>> I see this pattern is coming from other file, so I will fix all of them.
> 
> Ack, wil use this.
> 
>>
>>> +
>>> +allOf:
>>> +  - $ref: "pinctrl.yaml#"
>>
>> Drop it, it's included from tlmm-common
> 
> Ack
> 
>>
>>> +  - $ref: /schemas/pinctrl/qcom,tlmm-common.yaml#
>>> +
>>> +properties:
>>> +  compatible:
>>> +    const: qcom,mdm9615-pinctrl
>>> +
>>> +  reg:
>>> +    maxItems: 1
>>> +
>>> +  interrupts: true
>>> +  interrupt-controller: true
>>> +  '#interrupt-cells': true
>>> +  gpio-controller: true
>>> +  '#gpio-cells': true
>>> +  gpio-ranges: true
>>> +
>>> +required:
>>> +  - compatible
>>> +  - reg
>>> +
>>> +additionalProperties: false
>>> +
>>> +patternProperties:
>>> +  '-state$':
>>
>> Use " as quotes
> 
> Ack
> 
>>
>>> +    oneOf:
>>> +      - $ref: "#/$defs/qcom-mdm9615-pinctrl-state"
>>> +      - patternProperties:
>>> +          "-pins$":
>>> +            $ref: "#/$defs/qcom-mdm9615-pinctrl-state"
> 
> Interesting, if I add this subnode (that should be valid):
>        gsbi3-state {
>          pins = "gpio8", "gpio9", "gpio10", "gpio11";
>          function = "gsbi3";
>          drive-strength = <8>;
>          bias-disable;
>        };
> 
> then I get the following warning from dt_bindings_check:

First, your block for using defs/qcom-mdm9615-pinctrl-state is not
exactly like it should be, e.g. it misses additionalProperties: false.
Maybe it misses few things more. Please use one of my latest patches as
example, e.g.
https://lore.kernel.org/linux-devicetree/20221006144518.256956-1-krzysztof.kozlowski@linaro.org/T/#t

> 
> Documentation/devicetree/bindings/pinctrl/qcom,mdm9615-pinctrl.example.dtb: pinctrl@1000000: gsbi3-state: More than one condition true in oneOf schema:
>          {'oneOf': [{'$ref': '#/$defs/qcom-mdm9615-pinctrl-state'},
>                     {'patternProperties': {'-pins$': {'$ref': '#/$defs/qcom-mdm9615-pinctrl-state'},
>                                            'pinctrl-[0-9]+': True},
>                      'properties': {'$nodename': True,
>                                     'phandle': True,
>                                     'pinctrl-names': True,
>                                     'secure-status': True,
>                                     'status': True}}]}
>  From schema: /Documentation/devicetree/bindings/pinctrl/qcom,mdm9615-pinctrl.yaml
> 
> And I don't understand why, the nodename should not match "-pins$" nor "pinctrl-[0-9]+'...

Hm, dunno... You have a trailing coma in enum with functions - maybe
remove it?

I looked briefly between your patch and mine for sm8150 and could not
find differences except that additionalProperties and coma.

Best regards,
Krzysztof


^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH 2/6] arm: dts: qcom: mdm9615: fix pinctrl subnodes
  2022-10-06  9:57 ` [PATCH 2/6] arm: dts: qcom: mdm9615: fix pinctrl subnodes Neil Armstrong
  2022-10-06 11:10   ` Krzysztof Kozlowski
@ 2022-10-07 19:36   ` Konrad Dybcio
  1 sibling, 0 replies; 22+ messages in thread
From: Konrad Dybcio @ 2022-10-07 19:36 UTC (permalink / raw)
  To: Neil Armstrong, Andy Gross, Lee Jones, Bjorn Andersson,
	Linus Walleij, Mark Brown, Krzysztof Kozlowski, Rob Herring,
	Liam Girdwood
  Cc: linux-gpio, linux-kernel, linux-arm-msm, devicetree



On 6.10.2022 11:57, Neil Armstrong wrote:
> Fix the MDM9615 DT to the expected subnodes namings.
> 
> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
> ---
Reviewed-by: Konrad Dybcio <konrad.dybcio@somainline.org>

Konrad
>  .../boot/dts/qcom-mdm9615-wp8548-mangoh-green.dts  |  8 ++++----
>  arch/arm/boot/dts/qcom-mdm9615-wp8548.dtsi         | 22 +++++++++++-----------
>  2 files changed, 15 insertions(+), 15 deletions(-)
> 
> diff --git a/arch/arm/boot/dts/qcom-mdm9615-wp8548-mangoh-green.dts b/arch/arm/boot/dts/qcom-mdm9615-wp8548-mangoh-green.dts
> index 4e53b3d70195..30a110984597 100644
> --- a/arch/arm/boot/dts/qcom-mdm9615-wp8548-mangoh-green.dts
> +++ b/arch/arm/boot/dts/qcom-mdm9615-wp8548-mangoh-green.dts
> @@ -45,8 +45,8 @@ &msmgpio {
>  	 * - 42: IOT0_GPIO1 and SD Card Detect
>  	 */
>  
> -	gpioext1_pins: gpioext1_pins {
> -		pins {
> +	gpioext1_pins: gpioext1-state {
> +		gpioext1-pins {
>  			pins = "gpio2";
>  			function = "gpio";
>  			input-enable;
> @@ -54,8 +54,8 @@ pins {
>  		};
>  	};
>  
> -	sdc_cd_pins: sdc_cd_pins {
> -		pins {
> +	sdc_cd_pins: sdc-cd-state {
> +		sdc-cd-pins {
>  			pins = "gpio42";
>  			function = "gpio";
>  			drive-strength = <2>;
> diff --git a/arch/arm/boot/dts/qcom-mdm9615-wp8548.dtsi b/arch/arm/boot/dts/qcom-mdm9615-wp8548.dtsi
> index 2fe8693dc3cd..92c8003dac25 100644
> --- a/arch/arm/boot/dts/qcom-mdm9615-wp8548.dtsi
> +++ b/arch/arm/boot/dts/qcom-mdm9615-wp8548.dtsi
> @@ -22,8 +22,8 @@ &msmgpio {
>  	pinctrl-0 = <&reset_out_pins>;
>  	pinctrl-names = "default";
>  
> -	gsbi3_pins: gsbi3_pins {
> -		mux {
> +	gsbi3_pins: gsbi3-state {
> +		gsbi3-pins {
>  			pins = "gpio8", "gpio9", "gpio10", "gpio11";
>  			function = "gsbi3";
>  			drive-strength = <8>;
> @@ -31,8 +31,8 @@ mux {
>  		};
>  	};
>  
> -	gsbi4_pins: gsbi4_pins {
> -		mux {
> +	gsbi4_pins: gsbi4-state {
> +		gsbi4-pins {
>  			pins = "gpio12", "gpio13", "gpio14", "gpio15";
>  			function = "gsbi4";
>  			drive-strength = <8>;
> @@ -40,15 +40,15 @@ mux {
>  		};
>  	};
>  
> -	gsbi5_i2c_pins: gsbi5_i2c_pins {
> -		pin16 {
> +	gsbi5_i2c_pins: gsbi5-i2c-state {
> +		sda-pins {
>  			pins = "gpio16";
>  			function = "gsbi5_i2c";
>  			drive-strength = <8>;
>  			bias-disable;
>  		};
>  
> -		pin17 {
> +		scl-pins {
>  			pins = "gpio17";
>  			function = "gsbi5_i2c";
>  			drive-strength = <2>;
> @@ -56,8 +56,8 @@ pin17 {
>  		};
>  	};
>  
> -	gsbi5_uart_pins: gsbi5_uart_pins {
> -		mux {
> +	gsbi5_uart_pins: gsbi5-uart-state {
> +		gsbi5-uart-pins {
>  			pins = "gpio18", "gpio19";
>  			function = "gsbi5_uart";
>  			drive-strength = <8>;
> @@ -65,8 +65,8 @@ mux {
>  		};
>  	};
>  
> -	reset_out_pins: reset_out_pins {
> -		pins {
> +	reset_out_pins: reset-out-state {
> +		reset-out-pins {
>  			pins = "gpio66";
>  			function = "gpio";
>  			drive-strength = <2>;
> 

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH 3/6] arm: dts: qcom: mdm9615: wp8548-mangoh-green: fix sx150xq node names and probe-reset property
  2022-10-06  9:58 ` [PATCH 3/6] arm: dts: qcom: mdm9615: wp8548-mangoh-green: fix sx150xq node names and probe-reset property Neil Armstrong
@ 2022-10-07 19:38   ` Konrad Dybcio
  2022-10-10  7:45     ` Neil Armstrong
  0 siblings, 1 reply; 22+ messages in thread
From: Konrad Dybcio @ 2022-10-07 19:38 UTC (permalink / raw)
  To: Neil Armstrong, Andy Gross, Lee Jones, Bjorn Andersson,
	Linus Walleij, Mark Brown, Krzysztof Kozlowski, Rob Herring,
	Liam Girdwood
  Cc: linux-gpio, linux-kernel, linux-arm-msm, devicetree



On 6.10.2022 11:58, Neil Armstrong wrote:
> Fix the sx150xq node names to pinctrl and use the right probe-reset property.
> 
> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
> ---
Could you please also fix up the property order (may be in a separate patchset ofc)?

Reviewed-by: Konrad Dybcio <konrad.dybcio@somainline.org>

Konrad
>  arch/arm/boot/dts/qcom-mdm9615-wp8548-mangoh-green.dts | 12 ++++++------
>  1 file changed, 6 insertions(+), 6 deletions(-)
> 
> diff --git a/arch/arm/boot/dts/qcom-mdm9615-wp8548-mangoh-green.dts b/arch/arm/boot/dts/qcom-mdm9615-wp8548-mangoh-green.dts
> index 30a110984597..a8304769b509 100644
> --- a/arch/arm/boot/dts/qcom-mdm9615-wp8548-mangoh-green.dts
> +++ b/arch/arm/boot/dts/qcom-mdm9615-wp8548-mangoh-green.dts
> @@ -116,7 +116,7 @@ i2c@4 {
>  			#size-cells = <0>;
>  			reg = <4>;
>  
> -			gpioext0: gpio@3e {
> +			gpioext0: pinctrl@3e {
>  				/* GPIO Expander 0 Mapping :
>  				 * - 0: ARDUINO_RESET_Level shift
>  				 * - 1: BattChrgr_PG_N
> @@ -142,7 +142,7 @@ gpioext0: gpio@3e {
>  				interrupt-parent = <&gpioext1>;
>  				interrupts = <0 IRQ_TYPE_EDGE_FALLING>;
>  
> -				probe-reset;
> +				semtech,probe-reset;
>  
>  				gpio-controller;
>  				interrupt-controller;
> @@ -154,7 +154,7 @@ i2c@5 {
>  			#size-cells = <0>;
>  			reg = <5>;
>  
> -			gpioext1: gpio@3f {
> +			gpioext1: pinctrl@3f {
>  				/* GPIO Expander 1 Mapping :
>  				 * - 0: GPIOEXP_INT1
>  				 * - 1: Battery detect
> @@ -183,7 +183,7 @@ gpioext1: gpio@3f {
>  				interrupt-parent = <&msmgpio>;
>  				interrupts = <0 IRQ_TYPE_EDGE_FALLING>;
>  
> -				probe-reset;
> +				semtech,probe-reset;
>  
>  				gpio-controller;
>  				interrupt-controller;
> @@ -195,7 +195,7 @@ i2c@6 {
>  			#size-cells = <0>;
>  			reg = <6>;
>  
> -			gpioext2: gpio@70 {
> +			gpioext2: pinctrl@70 {
>  				/* GPIO Expander 2 Mapping :
>  				 * - 0: USB_HUB_INTn
>  				 * - 1: HUB_CONNECT
> @@ -221,7 +221,7 @@ gpioext2: gpio@70 {
>  				interrupt-parent = <&gpioext1>;
>  				interrupts = <14 IRQ_TYPE_EDGE_FALLING>;
>  
> -				probe-reset;
> +				semtech,probe-reset;
>  
>  				gpio-controller;
>  				interrupt-controller;
> 

^ permalink raw reply	[flat|nested] 22+ messages in thread

* Re: [PATCH 3/6] arm: dts: qcom: mdm9615: wp8548-mangoh-green: fix sx150xq node names and probe-reset property
  2022-10-07 19:38   ` Konrad Dybcio
@ 2022-10-10  7:45     ` Neil Armstrong
  0 siblings, 0 replies; 22+ messages in thread
From: Neil Armstrong @ 2022-10-10  7:45 UTC (permalink / raw)
  To: Konrad Dybcio, Andy Gross, Lee Jones, Bjorn Andersson,
	Linus Walleij, Mark Brown, Krzysztof Kozlowski, Rob Herring,
	Liam Girdwood
  Cc: linux-gpio, linux-kernel, linux-arm-msm, devicetree

On 07/10/2022 21:38, Konrad Dybcio wrote:
> 
> 
> On 6.10.2022 11:58, Neil Armstrong wrote:
>> Fix the sx150xq node names to pinctrl and use the right probe-reset property.
>>
>> Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
>> ---
> Could you please also fix up the property order (may be in a separate patchset ofc)?

Yup, sure

> 
> Reviewed-by: Konrad Dybcio <konrad.dybcio@somainline.org>
> 
> Konrad

Thanks
Neil

<snip>

^ permalink raw reply	[flat|nested] 22+ messages in thread

end of thread, other threads:[~2022-10-10  7:48 UTC | newest]

Thread overview: 22+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-10-06  9:57 [PATCH 0/6] arm: qcom: mdm9615: second round of bindings and DT fixes Neil Armstrong
2022-10-06  9:57 ` [PATCH 1/6] dt-bindings: pinctrl: convert qcom,mdm9615-pinctrl.txt to dt-schema Neil Armstrong
2022-10-06 11:09   ` Krzysztof Kozlowski
2022-10-06 16:20     ` Neil Armstrong
2022-10-06 20:20       ` Krzysztof Kozlowski
2022-10-06 12:27   ` Rob Herring
2022-10-06 16:21     ` Neil Armstrong
2022-10-06 19:42       ` Rob Herring
2022-10-06  9:57 ` [PATCH 2/6] arm: dts: qcom: mdm9615: fix pinctrl subnodes Neil Armstrong
2022-10-06 11:10   ` Krzysztof Kozlowski
2022-10-07 19:36   ` Konrad Dybcio
2022-10-06  9:58 ` [PATCH 3/6] arm: dts: qcom: mdm9615: wp8548-mangoh-green: fix sx150xq node names and probe-reset property Neil Armstrong
2022-10-07 19:38   ` Konrad Dybcio
2022-10-10  7:45     ` Neil Armstrong
2022-10-06  9:58 ` [PATCH 4/6] dt-bindings: soc: qcom: convert non-smd RPM bindings to dt-schema Neil Armstrong
2022-10-06 19:53   ` Rob Herring
2022-10-06  9:58 ` [PATCH 5/6] dt-bindings: regulators: convert non-smd RPM Regulators " Neil Armstrong
2022-10-06 12:27   ` Rob Herring
2022-10-06 20:04   ` Rob Herring
2022-10-06  9:58 ` [PATCH 6/6] dt-bindings: soc: qcom: ipc-rpm: refer to qcom,ipc-rpm-regulator.yaml Neil Armstrong
2022-10-06 12:27   ` Rob Herring
2022-10-06 20:05   ` Rob Herring

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).