* [PATCH v1 1/3] pinctrl: mpfs-mssio: fix whitespace in debugfs output
2026-08-31 10:50 [PATCH v1 0/3] pinctrl: mpfs-mssio: three fixes Conor Dooley
@ 2026-08-31 10:50 ` Conor Dooley
2026-08-31 10:50 ` [PATCH v1 2/3] pinctrl: mpfs-mssio: fix width of unused bank voltage setting Conor Dooley
2026-08-31 10:50 ` [PATCH v1 3/3] pinctrl: mpfs-mssio: use correct regmap function to set bank voltage Conor Dooley
2 siblings, 0 replies; 4+ messages in thread
From: Conor Dooley @ 2026-08-31 10:50 UTC (permalink / raw)
To: linux-gpio
Cc: conor, Conor Dooley, Daire McNamara, Linus Walleij, linux-riscv,
linux-kernel, Valentina.FernandezAlanis
From: Conor Dooley <conor.dooley@microchip.com>
The printout from mpfs_pinctrl_pinconf_dbg_show() is appended to
information from the core, so a leading space is required or the world
will end.
Fixes: 488d704ed7b7 ("pinctrl: add polarfire soc mssio pinctrl driver")
Signed-off-by: Conor Dooley <conor.dooley@microchip.com>
---
drivers/pinctrl/microchip/pinctrl-mpfs-mssio.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/pinctrl/microchip/pinctrl-mpfs-mssio.c b/drivers/pinctrl/microchip/pinctrl-mpfs-mssio.c
index ea1026a0d22c..502624221aca 100644
--- a/drivers/pinctrl/microchip/pinctrl-mpfs-mssio.c
+++ b/drivers/pinctrl/microchip/pinctrl-mpfs-mssio.c
@@ -612,7 +612,7 @@ static void mpfs_pinctrl_pinconf_dbg_show(struct pinctrl_dev *pctrl_dev, struct
reg = mpfs_pinctrl_pin_to_iocfg_reg(pin);
offset = mpfs_pinctrl_pin_to_iocfg_offset(pin);
- seq_printf(seq, "pin: %u ", pin);
+ seq_printf(seq, " pin: %u ", pin);
seq_printf(seq, "reg: %x offset: %u ", reg, offset);
if (reg < 0 || offset < 0)
--
2.53.0
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
^ permalink raw reply related [flat|nested] 4+ messages in thread* [PATCH v1 2/3] pinctrl: mpfs-mssio: fix width of unused bank voltage setting
2026-08-31 10:50 [PATCH v1 0/3] pinctrl: mpfs-mssio: three fixes Conor Dooley
2026-08-31 10:50 ` [PATCH v1 1/3] pinctrl: mpfs-mssio: fix whitespace in debugfs output Conor Dooley
@ 2026-08-31 10:50 ` Conor Dooley
2026-08-31 10:50 ` [PATCH v1 3/3] pinctrl: mpfs-mssio: use correct regmap function to set bank voltage Conor Dooley
2 siblings, 0 replies; 4+ messages in thread
From: Conor Dooley @ 2026-08-31 10:50 UTC (permalink / raw)
To: linux-gpio
Cc: conor, Conor Dooley, Daire McNamara, Linus Walleij, linux-riscv,
linux-kernel, Valentina.FernandezAlanis, stable
From: Conor Dooley <conor.dooley@microchip.com>
The bank voltages are only 4 bits wide, so when a pin was unused the
driver was not correctly interpreting it as being at zero volts, because
the driver's value for unused had two extra set bits.
CC: stable@vger.kernel.org
Fixes: 488d704ed7b7 ("pinctrl: add polarfire soc mssio pinctrl driver")
Signed-off-by: Conor Dooley <conor.dooley@microchip.com>
---
drivers/pinctrl/microchip/pinctrl-mpfs-mssio.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/pinctrl/microchip/pinctrl-mpfs-mssio.c b/drivers/pinctrl/microchip/pinctrl-mpfs-mssio.c
index 502624221aca..9e6d233804cb 100644
--- a/drivers/pinctrl/microchip/pinctrl-mpfs-mssio.c
+++ b/drivers/pinctrl/microchip/pinctrl-mpfs-mssio.c
@@ -86,7 +86,7 @@ static struct mpfs_pinctrl_bank_voltage mpfs_pinctrl_bank_voltages[8] = {
{ .uv = 1800000, .val = 4 },
{ .uv = 2500000, .val = 6 },
{ .uv = 3300000, .val = 8 },
- { .uv = 0, .val = 0x3f }, // pin unused
+ { .uv = 0, .val = 0xf }, // pin unused
};
static int mpfs_pinctrl_get_drive_strength_ma(u32 drive_strength)
--
2.53.0
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
^ permalink raw reply related [flat|nested] 4+ messages in thread* [PATCH v1 3/3] pinctrl: mpfs-mssio: use correct regmap function to set bank voltage
2026-08-31 10:50 [PATCH v1 0/3] pinctrl: mpfs-mssio: three fixes Conor Dooley
2026-08-31 10:50 ` [PATCH v1 1/3] pinctrl: mpfs-mssio: fix whitespace in debugfs output Conor Dooley
2026-08-31 10:50 ` [PATCH v1 2/3] pinctrl: mpfs-mssio: fix width of unused bank voltage setting Conor Dooley
@ 2026-08-31 10:50 ` Conor Dooley
2 siblings, 0 replies; 4+ messages in thread
From: Conor Dooley @ 2026-08-31 10:50 UTC (permalink / raw)
To: linux-gpio
Cc: conor, Conor Dooley, Daire McNamara, Linus Walleij, linux-riscv,
linux-kernel, Valentina.FernandezAlanis, stable
From: Conor Dooley <conor.dooley@microchip.com>
regmap_assign_bits() is not the correct function to use for an RMW
operation, as it maps to regmap_set_bits() or regmap_clear_bits() and
the former will never zero a bit. Use regmap_update_bits() instead,
which will actually set the bank voltages to what have been requested.
CC: stable@vger.kernel.org
Fixes: 488d704ed7b7 ("pinctrl: add polarfire soc mssio pinctrl driver")
Signed-off-by: Conor Dooley <conor.dooley@microchip.com>
---
drivers/pinctrl/microchip/pinctrl-mpfs-mssio.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/pinctrl/microchip/pinctrl-mpfs-mssio.c b/drivers/pinctrl/microchip/pinctrl-mpfs-mssio.c
index 9e6d233804cb..8da0c5312ce3 100644
--- a/drivers/pinctrl/microchip/pinctrl-mpfs-mssio.c
+++ b/drivers/pinctrl/microchip/pinctrl-mpfs-mssio.c
@@ -156,10 +156,10 @@ static void mpfs_pinctrl_set_bank_voltage(struct mpfs_pinctrl *pctrl, unsigned i
u32 val = FIELD_PREP(MPFS_PINCTRL_BANK_VOLTAGE_MASK, bank_voltage);
if (pin < MPFS_PINCTRL_BANK2_START)
- regmap_assign_bits(pctrl->sysreg_regmap, MPFS_PINCTRL_MSSIO_BANK4_CFG_CR,
+ regmap_update_bits(pctrl->sysreg_regmap, MPFS_PINCTRL_MSSIO_BANK4_CFG_CR,
MPFS_PINCTRL_BANK_VOLTAGE_MASK, val);
else
- regmap_assign_bits(pctrl->sysreg_regmap, MPFS_PINCTRL_MSSIO_BANK2_CFG_CR,
+ regmap_update_bits(pctrl->sysreg_regmap, MPFS_PINCTRL_MSSIO_BANK2_CFG_CR,
MPFS_PINCTRL_BANK_VOLTAGE_MASK, val);
}
--
2.53.0
_______________________________________________
linux-riscv mailing list
linux-riscv@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-riscv
^ permalink raw reply related [flat|nested] 4+ messages in thread