From 65db42a9fae05c46a5df5b7ca5c175b80f9c4278 Mon Sep 17 00:00:00 2001 From: George Moussalem Date: Mon, 28 Sep 2026 13:48:47 +0400 Subject: [PATCH] pinctrl: qcom: ipq5018: update PWM groups and corresponding pin functions On multiple Linksys routers, GPIOs 1, 30, and 46 drive the PWM LED on the PWM1, PWM3, and PWM0 channels, respectively. Update the corresponding PWM groups to include these GPIOs and allocate the PWM functions to empty slots in the relevant pin groups. Signed-off-by: George Moussalem Link: https://patch.msgid.link/20260928-ipq5018-pwm-functions-v2-1-87bbcd706bc6@outlook.com Signed-off-by: Bartosz Golaszewski --- drivers/pinctrl/qcom/pinctrl-ipq5018.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/drivers/pinctrl/qcom/pinctrl-ipq5018.c b/drivers/pinctrl/qcom/pinctrl-ipq5018.c index 84392fe258c9..74fccdd5146a 100644 --- a/drivers/pinctrl/qcom/pinctrl-ipq5018.c +++ b/drivers/pinctrl/qcom/pinctrl-ipq5018.c @@ -539,7 +539,7 @@ static const char * const qdss_tracectl_b_groups[] = { }; static const char * const pwm0_groups[] = { - "gpio42", + "gpio42", "gpio46", }; static const char * const qdss_cti_trig_out_b0_groups[] = { @@ -547,7 +547,7 @@ static const char * const qdss_cti_trig_out_b0_groups[] = { }; static const char * const pwm1_groups[] = { - "gpio43", + "gpio43", "gpio1", }; static const char * const qdss_cti_trig_in_b0_groups[] = { @@ -563,7 +563,7 @@ static const char * const qdss_cti_trig_out_b1_groups[] = { }; static const char * const pwm3_groups[] = { - "gpio45", "gpio13", + "gpio45", "gpio30", "gpio13", }; static const char * const qdss_cti_trig_in_b1_groups[] = { @@ -677,7 +677,7 @@ static const struct pinfunction ipq5018_functions[] = { static const struct msm_pingroup ipq5018_groups[] = { PINGROUP(0, atest_char, _, qdss_cti_trig_out_a0, wci_txd, wci_rxd, xfem, _, _, _), - PINGROUP(1, atest_char, _, qdss_cti_trig_in_a0, wci_txd, wci_rxd, xfem, _, _, _), + PINGROUP(1, atest_char, pwm1, qdss_cti_trig_in_a0, wci_txd, wci_rxd, xfem, _, _, _), PINGROUP(2, atest_char, _, qdss_cti_trig_out_a1, wci_txd, wci_rxd, xfem, _, _, _), PINGROUP(3, atest_char, _, qdss_cti_trig_in_a1, wci_txd, wci_rxd, xfem, _, _, _), PINGROUP(4, sdc1_data, qspi_data, blsp1_spi1, btss, dbg_out, qdss_traceclk_a, _, burn0, _), @@ -706,7 +706,7 @@ static const struct msm_pingroup ipq5018_groups[] = { PINGROUP(27, audio_txmclk, wsa_swrm, audio_txmclk, blsp2_spi, btss, _, qdss_tracedata_b, _, _), PINGROUP(28, audio_txbclk, wsa_swrm, blsp0_uart1, btss, qdss_tracedata_b, _, _, _, _), PINGROUP(29, audio_txfsync, _, blsp0_uart1, _, qdss_tracedata_b, _, _, _, _), - PINGROUP(30, audio_txd, led2, led0, _, _, _, _, _, _), + PINGROUP(30, audio_txd, led2, led0, pwm3, _, _, _, _, _), PINGROUP(31, blsp2_spi0, blsp1_uart1, _, qdss_tracedata_b, eud_gpio, _, _, _, _), PINGROUP(32, blsp2_spi0, blsp1_uart1, _, qdss_tracedata_b, eud_gpio, _, _, _, _), PINGROUP(33, blsp2_i2c0, blsp2_spi0, blsp1_uart1, _, qdss_tracedata_b, eud_gpio, _, _, _), @@ -722,7 +722,7 @@ static const struct msm_pingroup ipq5018_groups[] = { PINGROUP(43, pwm1, qdss_cti_trig_in_b0, wci_txd, wci_rxd, xfem, _, _, _, _), PINGROUP(44, pwm2, qdss_cti_trig_out_b1, wci_txd, wci_rxd, xfem, _, _, _, _), PINGROUP(45, pwm3, qdss_cti_trig_in_b1, wci_txd, wci_rxd, xfem, _, _, _, _), - PINGROUP(46, led0, _, _, _, _, _, _, _, _), + PINGROUP(46, led0, pwm0, _, _, _, _, _, _, _), }; static const struct msm_pinctrl_soc_data ipq5018_pinctrl = {