diff mbox series

[3/4] dt-bindings: spi: Add the DMA properties for the SPI dma mode

Message ID 7538d5806003b8f67e7e0d35638315974b7c2b50.1547559542.git.baolin.wang@linaro.org
State New
Headers show
Series [1/4] spi: sprd: Fix the error data length in SPI read-only mode | expand

Commit Message

(Exiting) Baolin Wang Jan. 15, 2019, 1:46 p.m. UTC
From: Lanqing Liu <lanqing.liu@spreadtrum.com>


Add the DMA properties for the SPI dma mode.

Signed-off-by: Lanqing Liu <lanqing.liu@spreadtrum.com>

Signed-off-by: Baolin Wang <baolin.wang@linaro.org>

---
 Documentation/devicetree/bindings/spi/spi-sprd.txt |    9 +++++++++
 1 file changed, 9 insertions(+)

-- 
1.7.9.5

Comments

Geert Uytterhoeven Jan. 22, 2019, 8:11 a.m. UTC | #1
Hi Baolin,

On Tue, Jan 22, 2019 at 3:23 AM Baolin Wang <baolin.wang@linaro.org> wrote:
> On Mon, 21 Jan 2019 at 21:53, Rob Herring <robh+dt@kernel.org> wrote:

> > On Tue, Jan 15, 2019 at 7:47 AM Baolin Wang <baolin.wang@linaro.org> wrote:

> > > From: Lanqing Liu <lanqing.liu@spreadtrum.com>

> >

> > The email address should be updated with unisoc.com.

>

> Sure.

>

> >

> > > Add the DMA properties for the SPI dma mode.

> > >

> > > Signed-off-by: Lanqing Liu <lanqing.liu@spreadtrum.com>

> > > Signed-off-by: Baolin Wang <baolin.wang@linaro.org>

> > > ---

> > >  Documentation/devicetree/bindings/spi/spi-sprd.txt |    9 +++++++++

> > >  1 file changed, 9 insertions(+)

> > >

> > > diff --git a/Documentation/devicetree/bindings/spi/spi-sprd.txt b/Documentation/devicetree/bindings/spi/spi-sprd.txt

> > > index bad211a..01ef53f 100644

> > > --- a/Documentation/devicetree/bindings/spi/spi-sprd.txt

> > > +++ b/Documentation/devicetree/bindings/spi/spi-sprd.txt

> > > @@ -14,6 +14,12 @@ Required properties:

> > >         address on the SPI bus. Should be set to 1.

> > >  - #size-cells: Should be set to 0.

> > >

> > > +Optional properties:

> > > +dma-names: Should contain names of the SPI used DMA channel.

> > > +dmas: Should contain DMA channels which the SPI used sorted in the

> > > +       same order as the dma-names property.

> > > +sprd,dma-slave-ids: Should contain the DMA number that the SPI hardware required.

> > > +

> > >  Example:

> > >  spi0: spi@70a00000{

> > >         compatible = "sprd,sc9860-spi";

> > > @@ -21,6 +27,9 @@ spi0: spi@70a00000{

> > >         interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;

> > >         clock-names = "spi", "source","enable";

> > >         clocks = <&clk_spi0>, <&ext_26m>, <&clk_ap_apb_gates 5>;

> > > +       dma-names = "rx_chn", "tx_chn";

> > > +       dmas = <&apdma 11>, <&apdma 12>;

> > > +       sprd,dma-slave-ids = <11 12>;

> >

> > When would this be different values from what's in 'dmas'?

>

> Slave id is not always same with the DMA channel number in 'dmas', and

> it is just coincident for SPI driver. Moreover for different SoC , the

> slave ids for DMA engine consumers are not same. So we need one

> property to specify the slave id for the consumers to trigger DMA

> transfer.


Perhaps the DMA controller should use #dma-cells = <2>, so you can specify
the second value in the dmas property?

Gr{oetje,eeting}s,

                        Geert

-- 
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org

In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
                                -- Linus Torvalds
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/spi/spi-sprd.txt b/Documentation/devicetree/bindings/spi/spi-sprd.txt
index bad211a..01ef53f 100644
--- a/Documentation/devicetree/bindings/spi/spi-sprd.txt
+++ b/Documentation/devicetree/bindings/spi/spi-sprd.txt
@@ -14,6 +14,12 @@  Required properties:
 	address on the SPI bus. Should be set to 1.
 - #size-cells: Should be set to 0.
 
+Optional properties:
+dma-names: Should contain names of the SPI used DMA channel.
+dmas: Should contain DMA channels which the SPI used sorted in the
+	same order as the dma-names property.
+sprd,dma-slave-ids: Should contain the DMA number that the SPI hardware required.
+
 Example:
 spi0: spi@70a00000{
 	compatible = "sprd,sc9860-spi";
@@ -21,6 +27,9 @@  spi0: spi@70a00000{
 	interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH>;
 	clock-names = "spi", "source","enable";
 	clocks = <&clk_spi0>, <&ext_26m>, <&clk_ap_apb_gates 5>;
+	dma-names = "rx_chn", "tx_chn";
+	dmas = <&apdma 11>, <&apdma 12>;
+	sprd,dma-slave-ids = <11 12>;
 	#address-cells = <1>;
 	#size-cells = <0>;
 };