Re: [PATCH v5 02/13] mfd: add simple regmap based I2C driver

From: Lee Jones
Date: Fri Jul 17 2020 - 05:07:03 EST


On Mon, 06 Jul 2020, Michael Walle wrote:

> There are I2C devices which contain several different functions but
> doesn't require any special access functions. For these kind of drivers
> an I2C regmap should be enough.
>
> Create an I2C driver which creates an I2C regmap and enumerates its
> children. If a device wants to use this as its MFD core driver, it has
> to add an individual compatible string. It may provide its own regmap
> configuration.
>
> Subdevices can use dev_get_regmap() on the parent to get their regmap
> instance.
>
> Signed-off-by: Michael Walle <michael@xxxxxxxx>
> ---
> Changes since v4:
> - new patch. Lee, please bear with me. I didn't want to delay the
> new version (where a lot of remarks on the other patches were
> addressed) even more, just because we haven't figured out how
> to deal with the MFD part. So for now, I've included this one.
>
> drivers/mfd/Kconfig | 9 +++++++
> drivers/mfd/Makefile | 1 +
> drivers/mfd/simple-mfd-i2c.c | 50 ++++++++++++++++++++++++++++++++++++
> 3 files changed, 60 insertions(+)
> create mode 100644 drivers/mfd/simple-mfd-i2c.c
>
> diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig
> index 33df0837ab41..f1536a710aca 100644
> --- a/drivers/mfd/Kconfig
> +++ b/drivers/mfd/Kconfig
> @@ -1162,6 +1162,15 @@ config MFD_SI476X_CORE
> To compile this driver as a module, choose M here: the
> module will be called si476x-core.
>
> +config MFD_SIMPLE_MFD_I2C
> + tristate "Simple regmap based I2C devices"

Doesn't look like tristate to me.

Haven't you made this builtin only?

> + depends on I2C
> + select MFD_CORE

Why?

> + select REGMAP_I2C
> + help
> + This is a consolidated driver for all MFD devices which are
> + basically just a regmap bus driver.

Please expand on this. I think it deserves greater explanation.

> config MFD_SM501
> tristate "Silicon Motion SM501"
> depends on HAS_DMA

--
Lee Jones [æçæ]
Senior Technical Lead - Developer Services
Linaro.org â Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog