From: Lee Jones <lee.jones@linaro.org>
To: Enric Balletbo i Serra <enric.balletbo@collabora.com>
Cc: linux-kernel@vger.kernel.org, Jonathan Corbet <corbet@lwn.net>,
Krzysztof Kozlowski <krzk@kernel.org>,
Will Deacon <will.deacon@arm.com>,
MyungJoo Ham <myungjoo.ham@samsung.com>,
Chanwoo Choi <cw00.choi@samsung.com>,
Benson Leung <bleung@chromium.org>,
Guenter Roeck <groeck@chromium.org>,
Jonathan Cameron <jic23@kernel.org>,
Dmitry Torokhov <dmitry.torokhov@gmail.com>,
Mauro Carvalho Chehab <mchehab@kernel.org>,
Sebastian Reichel <sre@kernel.org>,
Thierry Reding <thierry.reding@gmail.com>,
Alexandre Belloni <alexandre.belloni@bootlin.com>,
Liam Girdwood <lgirdwood@gmail.com>,
Mark Brown <broonie@kernel.org>,
Neil Armstrong <narmstrong@baylibre.com>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Collabora kernel ML <kernel@collabora.com>,
Andy Shevchenko <andriy.shevchenko@linux.intel.com>,
Gwendal Grignou <gwendal@chromium.org>
Subject: Re: [PATCH v5 01/11] mfd / platform: cros_ec: Handle chained ECs as platform devices
Date: Mon, 12 Aug 2019 08:24:31 +0100 [thread overview]
Message-ID: <20190812072431.GE4594@dell> (raw)
In-Reply-To: <20190722133257.9336-2-enric.balletbo@collabora.com>
On Mon, 22 Jul 2019, Enric Balletbo i Serra wrote:
> An MFD is a device that contains several sub-devices (cells). For instance,
> the ChromeOS EC fits in this description as usually contains a charger and
> can have other devices with different functions like a Real-Time Clock,
> an Audio codec, a Real-Time Clock, ...
>
> If you look at the driver, though, we're doing something odd. We have
> two MFD cros-ec drivers where one of them (cros-ec-core) instantiates
> another MFD driver as sub-driver (cros-ec-dev), and the latest
> instantiates the different sub-devices (Real-Time Clock, Audio codec,
> etc).
>
> MFD
> ------------------------------------------
> cros-ec-core
> |___ mfd-cellA (cros-ec-dev)
> | |__ mfd-cell0
> | |__ mfd-cell1
> | |__ ...
> |
> |___ mfd-cellB (cros-ec-dev)
> |__ mfd-cell0
> |__ mfd-cell1
> |__ ...
>
> The problem that was trying to solve is to describe some kind of topology for
> the case where we have an EC (cros-ec) chained with another EC
> (cros-pd). Apart from that this extends the bounds of what MFD was
> designed to do we might be interested on have other kinds of topology that
> can't be implemented in that way.
>
> Let's prepare the code to move the cros-ec-core part from MFD to
> platform/chrome as this is clearly a platform specific thing non-related
> to a MFD device.
>
> platform/chrome | MFD
> ------------------------------------------
> |
> cros-ec ________|___ cros-ec-dev
> | |__ mfd-cell0
> | |__ mfd-cell1
> | |__ ...
> |
> cros-pd ________|___ cros-ec-dev
> | |__ mfd-cell0
> | |__ mfd-cell1
> | |__ ...
>
> Signed-off-by: Enric Balletbo i Serra <enric.balletbo@collabora.com>
> Acked-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
> Reviewed-by: Gwendal Grignou <gwendal@chromium.org>
> Tested-by: Gwendal Grignou <gwendal@chromium.org>
> ---
>
> Changes in v5:
> - Rebased on top of 5.3-rc1
>
> Changes in v4:
> - Rebase again on top of for-mfd-next to avoid conflicts.
>
> Changes in v3:
> - Collect more acks an tested-by
>
> Changes in v2:
> - Collect acks received.
> - Remove '[PATCH 07/10] mfd: cros_ec: Update with SPDX Licence identifier
> and fix description' to avoid conflicts with some tree-wide patches
> that actually updates the Licence identifier.
> - Add '[PATCH 10/10] arm/arm64: defconfig: Update configs to use the new
> CROS_EC options' to update the defconfigs after change some config
> symbols.
>
> drivers/mfd/cros_ec.c | 61 +++++++++++++------------
> drivers/platform/chrome/cros_ec_i2c.c | 8 ++++
> drivers/platform/chrome/cros_ec_lpc.c | 3 +-
> drivers/platform/chrome/cros_ec_rpmsg.c | 2 +
> drivers/platform/chrome/cros_ec_spi.c | 8 ++++
> include/linux/mfd/cros_ec.h | 18 ++++++++
> 6 files changed, 69 insertions(+), 31 deletions(-)
For my own reference:
Acked-for-MFD-by: Lee Jones <lee.jones@linaro.org>
--
Lee Jones [李琼斯]
Linaro Services Technical Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
next prev parent reply other threads:[~2019-08-12 7:24 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-07-22 13:32 [PATCH v5 00/11] Move part of cros-ec out of MFD subsystem Enric Balletbo i Serra
2019-07-22 13:32 ` [PATCH v5 01/11] mfd / platform: cros_ec: Handle chained ECs as platform devices Enric Balletbo i Serra
2019-08-12 7:24 ` Lee Jones [this message]
2019-07-22 13:32 ` [PATCH v5 02/11] mfd / platform: cros_ec: Move cros-ec core driver out from MFD Enric Balletbo i Serra
2019-08-12 7:24 ` Lee Jones
2019-07-22 13:32 ` [PATCH v5 03/11] mfd / platform: cros_ec: Miscellaneous character device to talk with the EC Enric Balletbo i Serra
2019-08-12 7:24 ` Lee Jones
2019-07-22 13:32 ` [PATCH v5 04/11] mfd: cros_ec: Switch to use the new cros-ec-chardev driver Enric Balletbo i Serra
2019-08-12 7:25 ` Lee Jones
2019-07-22 13:32 ` [PATCH v5 05/11] mfd / platform: cros_ec: Rename config to a better name Enric Balletbo i Serra
2019-08-12 7:25 ` Lee Jones
2019-07-22 13:32 ` [PATCH v5 06/11] mfd / platform: cros_ec: Reorganize platform and mfd includes Enric Balletbo i Serra
2019-08-12 7:25 ` Lee Jones
2019-07-22 13:32 ` [PATCH v5 07/11] mfd: cros_ec: Use kzalloc and cros_ec_cmd_xfer_status helper Enric Balletbo i Serra
2019-08-12 7:25 ` Lee Jones
2019-07-22 13:32 ` [PATCH v5 08/11] mfd: cros_ec: Add convenience struct to define dedicated CrOS EC MCUs Enric Balletbo i Serra
2019-08-12 7:16 ` Lee Jones
2019-08-21 17:40 ` Enric Balletbo i Serra
2019-07-22 13:32 ` [PATCH v5 09/11] mfd: cros_ec: Add convenience struct to define autodetectable CrOS EC subdevices Enric Balletbo i Serra
2019-08-12 7:25 ` Lee Jones
2019-07-22 13:32 ` [PATCH v5 10/11] mfd: cros_ec: Use mfd_add_hotplug_devices() helper Enric Balletbo i Serra
2019-08-12 7:24 ` Lee Jones
2019-08-21 17:50 ` Enric Balletbo i Serra
2019-07-22 13:32 ` [PATCH v5 11/11] arm/arm64: defconfig: Update configs to use the new CROS_EC options Enric Balletbo i Serra
2019-08-12 7:26 ` Lee Jones
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=20190812072431.GE4594@dell \
--to=lee.jones@linaro.org \
--cc=alexandre.belloni@bootlin.com \
--cc=andriy.shevchenko@linux.intel.com \
--cc=bleung@chromium.org \
--cc=broonie@kernel.org \
--cc=corbet@lwn.net \
--cc=cw00.choi@samsung.com \
--cc=dmitry.torokhov@gmail.com \
--cc=enric.balletbo@collabora.com \
--cc=gregkh@linuxfoundation.org \
--cc=groeck@chromium.org \
--cc=gwendal@chromium.org \
--cc=jic23@kernel.org \
--cc=kernel@collabora.com \
--cc=krzk@kernel.org \
--cc=lgirdwood@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mchehab@kernel.org \
--cc=myungjoo.ham@samsung.com \
--cc=narmstrong@baylibre.com \
--cc=sre@kernel.org \
--cc=thierry.reding@gmail.com \
--cc=will.deacon@arm.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.