Re: [PATCH v3 2/4] spi: dt-bindings: samsung: convert to dtschema

From: Krzysztof Kozlowski
Date: Wed Jan 19 2022 - 14:50:01 EST


On 19/01/2022 20:31, Pratyush Yadav wrote:
> On 12/01/22 11:00AM, Krzysztof Kozlowski wrote:
>> Convert the Samsung SoC (S3C24xx, S3C64xx, S5Pv210, Exynos) SPI
>> controller bindings to DT schema format
>>
>> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxxxxx>
>> Reviewed-by: Sam Protsenko <semen.protsenko@xxxxxxxxxx>
>> ---
>> .../spi/samsung,spi-peripheral-props.yaml | 35 ++++
>> .../devicetree/bindings/spi/samsung,spi.yaml | 187 ++++++++++++++++++
>> .../bindings/spi/spi-peripheral-props.yaml | 1 +
>> .../devicetree/bindings/spi/spi-samsung.txt | 122 ------------
>> MAINTAINERS | 2 +-
>> 5 files changed, 224 insertions(+), 123 deletions(-)
>> create mode 100644 Documentation/devicetree/bindings/spi/samsung,spi-peripheral-props.yaml
>> create mode 100644 Documentation/devicetree/bindings/spi/samsung,spi.yaml
>> delete mode 100644 Documentation/devicetree/bindings/spi/spi-samsung.txt
>>
>> diff --git a/Documentation/devicetree/bindings/spi/samsung,spi-peripheral-props.yaml b/Documentation/devicetree/bindings/spi/samsung,spi-peripheral-props.yaml
>> new file mode 100644
>> index 000000000000..aa5a1f48494b
>> --- /dev/null
>> +++ b/Documentation/devicetree/bindings/spi/samsung,spi-peripheral-props.yaml
>> @@ -0,0 +1,35 @@
>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
>> +%YAML 1.2
>> +---
>> +$id: http://devicetree.org/schemas/spi/samsung,spi-peripheral-props.yaml#
>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>> +
>> +title: Peripheral-specific properties for Samsung S3C/S5P/Exynos SoC SPI controller
>> +
>> +maintainers:
>> + - Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxxxxx>
>> +
>> +description:
>> + See spi-peripheral-props.yaml for more info.
>> +
>> +properties:
>> + controller-data:
>> + type: object
>> + additionalProperties: false
>> +
>> + properties:
>> + samsung,spi-feedback-delay:
>> + description: |
>> + The sampling phase shift to be applied on the miso line (to account
>> + for any lag in the miso line). Valid values:
>> + - 0: No phase shift.
>> + - 1: 90 degree phase shift sampling.
>> + - 2: 180 degree phase shift sampling.
>> + - 3: 270 degree phase shift sampling.
>> + $ref: /schemas/types.yaml#/definitions/uint32
>> + enum: [0, 1, 2, 3]
>> +
>> + required:
>> + - samsung,spi-feedback-delay
>
> I am not quite sure if this required would work here. Let's say another
> controller also uses a controller-data node, but it contains a different
> set of properties. Won't this cause an error to be raised for that
> controller since this property is not there?

The controller-data is Samsung SPI specific (does not exist in any other
binding), so why would controller-data get added to a different controller?

Best regards,
Krzysztof