diff mbox series

pinctrl: renesas: rzg2l: Limit 2.5V power supply to Ethernet interfaces

Message ID 20240417114132.6605-1-paul.barker.ct@bp.renesas.com
State New
Headers show
Series pinctrl: renesas: rzg2l: Limit 2.5V power supply to Ethernet interfaces | expand

Commit Message

Paul Barker April 17, 2024, 11:41 a.m. UTC
The RZ/G3S SoC supports configurable supply voltages for several of its
I/O interfaces. All of these interfaces support both 1.8V and 3.3V
supplies, but only the Ethernet and XSPI interfaces support a 2.5V
supply.

Voltage selection for the XSPI interface is not yet supported, so this
leaves only the Ethernet interfaces currently supporting selection of a
2.5V supply. So we need to return an error if there is an attempt to
select a 2.5V supply for any non-Ethernet interface.

Fixes: 51996952b8b5 ("pinctrl: renesas: rzg2l: Add support to select power source for Ethernet pins")
Signed-off-by: Paul Barker <paul.barker.ct@bp.renesas.com>
---
 drivers/pinctrl/renesas/pinctrl-rzg2l.c | 2 ++
 1 file changed, 2 insertions(+)

Comments

Geert Uytterhoeven April 24, 2024, 1:24 p.m. UTC | #1
On Wed, Apr 17, 2024 at 1:41 PM Paul Barker
<paul.barker.ct@bp.renesas.com> wrote:
> The RZ/G3S SoC supports configurable supply voltages for several of its
> I/O interfaces. All of these interfaces support both 1.8V and 3.3V
> supplies, but only the Ethernet and XSPI interfaces support a 2.5V
> supply.
>
> Voltage selection for the XSPI interface is not yet supported, so this
> leaves only the Ethernet interfaces currently supporting selection of a
> 2.5V supply. So we need to return an error if there is an attempt to
> select a 2.5V supply for any non-Ethernet interface.
>
> Fixes: 51996952b8b5 ("pinctrl: renesas: rzg2l: Add support to select power source for Ethernet pins")
> Signed-off-by: Paul Barker <paul.barker.ct@bp.renesas.com>

Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
i.e. will queue in renesas-clk for v6.10.

Gr{oetje,eeting}s,

                        Geert
diff mbox series

Patch

diff --git a/drivers/pinctrl/renesas/pinctrl-rzg2l.c b/drivers/pinctrl/renesas/pinctrl-rzg2l.c
index eb5a8c654260..33602f0e4dad 100644
--- a/drivers/pinctrl/renesas/pinctrl-rzg2l.c
+++ b/drivers/pinctrl/renesas/pinctrl-rzg2l.c
@@ -892,6 +892,8 @@  static int rzg2l_set_power_source(struct rzg2l_pinctrl *pctrl, u32 pin, u32 caps
 		val = PVDD_1800;
 		break;
 	case 2500:
+		if (!(caps & (PIN_CFG_IO_VMC_ETH0 | PIN_CFG_IO_VMC_ETH1)))
+			return -EINVAL;
 		val = PVDD_2500;
 		break;
 	case 3300: