All of lore.kernel.org
 help / color / mirror / Atom feed
From: Lee Jones <lee@kernel.org>
To: Ming Yu <a0282524688@gmail.com>
Cc: linus.walleij@linaro.org, brgl@bgdev.pl, andi.shyti@kernel.org,
	mkl@pengutronix.de, mailhol.vincent@wanadoo.fr,
	andrew+netdev@lunn.ch, davem@davemloft.net, edumazet@google.com,
	kuba@kernel.org, pabeni@redhat.com, wim@linux-watchdog.org,
	linux@roeck-us.net, jdelvare@suse.com,
	alexandre.belloni@bootlin.com, linux-kernel@vger.kernel.org,
	linux-gpio@vger.kernel.org, linux-i2c@vger.kernel.org,
	linux-can@vger.kernel.org, netdev@vger.kernel.org,
	linux-watchdog@vger.kernel.org, linux-hwmon@vger.kernel.org,
	linux-rtc@vger.kernel.org, linux-usb@vger.kernel.org,
	Ming Yu <tmyu0@nuvoton.com>
Subject: Re: [PATCH v10 1/7] mfd: Add core driver for Nuvoton NCT6694
Date: Fri, 9 May 2025 15:28:19 +0100	[thread overview]
Message-ID: <20250509142819.GG2492385@google.com> (raw)
In-Reply-To: <CAOoeyxWpYmcg1_FBXYqDfMi28R5ZXp2Sk2PhUo=cL10Nn3iVEw@mail.gmail.com>

On Fri, 02 May 2025, Ming Yu wrote:

> Lee Jones <lee@kernel.org> 於 2025年5月2日 週五 下午4:08寫道:
> >
> ...
> > > > > +static const struct mfd_cell nct6694_devs[] = {
> > > > > +     MFD_CELL_BASIC("nct6694-gpio", NULL, NULL, 0, 0),
> > > > > +     MFD_CELL_BASIC("nct6694-gpio", NULL, NULL, 0, 1),
> > > > > +     MFD_CELL_BASIC("nct6694-gpio", NULL, NULL, 0, 2),
> > > > > +     MFD_CELL_BASIC("nct6694-gpio", NULL, NULL, 0, 3),
> > > > > +     MFD_CELL_BASIC("nct6694-gpio", NULL, NULL, 0, 4),
> > > > > +     MFD_CELL_BASIC("nct6694-gpio", NULL, NULL, 0, 5),
> > > > > +     MFD_CELL_BASIC("nct6694-gpio", NULL, NULL, 0, 6),
> > > > > +     MFD_CELL_BASIC("nct6694-gpio", NULL, NULL, 0, 7),
> > > > > +     MFD_CELL_BASIC("nct6694-gpio", NULL, NULL, 0, 8),
> > > > > +     MFD_CELL_BASIC("nct6694-gpio", NULL, NULL, 0, 9),
> > > > > +     MFD_CELL_BASIC("nct6694-gpio", NULL, NULL, 0, 10),
> > > > > +     MFD_CELL_BASIC("nct6694-gpio", NULL, NULL, 0, 11),
> > > > > +     MFD_CELL_BASIC("nct6694-gpio", NULL, NULL, 0, 12),
> > > > > +     MFD_CELL_BASIC("nct6694-gpio", NULL, NULL, 0, 13),
> > > > > +     MFD_CELL_BASIC("nct6694-gpio", NULL, NULL, 0, 14),
> > > > > +     MFD_CELL_BASIC("nct6694-gpio", NULL, NULL, 0, 15),
> > > >
> > > > These are all identical.
> > > >
> > > > I thought you were going to use PLATFORM_DEVID_AUTO?  In fact, you are
> > > > already using PLATFORM_DEVID_AUTO since you are calling
> > > > mfd_add_hotplug_devices().  So you don't need this IDs.
> > > >
> > > > MFD_CELL_NAME() should do.
> > > >
> > >
> > > Yes, it uses PLATFORM_DEVID_AUTO, but in my implementation, the
> > > sub-devices use cell->id instead of platform_device->id, so it doesn't
> > > affect the current behavior.
> > > However, if you think there's a better approach or that this should be
> > > changed for consistency or correctness, I'm happy to update it, please
> > > let me know your recommendation.
> > >
> > > When using MFD_CELL_NAME(), the platform_device->id for the GPIO
> > > devices is assigned values from 1 to 16, and for the I2C devices from
> > > 1 to 6, but I need the ID offset to start from 0 instead.
> >
> > Oh no, don't do that.  mfd_cell isn't supposed to be used outside of MFD.
> >
> > Just use the platform_device id-- if you really need to start from 0.
> >
> > As an aside, I'm surprised numbering starts from 1.
> >
> 
> OK, I will use platform_device->id instead. However, I'm still unsure
> why the ID starts from1.
> 
> Additionally, I noticed that when calling mfd_add_devices()
> separately, the IDs are also assigned consecutively (e.g., GPIO: 1~16,
> I2C: 17~22, ...).
> 
> Do you have any recommendations on how I should implement this?

If you are to use this mechanism, you'd have to submit separate
mfd_add_devices() calls I guess.

However, this all seems a bit silly for simple, contextless (where
device 3 is identical to device 10, etc) enumeration.  Can you use IDA
instead?

-- 
Lee Jones [李琼斯]

  reply	other threads:[~2025-05-09 14:28 UTC|newest]

Thread overview: 20+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-04-23  9:40 [PATCH v10 0/7] Add Nuvoton NCT6694 MFD drivers a0282524688
2025-04-23  9:40 ` [PATCH v10 1/7] mfd: Add core driver for Nuvoton NCT6694 a0282524688
2025-05-01 12:22   ` Lee Jones
2025-05-02  2:02     ` Ming Yu
2025-05-02  8:07       ` Lee Jones
2025-05-02  9:04         ` Ming Yu
2025-05-09 14:28           ` Lee Jones [this message]
2025-05-12  8:48             ` Ming Yu
2025-04-23  9:40 ` [PATCH v10 2/7] gpio: Add Nuvoton NCT6694 GPIO support a0282524688
2025-04-23  9:40 ` [PATCH v10 3/7] i2c: Add Nuvoton NCT6694 I2C support a0282524688
2025-04-25 11:13   ` Andi Shyti
2025-04-23  9:40 ` [PATCH v10 4/7] can: Add Nuvoton NCT6694 CANFD support a0282524688
2025-05-03 13:57   ` Marc Kleine-Budde
2025-05-08  3:26     ` Ming Yu
2025-05-08 15:08       ` Marc Kleine-Budde
2025-05-09  5:39         ` Ming Yu
2025-05-07 16:18   ` kernel test robot
2025-04-23  9:40 ` [PATCH v10 5/7] watchdog: Add Nuvoton NCT6694 WDT support a0282524688
2025-04-23  9:40 ` [PATCH v10 6/7] hwmon: Add Nuvoton NCT6694 HWMON support a0282524688
2025-04-23  9:40 ` [PATCH v10 7/7] rtc: Add Nuvoton NCT6694 RTC support a0282524688

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=20250509142819.GG2492385@google.com \
    --to=lee@kernel.org \
    --cc=a0282524688@gmail.com \
    --cc=alexandre.belloni@bootlin.com \
    --cc=andi.shyti@kernel.org \
    --cc=andrew+netdev@lunn.ch \
    --cc=brgl@bgdev.pl \
    --cc=davem@davemloft.net \
    --cc=edumazet@google.com \
    --cc=jdelvare@suse.com \
    --cc=kuba@kernel.org \
    --cc=linus.walleij@linaro.org \
    --cc=linux-can@vger.kernel.org \
    --cc=linux-gpio@vger.kernel.org \
    --cc=linux-hwmon@vger.kernel.org \
    --cc=linux-i2c@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-rtc@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=linux-watchdog@vger.kernel.org \
    --cc=linux@roeck-us.net \
    --cc=mailhol.vincent@wanadoo.fr \
    --cc=mkl@pengutronix.de \
    --cc=netdev@vger.kernel.org \
    --cc=pabeni@redhat.com \
    --cc=tmyu0@nuvoton.com \
    --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 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.