From: Rob Herring <robh@kernel.org> To: Linus Walleij <linus.walleij@linaro.org>, Stephen Boyd <sboyd@kernel.org>, Pavel Machek <pavel@ucw.cz> Cc: Liviu Dudau <liviu.dudau@arm.com>, Sudeep Holla <sudeep.holla@arm.com>, Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>, linux-arm-kernel@lists.infradead.org, linux-clk@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-leds@vger.kernel.org Subject: [PATCH v2 2/8] dt-bindings: leds: register-bit-led: Use 'reg' instead of 'offset' Date: Mon, 13 Sep 2021 14:28:10 -0500 [thread overview] Message-ID: <20210913192816.1225025-3-robh@kernel.org> (raw) In-Reply-To: <20210913192816.1225025-1-robh@kernel.org> '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> --- .../bindings/leds/register-bit-led.yaml | 25 ++++++++++++++++--- 1 file 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"; -- 2.30.2
WARNING: multiple messages have this Message-ID (diff)
From: Rob Herring <robh@kernel.org> To: Linus Walleij <linus.walleij@linaro.org>, Stephen Boyd <sboyd@kernel.org>, Pavel Machek <pavel@ucw.cz> Cc: Liviu Dudau <liviu.dudau@arm.com>, Sudeep Holla <sudeep.holla@arm.com>, Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>, linux-arm-kernel@lists.infradead.org, linux-clk@vger.kernel.org, devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-leds@vger.kernel.org Subject: [PATCH v2 2/8] dt-bindings: leds: register-bit-led: Use 'reg' instead of 'offset' Date: Mon, 13 Sep 2021 14:28:10 -0500 [thread overview] Message-ID: <20210913192816.1225025-3-robh@kernel.org> (raw) In-Reply-To: <20210913192816.1225025-1-robh@kernel.org> '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> --- .../bindings/leds/register-bit-led.yaml | 25 ++++++++++++++++--- 1 file 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"; -- 2.30.2 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2021-09-13 19:28 UTC|newest] Thread overview: 46+ messages / expand[flat|nested] mbox.gz Atom feed top 2021-09-13 19:28 [PATCH v2 0/8] Arm boards syscon 'unit_address_format' clean-ups Rob Herring 2021-09-13 19:28 ` Rob Herring 2021-09-13 19:28 ` [PATCH v2 1/8] dt-bindings: leds: Convert register-bit-led binding to DT schema Rob Herring 2021-09-13 19:28 ` Rob Herring 2021-09-13 22:41 ` Linus Walleij 2021-09-13 22:41 ` Linus Walleij 2021-09-14 16:22 ` Rob Herring 2021-09-14 16:22 ` Rob Herring 2021-10-13 22:22 ` Rob Herring 2021-10-13 22:22 ` Rob Herring 2021-09-13 19:28 ` Rob Herring [this message] 2021-09-13 19:28 ` [PATCH v2 2/8] dt-bindings: leds: register-bit-led: Use 'reg' instead of 'offset' Rob Herring 2021-10-13 22:22 ` Rob Herring 2021-10-13 22:22 ` Rob Herring 2021-09-13 19:28 ` [PATCH v2 3/8] leds: syscon: Support 'reg' in addition to 'offset' for register address Rob Herring 2021-09-13 19:28 ` Rob Herring 2021-09-13 19:28 ` [PATCH v2 4/8] dt-bindings: clock: arm,syscon-icst: Use 'reg' instead of 'vco-offset' for VCO " Rob Herring 2021-09-13 19:28 ` [PATCH v2 4/8] dt-bindings: clock: arm, syscon-icst: " Rob Herring 2021-09-14 19:58 ` [PATCH v2 4/8] dt-bindings: clock: arm,syscon-icst: " Stephen Boyd 2021-09-14 19:58 ` [PATCH v2 4/8] dt-bindings: clock: arm, syscon-icst: " Stephen Boyd 2021-09-17 23:45 ` [PATCH v2 4/8] dt-bindings: clock: arm,syscon-icst: " Linus Walleij 2021-09-17 23:45 ` Linus Walleij 2021-09-13 19:28 ` [PATCH v2 5/8] clk: versatile: clk-icst: Support 'reg' in addition to 'vco-offset' for " Rob Herring 2021-09-13 19:28 ` Rob Herring 2021-09-14 19:59 ` Stephen Boyd 2021-09-14 19:59 ` Stephen Boyd 2021-09-14 22:00 ` Rob Herring 2021-09-14 22:00 ` Rob Herring 2021-09-15 1:10 ` Stephen Boyd 2021-09-15 1:10 ` Stephen Boyd 2021-09-14 22:13 ` Linus Walleij 2021-09-14 22:13 ` Linus Walleij 2021-09-13 19:28 ` [PATCH v2 6/8] ARM: dts: arm: Update register-bit-led nodes 'reg' and node names Rob Herring 2021-09-13 19:28 ` Rob Herring 2021-10-21 21:15 ` Rob Herring 2021-10-21 21:15 ` Rob Herring 2021-10-24 23:21 ` Linus Walleij 2021-10-24 23:21 ` Linus Walleij 2021-09-13 19:28 ` [PATCH v2 7/8] ARM: dts: arm: Update ICST clock " Rob Herring 2021-09-13 19:28 ` Rob Herring 2021-09-13 19:28 ` [PATCH v2 8/8] kbuild: Enable dtc 'unit_address_format' warning by default Rob Herring 2021-09-13 19:28 ` Rob Herring 2021-09-14 15:13 ` Nick Desaulniers 2021-09-14 15:13 ` Nick Desaulniers 2021-10-04 16:23 ` [PATCH v2 0/8] Arm boards syscon 'unit_address_format' clean-ups Rob Herring 2021-10-04 16:23 ` Rob Herring
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=20210913192816.1225025-3-robh@kernel.org \ --to=robh@kernel.org \ --cc=devicetree@vger.kernel.org \ --cc=linus.walleij@linaro.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-clk@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=linux-leds@vger.kernel.org \ --cc=liviu.dudau@arm.com \ --cc=lorenzo.pieralisi@arm.com \ --cc=pavel@ucw.cz \ --cc=sboyd@kernel.org \ --cc=sudeep.holla@arm.com \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.