lkml.org 
[lkml]   [2017]   [Mar]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v1] mfd: core: Preserve PLATFORM_DEVID_NONE
On Sun, 26 Mar 2017, Andy Shevchenko wrote:

> On Fri, 2017-03-24 at 11:35 +0000, Lee Jones wrote:
> > On Thu, 23 Mar 2017, Andy Shevchenko wrote:
> >
> > > On Thu, 2017-03-23 at 11:21 +0000, Lee Jones wrote:
> > > > On Thu, 16 Mar 2017, Andy Shevchenko wrote:
> > > >
> > > > > There is a potential flaw if cell has id > 0 and is going to be
> > > > > registered with PLATFORM_DEVID_NONE.
> > > > >
> > > > > Ignore if PLATFORM_DEVID_NONE is supplied.
> > > >
> > > > This is a substantial change to a pretty tried and tested piece of
> > > > sub-system code.  Can you put some more meat on the bones in the
> > > > commit log, and include examples.
> > >
> > > Example in pseudo code:
> > >
> > > cells = {
> > >  [0] = { .id = 0, .name = "moduleX", },
> > >  [1] = { .id = 1, .name = "moduleY", },
> > >  [2] = { .id = 2, .name = "moduleZ", },
> > >  ...
> > > };
> > >
> > > mfd_add_devices(..., PLATFORM_DEVID_NONE, cells, ARRAY_SIZE(cells),
> > > ...);
> > >
> > > Output (names of the devices in the drivers):
> > > "moduleX"
> > > "moduleY.0"
> > > "moduleX.1"
> > >
> > > Desired output:
> > > "moduleX"
> > > "moduleY"
> > > "moduleZ"
> >
> > Then what would be your reason for populating the 'id' attribute?
>
> That's a gray area. If I remember correctly I come to above patch
> through looking some incremental change.
>
> I'm fine with no patch applied if this is documented somewhere,
> otherwise we might update documentation to cover such cases explicitly.

I'd be happy to review any proposal you put forward. :)

> > > Is it by design?
> > >
> > > >
> > > > > Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.co
> > > > > m>
> > > > > ---
> > > > >  drivers/mfd/mfd-core.c | 2 +-
> > > > >  1 file changed, 1 insertion(+), 1 deletion(-)
> > > > >
> > > > > diff --git a/drivers/mfd/mfd-core.c b/drivers/mfd/mfd-core.c
> > > > > index c57e407020f1..c9583f895058 100644
> > > > > --- a/drivers/mfd/mfd-core.c
> > > > > +++ b/drivers/mfd/mfd-core.c
> > > > > @@ -149,7 +149,7 @@ static int mfd_add_device(struct device
> > > > > *parent,
> > > > > int id,
> > > > >   int platform_id;
> > > > >   int r;
> > > > >  
> > > > > - if (id == PLATFORM_DEVID_AUTO)
> > > > > + if (id < 0)
> > > > >   platform_id = id;
> > > > >   else
> > > > >   platform_id = id + cell->id;
> > > >
> > > >
> >
> >
>

--
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog

\
 
 \ /
  Last update: 2017-03-27 14:42    [W:0.088 / U:0.116 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site