[3/7] dt-bindings: i2c: document st,stm32mp25-i2c compatible
Commit Message
Add a new compatible st,stm32mp25-i2c for the STM32MP25 series which
has only one interrupt line for both events and errors and differs in
term of handling of FastModePlus.
Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
---
.../devicetree/bindings/i2c/st,stm32-i2c.yaml | 49 +++++++++++++++----
1 file changed, 39 insertions(+), 10 deletions(-)
Comments
On Wed, Nov 29, 2023 at 01:59:12PM +0100, Alain Volmat wrote:
> Add a new compatible st,stm32mp25-i2c for the STM32MP25 series which
> has only one interrupt line for both events and errors and differs in
> term of handling of FastModePlus.
>
> Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
> ---
> .../devicetree/bindings/i2c/st,stm32-i2c.yaml | 49 +++++++++++++++----
> 1 file changed, 39 insertions(+), 10 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/i2c/st,stm32-i2c.yaml b/Documentation/devicetree/bindings/i2c/st,stm32-i2c.yaml
> index 94b75d9f66cd..6a69bb6de23e 100644
> --- a/Documentation/devicetree/bindings/i2c/st,stm32-i2c.yaml
> +++ b/Documentation/devicetree/bindings/i2c/st,stm32-i2c.yaml
> @@ -19,6 +19,7 @@ allOf:
> - st,stm32f7-i2c
> - st,stm32mp13-i2c
> - st,stm32mp15-i2c
> + - st,stm32mp25-i2c
> then:
> properties:
> i2c-scl-rising-time-ns:
> @@ -41,6 +42,43 @@ allOf:
> clock-frequency:
> enum: [100000, 400000]
>
> + - if:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - st,stm32f4-i2c
> + - st,stm32f7-i2c
> + - st,stm32mp13-i2c
> + - st,stm32mp15-i2c
> + then:
> + properties:
> + interrupts:
> + items:
> + - description: interrupt ID for I2C event
> + - description: interrupt ID for I2C error
> +
> + interrupt-names:
> + items:
> + - const: event
> + - const: error
> +
> + - if:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - st,stm32mp25-i2c
> + then:
Should this not just be "else:"?
> + properties:
> + interrupts:
> + items:
> + - description: common interrupt for events and errors
> +
> + interrupt-names:
> + items:
> + - const: event
> +
Cheers,
Conor.
On Wed, Nov 29, 2023 at 01:59:12PM +0100, Alain Volmat wrote:
> Add a new compatible st,stm32mp25-i2c for the STM32MP25 series which
> has only one interrupt line for both events and errors and differs in
> term of handling of FastModePlus.
>
> Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
> ---
> .../devicetree/bindings/i2c/st,stm32-i2c.yaml | 49 +++++++++++++++----
> 1 file changed, 39 insertions(+), 10 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/i2c/st,stm32-i2c.yaml b/Documentation/devicetree/bindings/i2c/st,stm32-i2c.yaml
> index 94b75d9f66cd..6a69bb6de23e 100644
> --- a/Documentation/devicetree/bindings/i2c/st,stm32-i2c.yaml
> +++ b/Documentation/devicetree/bindings/i2c/st,stm32-i2c.yaml
> @@ -19,6 +19,7 @@ allOf:
> - st,stm32f7-i2c
> - st,stm32mp13-i2c
> - st,stm32mp15-i2c
> + - st,stm32mp25-i2c
> then:
> properties:
> i2c-scl-rising-time-ns:
> @@ -41,6 +42,43 @@ allOf:
> clock-frequency:
> enum: [100000, 400000]
>
> + - if:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - st,stm32f4-i2c
> + - st,stm32f7-i2c
> + - st,stm32mp13-i2c
> + - st,stm32mp15-i2c
> + then:
> + properties:
> + interrupts:
> + items:
> + - description: interrupt ID for I2C event
> + - description: interrupt ID for I2C error
> +
> + interrupt-names:
> + items:
> + - const: event
> + - const: error
> +
> + - if:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - st,stm32mp25-i2c
> + then:
> + properties:
> + interrupts:
> + items:
> + - description: common interrupt for events and errors
> +
> + interrupt-names:
> + items:
> + - const: event
> +
> properties:
> compatible:
> enum:
> @@ -48,20 +86,11 @@ properties:
> - st,stm32f7-i2c
> - st,stm32mp13-i2c
> - st,stm32mp15-i2c
> + - st,stm32mp25-i2c
>
> reg:
> maxItems: 1
>
> - interrupts:
> - items:
> - - description: interrupt ID for I2C event
> - - description: interrupt ID for I2C error
> -
> - interrupt-names:
> - items:
> - - const: event
> - - const: error
No this should remain. You are duplicating defining the names otherwise.
Add 'minItems: 1' here. Then the if/then schemas should just have
'maxItems: 1' or 'minItems: 2'.
Rob
@@ -19,6 +19,7 @@ allOf:
- st,stm32f7-i2c
- st,stm32mp13-i2c
- st,stm32mp15-i2c
+ - st,stm32mp25-i2c
then:
properties:
i2c-scl-rising-time-ns:
@@ -41,6 +42,43 @@ allOf:
clock-frequency:
enum: [100000, 400000]
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - st,stm32f4-i2c
+ - st,stm32f7-i2c
+ - st,stm32mp13-i2c
+ - st,stm32mp15-i2c
+ then:
+ properties:
+ interrupts:
+ items:
+ - description: interrupt ID for I2C event
+ - description: interrupt ID for I2C error
+
+ interrupt-names:
+ items:
+ - const: event
+ - const: error
+
+ - if:
+ properties:
+ compatible:
+ contains:
+ enum:
+ - st,stm32mp25-i2c
+ then:
+ properties:
+ interrupts:
+ items:
+ - description: common interrupt for events and errors
+
+ interrupt-names:
+ items:
+ - const: event
+
properties:
compatible:
enum:
@@ -48,20 +86,11 @@ properties:
- st,stm32f7-i2c
- st,stm32mp13-i2c
- st,stm32mp15-i2c
+ - st,stm32mp25-i2c
reg:
maxItems: 1
- interrupts:
- items:
- - description: interrupt ID for I2C event
- - description: interrupt ID for I2C error
-
- interrupt-names:
- items:
- - const: event
- - const: error
-
resets:
maxItems: 1