Skip to contentSkip to conversation

dt-bindings: pwm: mxs: Document fsl,imx28-pwm

PATCH Applied Fabio Estevam 5 participants 7 messages Sep 22, 2023 – Oct 6, 2023

Subsystems (3)
lore
Share & tools
lore

Fabio Estevam

author reviewer
#0 lore raw

PATCH v2 1/3 dt-bindings: pwm: mxs: Document fsl,imx28-pwm

From: Fabio Estevam <[email protected]>

imx28 uses the same PWM block that is found on imx23.

Add an entry for fsl,imx28-pwm.

---
Changes since v1:
- None. Only collected Uwe's ack.

 Documentation/devicetree/bindings/pwm/mxs-pwm.yaml | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)
Documentation/devicetree/bindings/pwm/mxs-pwm.yaml +6 -2
index 6ffbed204c25..655f008081d5 100644
@@ -15,8 +15,12 @@ allOf:
 
 properties:
   compatible:
-    enum:
-      - fsl,imx23-pwm
+    oneOf:
+      - const: fsl,imx23-pwm
+      - items:
+          - enum:
+              - fsl,imx28-pwm
+          - const: fsl,imx23-pwm
 
   reg:
     maxItems: 1
Signature · 1 line
2.34.1
author reviewer
#1 lore raw

PATCH v2 2/3 dt-bindings: pwm: mxs: Document the clocks property

From: Fabio Estevam <[email protected]>

The 'clocks' property is mandatory for the PWM to operate.

Document it.

---
Changes since v1:
- None. Only collected Uwe and Conor's acks.

 Documentation/devicetree/bindings/pwm/mxs-pwm.yaml | 5 +++++
 1 file changed, 5 insertions(+)
Documentation/devicetree/bindings/pwm/mxs-pwm.yaml +5 -0
index 655f008081d5..8f50e23ca8c9 100644
@@ -25,6 +25,9 @@ properties:
   reg:
     maxItems: 1
 
+  clocks:
+    maxItems: 1
+
   "#pwm-cells":
     const: 3
 
@@ -35,6 +38,7 @@ properties:
 required:
   - compatible
   - reg
+  - clocks
   - fsl,pwm-number
 
 additionalProperties: false
@@ -44,6 +48,7 @@ examples:
     pwm@80064000 {
         compatible = "fsl,imx23-pwm";
         reg = <0x80064000 0x2000>;
+        clocks = <&clks 30>;
         #pwm-cells = <3>;
         fsl,pwm-number = <8>;
     };
Signature · 1 line
2.34.1
author reviewer
#2 lore raw

PATCH v2 3/3 ARM: dts: mxs: Switch to #pwm-cells = <3>

In reply to Fabio Estevam

From: Fabio Estevam <[email protected]>

mxs-pwm.yaml documents that #pwm-cells should be 3.

This is correct as the last cell may indicate the PWM polarity.

Convert all mxs devicetree files to using #pwm-cells = <3> for consistency.

---
Changes since v1:
- Newly introduced. Change mxs DT's to use #pwm-cells = <3>. (Uwe)

 arch/arm/boot/dts/nxp/mxs/imx23-evk.dts              | 2 +-
 arch/arm/boot/dts/nxp/mxs/imx23-sansa.dts            | 2 +-
 arch/arm/boot/dts/nxp/mxs/imx23-xfi3.dts             | 2 +-
 arch/arm/boot/dts/nxp/mxs/imx23.dtsi                 | 2 +-
 arch/arm/boot/dts/nxp/mxs/imx28-apf28dev.dts         | 2 +-
 arch/arm/boot/dts/nxp/mxs/imx28-cfa10049.dts         | 2 +-
 arch/arm/boot/dts/nxp/mxs/imx28-cfa10055.dts         | 2 +-
 arch/arm/boot/dts/nxp/mxs/imx28-cfa10057.dts         | 2 +-
 arch/arm/boot/dts/nxp/mxs/imx28-cfa10058.dts         | 2 +-
 arch/arm/boot/dts/nxp/mxs/imx28-eukrea-mbmx28lc.dtsi | 2 +-
 arch/arm/boot/dts/nxp/mxs/imx28-evk.dts              | 2 +-
 arch/arm/boot/dts/nxp/mxs/imx28-m28cu3.dts           | 2 +-
 arch/arm/boot/dts/nxp/mxs/imx28-m28evk.dts           | 2 +-
 arch/arm/boot/dts/nxp/mxs/imx28-tx28.dts             | 2 +-
 arch/arm/boot/dts/nxp/mxs/imx28.dtsi                 | 2 +-
 15 files changed, 15 insertions(+), 15 deletions(-)
arch/arm/boot/dts/nxp/mxs/imx23-evk.dts +1 -1
index 3b609d987d88..7365fe4581a3 100644
@@ -137,7 +137,7 @@ usb0: usb@80080000 {
 
 	backlight_display: backlight {
 		compatible = "pwm-backlight";
-		pwms = <&pwm 2 5000000>;
+		pwms = <&pwm 2 5000000 0>;
 		brightness-levels = <0 4 8 16 32 64 128 255>;
 		default-brightness-level = <6>;
 	};
arch/arm/boot/dts/nxp/mxs/imx23-sansa.dts +1 -1
index 46057d9bf555..636cf09a2b37 100644
@@ -166,7 +166,7 @@ reg_vdd_tuner: regulator-vdd-tuner0 {
 
 	backlight {
 		compatible = "pwm-backlight";
-		pwms = <&pwm 2 5000000>;
+		pwms = <&pwm 2 5000000 0>;
 		brightness-levels = <0 4 8 16 32 64 128 255>;
 		default-brightness-level = <6>;
 	};
arch/arm/boot/dts/nxp/mxs/imx23-xfi3.dts +1 -1
index b1d8210f3ecc..28341d8315c2 100644
@@ -153,7 +153,7 @@ reg_vddio_sd0: regulator-vddio-sd0 {
 
 	backlight {
 		compatible = "pwm-backlight";
-		pwms = <&pwm 2 5000000>;
+		pwms = <&pwm 2 5000000 0>;
 		brightness-levels = <0 4 8 16 32 64 128 255>;
 		default-brightness-level = <6>;
 	};
arch/arm/boot/dts/nxp/mxs/imx23.dtsi +1 -1
index 5eca942a52fd..2bb68fc954b9 100644
@@ -561,7 +561,7 @@ pwm: pwm@80064000 {
 				compatible = "fsl,imx23-pwm";
 				reg = <0x80064000 0x2000>;
 				clocks = <&clks 30>;
-				#pwm-cells = <2>;
+				#pwm-cells = <3>;
 				fsl,pwm-number = <5>;
 				status = "disabled";
 			};
arch/arm/boot/dts/nxp/mxs/imx28-apf28dev.dts +1 -1
index fd6fee63ad2f..6c87266eb135 100644
@@ -39,7 +39,7 @@ user {
 	backlight {
 		compatible = "pwm-backlight";
 
-		pwms = <&pwm 3 191000>;
+		pwms = <&pwm 3 191000 0>;
 		brightness-levels = <0 4 8 16 32 64 128 255>;
 		default-brightness-level = <6>;
 	};
arch/arm/boot/dts/nxp/mxs/imx28-cfa10049.dts +1 -1
index 953e3162d2d2..f0ce897b9d5c 100644
@@ -173,7 +173,7 @@ rotary {
 
 	backlight {
 		compatible = "pwm-backlight";
-		pwms = <&pwm 3 5000000>;
+		pwms = <&pwm 3 5000000 0>;
 		brightness-levels = <0 4 8 16 32 64 128 255>;
 		default-brightness-level = <6>;
 
arch/arm/boot/dts/nxp/mxs/imx28-cfa10055.dts +1 -1
index 70e225a99fbe..cb68edd6101b 100644
@@ -39,7 +39,7 @@ hx8357: hx8357@0 {
 
 	backlight {
 		compatible = "pwm-backlight";
-		pwms = <&pwm 3 5000000>;
+		pwms = <&pwm 3 5000000 0>;
 		brightness-levels = <0 4 8 16 32 64 128 255>;
 		default-brightness-level = <6>;
 	};
arch/arm/boot/dts/nxp/mxs/imx28-cfa10057.dts +1 -1
index 0be7356941ee..5875c3d7ba97 100644
@@ -26,7 +26,7 @@ reg_usb1_vbus: regulator-0 {
 
 	backlight {
 		compatible = "pwm-backlight";
-		pwms = <&pwm 4 5000000>;
+		pwms = <&pwm 4 5000000 0>;
 		brightness-levels = <0 4 8 16 32 64 128 255>;
 		default-brightness-level = <7>;
 	};
arch/arm/boot/dts/nxp/mxs/imx28-cfa10058.dts +1 -1
index aae0f1801461..b414e67ef379 100644
@@ -26,7 +26,7 @@ reg_usb1_vbus: regulator-0 {
 
 	backlight {
 		compatible = "pwm-backlight";
-		pwms = <&pwm 3 5000000>;
+		pwms = <&pwm 3 5000000 0>;
 		brightness-levels = <0 4 8 16 32 64 128 255>;
 		default-brightness-level = <6>;
 	};
arch/arm/boot/dts/nxp/mxs/imx28-eukrea-mbmx28lc.dtsi +1 -1
index 6633cde305e5..652fc9e57a55 100644
@@ -14,7 +14,7 @@ / {
 
 	backlight {
 		compatible = "pwm-backlight";
-		pwms = <&pwm 4 1000000>;
+		pwms = <&pwm 4 1000000 0>;
 		brightness-levels = <0 25 50 75 100 125 150 175 200 225 255>;
 		default-brightness-level = <10>;
 	};
arch/arm/boot/dts/nxp/mxs/imx28-evk.dts +1 -1
index 783abb82b2a8..9ebb7371e235 100644
@@ -117,7 +117,7 @@ user {
 
 	backlight_display: backlight {
 		compatible = "pwm-backlight";
-		pwms = <&pwm 2 5000000>;
+		pwms = <&pwm 2 5000000 0>;
 		brightness-levels = <0 4 8 16 32 64 128 255>;
 		default-brightness-level = <6>;
 	};
arch/arm/boot/dts/nxp/mxs/imx28-m28cu3.dts +1 -1
index 8241c2d159fa..34b4d3246db1 100644
@@ -17,7 +17,7 @@ memory@40000000 {
 
 	backlight {
 		compatible = "pwm-backlight";
-		pwms = <&pwm 3 5000000>;
+		pwms = <&pwm 3 5000000 0>;
 		brightness-levels = <0 4 8 16 32 64 128 255>;
 		default-brightness-level = <6>;
 	};
arch/arm/boot/dts/nxp/mxs/imx28-m28evk.dts +1 -1
index 6bf26f386a5e..13070ca08cff 100644
@@ -13,7 +13,7 @@ / {
 
 	backlight {
 		compatible = "pwm-backlight";
-		pwms = <&pwm 4 5000000>;
+		pwms = <&pwm 4 5000000 0>;
 		brightness-levels = <0 4 8 16 32 64 128 255>;
 		default-brightness-level = <6>;
 	};
arch/arm/boot/dts/nxp/mxs/imx28-tx28.dts +1 -1
index 23ad7cd0a1de..0391ffd15866 100644
@@ -131,7 +131,7 @@ user_led: user {
 
 	backlight {
 		compatible = "pwm-backlight";
-		pwms = <&pwm 0 500000>;
+		pwms = <&pwm 0 500000 0>;
 		/*
 		 * a silly way to create a 1:1 relationship between the
 		 * PWM value and the actual duty cycle
arch/arm/boot/dts/nxp/mxs/imx28.dtsi +1 -1
index 763adeb995ee..01ddd1ab5354 100644
@@ -1185,7 +1185,7 @@ pwm: pwm@80064000 {
 				compatible = "fsl,imx28-pwm", "fsl,imx23-pwm";
 				reg = <0x80064000 0x2000>;
 				clocks = <&clks 44>;
-				#pwm-cells = <2>;
+				#pwm-cells = <3>;
 				fsl,pwm-number = <8>;
 				status = "disabled";
 			};
Signature · 1 line
2.34.1
Reviewed-by on v2 3/3
#3 lore raw

Re: [PATCH v2 3/3] ARM: dts: mxs: Switch to #pwm-cells = <3>

Hello Fabio,

Quoted 10 lines · Fabio Estevam

From: Fabio Estevam <[email protected]>

mxs-pwm.yaml documents that #pwm-cells should be 3.

This is correct as the last cell may indicate the PWM polarity.

Convert all mxs devicetree files to using #pwm-cells = <3> for consistency.

Very nice,

Thanks!
Uwe

Signature · 2 lines
Pengutronix e.K.                           | Uwe Kleine-König            |
Industrial Linux Solutions                 | https://www.pengutronix.de/ |
maintainer Acked-by on v2 1/3
#5 lore raw
In reply to Fabio Estevam
Quoted 6 lines · Fabio Estevam

From: Fabio Estevam <[email protected]>

imx28 uses the same PWM block that is found on imx23.

Add an entry for fsl,imx28-pwm.

Quoted 9 lines

---
Changes since v1:
- None. Only collected Uwe's ack.

 Documentation/devicetree/bindings/pwm/mxs-pwm.yaml | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)
#6 lore raw

Re: (subset) [PATCH v2 1/3] dt-bindings: pwm: mxs: Document fsl,imx28-pwm

In reply to Fabio Estevam
Quoted 5 lines · Fabio Estevam

imx28 uses the same PWM block that is found on imx23.

Add an entry for fsl,imx28-pwm.

Applied, thanks!

[1/3] dt-bindings: pwm: mxs: Document fsl,imx28-pwm

      commit: c3c653422a265a3b5dfdf8567eebd5116311c36d
[2/3] dt-bindings: pwm: mxs: Document the clocks property
      commit: 42b9116ce12579692ec18ad9446ea5ad832ea0ef

Best regards,

Signature · 1 line
Thierry Reding <[email protected]>