From: Lee Jones <lee.jones@linaro.org>
To: Steve Twiss <stwiss.opensource@diasemi.com>
Cc: Marek Vasut <marek.vasut@gmail.com>,
"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
Marek Vasut <marek.vasut+renesas@gmail.com>,
Geert Uytterhoeven <geert+renesas@glider.be>,
Mark Brown <broonie@kernel.org>,
Wolfram Sang <wsa+renesas@sang-engineering.com>,
"linux-renesas-soc@vger.kernel.org"
<linux-renesas-soc@vger.kernel.org>
Subject: Re: [PATCH 4/6] mfd: da9063: Disallow RTC on DA9063L
Date: Tue, 29 May 2018 08:55:06 +0100 [thread overview]
Message-ID: <20180529075505.GD4790@dell> (raw)
In-Reply-To: <6ED8E3B22081A4459DAC7699F3695FB701941A488A@SW-EX-MBX02.diasemi.com>
On Thu, 24 May 2018, Steve Twiss wrote:
> Thanks Marek,
>
> On 23 May 2018 12:42 Marek Vasut wrote,
>
> > To: linux-kernel@vger.kernel.org
> > Cc: Marek Vasut <marek.vasut+renesas@gmail.com>; Geert Uytterhoeven <geert+renesas@glider.be>; Lee Jones <lee.jones@linaro.org>; Mark Brown <broonie@kernel.org>; Steve Twiss <stwiss.opensource@diasemi.com>; Wolfram Sang <wsa+renesas@sang-engineering.com>; linux-renesas-soc@vger.kernel.org
> > Subject: [PATCH 4/6] mfd: da9063: Disallow RTC on DA9063L
> >
> > The DA9063L does not contain RTC block, unlike the full DA9063.
> > Do not allow binding RTC driver on this variant of the chip.
> >
> > Signed-off-by: Marek Vasut <marek.vasut+renesas@gmail.com>
> > Cc: Geert Uytterhoeven <geert+renesas@glider.be>
> > Cc: Lee Jones <lee.jones@linaro.org>
> > Cc: Mark Brown <broonie@kernel.org>
> > Cc: Steve Twiss <stwiss.opensource@diasemi.com>
> > Cc: Wolfram Sang <wsa+renesas@sang-engineering.com>
> > Cc: linux-renesas-soc@vger.kernel.org
> > ---
> > drivers/mfd/da9063-core.c | 18 +++++++++++-------
> > 1 file changed, 11 insertions(+), 7 deletions(-)
> >
> > diff --git a/drivers/mfd/da9063-core.c b/drivers/mfd/da9063-core.c index 7360b76b4f72..263c83006413 100644
> > --- a/drivers/mfd/da9063-core.c
> > +++ b/drivers/mfd/da9063-core.c
> > @@ -101,14 +101,14 @@ static const struct mfd_cell da9063_devs[] = {
> > .of_compatible = "dlg,da9063-onkey",
> > },
> > {
> > + .name = DA9063_DRVNAME_VIBRATION,
> > + },
> > + { /* Only present on DA9063 , not on DA9063L */
> > .name = DA9063_DRVNAME_RTC,
> > .num_resources = ARRAY_SIZE(da9063_rtc_resources),
> > .resources = da9063_rtc_resources,
> > .of_compatible = "dlg,da9063-rtc",
> > },
> > - {
> > - .name = DA9063_DRVNAME_VIBRATION,
> > - },
> > };
> >
> > static int da9063_clear_fault_log(struct da9063 *da9063) @@ -163,7 +163,7 @@ int da9063_device_init(struct da9063 *da9063, unsigned int irq) {
> > struct da9063_pdata *pdata = da9063->dev->platform_data;
> > int model, variant_id, variant_code;
> > - int ret;
> > + int da9063_devs_len, ret;
> >
> > ret = da9063_clear_fault_log(da9063);
> > if (ret < 0)
> > @@ -225,9 +225,13 @@ int da9063_device_init(struct da9063 *da9063, unsigned int irq)
> >
> > da9063->irq_base = regmap_irq_chip_get_base(da9063->regmap_irq);
> >
> > - ret = mfd_add_devices(da9063->dev, -1, da9063_devs,
> > - ARRAY_SIZE(da9063_devs), NULL, da9063->irq_base,
> > - NULL);
> > + da9063_devs_len = ARRAY_SIZE(da9063_devs);
> > + /* RTC, the last device in the list, is only present on DA9063 */
> > + if (da9063->type == PMIC_TYPE_DA9063L)
> > + da9063_devs_len -= 1;
> > +
> > + ret = mfd_add_devices(da9063->dev, -1, da9063_devs, da9063_devs_len,
> > + NULL, da9063->irq_base, NULL);
> > if (ret)
> > dev_err(da9063->dev, "Cannot add MFD cells\n");
> >
>
> MFD cells definitely has less impact than regmap_range and regmap_irq.
> I agree, there's no point in having a completely new
> static const struct mfd_cell da9063l_devs[] = { ... } for DA9063L
This solution is fragile.
I agree that a new MFD cell is not required in its entirety. It
would however, be better to split out the RTC entry into a new one and
only register it when (da9063->type == PMIC_TYPE_DA9063). This is a
better solution than messing around with passed struct sizes.
--
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:[~2018-05-29 7:55 UTC|newest]
Thread overview: 36+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-05-23 11:42 [PATCH 1/6] mfd: da9063: Rename PMIC_DA9063 to PMIC_CHIP_ID_DA9063 Marek Vasut
2018-05-23 11:42 ` [PATCH 2/6] mfd: da9063: Replace model with type Marek Vasut
2018-05-23 11:50 ` Mark Brown
2018-05-23 11:55 ` Geert Uytterhoeven
2018-05-23 12:15 ` Marek Vasut
2018-05-26 9:16 ` kbuild test robot
2018-05-26 9:58 ` Marek Vasut
2018-05-30 5:21 ` Ye Xiaolong
2018-05-30 10:45 ` Marek Vasut
2018-05-26 11:01 ` kbuild test robot
2018-05-23 11:42 ` [PATCH 3/6] mfd: da9063: Add DA9063L type Marek Vasut
2018-05-23 12:00 ` Geert Uytterhoeven
2018-05-24 13:06 ` Steve Twiss
2018-05-23 11:42 ` [PATCH 4/6] mfd: da9063: Disallow RTC on DA9063L Marek Vasut
2018-05-23 12:00 ` Geert Uytterhoeven
2018-05-24 12:50 ` Steve Twiss
2018-05-29 7:55 ` Lee Jones [this message]
2018-05-30 10:59 ` Marek Vasut
2018-05-23 11:42 ` [PATCH 5/6] mfd: da9063: Handle less LDOs " Marek Vasut
2018-05-23 11:50 ` Mark Brown
2018-05-23 12:05 ` Geert Uytterhoeven
2018-05-23 11:42 ` [PATCH 6/6] mfd: da9063: Add DA9063L support Marek Vasut
2018-05-23 11:50 ` Mark Brown
2018-05-23 12:06 ` Geert Uytterhoeven
2018-05-24 11:48 ` Steve Twiss
2018-05-24 12:32 ` Steve Twiss
2018-05-24 14:50 ` Marek Vasut
2018-05-24 17:30 ` Steve Twiss
2018-05-30 11:24 ` Marek Vasut
2018-05-31 12:45 ` Steve Twiss
2018-06-02 9:59 ` Marek Vasut
2018-05-29 7:46 ` Lee Jones
2018-05-30 11:26 ` Marek Vasut
2018-05-23 11:49 ` [PATCH 1/6] mfd: da9063: Rename PMIC_DA9063 to PMIC_CHIP_ID_DA9063 Mark Brown
2018-05-23 11:53 ` Geert Uytterhoeven
2018-05-24 12:03 ` 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=20180529075505.GD4790@dell \
--to=lee.jones@linaro.org \
--cc=broonie@kernel.org \
--cc=geert+renesas@glider.be \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-renesas-soc@vger.kernel.org \
--cc=marek.vasut+renesas@gmail.com \
--cc=marek.vasut@gmail.com \
--cc=stwiss.opensource@diasemi.com \
--cc=wsa+renesas@sang-engineering.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.