Re: [RFC v1 0/4] Microchip mpfs/pic64gx pinctrl part 2
From: Linus Walleij
Date: Wed Nov 19 2025 - 16:32:01 EST
On Wed, Nov 19, 2025 at 7:06 PM Conor Dooley <conor@xxxxxxxxxx> wrote:
> On Wed, Nov 19, 2025 at 01:16:16PM +0100, Linus Walleij wrote:
> > On Wed, Nov 12, 2025 at 3:33 PM Conor Dooley <conor@xxxxxxxxxx> wrote:
> > > and b) how the bank voltage
> > > interacts with the schmitt trigger setting.
> >
> > Please check if "bank voltage" is somewhat analogous to
> > this generic config:
> >
> > * @PIN_CONFIG_POWER_SOURCE: if the pin can select between different power
> > * supplies, the argument to this parameter (on a custom format) tells
> > * the driver which alternative power source to use.
>
> It's not pin based, the whole bank it is connected to has to be changed.
So there *is* such a thing as a group pin config setting for a
whole group of pins. Groups are not just for functions...
And I don't know what is meant by a bank here, but it seems
to be exactly a group of pins.
>From arch/arm/boot/dts/gemini/gemini-sq201.dts:
/* Set up drive strength on GMAC0 and GMAC1 to 16 mA */
conf9 {
groups = "gmii_gmac0_grp", "gmii_gmac1_grp";
drive-strength = <16>;
};
If you look in driver/pinctrl/pinctrl-gemini.c you find:
gemini_pinconf_group_set()
static const struct pinconf_ops gemini_pinconf_ops = {
.pin_config_get = gemini_pinconf_get,
.pin_config_set = gemini_pinconf_set,
.pin_config_group_set = gemini_pinconf_group_set,
.is_generic = true,
};
OTOMH it's actually *fine* to *just* use groups for pin config like this
and *not* use it for muxing, i.e. have this group correspond to
a bank and not use that group for anything else than to set this
or any other per-bank property. But have a look!
Yours,
Linus Walleij