All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] dt-bindings: fpga: microchip,mpf-spi-fpga-mgr: use spi-peripheral-props.yaml
@ 2022-07-27 16:43 Krzysztof Kozlowski
  2022-07-27 16:57 ` Conor.Dooley
                   ` (3 more replies)
  0 siblings, 4 replies; 7+ messages in thread
From: Krzysztof Kozlowski @ 2022-07-27 16:43 UTC (permalink / raw)
  To: Conor Dooley, Ivan Bornyakov, Moritz Fischer, Wu Hao, Xu Yilun,
	Tom Rix, Rob Herring, Krzysztof Kozlowski, linux-fpga,
	devicetree, linux-kernel
  Cc: Krzysztof Kozlowski

Instead of listing directly properties typical for SPI peripherals,
reference the spi-peripheral-props.yaml schema.  This allows using all
properties typical for SPI-connected devices, even these which device
bindings author did not tried yet.

Remove the spi-* properties which now come via spi-peripheral-props.yaml
schema, except for the cases when device schema adds some constraints
like maximum frequency.

While changing additionalProperties->unevaluatedProperties, put it in
typical place, just before example DTS.

Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

---

Technically, this depends on [1] merged to SPI tree, if we want to
preserve existing behavior of not allowing SPI CPHA and CPOL in each of
schemas in this patch.

If this patch comes independently via different tree, the SPI CPHA and
CPOL will be allowed for brief period of time, before [1] is merged.
This will not have negative impact, just DT schema checks will be
loosened for that period.

[1] https://lore.kernel.org/all/20220722191539.90641-2-krzysztof.kozlowski@linaro.org/
---
 .../bindings/fpga/microchip,mpf-spi-fpga-mgr.yaml          | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/Documentation/devicetree/bindings/fpga/microchip,mpf-spi-fpga-mgr.yaml b/Documentation/devicetree/bindings/fpga/microchip,mpf-spi-fpga-mgr.yaml
index aee45cb15592..527532f039ce 100644
--- a/Documentation/devicetree/bindings/fpga/microchip,mpf-spi-fpga-mgr.yaml
+++ b/Documentation/devicetree/bindings/fpga/microchip,mpf-spi-fpga-mgr.yaml
@@ -22,13 +22,14 @@ properties:
     description: SPI chip select
     maxItems: 1
 
-  spi-max-frequency: true
-
 required:
   - compatible
   - reg
 
-additionalProperties: false
+allOf:
+  - $ref: /schemas/spi/spi-peripheral-props.yaml#
+
+unevaluatedProperties: false
 
 examples:
   - |
-- 
2.34.1


^ permalink raw reply related	[flat|nested] 7+ messages in thread

* Re: [PATCH] dt-bindings: fpga: microchip,mpf-spi-fpga-mgr: use spi-peripheral-props.yaml
  2022-07-27 16:43 [PATCH] dt-bindings: fpga: microchip,mpf-spi-fpga-mgr: use spi-peripheral-props.yaml Krzysztof Kozlowski
@ 2022-07-27 16:57 ` Conor.Dooley
  2022-07-27 19:27   ` Krzysztof Kozlowski
  2022-07-27 18:46 ` Ivan Bornyakov
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 7+ messages in thread
From: Conor.Dooley @ 2022-07-27 16:57 UTC (permalink / raw)
  To: krzysztof.kozlowski, i.bornyakov, mdf, hao.wu, yilun.xu, trix,
	robh+dt, krzysztof.kozlowski+dt, linux-fpga, devicetree,
	linux-kernel

Hey Krzysztof,

On 27/07/2022 17:43, Krzysztof Kozlowski wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
> 
> Instead of listing directly properties typical for SPI peripherals,
> reference the spi-peripheral-props.yaml schema.  This allows using all
> properties typical for SPI-connected devices, even these which device
> bindings author did not tried yet.
> 
> Remove the spi-* properties which now come via spi-peripheral-props.yaml
> schema, except for the cases when device schema adds some constraints
> like maximum frequency.
> 
> While changing additionalProperties->unevaluatedProperties, put it in
> typical place, just before example DTS.

This is probably just me missing something about dt-schema norms,
but how come you added the $ref just above the example rather than
above the properties list?

Either way, the change itself makes sense to me:
Reviewed-by: Conor Dooley <conor.dooley@microchip.com>

Thanks,
Conor.

> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 
> ---
> 
> Technically, this depends on [1] merged to SPI tree, if we want to
> preserve existing behavior of not allowing SPI CPHA and CPOL in each of
> schemas in this patch.
> 
> If this patch comes independently via different tree, the SPI CPHA and
> CPOL will be allowed for brief period of time, before [1] is merged.
> This will not have negative impact, just DT schema checks will be
> loosened for that period.
> 
> [1] https://lore.kernel.org/all/20220722191539.90641-2-krzysztof.kozlowski@linaro.org/
> ---
>  .../bindings/fpga/microchip,mpf-spi-fpga-mgr.yaml          | 7 ++++---
>  1 file changed, 4 insertions(+), 3 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/fpga/microchip,mpf-spi-fpga-mgr.yaml b/Documentation/devicetree/bindings/fpga/microchip,mpf-spi-fpga-mgr.yaml
> index aee45cb15592..527532f039ce 100644
> --- a/Documentation/devicetree/bindings/fpga/microchip,mpf-spi-fpga-mgr.yaml
> +++ b/Documentation/devicetree/bindings/fpga/microchip,mpf-spi-fpga-mgr.yaml
> @@ -22,13 +22,14 @@ properties:
>      description: SPI chip select
>      maxItems: 1
> 
> -  spi-max-frequency: true
> -
>  required:
>    - compatible
>    - reg
> 
> -additionalProperties: false
> +allOf:
> +  - $ref: /schemas/spi/spi-peripheral-props.yaml#
> +
> +unevaluatedProperties: false
> 
>  examples:
>    - |
> --
> 2.34.1
> 


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] dt-bindings: fpga: microchip,mpf-spi-fpga-mgr: use spi-peripheral-props.yaml
  2022-07-27 16:43 [PATCH] dt-bindings: fpga: microchip,mpf-spi-fpga-mgr: use spi-peripheral-props.yaml Krzysztof Kozlowski
  2022-07-27 16:57 ` Conor.Dooley
@ 2022-07-27 18:46 ` Ivan Bornyakov
  2022-07-29 23:23 ` Rob Herring
  2022-08-15  3:33 ` Xu Yilun
  3 siblings, 0 replies; 7+ messages in thread
From: Ivan Bornyakov @ 2022-07-27 18:46 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Conor Dooley, Moritz Fischer, Wu Hao, Xu Yilun, Tom Rix,
	Rob Herring, Krzysztof Kozlowski, linux-fpga, devicetree,
	linux-kernel

On Wed, Jul 27, 2022 at 06:43:47PM +0200, Krzysztof Kozlowski wrote:
> Instead of listing directly properties typical for SPI peripherals,
> reference the spi-peripheral-props.yaml schema.  This allows using all
> properties typical for SPI-connected devices, even these which device
> bindings author did not tried yet.
> 
> Remove the spi-* properties which now come via spi-peripheral-props.yaml
> schema, except for the cases when device schema adds some constraints
> like maximum frequency.
> 
> While changing additionalProperties->unevaluatedProperties, put it in
> typical place, just before example DTS.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 
> ---
> 
> Technically, this depends on [1] merged to SPI tree, if we want to
> preserve existing behavior of not allowing SPI CPHA and CPOL in each of
> schemas in this patch.
> 
> If this patch comes independently via different tree, the SPI CPHA and
> CPOL will be allowed for brief period of time, before [1] is merged.
> This will not have negative impact, just DT schema checks will be
> loosened for that period.
> 
> [1] https://lore.kernel.org/all/20220722191539.90641-2-krzysztof.kozlowski@linaro.org/
> ---
>  .../bindings/fpga/microchip,mpf-spi-fpga-mgr.yaml          | 7 ++++---
>  1 file changed, 4 insertions(+), 3 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/fpga/microchip,mpf-spi-fpga-mgr.yaml b/Documentation/devicetree/bindings/fpga/microchip,mpf-spi-fpga-mgr.yaml
> index aee45cb15592..527532f039ce 100644
> --- a/Documentation/devicetree/bindings/fpga/microchip,mpf-spi-fpga-mgr.yaml
> +++ b/Documentation/devicetree/bindings/fpga/microchip,mpf-spi-fpga-mgr.yaml
> @@ -22,13 +22,14 @@ properties:
>      description: SPI chip select
>      maxItems: 1
>  
> -  spi-max-frequency: true
> -
>  required:
>    - compatible
>    - reg
>  
> -additionalProperties: false
> +allOf:
> +  - $ref: /schemas/spi/spi-peripheral-props.yaml#
> +
> +unevaluatedProperties: false
>  
>  examples:
>    - |
> -- 
> 2.34.1
> 

Acked-by: Ivan Bornyakov <i.bornyakov@metrotek.ru>


^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] dt-bindings: fpga: microchip,mpf-spi-fpga-mgr: use spi-peripheral-props.yaml
  2022-07-27 16:57 ` Conor.Dooley
@ 2022-07-27 19:27   ` Krzysztof Kozlowski
  2022-07-27 19:29     ` Conor.Dooley
  0 siblings, 1 reply; 7+ messages in thread
From: Krzysztof Kozlowski @ 2022-07-27 19:27 UTC (permalink / raw)
  To: Conor.Dooley, i.bornyakov, mdf, hao.wu, yilun.xu, trix, robh+dt,
	krzysztof.kozlowski+dt, linux-fpga, devicetree, linux-kernel

On 27/07/2022 18:57, Conor.Dooley@microchip.com wrote:
> Hey Krzysztof,
> 
> On 27/07/2022 17:43, Krzysztof Kozlowski wrote:
>> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
>>
>> Instead of listing directly properties typical for SPI peripherals,
>> reference the spi-peripheral-props.yaml schema.  This allows using all
>> properties typical for SPI-connected devices, even these which device
>> bindings author did not tried yet.
>>
>> Remove the spi-* properties which now come via spi-peripheral-props.yaml
>> schema, except for the cases when device schema adds some constraints
>> like maximum frequency.
>>
>> While changing additionalProperties->unevaluatedProperties, put it in
>> typical place, just before example DTS.
> 
> This is probably just me missing something about dt-schema norms,
> but how come you added the $ref just above the example rather than
> above the properties list?

AFAIU, the location is purely by convention so far. allOf with refs go
before properties, but with "if:then" they go after required. This is a
bit confusing and causes unneeded code move when someone adds "if:" to
such allOf. Additionally the spi-peripheral-props.yaml ref is actually
not that important, unlike other refs (e.g. panels referencing
panel-common.yaml, watchdog -> watchdog.yaml).

Therefore for consistency with all other SPI slave devices I put it at
the end, but if you find it inconsistent/messing up, I can move it
before properties.

Best regards,
Krzysztof

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] dt-bindings: fpga: microchip,mpf-spi-fpga-mgr: use spi-peripheral-props.yaml
  2022-07-27 19:27   ` Krzysztof Kozlowski
@ 2022-07-27 19:29     ` Conor.Dooley
  0 siblings, 0 replies; 7+ messages in thread
From: Conor.Dooley @ 2022-07-27 19:29 UTC (permalink / raw)
  To: krzysztof.kozlowski, Conor.Dooley, i.bornyakov, mdf, hao.wu,
	yilun.xu, trix, robh+dt, krzysztof.kozlowski+dt, linux-fpga,
	devicetree, linux-kernel

On 27/07/2022 20:27, Krzysztof Kozlowski wrote:
> Therefore for consistency with all other SPI slave devices I put it at
> the end, but if you find it inconsistent/messing up, I can move it
> before properties.

Nah, just wanted to know what the rationale was.
Thanks!

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] dt-bindings: fpga: microchip,mpf-spi-fpga-mgr: use spi-peripheral-props.yaml
  2022-07-27 16:43 [PATCH] dt-bindings: fpga: microchip,mpf-spi-fpga-mgr: use spi-peripheral-props.yaml Krzysztof Kozlowski
  2022-07-27 16:57 ` Conor.Dooley
  2022-07-27 18:46 ` Ivan Bornyakov
@ 2022-07-29 23:23 ` Rob Herring
  2022-08-15  3:33 ` Xu Yilun
  3 siblings, 0 replies; 7+ messages in thread
From: Rob Herring @ 2022-07-29 23:23 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Conor Dooley, Tom Rix, linux-fpga, linux-kernel, Xu Yilun,
	devicetree, Krzysztof Kozlowski, Moritz Fischer, Ivan Bornyakov,
	Wu Hao, Rob Herring

On Wed, 27 Jul 2022 18:43:47 +0200, Krzysztof Kozlowski wrote:
> Instead of listing directly properties typical for SPI peripherals,
> reference the spi-peripheral-props.yaml schema.  This allows using all
> properties typical for SPI-connected devices, even these which device
> bindings author did not tried yet.
> 
> Remove the spi-* properties which now come via spi-peripheral-props.yaml
> schema, except for the cases when device schema adds some constraints
> like maximum frequency.
> 
> While changing additionalProperties->unevaluatedProperties, put it in
> typical place, just before example DTS.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
> 
> ---
> 
> Technically, this depends on [1] merged to SPI tree, if we want to
> preserve existing behavior of not allowing SPI CPHA and CPOL in each of
> schemas in this patch.
> 
> If this patch comes independently via different tree, the SPI CPHA and
> CPOL will be allowed for brief period of time, before [1] is merged.
> This will not have negative impact, just DT schema checks will be
> loosened for that period.
> 
> [1] https://lore.kernel.org/all/20220722191539.90641-2-krzysztof.kozlowski@linaro.org/
> ---
>  .../bindings/fpga/microchip,mpf-spi-fpga-mgr.yaml          | 7 ++++---
>  1 file changed, 4 insertions(+), 3 deletions(-)
> 

Acked-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 7+ messages in thread

* Re: [PATCH] dt-bindings: fpga: microchip,mpf-spi-fpga-mgr: use spi-peripheral-props.yaml
  2022-07-27 16:43 [PATCH] dt-bindings: fpga: microchip,mpf-spi-fpga-mgr: use spi-peripheral-props.yaml Krzysztof Kozlowski
                   ` (2 preceding siblings ...)
  2022-07-29 23:23 ` Rob Herring
@ 2022-08-15  3:33 ` Xu Yilun
  3 siblings, 0 replies; 7+ messages in thread
From: Xu Yilun @ 2022-08-15  3:33 UTC (permalink / raw)
  To: Krzysztof Kozlowski
  Cc: Conor Dooley, Ivan Bornyakov, Moritz Fischer, Wu Hao, Tom Rix,
	Rob Herring, Krzysztof Kozlowski, linux-fpga, devicetree,
	linux-kernel

On 2022-07-27 at 18:43:47 +0200, Krzysztof Kozlowski wrote:
> Instead of listing directly properties typical for SPI peripherals,
> reference the spi-peripheral-props.yaml schema.  This allows using all
> properties typical for SPI-connected devices, even these which device
> bindings author did not tried yet.
> 
> Remove the spi-* properties which now come via spi-peripheral-props.yaml
> schema, except for the cases when device schema adds some constraints
> like maximum frequency.
> 
> While changing additionalProperties->unevaluatedProperties, put it in
> typical place, just before example DTS.
> 
> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Acked-by: Xu Yilun <yilun.xu@intel.com>

Applied to for-next.

Thanks,
Yilun

> 
> ---
> 
> Technically, this depends on [1] merged to SPI tree, if we want to
> preserve existing behavior of not allowing SPI CPHA and CPOL in each of
> schemas in this patch.
> 
> If this patch comes independently via different tree, the SPI CPHA and
> CPOL will be allowed for brief period of time, before [1] is merged.
> This will not have negative impact, just DT schema checks will be
> loosened for that period.
> 
> [1] https://lore.kernel.org/all/20220722191539.90641-2-krzysztof.kozlowski@linaro.org/
> ---
>  .../bindings/fpga/microchip,mpf-spi-fpga-mgr.yaml          | 7 ++++---
>  1 file changed, 4 insertions(+), 3 deletions(-)
> 
> diff --git a/Documentation/devicetree/bindings/fpga/microchip,mpf-spi-fpga-mgr.yaml b/Documentation/devicetree/bindings/fpga/microchip,mpf-spi-fpga-mgr.yaml
> index aee45cb15592..527532f039ce 100644
> --- a/Documentation/devicetree/bindings/fpga/microchip,mpf-spi-fpga-mgr.yaml
> +++ b/Documentation/devicetree/bindings/fpga/microchip,mpf-spi-fpga-mgr.yaml
> @@ -22,13 +22,14 @@ properties:
>      description: SPI chip select
>      maxItems: 1
>  
> -  spi-max-frequency: true
> -
>  required:
>    - compatible
>    - reg
>  
> -additionalProperties: false
> +allOf:
> +  - $ref: /schemas/spi/spi-peripheral-props.yaml#
> +
> +unevaluatedProperties: false
>  
>  examples:
>    - |
> -- 
> 2.34.1
> 

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2022-08-15  3:43 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-07-27 16:43 [PATCH] dt-bindings: fpga: microchip,mpf-spi-fpga-mgr: use spi-peripheral-props.yaml Krzysztof Kozlowski
2022-07-27 16:57 ` Conor.Dooley
2022-07-27 19:27   ` Krzysztof Kozlowski
2022-07-27 19:29     ` Conor.Dooley
2022-07-27 18:46 ` Ivan Bornyakov
2022-07-29 23:23 ` Rob Herring
2022-08-15  3:33 ` Xu Yilun

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.