[PATCH v7 1/3] dt-bindings: mfd: Convert atmel-flexcom to json-schema
Krzysztof Kozlowski
krzysztof.kozlowski at linaro.org
Wed Jul 6 23:42:15 PDT 2022
On 07/07/2022 07:29, Kavyasree.Kotagiri at microchip.com wrote:
>>> Convert the Atmel flexcom device tree bindings to json schema.
>>>
>>> Signed-off-by: Kavyasree Kotagiri <kavyasree.kotagiri at microchip.com>
>>> ---
>>> v6 -> v7:
>>> - Change filename to atmel,sama5d2-flexcom.yaml
>>> - Add #address-cells, #size-cells to flexcom node - Fixed warnings.
>>>
>>> v5 -> v6:
>>> - Removed spi node from example as suggested by Rob and
>>> also pattern properties(spi dt-bindings conversion to yaml patch is under
>> review).
>>> Once that is accepted, I will add back spi example through new patch.
>>>
>>> v4 -> v5:
>>> - Fixed indentations.
>>>
>>> v3 -> v4:
>>> - Corrected format of enum used for compatible string.
>>>
>>> v2 -> v3:
>>> - used enum for compatible string.
>>> - changed irq flag to IRQ_TYPE_LEVEL_HIGH in example.
>>> - fixed dtschema errors.
>>>
>>> v1 -> v2:
>>> - Fix title.
>>>
>>> .../bindings/mfd/atmel,sama5d2-flexcom.yaml | 74
>> +++++++++++++++++++
>>> .../devicetree/bindings/mfd/atmel-flexcom.txt | 63 ----------------
>>> 2 files changed, 74 insertions(+), 63 deletions(-)
>>> create mode 100644
>> Documentation/devicetree/bindings/mfd/atmel,sama5d2-flexcom.yaml
>>> delete mode 100644 Documentation/devicetree/bindings/mfd/atmel-
>> flexcom.txt
>>>
>>> diff --git a/Documentation/devicetree/bindings/mfd/atmel,sama5d2-
>> flexcom.yaml b/Documentation/devicetree/bindings/mfd/atmel,sama5d2-
>> flexcom.yaml
>>> new file mode 100644
>>> index 000000000000..864f490ffb83
>>> --- /dev/null
>>> +++ b/Documentation/devicetree/bindings/mfd/atmel,sama5d2-
>> flexcom.yaml
>>> @@ -0,0 +1,74 @@
>>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
>>> +%YAML 1.2
>>> +---
>>> +$id: http://devicetree.org/schemas/mfd/atmel,sama5d2-flexcom.yaml#
>>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>>> +
>>> +title: Atmel Flexcom (Flexible Serial Communication Unit)
>>> +
>>> +maintainers:
>>> + - Kavyasree Kotagiri <kavyasree.kotagiri at microchip.com>
>>> +
>>> +description:
>>> + The Atmel Flexcom is just a wrapper which embeds a SPI controller,
>>> + an I2C controller and an USART. Only one function can be used at a
>>> + time and is chosen at boot time according to the device tree.
>>> +
>>> +properties:
>>> + compatible:
>>> + enum:
>>> + - atmel,sama5d2-flexcom
>>> +
>>> + reg:
>>> + maxItems: 1
>>> +
>>> + clocks:
>>> + maxItems: 1
>>> +
>>> + "#address-cells":
>>> + const: 1
>>> +
>>> + "#size-cells":
>>> + const: 1
>>> +
>>> + ranges:
>>> + description:
>>> + One range for the full I/O register region. (including USART,
>>> + TWI and SPI registers).
>>> + items:
>>> + maxItems: 3
>>> +
>>> + atmel,flexcom-mode:
>>> + description: |
>>> + Specifies the flexcom mode as follows:
>>> + 1: USART
>>> + 2: SPI
>>> + 3: I2C.
>>> + $ref: /schemas/types.yaml#/definitions/uint32
>>> + enum: [1, 2, 3]
>>> +
>>
>> As pointed out by Rob's bot - why do you not allow the protocol-specific
>> children here? spi, serial etc?
>>
> usart/serial, spi and i2c dt-bindings are in .txt format. So, I cannot refer them here. Like I mentioned in v5 -> v6 changes description, spi dt-bindings conversion is under discussion. For now, I am removing child nodes from example. I will add it through new patch once below bindings are accepted:
> https://patchwork.kernel.org/project/linux-arm-kernel/patch/20220629125804.137099-1-sergiu.moga@microchip.com/
No one talks about example. Your schema does not allow any child nodes
now, which is not correct. You must describe these children - even if
their schema is not ready. In such case just type:object, description
and maybe compatibles.
I don't understand why you cannot refer to them here.
Best regards,
Krzysztof
More information about the linux-arm-kernel
mailing list