Re: [PATCH leds v1 10/10] leds: ns2: refactor and use struct led_init_data

From: Marek Behun
Date: Mon Sep 21 2020 - 10:31:13 EST


On Mon, 21 Sep 2020 16:03:22 +0200
Simon Guinot <simon.guinot@xxxxxxxxxxxx> wrote:

> On Mon, Sep 21, 2020 at 03:02:08PM +0200, Marek Behun wrote:
> > On Mon, 21 Sep 2020 14:53:43 +0200
> > Simon Guinot <simon.guinot@xxxxxxxxxxxx> wrote:
> >
> > > On Fri, Sep 18, 2020 at 07:14:05PM +0200, Marek Behun wrote:
> > > > On Fri, 18 Sep 2020 15:02:06 +0200
> > > > Simon Guinot <simon.guinot@xxxxxxxxxxxx> wrote:
> > > >
> > > > > On Thu, Sep 17, 2020 at 01:16:50AM +0200, Marek Behún wrote:
> > > > >
> > > > > Hi Marek,
> > > > >
> > > > > > By using struct led_init_data when registering we do not need to parse
> > > > > > `label` DT property nor `linux,default-trigger` property.
> > > > > >
> > > > > > Also, move forward from platform data to device tree only:
> > > > > > since commit c7896490dd1a ("leds: ns2: Absorb platform data") the
> > > > > > platform data structure is absorbed into the driver, because nothing
> > > > > > else in the source tree used it. Since nobody complained and all usage
> > > > >
> > > > > Well, I probably should have...
> > > > >
> > > > > I am using this driver on the Seagate Superbee NAS devices. This devices
> > > > > are based on a x86 SoC. Since I have been unable to get from the ODM the
> > > > > LED information written in the ACPI tables, then platform data are used
> > > > > to pass the LED description to the driver.
> > > > >
> > > > > The support of this boards is not available mainline yet but it is still
> > > > > on my todo list. So that's why I am complaining right now :) If it is
> > > > > not too much trouble I'd like to keep platform data support in this
> > > > > driver.
> > > > >
> > > > > Thanks in advance.
> > > > >
> > > > > Simon
> > > > >
> > > >
> > > > Simon, what if we refactored the driver to use fwnode API instead of OF
> > > > API? Then if it is impossible for you to write DTS for that device,
> > > > instead of platform data you could implement your device via swnode
> > > > fwnodes. :)
> > >
> > > Yes. That would be perfect.
> > >
> > > Simon
> >
> > BTW if you have access to device schematics I could try to write DTS,
> > with schematics and the current board source file it should not be that
> > hard. But I can't test it, since I don't have the board.
>
> Don't worry, I'll do the writing and the testing of the fwnode in the
> x86 board files. This boards are not mainlined yet. So it is my problem.
>
> And actually if you don't have the time I can do the writing of the
> fwnode support in the driver as well. And you can just let the driver
> with the OF support. That's fine.
>
> But if you are willing to add fwnode support to the driver yourself,
> then you are more than welcome to do it. On my side, I can help with
> the testing. I can check that the ARM boards ant their DTB are still
> supported by the driver. And I can also check the support of the x86
> boards with the addition of the fwnode properties.
>
> Simon

Very well, I shall convert the driver to fwnode API and send the patch.
Marek