All of lore.kernel.org
 help / color / mirror / Atom feed
From: Lee Jones <lee@kernel.org>
To: Karel Balej <balejk@matfyz.cz>
Cc: "Rob Herring" <robh+dt@kernel.org>,
	"Krzysztof Kozlowski" <krzysztof.kozlowski+dt@linaro.org>,
	"Conor Dooley" <conor+dt@kernel.org>,
	"Dmitry Torokhov" <dmitry.torokhov@gmail.com>,
	"Liam Girdwood" <lgirdwood@gmail.com>,
	"Mark Brown" <broonie@kernel.org>,
	devicetree@vger.kernel.org, linux-kernel@vger.kernel.org,
	linux-input@vger.kernel.org,
	"Duje Mihanović" <duje.mihanovic@skole.hr>,
	~postmarketos/upstreaming@lists.sr.ht,
	phone-devel@vger.kernel.org
Subject: Re: [RFC PATCH v4 2/5] mfd: add driver for Marvell 88PM886 PMIC
Date: Thu, 21 Mar 2024 16:20:45 +0000	[thread overview]
Message-ID: <20240321162045.GC13211@google.com> (raw)
In-Reply-To: <CZZK759UU6G7.MFPYOI0HBB6I@matfyz.cz>

On Thu, 21 Mar 2024, Karel Balej wrote:

> Lee Jones, 2024-03-21T15:42:11+00:00:
> > On Mon, 11 Mar 2024, Karel Balej wrote:
> >
> > > From: Karel Balej <balejk@matfyz.cz>
> > > 
> > > Marvell 88PM886 is a PMIC which provides various functions such as
> > > onkey, battery, charger and regulators. It is found for instance in the
> > > samsung,coreprimevelte smartphone with which this was tested. Implement
> > > basic support to allow for the use of regulators and onkey.
> > > 
> > > Signed-off-by: Karel Balej <balejk@matfyz.cz>
> > > ---
> > > 
> > > Notes:
> > >     RFC v4:
> > >     - Use MFD_CELL_* macros.
> > >     - Address Lee's feedback:
> > >       - Do not define regmap_config.val_bits and .reg_bits.
> > >       - Drop everything regulator related except mfd_cell (regmap
> > >         initialization, IDs enum etc.). Drop pm886_initialize_subregmaps.
> > >       - Do not store regmap pointers as an array as there is now only one
> > >         regmap. Also drop the corresponding enum.
> > >       - Move regmap_config to the header as it is needed in the regulators
> > >         driver.
> > >       - pm886_chip.whoami -> chip_id
> > >       - Reword chip ID mismatch error message and print the ID as
> > >         hexadecimal.
> > >       - Fix includes in include/linux/88pm886.h.
> > >       - Drop the pm886_irq_number enum and define the (for the moment) only
> > >         IRQ explicitly.
> > >     - Have only one MFD cell for all regulators as they are now registered
> > >       all at once in the regulators driver.
> > >     - Reword commit message.
> > >     - Make device table static and remove comma after the sentinel to signal
> > >       that nothing should come after it.
> > >     RFC v3:
> > >     - Drop onkey cell .of_compatible.
> > >     - Rename LDO page offset and regmap to REGULATORS.
> > >     RFC v2:
> > >     - Remove some abstraction.
> > >     - Sort includes alphabetically and add linux/of.h.
> > >     - Depend on OF, remove of_match_ptr and add MODULE_DEVICE_TABLE.
> > >     - Use more temporaries and break long lines.
> > >     - Do not initialize ret in probe.
> > >     - Use the wakeup-source DT property.
> > >     - Rename ret to err.
> > >     - Address Lee's comments:
> > >       - Drop patched in presets for base regmap and related defines.
> > >       - Use full sentences in comments.
> > >       - Remove IRQ comment.
> > >       - Define regmap_config member values.
> > >       - Rename data to sys_off_data.
> > >       - Add _PMIC suffix to Kconfig.
> > >       - Use dev_err_probe.
> > >       - Do not store irq_data.
> > >       - s/WHOAMI/CHIP_ID
> > >       - Drop LINUX part of include guard name.
> > >       - Merge in the regulator series modifications in order to have more
> > >         devices and modify the commit message accordingly. Changes with
> > >         respect to the original regulator series patches:
> > >         - ret -> err
> > >         - Add temporary for dev in pm88x_initialize_subregmaps.
> > >         - Drop of_compatible for the regulators.
> > >         - Do not duplicate LDO regmap for bucks.
> > >     - Rewrite commit message.
> > > 
> > >  drivers/mfd/88pm886.c       | 149 ++++++++++++++++++++++++++++++++++++
> > >  drivers/mfd/Kconfig         |  12 +++
> > >  drivers/mfd/Makefile        |   1 +
> > >  include/linux/mfd/88pm886.h |  38 +++++++++
> > >  4 files changed, 200 insertions(+)
> > >  create mode 100644 drivers/mfd/88pm886.c
> > >  create mode 100644 include/linux/mfd/88pm886.h
> >
> > Looks mostly okay.
> >
> > > diff --git a/include/linux/mfd/88pm886.h b/include/linux/mfd/88pm886.h
> > > new file mode 100644
> > > index 000000000000..a5e6524bb19d
> > > --- /dev/null
> > > +++ b/include/linux/mfd/88pm886.h
> > > @@ -0,0 +1,38 @@
> > > +/* SPDX-License-Identifier: GPL-2.0-only */
> > > +#ifndef __MFD_88PM886_H
> > > +#define __MFD_88PM886_H
> > > +
> > > +#include <linux/i2c.h>
> > > +#include <linux/regmap.h>
> > > +
> > > +#define PM886_A1_CHIP_ID		0xa1
> > > +
> > > +#define PM886_REGMAP_CONF_MAX_REG	0xfe
> > > +
> > > +#define PM886_REG_ID			0x00
> > > +
> > > +#define PM886_REG_STATUS1		0x01
> > > +#define PM886_ONKEY_STS1		BIT(0)
> > > +
> > > +#define PM886_REG_MISC_CONFIG1		0x14
> > > +#define PM886_SW_PDOWN			BIT(5)
> > > +
> > > +#define PM886_REG_MISC_CONFIG2		0x15
> > > +#define PM886_INT_INV			BIT(0)
> > > +#define PM886_INT_CLEAR			BIT(1)
> > > +#define PM886_INT_RC			0x00
> > > +#define PM886_INT_WC			BIT(1)
> > > +#define PM886_INT_MASK_MODE		BIT(2)
> > > +
> > > +struct pm886_chip {
> > > +	struct i2c_client *client;
> > > +	unsigned int chip_id;
> > > +	struct regmap *regmap;
> > > +};
> > > +
> > > +static const struct regmap_config pm886_i2c_regmap = {
> > > +	.reg_bits = 8,
> > > +	.val_bits = 8,
> > > +	.max_register = PM886_REGMAP_CONF_MAX_REG,
> > > +};
> >
> > Why is this in here?
> 
> Because since I moved the regulators regmap initialization into the
> regulators driver, I need to access it from there.

So move it into the regulators driver?

> > What would you like me to do with this RFC patch?
> 
> I was hoping that you would take this through the MFD tree (after the
> regulator subsystem maintainers approve the regulators driver).
> 
> I have added the remaining regulators to the driver just today and plan
> to send the first non-RFC version of the series after I test it, likely
> over the weekend. Hopefully the regulators patch will finally get some
> attention then.

Don't forget that the merge-window is open.

Many maintainers take a well deserved nap during this period.

-- 
Lee Jones [李琼斯]

  reply	other threads:[~2024-03-21 16:20 UTC|newest]

Thread overview: 19+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-03-11 15:51 [RFC PATCH v4 0/5] initial support for Marvell 88PM886 PMIC Karel Balej
2024-03-11 15:51 ` [RFC PATCH v4 1/5] dt-bindings: mfd: add entry " Karel Balej
2024-03-11 15:51 ` [RFC PATCH v4 2/5] mfd: add driver " Karel Balej
2024-03-21 15:42   ` Lee Jones
2024-03-21 16:12     ` Karel Balej
2024-03-21 16:20       ` Lee Jones [this message]
2024-03-21 16:55         ` Karel Balej
2024-03-21 16:58           ` Mark Brown
2024-03-21 17:08             ` Karel Balej
2024-03-21 17:17               ` Mark Brown
2024-03-21 17:32                 ` Karel Balej
2024-03-21 17:48                   ` Mark Brown
2024-03-21 18:16                     ` Karel Balej
2024-03-21 19:00                       ` Mark Brown
2024-03-21 19:14                         ` Karel Balej
2024-03-21 19:32                           ` Mark Brown
2024-03-11 15:51 ` [RFC PATCH v4 3/5] regulator: add regulators " Karel Balej
2024-03-11 15:51 ` [RFC PATCH v4 4/5] input: add onkey " Karel Balej
2024-03-11 15:51 ` [RFC PATCH v4 5/5] MAINTAINERS: add myself " Karel Balej

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=20240321162045.GC13211@google.com \
    --to=lee@kernel.org \
    --cc=balejk@matfyz.cz \
    --cc=broonie@kernel.org \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=dmitry.torokhov@gmail.com \
    --cc=duje.mihanovic@skole.hr \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=lgirdwood@gmail.com \
    --cc=linux-input@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=phone-devel@vger.kernel.org \
    --cc=robh+dt@kernel.org \
    --cc=~postmarketos/upstreaming@lists.sr.ht \
    /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.