From: Lee Jones <lee.jones@linaro.org>
To: Michael Walle <michael@walle.cc>
Cc: devicetree@vger.kernel.org,
"Catalin Marinas" <catalin.marinas@arm.com>,
"Linus Walleij" <linus.walleij@linaro.org>,
"Thierry Reding" <thierry.reding@gmail.com>,
"Pavel Machek" <pavel@ucw.cz>, "Will Deacon" <will@kernel.org>,
"Jason Cooper" <jason@lakedaemon.net>,
"Andy Shevchenko" <andriy.shevchenko@linux.intel.com>,
"Marc Zyngier" <maz@kernel.org>,
"Bartosz Golaszewski" <bgolaszewski@baylibre.com>,
"Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>,
"Guenter Roeck" <linux@roeck-us.net>,
linux-pwm@vger.kernel.org, "Jean Delvare" <jdelvare@suse.com>,
linux-watchdog@vger.kernel.org, linux-gpio@vger.kernel.org,
"Mark Brown" <broonie@kernel.org>,
"Thomas Gleixner" <tglx@linutronix.de>,
"Wim Van Sebroeck" <wim@linux-watchdog.org>,
linux-arm-kernel@lists.infradead.org,
linux-hwmon@vger.kernel.org,
"Greg Kroah-Hartman" <gregkh@linuxfoundation.org>,
linux-kernel@vger.kernel.org, "Li Yang" <leoyang.li@nxp.com>,
"Rob Herring" <robh+dt@kernel.org>,
"Shawn Guo" <shawnguo@kernel.org>
Subject: Re: [PATCH v8 01/13] mfd: add simple regmap based I2C driver
Date: Wed, 19 Aug 2020 11:50:29 +0100 [thread overview]
Message-ID: <20200819105029.GH4354@dell> (raw)
In-Reply-To: <20200813124832.17349-2-michael@walle.cc>
On Thu, 13 Aug 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@walle.cc>
> ---
> Changes since v7:
> - none
>
> Changes since v6:
> - added SIMPLE_MFD_I2C help text
> - revised description in module header
>
> Changes since v5:
> - removed "select MFD_CORE" in Kconfig
> - removed help text in Kconfig, we assume that the users of this
> driver will have a "select MFD_SIMPLE_MFD_I2C". Instead added
> a small description to the driver itself.
> - removed "struct simple_mfd_i2c_config" and use regmap_config
> directly
> - changed builtin_i2c_driver() to module_i2c_driver(), added
> MODULE_ boilerplate
> - cleaned up the included files
>
> 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 | 12 ++++++++
> drivers/mfd/Makefile | 1 +
> drivers/mfd/simple-mfd-i2c.c | 56 ++++++++++++++++++++++++++++++++++++
> 3 files changed, 69 insertions(+)
> create mode 100644 drivers/mfd/simple-mfd-i2c.c
>
> diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig
> index 33df0837ab41..6e1a38944d28 100644
> --- a/drivers/mfd/Kconfig
> +++ b/drivers/mfd/Kconfig
> @@ -1162,6 +1162,18 @@ 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
> + depends on I2C
> + select REGMAP_I2C
> + help
> + This driver creates a single register map with the intention for it
> + to be shared by all sub-devices.
> +
> + Once the register map has been successfully initialised, any
> + sub-devices represented by child nodes in Device Tree will be
> + subsequently registered.
> +
> config MFD_SM501
> tristate "Silicon Motion SM501"
> depends on HAS_DMA
> diff --git a/drivers/mfd/Makefile b/drivers/mfd/Makefile
> index a60e5f835283..78d24a3e7c9e 100644
> --- a/drivers/mfd/Makefile
> +++ b/drivers/mfd/Makefile
> @@ -264,3 +264,4 @@ obj-$(CONFIG_MFD_STMFX) += stmfx.o
> obj-$(CONFIG_MFD_KHADAS_MCU) += khadas-mcu.o
>
> obj-$(CONFIG_SGI_MFD_IOC3) += ioc3.o
> +obj-$(CONFIG_MFD_SIMPLE_MFD_I2C) += simple-mfd-i2c.o
> diff --git a/drivers/mfd/simple-mfd-i2c.c b/drivers/mfd/simple-mfd-i2c.c
> new file mode 100644
> index 000000000000..09b40ebfdf07
> --- /dev/null
> +++ b/drivers/mfd/simple-mfd-i2c.c
> @@ -0,0 +1,56 @@
> +// SPDX-License-Identifier: GPL-2.0-only
> +/*
> + * Simple MFD - I2C
> + *
> + * This driver creates a single register map with the intention for it to be
> + * shared by all sub-devices. Children can use their parent's device structure
> + * (dev.parent) in order reference it.
Nit: "in order *to* reference it"
Once fixed, please add my:
For my own reference (apply this as-is to your sign-off block):
Acked-for-MFD-by: Lee Jones <lee.jones@linaro.org>
--
Lee Jones [李琼斯]
Senior Technical Lead - Developer Services
Linaro.org │ Open source software for Arm SoCs
Follow Linaro: Facebook | Twitter | Blog
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
next prev parent reply other threads:[~2020-08-19 10:52 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-08-13 12:48 [PATCH v8 00/13] Add support for Kontron sl28cpld Michael Walle
2020-08-13 12:48 ` [PATCH v8 01/13] mfd: add simple regmap based I2C driver Michael Walle
2020-08-19 10:50 ` Lee Jones [this message]
2020-08-13 12:48 ` [PATCH v8 02/13] dt-bindings: mfd: Add bindings for sl28cpld Michael Walle
2020-08-13 12:48 ` [PATCH v8 03/13] mfd: simple-mfd-i2c: add sl28cpld support Michael Walle
2020-08-19 10:51 ` Lee Jones
2020-08-13 12:48 ` [PATCH v8 04/13] irqchip: add sl28cpld interrupt controller support Michael Walle
2020-08-13 12:48 ` [PATCH v8 05/13] watchdog: add support for sl28cpld watchdog Michael Walle
2020-08-13 12:48 ` [PATCH v8 06/13] pwm: add support for sl28cpld PWM controller Michael Walle
2020-08-13 12:48 ` [PATCH v8 07/13] gpio: add support for the sl28cpld GPIO controller Michael Walle
2020-08-13 12:48 ` [PATCH v8 08/13] hwmon: add support for the sl28cpld hardware monitoring controller Michael Walle
2020-08-13 12:48 ` [PATCH v8 09/13] arm64: dts: freescale: sl28: enable sl28cpld Michael Walle
2020-08-13 12:48 ` [PATCH v8 10/13] arm64: dts: freescale: sl28: map GPIOs to input events Michael Walle
2020-08-13 12:48 ` [PATCH v8 11/13] arm64: dts: freescale: sl28: enable LED support Michael Walle
2020-08-13 12:48 ` [PATCH v8 12/13] arm64: dts: freescale: sl28: enable fan support Michael Walle
2020-08-13 12:48 ` [PATCH v8 13/13] arm64: defconfig: enable the sl28cpld board management controller Michael Walle
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=20200819105029.GH4354@dell \
--to=lee.jones@linaro.org \
--cc=andriy.shevchenko@linux.intel.com \
--cc=bgolaszewski@baylibre.com \
--cc=broonie@kernel.org \
--cc=catalin.marinas@arm.com \
--cc=devicetree@vger.kernel.org \
--cc=gregkh@linuxfoundation.org \
--cc=jason@lakedaemon.net \
--cc=jdelvare@suse.com \
--cc=leoyang.li@nxp.com \
--cc=linus.walleij@linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-gpio@vger.kernel.org \
--cc=linux-hwmon@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pwm@vger.kernel.org \
--cc=linux-watchdog@vger.kernel.org \
--cc=linux@roeck-us.net \
--cc=maz@kernel.org \
--cc=michael@walle.cc \
--cc=pavel@ucw.cz \
--cc=robh+dt@kernel.org \
--cc=shawnguo@kernel.org \
--cc=tglx@linutronix.de \
--cc=thierry.reding@gmail.com \
--cc=u.kleine-koenig@pengutronix.de \
--cc=will@kernel.org \
--cc=wim@linux-watchdog.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).