On 17 January 2024 12:42:34 UTC, Jean Thomas <jean.thomas@xxxxxxxxxx> wrote: >Add new emmc groups in the pinctrl driver for the >MediaTek MT7981 SoC: >* emmc reset, with pin 15. >* emmc 4-bit bus-width, with pins 16 to 19, and 24 to 25. >* emmc 8-bit bus-width, with pins 16 to 25. > >The existing emmc_45 group is kept for legacy reasons, even >if this is the union of emmc_reset and emmc_8 groups. > >Signed-off-by: Jean Thomas <jean.thomas@xxxxxxxxxx> Reviewed-by: Daniel Golle <daniel@xxxxxxxxxxxxxx> >--- > drivers/pinctrl/mediatek/pinctrl-mt7981.c | 17 ++++++++++++++++- > 1 file changed, 16 insertions(+), 1 deletion(-) > >diff --git a/drivers/pinctrl/mediatek/pinctrl-mt7981.c b/drivers/pinctrl/mediatek/pinctrl-mt7981.c >index ca667ed25a4d..ef6123765885 100644 >--- a/drivers/pinctrl/mediatek/pinctrl-mt7981.c >+++ b/drivers/pinctrl/mediatek/pinctrl-mt7981.c >@@ -700,6 +700,15 @@ static int mt7981_drv_vbus_pins[] = { 14, }; > static int mt7981_drv_vbus_funcs[] = { 1, }; > > /* EMMC */ >+static int mt7981_emmc_reset_pins[] = { 15, }; >+static int mt7981_emmc_reset_funcs[] = { 2, }; >+ >+static int mt7981_emmc_4_pins[] = { 16, 17, 18, 19, 24, 25, }; >+static int mt7981_emmc_4_funcs[] = { 2, 2, 2, 2, 2, 2, }; >+ >+static int mt7981_emmc_8_pins[] = { 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, }; >+static int mt7981_emmc_8_funcs[] = { 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, }; >+ > static int mt7981_emmc_45_pins[] = { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, }; > static int mt7981_emmc_45_funcs[] = { 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, }; > >@@ -854,6 +863,12 @@ static const struct group_desc mt7981_groups[] = { > PINCTRL_PIN_GROUP("udi", mt7981_udi), > /* @GPIO(14) DRV_VBUS(1) */ > PINCTRL_PIN_GROUP("drv_vbus", mt7981_drv_vbus), >+ /* @GPIO(15): EMMC_RSTB(2) */ >+ PINCTRL_PIN_GROUP("emmc_reset", mt7981_emmc_reset), >+ /* @GPIO(16,17,18,19,24,25): EMMC_DATx, EMMC_CLK, EMMC_CMD */ >+ PINCTRL_PIN_GROUP("emmc_4", mt7981_emmc_4), >+ /* @GPIO(16,17,18,19,20,21,22,23,24,25): EMMC_DATx, EMMC_CLK, EMMC_CMD */ >+ PINCTRL_PIN_GROUP("emmc_8", mt7981_emmc_8), > /* @GPIO(15,25): EMMC(2) */ > PINCTRL_PIN_GROUP("emmc_45", mt7981_emmc_45), > /* @GPIO(16,21): SNFI(3) */ >@@ -957,7 +972,7 @@ static const char *mt7981_i2c_groups[] = { "i2c0_0", "i2c0_1", "u2_phy_i2c", > static const char *mt7981_pcm_groups[] = { "pcm", }; > static const char *mt7981_udi_groups[] = { "udi", }; > static const char *mt7981_usb_groups[] = { "drv_vbus", }; >-static const char *mt7981_flash_groups[] = { "emmc_45", "snfi", }; >+static const char *mt7981_flash_groups[] = { "emmc_reset", "emmc_4", "emmc_8", "emmc_45", "snfi", }; > static const char *mt7981_ethernet_groups[] = { "smi_mdc_mdio", "gbe_ext_mdc_mdio", > "wf0_mode1", "wf0_mode3", "mt7531_int", }; > static const char *mt7981_ant_groups[] = { "ant_sel", };