All of lore.kernel.org
 help / color / mirror / Atom feed
From: Paul Gortmaker <paul.gortmaker@windriver.com>
To: Steve Twiss <stwiss.opensource@diasemi.com>
Cc: Lee Jones <lee.jones@linaro.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Arnd Bergmann <arnd@arndb.de>,
	Cory Maccarrone <darkstar6262@gmail.com>,
	David Dajun Chen <david.chen@diasemi.com>,
	Dong Aisheng <dong.aisheng@linaro.org>,
	Eric Miao <eric.miao@marvell.com>,
	Graeme Gregory <gg@slimlogic.co.uk>,
	Guennadi Liakhovetski <g.liakhovetski@gmx.de>,
	Haojian Zhuang <haojian.zhuang@marvell.com>,
	Jin Park <jinyoungp@nvidia.com>,
	Jorge Eduardo Candelaria <jedu@slimlogic.co.uk>,
	Laxman Dewangan <ldewangan@nvidia.com>,
	Linus Walleij <linus.walleij@linaro.org>,
	Mark Brown <broonie@opensource.wolfsonmicro.com>,
	Mattias Nilsson <mattias.i.nilsson@stericsson.com>,
	Michael Hennerich <michael.hennerich@analog.com>,
	Mike Rapoport <mike@compulab.co.il>,
	Tony Lindgren <tony@atomide.com>,
	Venu Byravarasu <vbyravarasu@nvidia.com>,
	"linux-omap@vger.kernel.org" <linux-omap@vger.kernel.org>,
	"patches@opensource.cirrus.com" <patches@opensource.cirrus.com>,
	Support Opensource <Support.Opensource@diasemi.com>
Subject: Re: [PATCH v2 00/22] mfd: demodularization of non-modular drivers
Date: Wed, 5 Dec 2018 13:08:43 -0500	[thread overview]
Message-ID: <20181205180843.GD23156@windriver.com> (raw)
In-Reply-To: <6ED8E3B22081A4459DAC7699F3695FB7021C509AD4@SW-EX-MBX02.diasemi.com>

[RE: [PATCH v2 00/22] mfd: demodularization of non-modular drivers] On 05/12/2018 (Wed 12:01) Steve Twiss wrote:

> Hi Paul,
> 
> On 03 December 2018 04:23, Paul Gortmaker wrote:
> 
> > Subject: [PATCH v2 00/22] mfd: demodularization of non-modular drivers
> > 
> > [v1 --> v2: add some more commits as requested by Lee (MFD maintainer),
> >  update the 00/NN text; re-do build and link testing on new linux-next. ]
> > 
> > This group of MFD drivers are all controlled by "bool" Kconfig settings,
> > but contain various amounts of largely pointless uses of infrastructure
> > related to modular operations, even though they can't be built modular.
> > 
> > We can easily remove/replace all of it.  We are trying to make driver
> > code consistent with the Makefiles/Kconfigs that control them. 
> 
> For the DA9052 and DA9055, changes:
> 
> -  drivers/mfd/da9052-core.c         | 11 -----------
> -  drivers/mfd/da9052-i2c.c          | 22 ++-------------------
> -  drivers/mfd/da9052-irq.c          |  1 -
> -  drivers/mfd/da9052-spi.c          | 22 ++-------------------
> -  drivers/mfd/da9055-core.c         | 13 ++-----------
> -  drivers/mfd/da9055-i2c.c          | 24 ++---------------------
> 
> The responsibility can fall back to Dialog for these changes. We will
> submit Kconfig patches for these and make them explicitly non-modular.
> This will remove the ambiguity caused by the Kconfig bool options.

[typo noted: non-modular ---> modular]

Great, I'll look forward to seeing those patches to convert  these
drivers to modular in the near future, and I'll not re-send mine.

Thanks,
P.
--


> 
> Regards,
> Steve
> 
> > This
> > means not using modular functions/macros for drivers that can never be
> > built as a module.  Some of the downfalls this oversight leads to are:
> > 
> >  (1) it is easy to accidentally write unused module_exit and remove code
> >  (2) it can be misleading when reading the source, thinking it can be
> >      modular when the Makefile and/or Kconfig prohibit it
> >  (3) it requires the include of the module.h header file which in turn
> >      includes nearly everything else, thus adding a lot of CPP overhead.
> >  (4) it gets copied/replicated into other drivers and spreads quickly.
> > 
> > What we see in current drivers falls into one or more of the following
> > categories:
> > 
> > 1) include of <linux/module.h> when it simply isn't needed
> > 
> > 2) Use of MODULE_LICENSE, MODULE_DEVICE_TABLE,  MODULE_AUTHOR etc.
> >    macros that are no-ops for non-modular drivers.
> > 
> > 3) Creation of a module_exit() function that will be compiled and
> >    linked in but never actually called for non-modular drivers.
> > 
> > 4) Addition of a platform_driver ".remove" function that is bound
> >    into the struct but will never be called for non-module use cases.
> > 
> > Solution to #1 --> #3 is simple ; we just delete the related code.
> > 
> > The solution to #4 is similar - we delete the ".remove" function and
> > the binding into the platform_driver struct.  However, since the same
> > ".remove" function could also be triggered by an "unbind" (such as for
> > pass-through of a device to a guest instance)  - so we also explicitly
> > disable any unbind for the driver.
> > 
> > The unbind mask allows us to ensure we will see if there was some odd
> > corner case out there that was relying on it.  Typically it would be a
> > multi-port ethernet card passing a port through to a guest, so a
> > sensible use case in MFD drivers seems highly unlikely.  This same
> > solution has already been used in multiple other mainline subsystems.
> > 
> > Build testing was done on drivers/mfd for allyesconfig on x86_64, ARM
> > and ARM-64 on a recent linux-next checkout.
> > 
> > Paul.
> > 
> > ---
> > 
> > Cc: Arnd Bergmann <arnd@arndb.de>
> > Cc: Cory Maccarrone <darkstar6262@gmail.com>
> > Cc: David Dajun Chen <dchen@diasemi.com>
> > Cc: Dong Aisheng <dong.aisheng@linaro.org>
> > Cc: Eric Miao <eric.miao@marvell.com>
> > Cc: Graeme Gregory <gg@slimlogic.co.uk>
> > Cc: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
> > Cc: Haojian Zhuang <haojian.zhuang@marvell.com>
> > Cc: Jin Park <jinyoungp@nvidia.com>
> > Cc: Jorge Eduardo Candelaria <jedu@slimlogic.co.uk>
> > Cc: Laxman Dewangan <ldewangan@nvidia.com>
> > Cc: Lee Jones <lee.jones@linaro.org>
> > Cc: Linus Walleij <linus.walleij@linaro.org>
> > Cc: Mark Brown <broonie@opensource.wolfsonmicro.com>
> > Cc: Mattias Nilsson <mattias.i.nilsson@stericsson.com>
> > Cc: Michael Hennerich <michael.hennerich@analog.com>
> > Cc: Mike Rapoport <mike@compulab.co.il>
> > Cc: Tony Lindgren <tony@atomide.com>
> > Cc: Venu Byravarasu <vbyravarasu@nvidia.com>
> > Cc: linux-omap@vger.kernel.org
> > Cc: patches@opensource.cirrus.com
> > Cc: Support Opensource <support.opensource@diasemi.com>
> > 
> > 
> > Paul Gortmaker (22):
> >   mfd: aat2870-core: Make it explicitly non-modular
> >   mfd: adp5520: Make it explicitly non-modular
> >   mfd: as3711: Make it explicitly non-modular
> >   mfd: da903x: Make it explicitly non-modular
> >   mfd: da9052-*: Make it explicitly non-modular
> >   mfd: da9055-i2c: Make it explicitly non-modular
> >   mfd: da9055-core: make it explicitly non-modular
> >   mfd: db8500-prcmu: drop unused MODULE_ tags from non-modular code
> >   mfd: htc-i2cpld: Make it explicitly non-modular
> >   mfd: max8925-core: drop unused MODULE_ tags from non-modular code
> >   mfd: rc5t583: Make it explicitly non-modular
> >   mfd: sta2x11: drop unused MODULE_ tags from non-modular code
> >   mfd: syscon: Make it explicitly non-modular
> >   mfd: tps65090: Make it explicitly non-modular
> >   mfd: tps65910: Make it explicitly non-modular
> >   mfd: tps80031: Make it explicitly non-modular
> >   mfd: wm831x-spi: Make it explicitly non-modular
> >   mfd: wm831x-i2c: Make it explicitly non-modular
> >   mfd: wm831x-core: drop unused MODULE_ tags from non-modular code
> >   mfd: wm8350-i2c: Make it explicitly non-modular
> >   mfd: wm8350-core: drop unused MODULE_ tags from non-modular code
> >   mfd: wm8400-core: Make it explicitly non-modular
> > 
> >  drivers/mfd/aat2870-core.c        | 40 +++------------------------------------
> >  drivers/mfd/adp5520.c             | 30 +++++++----------------------
> >  drivers/mfd/as3711.c              | 14 --------------
> >  drivers/mfd/da903x.c              | 26 +++----------------------
> >  drivers/mfd/da9052-core.c         | 11 -----------
> >  drivers/mfd/da9052-i2c.c          | 22 ++-------------------
> >  drivers/mfd/da9052-irq.c          |  1 -
> >  drivers/mfd/da9052-spi.c          | 22 ++-------------------
> >  drivers/mfd/da9055-core.c         | 13 ++-----------
> >  drivers/mfd/da9055-i2c.c          | 24 ++---------------------
> >  drivers/mfd/db8500-prcmu.c        | 10 ++++------
> >  drivers/mfd/htc-i2cpld.c          | 18 +-----------------
> >  drivers/mfd/max8925-core.c        |  7 +------
> >  drivers/mfd/rc5t583.c             | 14 --------------
> >  drivers/mfd/sta2x11-mfd.c         | 10 ++++------
> >  drivers/mfd/syscon.c              | 12 +-----------
> >  drivers/mfd/tps65090.c            | 30 +++++------------------------
> >  drivers/mfd/tps65910.c            | 18 +-----------------
> >  drivers/mfd/tps80031.c            | 37 ++----------------------------------
> >  drivers/mfd/wm831x-core.c         |  7 ++-----
> >  drivers/mfd/wm831x-i2c.c          | 20 ++------------------
> >  drivers/mfd/wm831x-spi.c          | 24 ++---------------------
> >  drivers/mfd/wm8350-core.c         |  6 ++----
> >  drivers/mfd/wm8350-i2c.c          | 24 +----------------------
> >  drivers/mfd/wm8400-core.c         | 18 +++---------------
> >  include/linux/mfd/da9052/da9052.h |  1 -
> >  26 files changed, 52 insertions(+), 407 deletions(-)
> > 
> > --
> > 2.7.4
> 

WARNING: multiple messages have this Message-ID (diff)
From: Paul Gortmaker <paul.gortmaker@windriver.com>
To: Steve Twiss <stwiss.opensource@diasemi.com>
Cc: Lee Jones <lee.jones@linaro.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	Arnd Bergmann <arnd@arndb.de>,
	Cory Maccarrone <darkstar6262@gmail.com>,
	David Dajun Chen <david.chen@diasemi.com>,
	Dong Aisheng <dong.aisheng@linaro.org>,
	Eric Miao <eric.miao@marvell.com>,
	Graeme Gregory <gg@slimlogic.co.uk>,
	Guennadi Liakhovetski <g.liakhovetski@gmx.de>,
	Haojian Zhuang <haojian.zhuang@marvell.com>,
	Jin Park <jinyoungp@nvidia.com>,
	Jorge Eduardo Candelaria <jedu@slimlogic.co.uk>,
	Laxman Dewangan <ldewangan@nvidia.com>,
	Linus Walleij <linus.walleij@linaro.org>,
	Mark Brown <broonie@opensource.wolfsonmicro.com>,
	Mattias Nilsson <mattias.i.nilsson@stericsson.com>,
	Michael Hennerich <michael.hennerich@analog.com>,
	Mike Rapoport <mike@compula>
Subject: Re: [PATCH v2 00/22] mfd: demodularization of non-modular drivers
Date: Wed, 5 Dec 2018 13:08:43 -0500	[thread overview]
Message-ID: <20181205180843.GD23156@windriver.com> (raw)
In-Reply-To: <6ED8E3B22081A4459DAC7699F3695FB7021C509AD4@SW-EX-MBX02.diasemi.com>

[RE: [PATCH v2 00/22] mfd: demodularization of non-modular drivers] On 05/12/2018 (Wed 12:01) Steve Twiss wrote:

> Hi Paul,
> 
> On 03 December 2018 04:23, Paul Gortmaker wrote:
> 
> > Subject: [PATCH v2 00/22] mfd: demodularization of non-modular drivers
> > 
> > [v1 --> v2: add some more commits as requested by Lee (MFD maintainer),
> >  update the 00/NN text; re-do build and link testing on new linux-next. ]
> > 
> > This group of MFD drivers are all controlled by "bool" Kconfig settings,
> > but contain various amounts of largely pointless uses of infrastructure
> > related to modular operations, even though they can't be built modular.
> > 
> > We can easily remove/replace all of it.  We are trying to make driver
> > code consistent with the Makefiles/Kconfigs that control them. 
> 
> For the DA9052 and DA9055, changes:
> 
> -  drivers/mfd/da9052-core.c         | 11 -----------
> -  drivers/mfd/da9052-i2c.c          | 22 ++-------------------
> -  drivers/mfd/da9052-irq.c          |  1 -
> -  drivers/mfd/da9052-spi.c          | 22 ++-------------------
> -  drivers/mfd/da9055-core.c         | 13 ++-----------
> -  drivers/mfd/da9055-i2c.c          | 24 ++---------------------
> 
> The responsibility can fall back to Dialog for these changes. We will
> submit Kconfig patches for these and make them explicitly non-modular.
> This will remove the ambiguity caused by the Kconfig bool options.

[typo noted: non-modular ---> modular]

Great, I'll look forward to seeing those patches to convert  these
drivers to modular in the near future, and I'll not re-send mine.

Thanks,
P.
--


> 
> Regards,
> Steve
> 
> > This
> > means not using modular functions/macros for drivers that can never be
> > built as a module.  Some of the downfalls this oversight leads to are:
> > 
> >  (1) it is easy to accidentally write unused module_exit and remove code
> >  (2) it can be misleading when reading the source, thinking it can be
> >      modular when the Makefile and/or Kconfig prohibit it
> >  (3) it requires the include of the module.h header file which in turn
> >      includes nearly everything else, thus adding a lot of CPP overhead.
> >  (4) it gets copied/replicated into other drivers and spreads quickly.
> > 
> > What we see in current drivers falls into one or more of the following
> > categories:
> > 
> > 1) include of <linux/module.h> when it simply isn't needed
> > 
> > 2) Use of MODULE_LICENSE, MODULE_DEVICE_TABLE,  MODULE_AUTHOR etc.
> >    macros that are no-ops for non-modular drivers.
> > 
> > 3) Creation of a module_exit() function that will be compiled and
> >    linked in but never actually called for non-modular drivers.
> > 
> > 4) Addition of a platform_driver ".remove" function that is bound
> >    into the struct but will never be called for non-module use cases.
> > 
> > Solution to #1 --> #3 is simple ; we just delete the related code.
> > 
> > The solution to #4 is similar - we delete the ".remove" function and
> > the binding into the platform_driver struct.  However, since the same
> > ".remove" function could also be triggered by an "unbind" (such as for
> > pass-through of a device to a guest instance)  - so we also explicitly
> > disable any unbind for the driver.
> > 
> > The unbind mask allows us to ensure we will see if there was some odd
> > corner case out there that was relying on it.  Typically it would be a
> > multi-port ethernet card passing a port through to a guest, so a
> > sensible use case in MFD drivers seems highly unlikely.  This same
> > solution has already been used in multiple other mainline subsystems.
> > 
> > Build testing was done on drivers/mfd for allyesconfig on x86_64, ARM
> > and ARM-64 on a recent linux-next checkout.
> > 
> > Paul.
> > 
> > ---
> > 
> > Cc: Arnd Bergmann <arnd@arndb.de>
> > Cc: Cory Maccarrone <darkstar6262@gmail.com>
> > Cc: David Dajun Chen <dchen@diasemi.com>
> > Cc: Dong Aisheng <dong.aisheng@linaro.org>
> > Cc: Eric Miao <eric.miao@marvell.com>
> > Cc: Graeme Gregory <gg@slimlogic.co.uk>
> > Cc: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
> > Cc: Haojian Zhuang <haojian.zhuang@marvell.com>
> > Cc: Jin Park <jinyoungp@nvidia.com>
> > Cc: Jorge Eduardo Candelaria <jedu@slimlogic.co.uk>
> > Cc: Laxman Dewangan <ldewangan@nvidia.com>
> > Cc: Lee Jones <lee.jones@linaro.org>
> > Cc: Linus Walleij <linus.walleij@linaro.org>
> > Cc: Mark Brown <broonie@opensource.wolfsonmicro.com>
> > Cc: Mattias Nilsson <mattias.i.nilsson@stericsson.com>
> > Cc: Michael Hennerich <michael.hennerich@analog.com>
> > Cc: Mike Rapoport <mike@compulab.co.il>
> > Cc: Tony Lindgren <tony@atomide.com>
> > Cc: Venu Byravarasu <vbyravarasu@nvidia.com>
> > Cc: linux-omap@vger.kernel.org
> > Cc: patches@opensource.cirrus.com
> > Cc: Support Opensource <support.opensource@diasemi.com>
> > 
> > 
> > Paul Gortmaker (22):
> >   mfd: aat2870-core: Make it explicitly non-modular
> >   mfd: adp5520: Make it explicitly non-modular
> >   mfd: as3711: Make it explicitly non-modular
> >   mfd: da903x: Make it explicitly non-modular
> >   mfd: da9052-*: Make it explicitly non-modular
> >   mfd: da9055-i2c: Make it explicitly non-modular
> >   mfd: da9055-core: make it explicitly non-modular
> >   mfd: db8500-prcmu: drop unused MODULE_ tags from non-modular code
> >   mfd: htc-i2cpld: Make it explicitly non-modular
> >   mfd: max8925-core: drop unused MODULE_ tags from non-modular code
> >   mfd: rc5t583: Make it explicitly non-modular
> >   mfd: sta2x11: drop unused MODULE_ tags from non-modular code
> >   mfd: syscon: Make it explicitly non-modular
> >   mfd: tps65090: Make it explicitly non-modular
> >   mfd: tps65910: Make it explicitly non-modular
> >   mfd: tps80031: Make it explicitly non-modular
> >   mfd: wm831x-spi: Make it explicitly non-modular
> >   mfd: wm831x-i2c: Make it explicitly non-modular
> >   mfd: wm831x-core: drop unused MODULE_ tags from non-modular code
> >   mfd: wm8350-i2c: Make it explicitly non-modular
> >   mfd: wm8350-core: drop unused MODULE_ tags from non-modular code
> >   mfd: wm8400-core: Make it explicitly non-modular
> > 
> >  drivers/mfd/aat2870-core.c        | 40 +++------------------------------------
> >  drivers/mfd/adp5520.c             | 30 +++++++----------------------
> >  drivers/mfd/as3711.c              | 14 --------------
> >  drivers/mfd/da903x.c              | 26 +++----------------------
> >  drivers/mfd/da9052-core.c         | 11 -----------
> >  drivers/mfd/da9052-i2c.c          | 22 ++-------------------
> >  drivers/mfd/da9052-irq.c          |  1 -
> >  drivers/mfd/da9052-spi.c          | 22 ++-------------------
> >  drivers/mfd/da9055-core.c         | 13 ++-----------
> >  drivers/mfd/da9055-i2c.c          | 24 ++---------------------
> >  drivers/mfd/db8500-prcmu.c        | 10 ++++------
> >  drivers/mfd/htc-i2cpld.c          | 18 +-----------------
> >  drivers/mfd/max8925-core.c        |  7 +------
> >  drivers/mfd/rc5t583.c             | 14 --------------
> >  drivers/mfd/sta2x11-mfd.c         | 10 ++++------
> >  drivers/mfd/syscon.c              | 12 +-----------
> >  drivers/mfd/tps65090.c            | 30 +++++------------------------
> >  drivers/mfd/tps65910.c            | 18 +-----------------
> >  drivers/mfd/tps80031.c            | 37 ++----------------------------------
> >  drivers/mfd/wm831x-core.c         |  7 ++-----
> >  drivers/mfd/wm831x-i2c.c          | 20 ++------------------
> >  drivers/mfd/wm831x-spi.c          | 24 ++---------------------
> >  drivers/mfd/wm8350-core.c         |  6 ++----
> >  drivers/mfd/wm8350-i2c.c          | 24 +----------------------
> >  drivers/mfd/wm8400-core.c         | 18 +++---------------
> >  include/linux/mfd/da9052/da9052.h |  1 -
> >  26 files changed, 52 insertions(+), 407 deletions(-)
> > 
> > --
> > 2.7.4
> 

  parent reply	other threads:[~2018-12-05 18:10 UTC|newest]

Thread overview: 51+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-12-03  4:23 [PATCH v2 00/22] mfd: demodularization of non-modular drivers Paul Gortmaker
2018-12-03  4:23 ` Paul Gortmaker
2018-12-03  4:23 ` [PATCH 01/22] mfd: aat2870-core: Make it explicitly non-modular Paul Gortmaker
2018-12-03  4:23 ` [PATCH 02/22] mfd: adp5520: " Paul Gortmaker
2018-12-03  4:23 ` [PATCH 03/22] mfd: as3711: " Paul Gortmaker
2018-12-03  4:23 ` [PATCH 04/22] mfd: da903x: " Paul Gortmaker
2018-12-03  4:23 ` [PATCH 05/22] mfd: da9052-*: " Paul Gortmaker
2018-12-03  4:23 ` [PATCH 06/22] mfd: da9055-i2c: " Paul Gortmaker
2018-12-03  4:23 ` [PATCH 07/22] mfd: da9055-core: make " Paul Gortmaker
2018-12-03  4:23 ` [PATCH 08/22] mfd: db8500-prcmu: drop unused MODULE_ tags from non-modular code Paul Gortmaker
2018-12-07 12:25   ` Linus Walleij
2018-12-03  4:23 ` [PATCH 09/22] mfd: htc-i2cpld: Make it explicitly non-modular Paul Gortmaker
2018-12-03  4:23 ` [PATCH 10/22] mfd: max8925-core: drop unused MODULE_ tags from non-modular code Paul Gortmaker
2018-12-03  4:23 ` [PATCH 11/22] mfd: rc5t583: Make it explicitly non-modular Paul Gortmaker
2018-12-03  4:23 ` [PATCH 12/22] mfd: sta2x11: drop unused MODULE_ tags from non-modular code Paul Gortmaker
2018-12-03 11:14   ` Lee Jones
2018-12-03 15:07     ` Paul Gortmaker
2018-12-04  9:23       ` Davide Ciminaghi
2018-12-07 16:39     ` Alessandro Rubini
2018-12-03  4:23 ` [PATCH 13/22] mfd: syscon: Make it explicitly non-modular Paul Gortmaker
2018-12-03  4:23 ` [PATCH 14/22] mfd: tps65090: " Paul Gortmaker
2018-12-03  4:23 ` [PATCH 15/22] mfd: tps65910: " Paul Gortmaker
2018-12-03  4:23   ` Paul Gortmaker
2018-12-03  4:23 ` [PATCH 16/22] mfd: tps80031: " Paul Gortmaker
2018-12-03  4:23 ` [PATCH 17/22] mfd: wm831x-spi: " Paul Gortmaker
2018-12-03  4:23 ` [PATCH 18/22] mfd: wm831x-i2c: " Paul Gortmaker
2018-12-05 11:38   ` Charles Keepax
2018-12-07 18:16     ` Paul Gortmaker
2018-12-03  4:23 ` [PATCH 19/22] mfd: wm831x-core: drop unused MODULE_ tags from non-modular code Paul Gortmaker
2018-12-05 11:36   ` Charles Keepax
2018-12-03  4:23 ` [PATCH 20/22] mfd: wm8350-i2c: Make it explicitly non-modular Paul Gortmaker
2018-12-05 11:39   ` Charles Keepax
2018-12-03  4:23 ` [PATCH 21/22] mfd: wm8350-core: drop unused MODULE_ tags from non-modular code Paul Gortmaker
2018-12-05 11:39   ` Charles Keepax
2018-12-03  4:23 ` [PATCH 22/22] mfd: wm8400-core: Make it explicitly non-modular Paul Gortmaker
2018-12-05 11:41   ` Charles Keepax
2018-12-05 11:35 ` [PATCH v2 00/22] mfd: demodularization of non-modular drivers Charles Keepax
2018-12-05 11:35   ` Charles Keepax
2018-12-05 11:48   ` Linus Walleij
2018-12-05 11:48     ` Linus Walleij
2018-12-05 13:40     ` Charles Keepax
2018-12-05 13:40       ` Charles Keepax
2018-12-05 11:50 ` Linus Walleij
2018-12-05 11:50   ` Linus Walleij
2018-12-05 12:01 ` Steve Twiss
2018-12-05 12:01   ` Steve Twiss
2018-12-05 12:12   ` Steve Twiss
2018-12-05 12:12     ` Steve Twiss
2018-12-05 18:08   ` Paul Gortmaker [this message]
2018-12-05 18:08     ` Paul Gortmaker
     [not found]   ` <20181207203021.GR23156@windriver.com>
2019-08-07 10:43     ` Steve Twiss

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20181205180843.GD23156@windriver.com \
    --to=paul.gortmaker@windriver.com \
    --cc=Support.Opensource@diasemi.com \
    --cc=arnd@arndb.de \
    --cc=broonie@opensource.wolfsonmicro.com \
    --cc=darkstar6262@gmail.com \
    --cc=david.chen@diasemi.com \
    --cc=dong.aisheng@linaro.org \
    --cc=eric.miao@marvell.com \
    --cc=g.liakhovetski@gmx.de \
    --cc=gg@slimlogic.co.uk \
    --cc=haojian.zhuang@marvell.com \
    --cc=jedu@slimlogic.co.uk \
    --cc=jinyoungp@nvidia.com \
    --cc=ldewangan@nvidia.com \
    --cc=lee.jones@linaro.org \
    --cc=linus.walleij@linaro.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=mattias.i.nilsson@stericsson.com \
    --cc=michael.hennerich@analog.com \
    --cc=mike@compulab.co.il \
    --cc=patches@opensource.cirrus.com \
    --cc=stwiss.opensource@diasemi.com \
    --cc=tony@atomide.com \
    --cc=vbyravarasu@nvidia.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.