[v1,1/2] ARM: dts: rockchip: rename and label gpio-led subnodes part 3
diff mbox series

Message ID 20200813193455.19772-1-jbx6244@gmail.com
State New
Headers show
Series
  • [v1,1/2] ARM: dts: rockchip: rename and label gpio-led subnodes part 3
Related show

Commit Message

Johan Jonker Aug. 13, 2020, 7:34 p.m. UTC
Current dts files with 'gpio-led' nodes were manually verified.
In order to automate this process leds-gpio.txt
has been converted to yaml. With this conversion a check
for pattern properties was added. In part 3 rename and label
gpio-led subnodes with pinctrl. To make things equal to other
dts files move pinctrl below the compatible property.

Fix with help of the following rules:

1: Add nodename in the preferred form.

2: Always add a label that ends with '_led' to prevent conflicts
   with other labels such as 'power' and 'mmc'

3: If leds need pinctrl add a label that ends with '_led_pin'
   also to prevent conflicts with other labels.

patternProperties:
  # The first form is preferred, but fall back to just 'led'
  # anywhere in the node name to at least catch some child nodes.
  "(^led-[0-9a-f]$|led)":

make ARCH=arm dtbs_check
DT_SCHEMA_FILES=Documentation/devicetree/bindings/leds/
leds-gpio.yaml

Signed-off-by: Johan Jonker <jbx6244@gmail.com>
---
 arch/arm/boot/dts/rk3036-kylin.dts | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

Comments

Heiko Stübner Aug. 30, 2020, 8:43 p.m. UTC | #1
Hi Johan,

Am Donnerstag, 13. August 2020, 21:34:54 CEST schrieb Johan Jonker:
> Current dts files with 'gpio-led' nodes were manually verified.
> In order to automate this process leds-gpio.txt
> has been converted to yaml. With this conversion a check
> for pattern properties was added. In part 3 rename and label
> gpio-led subnodes with pinctrl. To make things equal to other
> dts files move pinctrl below the compatible property.
> 
> Fix with help of the following rules:
> 
> 1: Add nodename in the preferred form.
> 
> 2: Always add a label that ends with '_led' to prevent conflicts
>    with other labels such as 'power' and 'mmc'
> 
> 3: If leds need pinctrl add a label that ends with '_led_pin'
>    also to prevent conflicts with other labels.

I'm undecided about this ... and while thinking about this,
realized that we already have some changes doing that in the tree.

To explain, in general the pinctrl names should come from the names used
in the actual device schematics, as this makes it easier to find and compare
them between devicetree and schematics files.

So creating an arbitrary foo_led_pin pinctrl instead breaks this searchability
which I'd really like to keep.


Heiko


> 
> patternProperties:
>   # The first form is preferred, but fall back to just 'led'
>   # anywhere in the node name to at least catch some child nodes.
>   "(^led-[0-9a-f]$|led)":
> 
> make ARCH=arm dtbs_check
> DT_SCHEMA_FILES=Documentation/devicetree/bindings/leds/
> leds-gpio.yaml
> 
> Signed-off-by: Johan Jonker <jbx6244@gmail.com>
> ---
>  arch/arm/boot/dts/rk3036-kylin.dts | 6 +++---
>  1 file changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/arch/arm/boot/dts/rk3036-kylin.dts b/arch/arm/boot/dts/rk3036-kylin.dts
> index 7154b827e..bf808cda6 100644
> --- a/arch/arm/boot/dts/rk3036-kylin.dts
> +++ b/arch/arm/boot/dts/rk3036-kylin.dts
> @@ -15,12 +15,12 @@
>  
>  	leds: gpio-leds {
>  		compatible = "gpio-leds";
> +		pinctrl-names = "default";
> +		pinctrl-0 = <&work_led_pin>;
>  
>  		work_led: led-0 {
>  			gpios = <&gpio2 RK_PD6 GPIO_ACTIVE_HIGH>;
>  			label = "kylin:red:led";
> -			pinctrl-names = "default";
> -			pinctrl-0 = <&led_ctl>;
>  		};
>  	};
>  
> @@ -367,7 +367,7 @@
>  
>  &pinctrl {
>  	leds {
> -		led_ctl: led-ctl {
> +		work_led_pin: work-led-pin {
>  			rockchip,pins = <2 RK_PD6 RK_FUNC_GPIO &pcfg_pull_none>;
>  		};
>  	};
>

Patch
diff mbox series

diff --git a/arch/arm/boot/dts/rk3036-kylin.dts b/arch/arm/boot/dts/rk3036-kylin.dts
index 7154b827e..bf808cda6 100644
--- a/arch/arm/boot/dts/rk3036-kylin.dts
+++ b/arch/arm/boot/dts/rk3036-kylin.dts
@@ -15,12 +15,12 @@ 
 
 	leds: gpio-leds {
 		compatible = "gpio-leds";
+		pinctrl-names = "default";
+		pinctrl-0 = <&work_led_pin>;
 
 		work_led: led-0 {
 			gpios = <&gpio2 RK_PD6 GPIO_ACTIVE_HIGH>;
 			label = "kylin:red:led";
-			pinctrl-names = "default";
-			pinctrl-0 = <&led_ctl>;
 		};
 	};
 
@@ -367,7 +367,7 @@ 
 
 &pinctrl {
 	leds {
-		led_ctl: led-ctl {
+		work_led_pin: work-led-pin {
 			rockchip,pins = <2 RK_PD6 RK_FUNC_GPIO &pcfg_pull_none>;
 		};
 	};