* [PATCH 0/3] Add GPI DMA support for SM6350 @ 2022-08-12 8:27 Luca Weiss 2022-08-12 8:27 ` [PATCH 1/3] dt-bindings: dmaengine: qcom: gpi: add compatible " Luca Weiss ` (3 more replies) 0 siblings, 4 replies; 8+ messages in thread From: Luca Weiss @ 2022-08-12 8:27 UTC (permalink / raw) To: linux-arm-msm Cc: ~postmarketos/upstreaming, phone-devel, Luca Weiss, devicetree, dmaengine, Konrad Dybcio, linux-kernel, Vinod Koul This series hooks up GPI DMA support for the SM6350 I2C. It has been tested using himax,hxcommon driver that I forward-ported from the original vendor kernel on fairphone-fp4 - previously I have used i2c-gpio bitbang in my tree. This also requires the fix from Robin[0] that has already been accepted into linux-next, otherwise I2C communication fails to work. [0] https://lore.kernel.org/linux-arm-msm/20220807140455.409417-1-robin.reckmann@gmail.com/ Luca Weiss (3): dt-bindings: dmaengine: qcom: gpi: add compatible for SM6350 dmaengine: qcom: gpi: Add SM6350 support arm64: dts: qcom: sm6350: Add GPI DMA nodes .../devicetree/bindings/dma/qcom,gpi.yaml | 1 + arch/arm64/boot/dts/qcom/sm6350.dtsi | 59 +++++++++++++++++++ drivers/dma/qcom/gpi.c | 1 + 3 files changed, 61 insertions(+) -- 2.37.1 ^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 1/3] dt-bindings: dmaengine: qcom: gpi: add compatible for SM6350 2022-08-12 8:27 [PATCH 0/3] Add GPI DMA support for SM6350 Luca Weiss @ 2022-08-12 8:27 ` Luca Weiss 2022-08-12 10:05 ` Krzysztof Kozlowski 2022-08-29 21:42 ` Bjorn Andersson 2022-08-12 8:27 ` [PATCH 3/3] arm64: dts: qcom: sm6350: Add GPI DMA nodes Luca Weiss ` (2 subsequent siblings) 3 siblings, 2 replies; 8+ messages in thread From: Luca Weiss @ 2022-08-12 8:27 UTC (permalink / raw) To: linux-arm-msm Cc: ~postmarketos/upstreaming, phone-devel, Luca Weiss, Andy Gross, Bjorn Andersson, Konrad Dybcio, Vinod Koul, Rob Herring, Krzysztof Kozlowski, dmaengine, devicetree, linux-kernel Document the compatible for GPI DMA controller on SM6350 SoC. Signed-off-by: Luca Weiss <luca.weiss@fairphone.com> --- Documentation/devicetree/bindings/dma/qcom,gpi.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/Documentation/devicetree/bindings/dma/qcom,gpi.yaml b/Documentation/devicetree/bindings/dma/qcom,gpi.yaml index 7d2fc4eb5530..eabf8a76d3a0 100644 --- a/Documentation/devicetree/bindings/dma/qcom,gpi.yaml +++ b/Documentation/devicetree/bindings/dma/qcom,gpi.yaml @@ -21,6 +21,7 @@ properties: enum: - qcom,sc7280-gpi-dma - qcom,sdm845-gpi-dma + - qcom,sm6350-gpi-dma - qcom,sm8150-gpi-dma - qcom,sm8250-gpi-dma - qcom,sm8350-gpi-dma -- 2.37.1 ^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH 1/3] dt-bindings: dmaengine: qcom: gpi: add compatible for SM6350 2022-08-12 8:27 ` [PATCH 1/3] dt-bindings: dmaengine: qcom: gpi: add compatible " Luca Weiss @ 2022-08-12 10:05 ` Krzysztof Kozlowski 2022-08-29 21:42 ` Bjorn Andersson 1 sibling, 0 replies; 8+ messages in thread From: Krzysztof Kozlowski @ 2022-08-12 10:05 UTC (permalink / raw) To: Luca Weiss, linux-arm-msm Cc: ~postmarketos/upstreaming, phone-devel, Andy Gross, Bjorn Andersson, Konrad Dybcio, Vinod Koul, Rob Herring, Krzysztof Kozlowski, dmaengine, devicetree, linux-kernel On 12/08/2022 11:27, Luca Weiss wrote: > Document the compatible for GPI DMA controller on SM6350 SoC. > > Signed-off-by: Luca Weiss <luca.weiss@fairphone.com> > --- > Documentation/devicetree/bindings/dma/qcom,gpi.yaml | 1 + > 1 file changed, 1 insertion(+) Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Best regards, Krzysztof ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 1/3] dt-bindings: dmaengine: qcom: gpi: add compatible for SM6350 2022-08-12 8:27 ` [PATCH 1/3] dt-bindings: dmaengine: qcom: gpi: add compatible " Luca Weiss 2022-08-12 10:05 ` Krzysztof Kozlowski @ 2022-08-29 21:42 ` Bjorn Andersson 1 sibling, 0 replies; 8+ messages in thread From: Bjorn Andersson @ 2022-08-29 21:42 UTC (permalink / raw) To: Luca Weiss Cc: linux-arm-msm, ~postmarketos/upstreaming, phone-devel, Andy Gross, Bjorn Andersson, Konrad Dybcio, Vinod Koul, Rob Herring, Krzysztof Kozlowski, dmaengine, devicetree, linux-kernel On Fri, Aug 12, 2022 at 10:27:19AM +0200, Luca Weiss wrote: > Document the compatible for GPI DMA controller on SM6350 SoC. > > Signed-off-by: Luca Weiss <luca.weiss@fairphone.com> Reviewed-by: Bjorn Andersson <andersson@kernel.org> > --- > Documentation/devicetree/bindings/dma/qcom,gpi.yaml | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/Documentation/devicetree/bindings/dma/qcom,gpi.yaml b/Documentation/devicetree/bindings/dma/qcom,gpi.yaml > index 7d2fc4eb5530..eabf8a76d3a0 100644 > --- a/Documentation/devicetree/bindings/dma/qcom,gpi.yaml > +++ b/Documentation/devicetree/bindings/dma/qcom,gpi.yaml > @@ -21,6 +21,7 @@ properties: > enum: > - qcom,sc7280-gpi-dma > - qcom,sdm845-gpi-dma > + - qcom,sm6350-gpi-dma > - qcom,sm8150-gpi-dma > - qcom,sm8250-gpi-dma > - qcom,sm8350-gpi-dma > -- > 2.37.1 > ^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH 3/3] arm64: dts: qcom: sm6350: Add GPI DMA nodes 2022-08-12 8:27 [PATCH 0/3] Add GPI DMA support for SM6350 Luca Weiss 2022-08-12 8:27 ` [PATCH 1/3] dt-bindings: dmaengine: qcom: gpi: add compatible " Luca Weiss @ 2022-08-12 8:27 ` Luca Weiss 2022-08-12 10:06 ` Krzysztof Kozlowski 2022-08-29 23:46 ` (subset) [PATCH 0/3] Add GPI DMA support for SM6350 Bjorn Andersson 2022-09-04 16:23 ` Vinod Koul 3 siblings, 1 reply; 8+ messages in thread From: Luca Weiss @ 2022-08-12 8:27 UTC (permalink / raw) To: linux-arm-msm Cc: ~postmarketos/upstreaming, phone-devel, Luca Weiss, Andy Gross, Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski, devicetree, linux-kernel Add nodes for the gpi_dma0 and gpi_dma1 which are (optionally) used for various i2c busses based on the qup firmware configuration. Signed-off-by: Luca Weiss <luca.weiss@fairphone.com> --- arch/arm64/boot/dts/qcom/sm6350.dtsi | 59 ++++++++++++++++++++++++++++ 1 file changed, 59 insertions(+) diff --git a/arch/arm64/boot/dts/qcom/sm6350.dtsi b/arch/arm64/boot/dts/qcom/sm6350.dtsi index 76f14d54ae1c..5de6eb26f904 100644 --- a/arch/arm64/boot/dts/qcom/sm6350.dtsi +++ b/arch/arm64/boot/dts/qcom/sm6350.dtsi @@ -5,6 +5,7 @@ #include <dt-bindings/clock/qcom,gcc-sm6350.h> #include <dt-bindings/clock/qcom,rpmh.h> +#include <dt-bindings/dma/qcom-gpi.h> #include <dt-bindings/gpio/gpio.h> #include <dt-bindings/interrupt-controller/arm-gic.h> #include <dt-bindings/mailbox/qcom-ipcc.h> @@ -517,6 +518,26 @@ opp-384000000 { }; }; + gpi_dma0: dma-controller@800000 { + compatible = "qcom,sm6350-gpi-dma"; + reg = <0 0x00800000 0 0x60000>; + interrupts = <GIC_SPI 244 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 245 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 246 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 247 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 248 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 249 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 250 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 251 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 252 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 253 IRQ_TYPE_LEVEL_HIGH>; + dma-channels = <10>; + dma-channel-mask = <0x1f>; + iommus = <&apps_smmu 0x56 0x0>; + #dma-cells = <3>; + status = "disabled"; + }; + qupv3_id_0: geniqup@8c0000 { compatible = "qcom,geni-se-qup"; reg = <0x0 0x8c0000 0x0 0x2000>; @@ -537,6 +558,9 @@ i2c0: i2c@880000 { pinctrl-names = "default"; pinctrl-0 = <&qup_i2c0_default>; interrupts = <GIC_SPI 601 IRQ_TYPE_LEVEL_HIGH>; + dmas = <&gpi_dma0 0 0 QCOM_GPI_I2C>, + <&gpi_dma0 1 0 QCOM_GPI_I2C>; + dma-names = "tx", "rx"; #address-cells = <1>; #size-cells = <0>; status = "disabled"; @@ -550,12 +574,35 @@ i2c2: i2c@888000 { pinctrl-names = "default"; pinctrl-0 = <&qup_i2c2_default>; interrupts = <GIC_SPI 603 IRQ_TYPE_LEVEL_HIGH>; + dmas = <&gpi_dma0 0 2 QCOM_GPI_I2C>, + <&gpi_dma0 1 2 QCOM_GPI_I2C>; + dma-names = "tx", "rx"; #address-cells = <1>; #size-cells = <0>; status = "disabled"; }; }; + gpi_dma1: dma-controller@900000 { + compatible = "qcom,sm6350-gpi-dma"; + reg = <0 0x00900000 0 0x60000>; + interrupts = <GIC_SPI 645 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 646 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 647 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 648 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 649 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 650 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 651 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 652 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 653 IRQ_TYPE_LEVEL_HIGH>, + <GIC_SPI 654 IRQ_TYPE_LEVEL_HIGH>; + dma-channels = <10>; + dma-channel-mask = <0x3f>; + iommus = <&apps_smmu 0x4d6 0x0>; + #dma-cells = <3>; + status = "disabled"; + }; + qupv3_id_1: geniqup@9c0000 { compatible = "qcom,geni-se-qup"; reg = <0x0 0x9c0000 0x0 0x2000>; @@ -576,6 +623,9 @@ i2c6: i2c@980000 { pinctrl-names = "default"; pinctrl-0 = <&qup_i2c6_default>; interrupts = <GIC_SPI 353 IRQ_TYPE_LEVEL_HIGH>; + dmas = <&gpi_dma1 0 0 QCOM_GPI_I2C>, + <&gpi_dma1 1 0 QCOM_GPI_I2C>; + dma-names = "tx", "rx"; #address-cells = <1>; #size-cells = <0>; status = "disabled"; @@ -589,6 +639,9 @@ i2c7: i2c@984000 { pinctrl-names = "default"; pinctrl-0 = <&qup_i2c7_default>; interrupts = <GIC_SPI 354 IRQ_TYPE_LEVEL_HIGH>; + dmas = <&gpi_dma1 0 1 QCOM_GPI_I2C>, + <&gpi_dma1 1 1 QCOM_GPI_I2C>; + dma-names = "tx", "rx"; #address-cells = <1>; #size-cells = <0>; status = "disabled"; @@ -602,6 +655,9 @@ i2c8: i2c@988000 { pinctrl-names = "default"; pinctrl-0 = <&qup_i2c8_default>; interrupts = <GIC_SPI 355 IRQ_TYPE_LEVEL_HIGH>; + dmas = <&gpi_dma1 0 2 QCOM_GPI_I2C>, + <&gpi_dma1 1 2 QCOM_GPI_I2C>; + dma-names = "tx", "rx"; #address-cells = <1>; #size-cells = <0>; status = "disabled"; @@ -626,6 +682,9 @@ i2c10: i2c@990000 { pinctrl-names = "default"; pinctrl-0 = <&qup_i2c10_default>; interrupts = <GIC_SPI 357 IRQ_TYPE_LEVEL_HIGH>; + dmas = <&gpi_dma1 0 4 QCOM_GPI_I2C>, + <&gpi_dma1 1 4 QCOM_GPI_I2C>; + dma-names = "tx", "rx"; #address-cells = <1>; #size-cells = <0>; status = "disabled"; -- 2.37.1 ^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH 3/3] arm64: dts: qcom: sm6350: Add GPI DMA nodes 2022-08-12 8:27 ` [PATCH 3/3] arm64: dts: qcom: sm6350: Add GPI DMA nodes Luca Weiss @ 2022-08-12 10:06 ` Krzysztof Kozlowski 0 siblings, 0 replies; 8+ messages in thread From: Krzysztof Kozlowski @ 2022-08-12 10:06 UTC (permalink / raw) To: Luca Weiss, linux-arm-msm Cc: ~postmarketos/upstreaming, phone-devel, Andy Gross, Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski, devicetree, linux-kernel On 12/08/2022 11:27, Luca Weiss wrote: > Add nodes for the gpi_dma0 and gpi_dma1 which are (optionally) used for > various i2c busses based on the qup firmware configuration. > > Signed-off-by: Luca Weiss <luca.weiss@fairphone.com> > --- > arch/arm64/boot/dts/qcom/sm6350.dtsi | 59 ++++++++++++++++++++++++++++ > 1 file changed, 59 insertions(+) Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> Best regards, Krzysztof ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: (subset) [PATCH 0/3] Add GPI DMA support for SM6350 2022-08-12 8:27 [PATCH 0/3] Add GPI DMA support for SM6350 Luca Weiss 2022-08-12 8:27 ` [PATCH 1/3] dt-bindings: dmaengine: qcom: gpi: add compatible " Luca Weiss 2022-08-12 8:27 ` [PATCH 3/3] arm64: dts: qcom: sm6350: Add GPI DMA nodes Luca Weiss @ 2022-08-29 23:46 ` Bjorn Andersson 2022-09-04 16:23 ` Vinod Koul 3 siblings, 0 replies; 8+ messages in thread From: Bjorn Andersson @ 2022-08-29 23:46 UTC (permalink / raw) To: linux-arm-msm, luca.weiss Cc: vkoul, dmaengine, ~postmarketos/upstreaming, linux-kernel, konrad.dybcio, phone-devel, devicetree On Fri, 12 Aug 2022 10:27:18 +0200, Luca Weiss wrote: > This series hooks up GPI DMA support for the SM6350 I2C. > > It has been tested using himax,hxcommon driver that I forward-ported > from the original vendor kernel on fairphone-fp4 - previously I have > used i2c-gpio bitbang in my tree. > > This also requires the fix from Robin[0] that has already been > accepted into linux-next, otherwise I2C communication fails to work. > > [...] Applied, thanks! [3/3] arm64: dts: qcom: sm6350: Add GPI DMA nodes commit: 9f0149caf0dc1c1261a612b0653d31d998f80596 Best regards, -- Bjorn Andersson <andersson@kernel.org> ^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH 0/3] Add GPI DMA support for SM6350 2022-08-12 8:27 [PATCH 0/3] Add GPI DMA support for SM6350 Luca Weiss ` (2 preceding siblings ...) 2022-08-29 23:46 ` (subset) [PATCH 0/3] Add GPI DMA support for SM6350 Bjorn Andersson @ 2022-09-04 16:23 ` Vinod Koul 3 siblings, 0 replies; 8+ messages in thread From: Vinod Koul @ 2022-09-04 16:23 UTC (permalink / raw) To: Luca Weiss Cc: linux-arm-msm, ~postmarketos/upstreaming, phone-devel, devicetree, dmaengine, Konrad Dybcio, linux-kernel On 12-08-22, 10:27, Luca Weiss wrote: > This series hooks up GPI DMA support for the SM6350 I2C. > > It has been tested using himax,hxcommon driver that I forward-ported > from the original vendor kernel on fairphone-fp4 - previously I have > used i2c-gpio bitbang in my tree. Applied 1-2, thanks -- ~Vinod ^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2022-09-04 16:23 UTC | newest] Thread overview: 8+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2022-08-12 8:27 [PATCH 0/3] Add GPI DMA support for SM6350 Luca Weiss 2022-08-12 8:27 ` [PATCH 1/3] dt-bindings: dmaengine: qcom: gpi: add compatible " Luca Weiss 2022-08-12 10:05 ` Krzysztof Kozlowski 2022-08-29 21:42 ` Bjorn Andersson 2022-08-12 8:27 ` [PATCH 3/3] arm64: dts: qcom: sm6350: Add GPI DMA nodes Luca Weiss 2022-08-12 10:06 ` Krzysztof Kozlowski 2022-08-29 23:46 ` (subset) [PATCH 0/3] Add GPI DMA support for SM6350 Bjorn Andersson 2022-09-04 16:23 ` Vinod Koul
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).