* [PATCH 0/4] Add SPI0 support for IPQ5424
@ 2024-11-22 12:45 Manikanta Mylavarapu
2024-11-22 12:45 ` [PATCH 1/4] dt-bindings: pinctrl: qcom: update spi0 function Manikanta Mylavarapu
` (3 more replies)
0 siblings, 4 replies; 8+ messages in thread
From: Manikanta Mylavarapu @ 2024-11-22 12:45 UTC (permalink / raw)
To: andersson, linus.walleij, robh, krzk+dt, conor+dt, konradybcio,
linux-arm-msm, linux-gpio, devicetree, linux-kernel
Cc: quic_srichara, quic_varada
Add an SPI0 node to the IPQ5424 device tree and update the relevant
bindings, GPIO pin mappings accordingly.
Manikanta Mylavarapu (4):
dt-bindings: pinctrl: qcom: update spi0 function
pinctrl: qcom: ipq5424: split spi0 pin group
arm64: dts: qcom: ipq5424: add spi0 node
arm64: dts: qcom: ipq5424: configure spi0 node for rdp466
.../bindings/pinctrl/qcom,ipq5424-tlmm.yaml | 4 +-
arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts | 45 +++++++++++++++++++
arch/arm64/boot/dts/qcom/ipq5424.dtsi | 11 +++++
drivers/pinctrl/qcom/pinctrl-ipq5424.c | 34 ++++++++++----
4 files changed, 84 insertions(+), 10 deletions(-)
--
2.34.1
^ permalink raw reply [flat|nested] 8+ messages in thread* [PATCH 1/4] dt-bindings: pinctrl: qcom: update spi0 function 2024-11-22 12:45 [PATCH 0/4] Add SPI0 support for IPQ5424 Manikanta Mylavarapu @ 2024-11-22 12:45 ` Manikanta Mylavarapu 2024-11-26 7:23 ` Krzysztof Kozlowski 2024-11-22 12:45 ` [PATCH 2/4] pinctrl: qcom: ipq5424: split spi0 pin group Manikanta Mylavarapu ` (2 subsequent siblings) 3 siblings, 1 reply; 8+ messages in thread From: Manikanta Mylavarapu @ 2024-11-22 12:45 UTC (permalink / raw) To: andersson, linus.walleij, robh, krzk+dt, conor+dt, konradybcio, linux-arm-msm, linux-gpio, devicetree, linux-kernel Cc: quic_srichara, quic_varada The GPIO configuration differs for the spi0 clk, cs, miso, mosi pins. Therefore, split the spi0 pin group and document each pin function. Signed-off-by: Manikanta Mylavarapu <quic_mmanikan@quicinc.com> --- .../devicetree/bindings/pinctrl/qcom,ipq5424-tlmm.yaml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Documentation/devicetree/bindings/pinctrl/qcom,ipq5424-tlmm.yaml b/Documentation/devicetree/bindings/pinctrl/qcom,ipq5424-tlmm.yaml index 5e64a232fc7a..df284d3645c1 100644 --- a/Documentation/devicetree/bindings/pinctrl/qcom,ipq5424-tlmm.yaml +++ b/Documentation/devicetree/bindings/pinctrl/qcom,ipq5424-tlmm.yaml @@ -79,8 +79,8 @@ $defs: qdss_cti_trig_out_b0, qdss_cti_trig_in_b1, qdss_cti_trig_out_b1, qdss_traceclk_a, qdss_tracectl_a, qdss_tracedata_a, qspi_clk, qspi_cs, qspi_data, resout, rx0, rx1, rx2, sdc_clk, sdc_cmd, - sdc_data, spi0, spi1, spi10, spi11, tsens_max, uart0, uart1, - wci_txd, wci_rxd, wsi_clk, wsi_data ] + sdc_data, spi0_cs, spi0_clk, spi0_miso, spi0_mosi, spi1, spi10, + spi11, tsens_max, uart0, uart1, wci_txd, wci_rxd, wsi_clk, wsi_data ] required: - pins -- 2.34.1 ^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH 1/4] dt-bindings: pinctrl: qcom: update spi0 function 2024-11-22 12:45 ` [PATCH 1/4] dt-bindings: pinctrl: qcom: update spi0 function Manikanta Mylavarapu @ 2024-11-26 7:23 ` Krzysztof Kozlowski 0 siblings, 0 replies; 8+ messages in thread From: Krzysztof Kozlowski @ 2024-11-26 7:23 UTC (permalink / raw) To: Manikanta Mylavarapu Cc: andersson, linus.walleij, robh, krzk+dt, conor+dt, konradybcio, linux-arm-msm, linux-gpio, devicetree, linux-kernel, quic_srichara, quic_varada On Fri, Nov 22, 2024 at 06:15:02PM +0530, Manikanta Mylavarapu wrote: > The GPIO configuration differs for the spi0 clk, cs, miso, mosi pins. > Therefore, split the spi0 pin group and document each pin function. > > Signed-off-by: Manikanta Mylavarapu <quic_mmanikan@quicinc.com> > --- Missing Fixes tag. Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Best regards, Krzysztof ^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 2/4] pinctrl: qcom: ipq5424: split spi0 pin group 2024-11-22 12:45 [PATCH 0/4] Add SPI0 support for IPQ5424 Manikanta Mylavarapu 2024-11-22 12:45 ` [PATCH 1/4] dt-bindings: pinctrl: qcom: update spi0 function Manikanta Mylavarapu @ 2024-11-22 12:45 ` Manikanta Mylavarapu 2024-11-22 12:45 ` [PATCH 3/4] arm64: dts: qcom: ipq5424: add spi0 node Manikanta Mylavarapu 2024-11-22 12:45 ` [PATCH 4/4] arm64: dts: qcom: ipq5424: configure spi0 node for rdp466 Manikanta Mylavarapu 3 siblings, 0 replies; 8+ messages in thread From: Manikanta Mylavarapu @ 2024-11-22 12:45 UTC (permalink / raw) To: andersson, linus.walleij, robh, krzk+dt, conor+dt, konradybcio, linux-arm-msm, linux-gpio, devicetree, linux-kernel Cc: quic_srichara, quic_varada 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> --- drivers/pinctrl/qcom/pinctrl-ipq5424.c | 34 ++++++++++++++++++++------ 1 file changed, 26 insertions(+), 8 deletions(-) diff --git a/drivers/pinctrl/qcom/pinctrl-ipq5424.c b/drivers/pinctrl/qcom/pinctrl-ipq5424.c index 796299cd2e4e..0d610b076da3 100644 --- a/drivers/pinctrl/qcom/pinctrl-ipq5424.c +++ b/drivers/pinctrl/qcom/pinctrl-ipq5424.c @@ -233,7 +233,10 @@ enum ipq5424_functions { msm_mux_sdc_clk, msm_mux_sdc_cmd, msm_mux_sdc_data, - msm_mux_spi0, + msm_mux_spi0_clk, + msm_mux_spi0_cs, + msm_mux_spi0_miso, + msm_mux_spi0_mosi, msm_mux_spi1, msm_mux_spi10, msm_mux_spi11, @@ -297,8 +300,8 @@ static const char * const qspi_clk_groups[] = { "gpio5", }; -static const char * const spi0_groups[] = { - "gpio6", "gpio7", "gpio8", "gpio9", +static const char * const spi0_clk_groups[] = { + "gpio6", }; static const char * const pwm1_groups[] = { @@ -315,14 +318,26 @@ static const char * const qdss_tracedata_a_groups[] = { "gpio38", "gpio39", }; +static const char * const spi0_cs_groups[] = { + "gpio7", +}; + static const char * const cri_trng1_groups[] = { "gpio7", }; +static const char * const spi0_miso_groups[] = { + "gpio8", +}; + static const char * const cri_trng2_groups[] = { "gpio8", }; +static const char * const spi0_mosi_groups[] = { + "gpio9", +}; + static const char * const cri_trng3_groups[] = { "gpio9", }; @@ -680,7 +695,10 @@ static const struct pinfunction ipq5424_functions[] = { MSM_PIN_FUNCTION(sdc_clk), MSM_PIN_FUNCTION(sdc_cmd), MSM_PIN_FUNCTION(sdc_data), - MSM_PIN_FUNCTION(spi0), + MSM_PIN_FUNCTION(spi0_clk), + MSM_PIN_FUNCTION(spi0_cs), + MSM_PIN_FUNCTION(spi0_miso), + MSM_PIN_FUNCTION(spi0_mosi), MSM_PIN_FUNCTION(spi1), MSM_PIN_FUNCTION(spi10), MSM_PIN_FUNCTION(spi11), @@ -700,10 +718,10 @@ static const struct msm_pingroup ipq5424_groups[] = { PINGROUP(3, sdc_data, qspi_data, pwm2, _, _, _, _, _, _), PINGROUP(4, sdc_cmd, qspi_cs, _, _, _, _, _, _, _), PINGROUP(5, sdc_clk, qspi_clk, _, _, _, _, _, _, _), - PINGROUP(6, spi0, pwm1, _, cri_trng0, qdss_tracedata_a, _, _, _, _), - PINGROUP(7, spi0, pwm1, _, cri_trng1, qdss_tracedata_a, _, _, _, _), - PINGROUP(8, spi0, pwm1, wci_txd, wci_rxd, _, cri_trng2, qdss_tracedata_a, _, _), - PINGROUP(9, spi0, pwm1, _, cri_trng3, qdss_tracedata_a, _, _, _, _), + PINGROUP(6, spi0_clk, pwm1, _, cri_trng0, qdss_tracedata_a, _, _, _, _), + PINGROUP(7, spi0_cs, pwm1, _, cri_trng1, qdss_tracedata_a, _, _, _, _), + PINGROUP(8, spi0_miso, pwm1, wci_txd, wci_rxd, _, cri_trng2, qdss_tracedata_a, _, _), + PINGROUP(9, spi0_mosi, pwm1, _, cri_trng3, qdss_tracedata_a, _, _, _, _), PINGROUP(10, uart0, pwm0, spi11, _, wci_txd, wci_rxd, _, qdss_tracedata_a, _), PINGROUP(11, uart0, pwm0, spi1, _, wci_txd, wci_rxd, _, qdss_tracedata_a, _), PINGROUP(12, uart0, pwm0, spi11, _, prng_rosc0, qdss_tracedata_a, _, _, _), -- 2.34.1 ^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH 3/4] arm64: dts: qcom: ipq5424: add spi0 node 2024-11-22 12:45 [PATCH 0/4] Add SPI0 support for IPQ5424 Manikanta Mylavarapu 2024-11-22 12:45 ` [PATCH 1/4] dt-bindings: pinctrl: qcom: update spi0 function Manikanta Mylavarapu 2024-11-22 12:45 ` [PATCH 2/4] pinctrl: qcom: ipq5424: split spi0 pin group Manikanta Mylavarapu @ 2024-11-22 12:45 ` Manikanta Mylavarapu 2024-11-22 12:45 ` [PATCH 4/4] arm64: dts: qcom: ipq5424: configure spi0 node for rdp466 Manikanta Mylavarapu 3 siblings, 0 replies; 8+ messages in thread From: Manikanta Mylavarapu @ 2024-11-22 12:45 UTC (permalink / raw) To: andersson, linus.walleij, robh, krzk+dt, conor+dt, konradybcio, linux-arm-msm, linux-gpio, devicetree, linux-kernel Cc: quic_srichara, quic_varada Add SPI0 node for IPQ5424 SoC. Signed-off-by: Manikanta Mylavarapu <quic_mmanikan@quicinc.com> --- arch/arm64/boot/dts/qcom/ipq5424.dtsi | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/ipq5424.dtsi b/arch/arm64/boot/dts/qcom/ipq5424.dtsi index 5e219f900412..b4d736cd8610 100644 --- a/arch/arm64/boot/dts/qcom/ipq5424.dtsi +++ b/arch/arm64/boot/dts/qcom/ipq5424.dtsi @@ -201,6 +201,17 @@ uart1: serial@1a84000 { clock-names = "se"; interrupts = <GIC_SPI 340 IRQ_TYPE_LEVEL_HIGH>; }; + + spi0: spi@1a90000 { + compatible = "qcom,geni-spi"; + reg = <0 0x01a90000 0 0x4000>; + clocks = <&gcc GCC_QUPV3_SPI0_CLK>; + clock-names = "se"; + interrupts = <GIC_SPI 343 IRQ_TYPE_LEVEL_HIGH>; + #address-cells = <1>; + #size-cells = <0>; + status = "disabled"; + }; }; sdhc: mmc@7804000 { -- 2.34.1 ^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH 4/4] arm64: dts: qcom: ipq5424: configure spi0 node for rdp466 2024-11-22 12:45 [PATCH 0/4] Add SPI0 support for IPQ5424 Manikanta Mylavarapu ` (2 preceding siblings ...) 2024-11-22 12:45 ` [PATCH 3/4] arm64: dts: qcom: ipq5424: add spi0 node Manikanta Mylavarapu @ 2024-11-22 12:45 ` Manikanta Mylavarapu 2024-12-05 17:30 ` Konrad Dybcio 3 siblings, 1 reply; 8+ messages in thread From: Manikanta Mylavarapu @ 2024-11-22 12:45 UTC (permalink / raw) To: andersson, linus.walleij, robh, krzk+dt, conor+dt, konradybcio, linux-arm-msm, linux-gpio, devicetree, linux-kernel Cc: quic_srichara, quic_varada Enable the SPI0 node and configure the associated gpio pins. Signed-off-by: Manikanta Mylavarapu <quic_mmanikan@quicinc.com> --- arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts | 45 +++++++++++++++++++++ 1 file changed, 45 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts b/arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts index d4d31026a026..6256216ca764 100644 --- a/arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts +++ b/arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts @@ -23,6 +23,36 @@ &sleep_clk { }; &tlmm { + spi0_default_state: spi0-default-state { + clk-pins { + pins = "gpio6"; + function = "spi0_clk"; + drive-strength = <8>; + bias-pull-down; + }; + + cs-pins { + pins = "gpio7"; + function = "spi0_cs"; + drive-strength = <8>; + bias-pull-up; + }; + + miso-pins { + pins = "gpio8"; + function = "spi0_miso"; + drive-strength = <8>; + bias-pull-down; + }; + + mosi-pins { + pins = "gpio9"; + function = "spi0_mosi"; + drive-strength = <8>; + bias-pull-down; + }; + }; + sdc_default_state: sdc-default-state { clk-pins { pins = "gpio5"; @@ -57,3 +87,18 @@ &xo_board { clock-frequency = <24000000>; }; +&qupv3 { + spi0: spi@1a90000 { + pinctrl-0 = <&spi0_default_state>; + pinctrl-names = "default"; + status = "okay"; + + flash@0 { + compatible = "micron,n25q128a11", "jedec,spi-nor"; + reg = <0>; + #address-cells = <1>; + #size-cells = <1>; + spi-max-frequency = <50000000>; + }; + }; +}; -- 2.34.1 ^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH 4/4] arm64: dts: qcom: ipq5424: configure spi0 node for rdp466 2024-11-22 12:45 ` [PATCH 4/4] arm64: dts: qcom: ipq5424: configure spi0 node for rdp466 Manikanta Mylavarapu @ 2024-12-05 17:30 ` Konrad Dybcio 2024-12-09 6:43 ` Manikanta Mylavarapu 0 siblings, 1 reply; 8+ messages in thread From: Konrad Dybcio @ 2024-12-05 17:30 UTC (permalink / raw) To: Manikanta Mylavarapu, andersson, linus.walleij, robh, krzk+dt, conor+dt, konradybcio, linux-arm-msm, linux-gpio, devicetree, linux-kernel Cc: quic_srichara, quic_varada On 22.11.2024 1:45 PM, Manikanta Mylavarapu wrote: > Enable the SPI0 node and configure the associated gpio pins. > > Signed-off-by: Manikanta Mylavarapu <quic_mmanikan@quicinc.com> > --- > arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts | 45 +++++++++++++++++++++ > 1 file changed, 45 insertions(+) > > diff --git a/arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts b/arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts > index d4d31026a026..6256216ca764 100644 > --- a/arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts > +++ b/arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts > @@ -23,6 +23,36 @@ &sleep_clk { > }; > > &tlmm { > + spi0_default_state: spi0-default-state { > + clk-pins { > + pins = "gpio6"; > + function = "spi0_clk"; > + drive-strength = <8>; > + bias-pull-down; > + }; > + > + cs-pins { > + pins = "gpio7"; > + function = "spi0_cs"; > + drive-strength = <8>; > + bias-pull-up; > + }; > + > + miso-pins { > + pins = "gpio8"; > + function = "spi0_miso"; > + drive-strength = <8>; > + bias-pull-down; > + }; > + > + mosi-pins { > + pins = "gpio9"; > + function = "spi0_mosi"; > + drive-strength = <8>; > + bias-pull-down; > + }; > + }; > + > sdc_default_state: sdc-default-state { > clk-pins { > pins = "gpio5"; > @@ -57,3 +87,18 @@ &xo_board { > clock-frequency = <24000000>; > }; > > +&qupv3 { > + spi0: spi@1a90000 { &spi0 { pinctrl-0 = <.. ... }; KonraD ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 4/4] arm64: dts: qcom: ipq5424: configure spi0 node for rdp466 2024-12-05 17:30 ` Konrad Dybcio @ 2024-12-09 6:43 ` Manikanta Mylavarapu 0 siblings, 0 replies; 8+ messages in thread From: Manikanta Mylavarapu @ 2024-12-09 6:43 UTC (permalink / raw) To: Konrad Dybcio, andersson, linus.walleij, robh, krzk+dt, conor+dt, konradybcio, linux-arm-msm, linux-gpio, devicetree, linux-kernel Cc: quic_srichara, quic_varada On 12/5/2024 11:00 PM, Konrad Dybcio wrote: > On 22.11.2024 1:45 PM, Manikanta Mylavarapu wrote: >> Enable the SPI0 node and configure the associated gpio pins. >> >> Signed-off-by: Manikanta Mylavarapu <quic_mmanikan@quicinc.com> >> --- >> arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts | 45 +++++++++++++++++++++ >> 1 file changed, 45 insertions(+) >> >> diff --git a/arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts b/arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts >> index d4d31026a026..6256216ca764 100644 >> --- a/arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts >> +++ b/arch/arm64/boot/dts/qcom/ipq5424-rdp466.dts >> @@ -23,6 +23,36 @@ &sleep_clk { >> }; >> >> &tlmm { >> + spi0_default_state: spi0-default-state { >> + clk-pins { >> + pins = "gpio6"; >> + function = "spi0_clk"; >> + drive-strength = <8>; >> + bias-pull-down; >> + }; >> + >> + cs-pins { >> + pins = "gpio7"; >> + function = "spi0_cs"; >> + drive-strength = <8>; >> + bias-pull-up; >> + }; >> + >> + miso-pins { >> + pins = "gpio8"; >> + function = "spi0_miso"; >> + drive-strength = <8>; >> + bias-pull-down; >> + }; >> + >> + mosi-pins { >> + pins = "gpio9"; >> + function = "spi0_mosi"; >> + drive-strength = <8>; >> + bias-pull-down; >> + }; >> + }; >> + >> sdc_default_state: sdc-default-state { >> clk-pins { >> pins = "gpio5"; >> @@ -57,3 +87,18 @@ &xo_board { >> clock-frequency = <24000000>; >> }; >> >> +&qupv3 { >> + spi0: spi@1a90000 { > > &spi0 { > pinctrl-0 = <.. > ... > }; > Thanks for reviewing the patch. I will update in the next version. Thanks & Regards, Manikanta. ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2024-12-09 6:43 UTC | newest] Thread overview: 8+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2024-11-22 12:45 [PATCH 0/4] Add SPI0 support for IPQ5424 Manikanta Mylavarapu 2024-11-22 12:45 ` [PATCH 1/4] dt-bindings: pinctrl: qcom: update spi0 function Manikanta Mylavarapu 2024-11-26 7:23 ` Krzysztof Kozlowski 2024-11-22 12:45 ` [PATCH 2/4] pinctrl: qcom: ipq5424: split spi0 pin group Manikanta Mylavarapu 2024-11-22 12:45 ` [PATCH 3/4] arm64: dts: qcom: ipq5424: add spi0 node Manikanta Mylavarapu 2024-11-22 12:45 ` [PATCH 4/4] arm64: dts: qcom: ipq5424: configure spi0 node for rdp466 Manikanta Mylavarapu 2024-12-05 17:30 ` Konrad Dybcio 2024-12-09 6:43 ` Manikanta Mylavarapu
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox