Re: [PATCH v2] dt-bindings: display: atmel,lcdc: convert to dtschema

From: Krzysztof Kozlowski
Date: Mon Mar 04 2024 - 04:43:28 EST


On 04/03/2024 10:28, Dharma.B@xxxxxxxxxxxxx wrote:
> On 04/03/24 1:06 pm, Krzysztof Kozlowski wrote:
>> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
>>
>> On 04/03/2024 06:36, Dharma Balasubiramani wrote:
>>> Convert the atmel,lcdc bindings to DT schema.
>>> Changes during conversion: add missing clocks and clock-names properties.
>>>
>>> Signed-off-by: Dharma Balasubiramani <dharma.b@xxxxxxxxxxxxx>
>>> ---
>>> This patch converts the existing lcdc display text binding to JSON schema.
>>> The binding is split into two namely
>>> lcdc.yaml
>>> - Holds the frame buffer properties
>>> lcdc-display.yaml
>>> - Holds the display panel properties which is a phandle to the display
>>> property in lcdc fb node.
>>>
>>> These bindings are tested against the existing at91 dts files using
>>> dtbs_check.
>>> ---
>>> Changes in v2:
>>> - Run checkpatch and remove whitespace errors.
>>> - Add the standard interrupt flags.
>>> - Split the binding into two, namely lcdc.yaml and lcdc-display.yaml.
>>> - Link to v1: https://lore.kernel.org/r/20240223-lcdc-fb-v1-1-4c64cb6277df@xxxxxxxxxxxxx
>>> ---
>>> .../bindings/display/atmel,lcdc-display.yaml | 98 ++++++++++++++++++++++
>>> .../devicetree/bindings/display/atmel,lcdc.txt | 87 -------------------
>>> .../devicetree/bindings/display/atmel,lcdc.yaml | 70 ++++++++++++++++
>>> 3 files changed, 168 insertions(+), 87 deletions(-)
>>>
>>> diff --git a/Documentation/devicetree/bindings/display/atmel,lcdc-display.yaml b/Documentation/devicetree/bindings/display/atmel,lcdc-display.yaml
>>> new file mode 100644
>>> index 000000000000..ea4fd34b9e2c
>>> --- /dev/null
>>> +++ b/Documentation/devicetree/bindings/display/atmel,lcdc-display.yaml
>>> @@ -0,0 +1,98 @@
>>> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
>>> +%YAML 1.2
>>> +---
>>> +$id: http://devicetree.org/schemas/display/atmel,lcdc-display.yaml#
>>> +$schema: http://devicetree.org/meta-schemas/core.yaml#
>>> +
>>> +title: Microchip's LCDC Display
>>> +
>>> +maintainers:
>>> + - Nicolas Ferre <nicolas.ferre@xxxxxxxxxxxxx>
>>> + - Dharma Balasubiramani <dharma.b@xxxxxxxxxxxxx>
>>> +
>>> +description:
>>> + The LCD Controller (LCDC) consists of logic for transferring LCD image data
>>> + from an external display buffer to a TFT LCD panel. The LCDC has one display
>>> + input buffer per layer that fetches pixels through the single bus host
>>> + interface and a look-up table to allow palletized display configurations. The
>>> + LCDC is programmable on a per layer basis, and supports different LCD
>>> + resolutions, window sizes, image formats and pixel depths.
>>> +
>>> +# We need a select here since this schema is applicable only for nodes with the
>>> +# following properties
>>> +
>>> +select:
>>> + anyOf:
>>> + - required: [ 'atmel,dmacon' ]
>>> + - required: [ 'atmel,lcdcon2' ]
>>> + - required: [ 'atmel,guard-time' ]
>>> + - required: [ bits-per-pixel ]
>>
>> Why quotes in other places?
>
> I got the following warnings when I tried to compile without adding the
> quotes for atmel,*
>
> "[warning] too few spaces after comma (commas)"

Ah, right, because it is a list. Looks fine.

>
> and when I add quotes for "bits-per-pixel" it complained the following
>
> "[error] string value is redundantly quoted with any quotes
> (quoted-strings)"

Yep, right.

>
> So I added quotes for properties with comma in them.
>
>> bits-per-pixel is generic property, so you
>> are now selecting other bindings. Read carefully what Rob wrote.
>
> My bad, I should have inquired before arriving at any conclusion.
> Thanks for letting me know.
>
> Shall I send v3 by removing "- required: [ bits-per-pixel ]" in select?

Yes... and test entire bindings, not only your schema.

Best regards,
Krzysztof