On 10/01/2024 11:25, Dharma Balasubiramani wrote: > Convert the atmel,hlcdc binding to DT schema format. > > Signed-off-by: Dharma Balasubiramani <dharma.b@xxxxxxxxxxxxx> > --- > .../devicetree/bindings/mfd/atmel,hlcdc.yaml | 106 ++++++++++++++++++ > .../devicetree/bindings/mfd/atmel-hlcdc.txt | 56 --------- > 2 files changed, 106 insertions(+), 56 deletions(-) > create mode 100644 Documentation/devicetree/bindings/mfd/atmel,hlcdc.yaml > delete mode 100644 Documentation/devicetree/bindings/mfd/atmel-hlcdc.txt > > diff --git a/Documentation/devicetree/bindings/mfd/atmel,hlcdc.yaml b/Documentation/devicetree/bindings/mfd/atmel,hlcdc.yaml > new file mode 100644 > index 000000000000..555d6faa9104 > --- /dev/null > +++ b/Documentation/devicetree/bindings/mfd/atmel,hlcdc.yaml This looks not tested, so limited review follows: > @@ -0,0 +1,106 @@ > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > +# Copyright (C) 2024 Microchip Technology, Inc. and its subsidiaries > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/mfd/atmel,hlcdc.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Atmel's HLCDC (High LCD Controller) MFD driver Drop "MFD driver" and rather describe/name the hardware. MFD is Linux term, so I really doubt that's how this was called. > + > +maintainers: > + - Nicolas Ferre <nicolas.ferre@xxxxxxxxxxxxx> > + - Alexandre Belloni <alexandre.belloni@xxxxxxxxxxx> > + - Claudiu Beznea <claudiu.beznea@xxxxxxxxx> > + > +description: | > + Device-Tree bindings for Atmel's HLCDC (High LCD Controller) MFD driver. Drop > + The HLCDC IP exposes two subdevices: > + # a PWM chip: see ../pwm/atmel,hlcdc-pwm.yaml > + # a Display Controller: see ../display/atmel/atmel,hlcdc-dc.yaml Rephrase to describe hardware. Drop redundant paths. > + > +properties: > + compatible: > + enum: > + - atmel,at91sam9n12-hlcdc > + - atmel,at91sam9x5-hlcdc > + - atmel,sama5d2-hlcdc > + - atmel,sama5d3-hlcdc > + - atmel,sama5d4-hlcdc > + - microchip,sam9x60-hlcdc > + - microchip,sam9x75-xlcdc > + > + reg: > + maxItems: 1 > + > + interrupts: > + maxItems: 1 > + > + clocks: > + maxItems: 3 > + > + clock-names: > + anyOf: > + - items: > + - enum: > + - sys_clk > + - lvds_pll_clk Old binding was not mentioning this and you did not describe differences against pure conversion. You have entire commit msg for this... > + - contains: > + const: periph_clk > + - contains: > + const: slow_clk > + maxItems: 3 Why it has to be so complicated? I doubt that same devices have different inputs. > + > + hlcdc-display-controller: Does anything depend on the name? If not, then just display-controller > + $ref: /schemas/display/atmel/atmel,hlcdc-dc.yaml > + > + hlcdc-pwm: Same comment. > + $ref: /schemas/pwm/atmel,hlcdc-pwm.yaml There is no such file. > + > +required: > + - compatible > + - reg > + - clocks > + - clock-names > + - interrupts > + > +additionalProperties: false > + > +examples: > + - | > + #include <dt-bindings/clock/at91.h> > + #include <dt-bindings/dma/at91.h> > + #include <dt-bindings/interrupt-controller/arm-gic.h> > + > + hlcdc: hlcdc@f0030000 { Node names should be generic. See also an explanation and list of examples (not exhaustive) in DT specification: https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation > + compatible = "atmel,sama5d3-hlcdc"; > + reg = <0xf0030000 0x2000>; > + clocks = <&lcdc_clk>, <&lcdck>, <&clk32k>; > + clock-names = "periph_clk","sys_clk", "slow_clk"; Missing space after , > + interrupts = <36 IRQ_TYPE_LEVEL_HIGH 0>; > + > + hlcdc-display-controller { > + compatible = "atmel,hlcdc-display-controller"; > + pinctrl-names = "default"; > + pinctrl-0 = <&pinctrl_lcd_base &pinctrl_lcd_rgb888>; > + #address-cells = <1>; > + #size-cells = <0>; > + > + port@0 { > + #address-cells = <1>; > + #size-cells = <0>; > + reg = <0>; > + > + hlcdc_panel_output: endpoint@0 { > + reg = <0>; > + remote-endpoint = <&panel_input>; > + }; > + }; > + }; > + Best regards, Krzysztof