| From 07c8dc05a6c800c28b2abaa0cda004a8ff7d981f Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Thu, 21 Aug 2025 19:33:34 -0400 |
| Subject: pinctrl: meson-gxl: add missing i2c_d pinmux |
| |
| From: Da Xue <da@libre.computer> |
| |
| [ Upstream commit d8c2a9edd181f0cc4a66eec954b3d8f6a1d954a7 ] |
| |
| Amlogic GXL has 4 I2C attached to gpio-periphs. I2C_D is on GPIOX_10/11. |
| |
| Add the relevant func 3 pinmux per the datasheet for S805X/S905X/S905D. |
| |
| Fixes: 0f15f500ff2c ("pinctrl: meson: Add GXL pinctrl definitions") |
| Signed-off-by: Da Xue <da@libre.computer> |
| Link: https://lore.kernel.org/20250821233335.1707559-1-da@libre.computer |
| Signed-off-by: Linus Walleij <linus.walleij@linaro.org> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| drivers/pinctrl/meson/pinctrl-meson-gxl.c | 10 ++++++++++ |
| 1 file changed, 10 insertions(+) |
| |
| diff --git a/drivers/pinctrl/meson/pinctrl-meson-gxl.c b/drivers/pinctrl/meson/pinctrl-meson-gxl.c |
| index 32552d795bb2c..cd2685b65b7f4 100644 |
| --- a/drivers/pinctrl/meson/pinctrl-meson-gxl.c |
| +++ b/drivers/pinctrl/meson/pinctrl-meson-gxl.c |
| @@ -187,6 +187,9 @@ static const unsigned int i2c_sda_c_pins[] = { GPIODV_28 }; |
| static const unsigned int i2c_sck_c_dv19_pins[] = { GPIODV_19 }; |
| static const unsigned int i2c_sda_c_dv18_pins[] = { GPIODV_18 }; |
| |
| +static const unsigned int i2c_sck_d_pins[] = { GPIOX_11 }; |
| +static const unsigned int i2c_sda_d_pins[] = { GPIOX_10 }; |
| + |
| static const unsigned int eth_mdio_pins[] = { GPIOZ_0 }; |
| static const unsigned int eth_mdc_pins[] = { GPIOZ_1 }; |
| static const unsigned int eth_clk_rx_clk_pins[] = { GPIOZ_2 }; |
| @@ -411,6 +414,8 @@ static struct meson_pmx_group meson_gxl_periphs_groups[] = { |
| GPIO_GROUP(GPIO_TEST_N), |
| |
| /* Bank X */ |
| + GROUP(i2c_sda_d, 5, 5), |
| + GROUP(i2c_sck_d, 5, 4), |
| GROUP(sdio_d0, 5, 31), |
| GROUP(sdio_d1, 5, 30), |
| GROUP(sdio_d2, 5, 29), |
| @@ -651,6 +656,10 @@ static const char * const i2c_c_groups[] = { |
| "i2c_sck_c", "i2c_sda_c", "i2c_sda_c_dv18", "i2c_sck_c_dv19", |
| }; |
| |
| +static const char * const i2c_d_groups[] = { |
| + "i2c_sck_d", "i2c_sda_d", |
| +}; |
| + |
| static const char * const eth_groups[] = { |
| "eth_mdio", "eth_mdc", "eth_clk_rx_clk", "eth_rx_dv", |
| "eth_rxd0", "eth_rxd1", "eth_rxd2", "eth_rxd3", |
| @@ -777,6 +786,7 @@ static struct meson_pmx_func meson_gxl_periphs_functions[] = { |
| FUNCTION(i2c_a), |
| FUNCTION(i2c_b), |
| FUNCTION(i2c_c), |
| + FUNCTION(i2c_d), |
| FUNCTION(eth), |
| FUNCTION(pwm_a), |
| FUNCTION(pwm_b), |
| -- |
| 2.51.0 |
| |