aboutsummaryrefslogtreecommitdiffstats
path: root/Documentation/devicetree/bindings/leds
diff options
context:
space:
mode:
authorRob Herring <robh@kernel.org>2021-09-13 14:28:10 -0500
committerRob Herring <robh@kernel.org>2021-10-13 17:23:23 -0500
commit37f86649cdf7f9c8ca4341377d402797d54394d4 (patch)
treed1ecea283866f26ddbcf0c87335b993a9e92e0b8 /Documentation/devicetree/bindings/leds
parentdt-bindings: leds: Convert register-bit-led binding to DT schema (diff)
downloadlinux-dev-37f86649cdf7f9c8ca4341377d402797d54394d4.tar.xz
linux-dev-37f86649cdf7f9c8ca4341377d402797d54394d4.zip
dt-bindings: leds: register-bit-led: Use 'reg' instead of 'offset'
'reg' is the standard property for defining register banks/addresses. Add it to use for the register address and deprecate 'offset'. This also allows for using standard node names with unit-addresses. However, since it is quite possible to have multiple nodes at the same register address, allow for the unit-address to optionally have the bit offset. The unit-address format is '@<reg address>[,<bit offset>]'. This matches the format recently added for nvmem binding which has the same issue. Cc: Pavel Machek <pavel@ucw.cz> Cc: Linus Walleij <linus.walleij@linaro.org> Cc: linux-leds@vger.kernel.org Signed-off-by: Rob Herring <robh@kernel.org> Link: https://lore.kernel.org/r/20210913192816.1225025-3-robh@kernel.org Signed-off-by: Rob Herring <robh@kernel.org>
Diffstat (limited to 'Documentation/devicetree/bindings/leds')
-rw-r--r--Documentation/devicetree/bindings/leds/register-bit-led.yaml25
1 files changed, 21 insertions, 4 deletions
diff --git a/Documentation/devicetree/bindings/leds/register-bit-led.yaml b/Documentation/devicetree/bindings/leds/register-bit-led.yaml
index 77ba0b824c15..79b8fc0f9d23 100644
--- a/Documentation/devicetree/bindings/leds/register-bit-led.yaml
+++ b/Documentation/devicetree/bindings/leds/register-bit-led.yaml
@@ -20,9 +20,19 @@ allOf:
- $ref: /schemas/leds/common.yaml#
properties:
+ $nodename:
+ description:
+ The unit-address is in the form of @<reg addr>,<bit offset>
+ pattern: '^led@[0-9a-f]+,[0-9a-f]{1,2}$'
+
compatible:
const: register-bit-led
+ reg:
+ description:
+ The register address and size
+ maxItems: 1
+
mask:
description:
bit mask for the bit controlling this LED in the register
@@ -37,11 +47,12 @@ properties:
description:
register offset to the register controlling this LED
$ref: /schemas/types.yaml#/definitions/uint32
+ deprecated: true
required:
- compatible
- mask
- - offset
+ - reg
unevaluatedProperties: false
@@ -51,24 +62,30 @@ examples:
syscon@10000000 {
compatible = "arm,realview-pb1176-syscon", "syscon";
reg = <0x10000000 0x1000>;
+ #address-cells = <1>;
+ #size-cells = <1>;
+ ranges = <0x0 0x10000000 0x1000>;
- led@8.0 {
+ led@8,0 {
compatible = "register-bit-led";
+ reg = <0x08 0x04>;
offset = <0x08>;
mask = <0x01>;
label = "versatile:0";
linux,default-trigger = "heartbeat";
default-state = "on";
};
- led@8.1 {
+ led@8,1 {
compatible = "register-bit-led";
+ reg = <0x08 0x04>;
offset = <0x08>;
mask = <0x02>;
label = "versatile:1";
default-state = "off";
};
- led@8.2 {
+ led@8,2 {
compatible = "register-bit-led";
+ reg = <0x08 0x04>;
offset = <0x08>;
mask = <0x04>;
label = "versatile:2";