Re: [PATCH v2 0/9] Simplify MFD Core
From: Lee Jones
Date: Mon Oct 21 2019 - 07:53:44 EST
On Mon, 21 Oct 2019, Lubomir Rintel wrote:
> On Mon, 2019-10-21 at 13:29 +0200, Arnd Bergmann wrote:
> > On Mon, Oct 21, 2019 at 12:58 PM Lee Jones <lee.jones@xxxxxxxxxx> wrote:
> > > MFD currently has one over-complicated user. CS5535 uses a mixture of
> > > cell cloning, reference counting and subsystem-level call-backs to
> > > achieve its goal of requesting an IO memory region only once across 3
> > > consumers. The same can be achieved by handling the region centrally
> > > during the parent device's .probe() sequence. Releasing can be handed
> > > in a similar way during .remove().
> > >
> > > While we're here, take the opportunity to provide some clean-ups and
> > > error checking to issues noticed along the way.
> > >
> > > This also paves the way for clean cell disabling via Device Tree being
> > > discussed at [0]
> > >
> > > [0] https://lkml.org/lkml/2019/10/18/612.
> >
> > As the CS5535 is primarily used on the OLPC XO1, it would be
> > good to have someone test the series on such a machine.
> >
> > I've added a few people to Cc that may be able to help test it, or
> > know someone who can.
> >
> > For the actual patches, see
> > https://lore.kernel.org/lkml/20191021105822.20271-1-lee.jones@xxxxxxxxxx/T/#t
>
> Thanks for the pointer. I'd by happy to test this.
>
> Which tree do the patches apply to?
> Or, better, is there a tree with the patches applied that I could use?
Ideal. Thank you.
http://git.linaro.org/people/lee.jones/linux.git/log/?h=topic/mfd-remove-clone-cs5535-mfd
> > > Lee Jones (9):
> > > mfd: cs5535-mfd: Use PLATFORM_DEVID_* defines and tidy error message
> > > mfd: cs5535-mfd: Remove mfd_cell->id hack
> > > mfd: cs5535-mfd: Request shared IO regions centrally
> > > mfd: cs5535-mfd: Register clients using their own dedicated MFD cell
> > > entries
> > > mfd: mfd-core: Remove mfd_clone_cell()
> > > x86: olpc: Remove invocation of MFD's .enable()/.disable() call-backs
> > > mfd: mfd-core: Protect against NULL call-back function pointer
> > > mfd: mfd-core: Remove usage counting for .{en,dis}able() call-backs
> > > mfd: mfd-core: Move pdev->mfd_cell creation back into mfd_add_device()
> > >
> > > arch/x86/platform/olpc/olpc-xo1-pm.c | 6 --
> > > drivers/mfd/cs5535-mfd.c | 124 +++++++++++++--------------
> > > drivers/mfd/mfd-core.c | 113 ++++--------------------
> > > include/linux/mfd/core.h | 20 -----
> > > 4 files changed, 79 insertions(+), 184 deletions(-)
> > >
>
--
Lee Jones [æçæ]
Linaro Services Technical Lead
Linaro.org â Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog