[PATCH] dt-bindings: gpio: fsl,qoriq-gpio: allow gpio-hog child nodes

Vincent Jardin via B4 Relay posted 1 patch 1 month ago
There is a newer version of this series
Documentation/devicetree/bindings/gpio/fsl,qoriq-gpio.yaml | 7 +++++++
1 file changed, 7 insertions(+)
[PATCH] dt-bindings: gpio: fsl,qoriq-gpio: allow gpio-hog child nodes
Posted by Vincent Jardin via B4 Relay 1 month ago
From: Vincent Jardin <vjardin@free.fr>

The binding sets additionalProperties: false and describes no child
nodes, so every gpio-hog on a QorIQ/Layerscape GPIO controller is a
dtbs_check failure:

  gpio@2310000 (fsl,ls2080a-gpio): 'ethsw-reset-hog', 'flash-reset-hog',
  'pltrst-hog', 'thermtrip-hog' do not match any of the regexes:
  '^pinctrl-[0-9]+$'

hogs are handled generically by gpiolib rather than by the controller
driver, so they work on this controller exactly as anywhere else, only
the schema disallows them.

Note: some other GPIO bindings already have such pattern:
gpio-mvebu, gpio-davinci, aspeed,ast2400-gpio and fairchild,74hc595

Signed-off-by: Vincent Jardin <vjardin@free.fr>
---
 Documentation/devicetree/bindings/gpio/fsl,qoriq-gpio.yaml | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/Documentation/devicetree/bindings/gpio/fsl,qoriq-gpio.yaml b/Documentation/devicetree/bindings/gpio/fsl,qoriq-gpio.yaml
index 4cb2a6b9fabfb..a6252440e099b 100644
--- a/Documentation/devicetree/bindings/gpio/fsl,qoriq-gpio.yaml
+++ b/Documentation/devicetree/bindings/gpio/fsl,qoriq-gpio.yaml
@@ -63,6 +63,13 @@ properties:
       GPIO registers are used as little endian. If not
       present registers are used as big endian by default.
 
+patternProperties:
+  "^(.+-hog(-[0-9]+)?)$":
+    type: object
+
+    required:
+      - gpio-hog
+
 required:
   - compatible
   - reg

---
base-commit: 0a0d1d55dad570724bf8c7ea83409639cfb4be9b
change-id: 20260824-for-upstream-dt-qoriq-gpio-hog-5092a0f4d089

Best regards,
-- 
Vincent Jardin <vjardin@free.fr>
Re: [PATCH] dt-bindings: gpio: fsl,qoriq-gpio: allow gpio-hog child nodes
Posted by Frank Li 1 month ago
On Mon, Aug 24, 2026 at 05:48:51PM +0200, Vincent Jardin wrote:
> The binding sets additionalProperties: false and describes no child
> nodes, so every gpio-hog on a QorIQ/Layerscape GPIO controller is a
> dtbs_check failure:
>
>   gpio@2310000 (fsl,ls2080a-gpio): 'ethsw-reset-hog', 'flash-reset-hog',
>   'pltrst-hog', 'thermtrip-hog' do not match any of the regexes:
>   '^pinctrl-[0-9]+$'

I agree on this change, but I can't find ethsw-reset-hog in upstream tree
yet.

Frank
>
> hogs are handled generically by gpiolib rather than by the controller
> driver, so they work on this controller exactly as anywhere else, only
> the schema disallows them.
>
> Note: some other GPIO bindings already have such pattern:
> gpio-mvebu, gpio-davinci, aspeed,ast2400-gpio and fairchild,74hc595
>
> Signed-off-by: Vincent Jardin <vjardin@free.fr>
> ---
>  Documentation/devicetree/bindings/gpio/fsl,qoriq-gpio.yaml | 7 +++++++
>  1 file changed, 7 insertions(+)
>
> diff --git a/Documentation/devicetree/bindings/gpio/fsl,qoriq-gpio.yaml b/Documentation/devicetree/bindings/gpio/fsl,qoriq-gpio.yaml
> index 4cb2a6b9fabfb..a6252440e099b 100644
> --- a/Documentation/devicetree/bindings/gpio/fsl,qoriq-gpio.yaml
> +++ b/Documentation/devicetree/bindings/gpio/fsl,qoriq-gpio.yaml
> @@ -63,6 +63,13 @@ properties:
>        GPIO registers are used as little endian. If not
>        present registers are used as big endian by default.
>
> +patternProperties:
> +  "^(.+-hog(-[0-9]+)?)$":
> +    type: object
> +
> +    required:
> +      - gpio-hog
> +
>  required:
>    - compatible
>    - reg
>
> ---
> base-commit: 0a0d1d55dad570724bf8c7ea83409639cfb4be9b
> change-id: 20260824-for-upstream-dt-qoriq-gpio-hog-5092a0f4d089
>
> Best regards,
> --
> Vincent Jardin <vjardin@free.fr>
>
Re: [PATCH] dt-bindings: gpio: fsl,qoriq-gpio: allow gpio-hog child nodes
Posted by Vincent Jardin 1 month ago
Hi Frank,

> >   gpio@2310000 (fsl,ls2080a-gpio): 'ethsw-reset-hog', 'flash-reset-hog',
> >   'pltrst-hog', 'thermtrip-hog' do not match any of the regexes:
> >   '^pinctrl-[0-9]+$'
> 
> I agree on this change, but I can't find ethsw-reset-hog in upstream tree
> yet.

It was something from a development branch that I did not properly filter before
sending. I did send a v2 with an updated commit message:
  https://lore.kernel.org/all/20260824-for-upstream-dt-qoriq-gpio-hog-v2-1-58bbc82b881e@free.fr/

Best regards,
  Vincent