Re: [PATCH v3 0/3] Convert Microchip's HLCDC Text based DT bindings to JSON schema

From: Sam Ravnborg
Date: Mon Jan 22 2024 - 12:34:11 EST


Hi Dharma,
On Mon, Jan 22, 2024 at 03:52:17AM +0000, Dharma.B@xxxxxxxxxxxxx wrote:
> On 20/01/24 6:53 pm, Sam Ravnborg wrote:
> > [You don't often get email from sam@xxxxxxxxxxxx. Learn why this is important at https://aka.ms/LearnAboutSenderIdentification ]
> >
> > EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
> > Hi Sam & Rob,
> > Hi Dharma & Rob.
> >
> >>> To make the DT binding backward compatible you likely need to add a few
> >>> compatible that otherwise would have been left out - but that should do
> >>> the trick.
> >>>
> >>> The current atmel hlcdc driver that is split in three is IMO an
> >>> over-engineering, and the driver could benefit merging it all in one.
> >>> And the binding should not prevent this.
> >>
> >> I agree on all this, but a conversion is not really the time to redesign
> >> things. Trust me, I've wanted to on lots of conversions. It should be
> >> possible to simplify the driver side while keeping the DT as-is. Just
> >> make the display driver bind to the MFD node instead. After that, then
> >> one could look at flattening everything to 1 node.
> >
> > Understood and thinking a bit about it fully agreed as well.
> > Dharma - please see my comments only as ideas for the future, and
> > ignore them in this fine rewrite you do.
> >
> > Sam
> Based on your insights, I'm contemplating the decision to merge Patch 2
> [PWM binding] with Patch 3[MFD binding]. It seems redundant given that
> we already have a PWM node example in the MFD binding.
>
> Instead of introducing a new PWM binding,
> pwm:
> $ref: /schemas/pwm/atmel,hlcdc-pwm.yaml
>
> I will update the existing MFD binding as follows:
>
> properties:
> compatible:
> const: atmel,hlcdc-pwm
>
> "#pwm-cells":
> const: 3
>
> required:
> - compatible
> - "#pwm-cells"
>
As already commented, this looks nice.
But as Rob said, this should be a 1:1 conversion from text to yaml,
and then clean-up can come in the second step.

Sam