Message ID | 20240214-mbly-gpio-v1-3-f88c0ccf372b@bootlin.com (mailing list archive) |
---|---|
State | Superseded |
Headers | show |
Series | Rework Nomadik GPIO to add Mobileye EyeQ5 support | expand |
On 14/02/2024 17:23, Théo Lebrun wrote: > This GPIO controller is used on the Mobileye EyeQ5 SoC. Add its > compatible to the dt-bindings. One difference is that the block as > integrated on EyeQ5 does not support sleep-mode. > > Signed-off-by: Théo Lebrun <theo.lebrun@bootlin.com> > --- > .../devicetree/bindings/gpio/st,nomadik-gpio.yaml | 16 +++++++++++++++- > 1 file changed, 15 insertions(+), 1 deletion(-) > > diff --git a/Documentation/devicetree/bindings/gpio/st,nomadik-gpio.yaml b/Documentation/devicetree/bindings/gpio/st,nomadik-gpio.yaml > index bbd23daed229..e44cf292bc6d 100644 > --- a/Documentation/devicetree/bindings/gpio/st,nomadik-gpio.yaml > +++ b/Documentation/devicetree/bindings/gpio/st,nomadik-gpio.yaml > @@ -19,7 +19,9 @@ properties: > pattern: "^gpio@[0-9a-f]+$" > > compatible: > - const: st,nomadik-gpio > + enum: > + - st,nomadik-gpio > + - mobileye,eyeq5-gpio > > reg: > maxItems: 1 > @@ -65,6 +67,18 @@ required: > > unevaluatedProperties: false > > +allOf: > + - if: > + properties: > + compatible: > + contains: > + const: st,nomadik-gpio > + then: > + properties: > + st,supports-sleepmode: > + description: Whether the controller can sleep or not. > + $ref: /schemas/types.yaml#/definitions/flag You already have such property, so you are defining it second time. You want instead if: for eyeq5-gpio making it: then: properties: st,supports-sleepmode: false Best regards, Krzysztof
Hello, On Thu Feb 15, 2024 at 10:13 AM CET, Krzysztof Kozlowski wrote: > On 14/02/2024 17:23, Théo Lebrun wrote: > > This GPIO controller is used on the Mobileye EyeQ5 SoC. Add its > > compatible to the dt-bindings. One difference is that the block as > > integrated on EyeQ5 does not support sleep-mode. > > > > Signed-off-by: Théo Lebrun <theo.lebrun@bootlin.com> > > --- > > .../devicetree/bindings/gpio/st,nomadik-gpio.yaml | 16 +++++++++++++++- > > 1 file changed, 15 insertions(+), 1 deletion(-) > > > > diff --git a/Documentation/devicetree/bindings/gpio/st,nomadik-gpio.yaml b/Documentation/devicetree/bindings/gpio/st,nomadik-gpio.yaml > > index bbd23daed229..e44cf292bc6d 100644 > > --- a/Documentation/devicetree/bindings/gpio/st,nomadik-gpio.yaml > > +++ b/Documentation/devicetree/bindings/gpio/st,nomadik-gpio.yaml > > @@ -19,7 +19,9 @@ properties: > > pattern: "^gpio@[0-9a-f]+$" > > > > compatible: > > - const: st,nomadik-gpio > > + enum: > > + - st,nomadik-gpio > > + - mobileye,eyeq5-gpio > > > > reg: > > maxItems: 1 > > @@ -65,6 +67,18 @@ required: > > > > unevaluatedProperties: false > > > > +allOf: > > + - if: > > + properties: > > + compatible: > > + contains: > > + const: st,nomadik-gpio > > + then: > > + properties: > > + st,supports-sleepmode: > > + description: Whether the controller can sleep or not. > > + $ref: /schemas/types.yaml#/definitions/flag > > You already have such property, so you are defining it second time. You > want instead if: for eyeq5-gpio making it: > then: > properties: > st,supports-sleepmode: false Good catch. I hesitated between declaring the property inside an if-statement or disabling it inside an if-statement as you show here. I ended-up mixing those two approaches. Wil pick the if-eyeq5-then-disable-prop solution. Thanks for the review Krzysztof! -- Théo Lebrun, Bootlin Embedded Linux and Kernel engineering https://bootlin.com
diff --git a/Documentation/devicetree/bindings/gpio/st,nomadik-gpio.yaml b/Documentation/devicetree/bindings/gpio/st,nomadik-gpio.yaml index bbd23daed229..e44cf292bc6d 100644 --- a/Documentation/devicetree/bindings/gpio/st,nomadik-gpio.yaml +++ b/Documentation/devicetree/bindings/gpio/st,nomadik-gpio.yaml @@ -19,7 +19,9 @@ properties: pattern: "^gpio@[0-9a-f]+$" compatible: - const: st,nomadik-gpio + enum: + - st,nomadik-gpio + - mobileye,eyeq5-gpio reg: maxItems: 1 @@ -65,6 +67,18 @@ required: unevaluatedProperties: false +allOf: + - if: + properties: + compatible: + contains: + const: st,nomadik-gpio + then: + properties: + st,supports-sleepmode: + description: Whether the controller can sleep or not. + $ref: /schemas/types.yaml#/definitions/flag + examples: - | gpio1: gpio@8012e080 {
This GPIO controller is used on the Mobileye EyeQ5 SoC. Add its compatible to the dt-bindings. One difference is that the block as integrated on EyeQ5 does not support sleep-mode. Signed-off-by: Théo Lebrun <theo.lebrun@bootlin.com> --- .../devicetree/bindings/gpio/st,nomadik-gpio.yaml | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-)