Re: [PATCH 1/3] mfd-core: Don't register supplies from add_device, add register_supply_aliases()

From: Lee Jones
Date: Mon May 19 2014 - 05:11:32 EST


> > >>> We cannot register supply alias in mfd_add_device before calling
> > >>> platform_add_device, for 2 reasons:
> > >>> 1) devm resources may not be registered before the (platform) drivers probe
> > >>> method runs
> > >>> 2) The platform-dev's name must be set before registering the aliases which
> > >>> happens from platform_add_device.
> > >>>
> > >>> So stop registering supply aliases from mfd_add_device, and add a
> > >>> mfd_register_supply_aliases helper functions for the cell's plaform driver
> > >>> probe method to use.
> > >>>
> > >>> Signed-off-by: Hans de Goede <hdegoede@xxxxxxxxxx>
> > >>> ---
> > >>> drivers/mfd/mfd-core.c | 37 +++++++++++++++++++++----------------
> > >>> include/linux/mfd/core.h | 6 +++++-
> > >>> 2 files changed, 26 insertions(+), 17 deletions(-)
> > >>
> > >> Change looks reasonable to me, but I'd like to have Mark look over the
> > >> changes. If he's okay with them I think it's best for this set to go
> > >> through the MFD tree as a whole.
> > >
> > > This should already be fixed by this patch:
> > >
> > > mfd: core: Don't use devres functions before device is added
> >
> > Ah, I did not check next, yes that would fix *half* of the problem,
> > the other half is that adding aliases uses dev->name (at least for
> > logging, did not check if it is used for anything else) and that is
> > not set yet before the device is added.
> >
> > Basically the moral of the story is that it is a BAD idea to do
> > anything with a device before it is added. So my proposed series
> > would replace the "mfd: core: Don't use devres functions before device is added"
> > patch.
>
> Cool cool, since my patch doesn't seem to have made it in anyway
> I guess lets proceed with your series then.

The patch is applied locally, but the branch isn't pushed. I'll
replace that patch with this set - once Mark provides his feedback.

--
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org â Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/