Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

pinctrl: qcom: ipq5424: split spi0 pin group

The GPIO configuration differs for the spi0 clk, cs, miso, mosi pins.
Therefore, split the spi0 pin group and assign function to each pin
as per the specification.

Signed-off-by: Manikanta Mylavarapu <quic_mmanikan@quicinc.com>
Link: https://lore.kernel.org/20241217091308.3253897-3-quic_mmanikan@quicinc.com
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>

authored by

Manikanta Mylavarapu and committed by
Linus Walleij
9550fd31 d992e52d

+26 -8
+26 -8
drivers/pinctrl/qcom/pinctrl-ipq5424.c
··· 233 233 msm_mux_sdc_clk, 234 234 msm_mux_sdc_cmd, 235 235 msm_mux_sdc_data, 236 - msm_mux_spi0, 236 + msm_mux_spi0_clk, 237 + msm_mux_spi0_cs, 238 + msm_mux_spi0_miso, 239 + msm_mux_spi0_mosi, 237 240 msm_mux_spi1, 238 241 msm_mux_spi10, 239 242 msm_mux_spi11, ··· 300 297 "gpio5", 301 298 }; 302 299 303 - static const char * const spi0_groups[] = { 304 - "gpio6", "gpio7", "gpio8", "gpio9", 300 + static const char * const spi0_clk_groups[] = { 301 + "gpio6", 305 302 }; 306 303 307 304 static const char * const pwm1_groups[] = { ··· 318 315 "gpio38", "gpio39", 319 316 }; 320 317 318 + static const char * const spi0_cs_groups[] = { 319 + "gpio7", 320 + }; 321 + 321 322 static const char * const cri_trng1_groups[] = { 322 323 "gpio7", 323 324 }; 324 325 326 + static const char * const spi0_miso_groups[] = { 327 + "gpio8", 328 + }; 329 + 325 330 static const char * const cri_trng2_groups[] = { 326 331 "gpio8", 332 + }; 333 + 334 + static const char * const spi0_mosi_groups[] = { 335 + "gpio9", 327 336 }; 328 337 329 338 static const char * const cri_trng3_groups[] = { ··· 695 680 MSM_PIN_FUNCTION(sdc_clk), 696 681 MSM_PIN_FUNCTION(sdc_cmd), 697 682 MSM_PIN_FUNCTION(sdc_data), 698 - MSM_PIN_FUNCTION(spi0), 683 + MSM_PIN_FUNCTION(spi0_clk), 684 + MSM_PIN_FUNCTION(spi0_cs), 685 + MSM_PIN_FUNCTION(spi0_miso), 686 + MSM_PIN_FUNCTION(spi0_mosi), 699 687 MSM_PIN_FUNCTION(spi1), 700 688 MSM_PIN_FUNCTION(spi10), 701 689 MSM_PIN_FUNCTION(spi11), ··· 718 700 PINGROUP(3, sdc_data, qspi_data, pwm2, _, _, _, _, _, _), 719 701 PINGROUP(4, sdc_cmd, qspi_cs, _, _, _, _, _, _, _), 720 702 PINGROUP(5, sdc_clk, qspi_clk, _, _, _, _, _, _, _), 721 - PINGROUP(6, spi0, pwm1, _, cri_trng0, qdss_tracedata_a, _, _, _, _), 722 - PINGROUP(7, spi0, pwm1, _, cri_trng1, qdss_tracedata_a, _, _, _, _), 723 - PINGROUP(8, spi0, pwm1, wci_txd, wci_rxd, _, cri_trng2, qdss_tracedata_a, _, _), 724 - PINGROUP(9, spi0, pwm1, _, cri_trng3, qdss_tracedata_a, _, _, _, _), 703 + PINGROUP(6, spi0_clk, pwm1, _, cri_trng0, qdss_tracedata_a, _, _, _, _), 704 + PINGROUP(7, spi0_cs, pwm1, _, cri_trng1, qdss_tracedata_a, _, _, _, _), 705 + PINGROUP(8, spi0_miso, pwm1, wci_txd, wci_rxd, _, cri_trng2, qdss_tracedata_a, _, _), 706 + PINGROUP(9, spi0_mosi, pwm1, _, cri_trng3, qdss_tracedata_a, _, _, _, _), 725 707 PINGROUP(10, uart0, pwm0, spi11, _, wci_txd, wci_rxd, _, qdss_tracedata_a, _), 726 708 PINGROUP(11, uart0, pwm0, spi1, _, wci_txd, wci_rxd, _, qdss_tracedata_a, _), 727 709 PINGROUP(12, uart0, pwm0, spi11, _, prng_rosc0, qdss_tracedata_a, _, _, _),