Message ID | 1462365303-1664-1-git-send-email-niklas.soderlund+renesas@ragnatech.se (mailing list archive) |
---|---|
State | Superseded |
Commit | f0d3a8bca301ebcbf68bf742d884096a4a054310 |
Delegated to: | Simon Horman |
Headers | show |
On Wed, May 04, 2016 at 02:35:03PM +0200, Niklas Söderlund wrote: > Add DMA properties to the I2C nodes. > > Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se> Thanks, I have queued this up.
On Wed, May 4, 2016 at 2:35 PM, Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se> wrote: > Add DMA properties to the I2C nodes. > > Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se> > --- > arch/arm64/boot/dts/renesas/r8a7795.dtsi | 14 ++++++++++++++ > 1 file changed, 14 insertions(+) > > diff --git a/arch/arm64/boot/dts/renesas/r8a7795.dtsi b/arch/arm64/boot/dts/renesas/r8a7795.dtsi > index a7315eb..49896e4 100644 > --- a/arch/arm64/boot/dts/renesas/r8a7795.dtsi > +++ b/arch/arm64/boot/dts/renesas/r8a7795.dtsi > @@ -693,6 +693,8 @@ > interrupts = <GIC_SPI 287 IRQ_TYPE_LEVEL_HIGH>; > clocks = <&cpg CPG_MOD 931>; > power-domains = <&cpg>; > + dmas = <&dmac1 0x91>, <&dmac1 0x90>; > + dma-names = "tx", "rx"; > i2c-scl-internal-delay-ns = <110>; > status = "disabled"; > }; > @@ -705,6 +707,8 @@ > interrupts = <GIC_SPI 288 IRQ_TYPE_LEVEL_HIGH>; > clocks = <&cpg CPG_MOD 930>; > power-domains = <&cpg>; > + dmas = <&dmac1 0x93>, <&dmac1 0x92>; > + dma-names = "tx", "rx"; > i2c-scl-internal-delay-ns = <6>; > status = "disabled"; > }; > @@ -717,6 +721,8 @@ > interrupts = <GIC_SPI 286 IRQ_TYPE_LEVEL_HIGH>; > clocks = <&cpg CPG_MOD 929>; > power-domains = <&cpg>; > + dmas = <&dmac1 0x95>, <&dmac1 0x94>; > + dma-names = "tx", "rx"; > i2c-scl-internal-delay-ns = <6>; > status = "disabled"; > }; The three above can be used with SYS-DMAC1 (channels 16-31) or with SYS-DMAC2 (channels 32-47). It should be tested with the latter before adding the corresponding dmas, as we had issue with SYS-DMAC2 before (they may have been fixed in firmware in the mean time). > @@ -729,6 +735,8 @@ > interrupts = <GIC_SPI 290 IRQ_TYPE_LEVEL_HIGH>; > clocks = <&cpg CPG_MOD 928>; > power-domains = <&cpg>; > + dmas = <&dmac1 0x97>, <&dmac1 0x96>; The two phandles above should reference "dmac0", as this i2c module can only be used with SYS-DMAC0 (channels 0-15), according to the datasheet. > + dma-names = "tx", "rx"; > i2c-scl-internal-delay-ns = <110>; > status = "disabled"; > }; > @@ -741,6 +749,8 @@ > interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>; > clocks = <&cpg CPG_MOD 927>; > power-domains = <&cpg>; > + dmas = <&dmac1 0x99>, <&dmac1 0x98>; dmac0 > + dma-names = "tx", "rx"; > i2c-scl-internal-delay-ns = <110>; > status = "disabled"; > }; > @@ -753,6 +763,8 @@ > interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>; > clocks = <&cpg CPG_MOD 919>; > power-domains = <&cpg>; > + dmas = <&dmac1 0x9b>, <&dmac1 0x9a>; dmac0 > + dma-names = "tx", "rx"; > i2c-scl-internal-delay-ns = <110>; > status = "disabled"; > }; > @@ -765,6 +777,8 @@ > interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>; > clocks = <&cpg CPG_MOD 918>; > power-domains = <&cpg>; > + dmas = <&dmac1 0x9d>, <&dmac1 0x9c>; dmac0 > + dma-names = "tx", "rx"; > i2c-scl-internal-delay-ns = <6>; > status = "disabled"; > }; 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
On 2016-05-17 10:52:08 +0200, Geert Uytterhoeven wrote: > On Wed, May 4, 2016 at 2:35 PM, Niklas Söderlund > <niklas.soderlund+renesas@ragnatech.se> wrote: > > Add DMA properties to the I2C nodes. > > > > Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se> > > --- > > arch/arm64/boot/dts/renesas/r8a7795.dtsi | 14 ++++++++++++++ > > 1 file changed, 14 insertions(+) > > > > diff --git a/arch/arm64/boot/dts/renesas/r8a7795.dtsi b/arch/arm64/boot/dts/renesas/r8a7795.dtsi > > index a7315eb..49896e4 100644 > > --- a/arch/arm64/boot/dts/renesas/r8a7795.dtsi > > +++ b/arch/arm64/boot/dts/renesas/r8a7795.dtsi > > @@ -693,6 +693,8 @@ > > interrupts = <GIC_SPI 287 IRQ_TYPE_LEVEL_HIGH>; > > clocks = <&cpg CPG_MOD 931>; > > power-domains = <&cpg>; > > + dmas = <&dmac1 0x91>, <&dmac1 0x90>; > > + dma-names = "tx", "rx"; > > i2c-scl-internal-delay-ns = <110>; > > status = "disabled"; > > }; > > @@ -705,6 +707,8 @@ > > interrupts = <GIC_SPI 288 IRQ_TYPE_LEVEL_HIGH>; > > clocks = <&cpg CPG_MOD 930>; > > power-domains = <&cpg>; > > + dmas = <&dmac1 0x93>, <&dmac1 0x92>; > > + dma-names = "tx", "rx"; > > i2c-scl-internal-delay-ns = <6>; > > status = "disabled"; > > }; > > @@ -717,6 +721,8 @@ > > interrupts = <GIC_SPI 286 IRQ_TYPE_LEVEL_HIGH>; > > clocks = <&cpg CPG_MOD 929>; > > power-domains = <&cpg>; > > + dmas = <&dmac1 0x95>, <&dmac1 0x94>; > > + dma-names = "tx", "rx"; > > i2c-scl-internal-delay-ns = <6>; > > status = "disabled"; > > }; > > The three above can be used with SYS-DMAC1 (channels 16-31) or with SYS-DMAC2 > (channels 32-47). > It should be tested with the latter before adding the corresponding dmas, as > we had issue with SYS-DMAC2 before (they may have been fixed in firmware in the > mean time). I tested with firmware v270-4core and you are correct, looks like dmac2 is not working for i2c. > > > @@ -729,6 +735,8 @@ > > interrupts = <GIC_SPI 290 IRQ_TYPE_LEVEL_HIGH>; > > clocks = <&cpg CPG_MOD 928>; > > power-domains = <&cpg>; > > + dmas = <&dmac1 0x97>, <&dmac1 0x96>; > > The two phandles above should reference "dmac0", as this i2c module can only be > used with SYS-DMAC0 (channels 0-15), according to the datasheet. Thanks for pointing this out! I will fix it. > > > + dma-names = "tx", "rx"; > > i2c-scl-internal-delay-ns = <110>; > > status = "disabled"; > > }; > > @@ -741,6 +749,8 @@ > > interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>; > > clocks = <&cpg CPG_MOD 927>; > > power-domains = <&cpg>; > > + dmas = <&dmac1 0x99>, <&dmac1 0x98>; > > dmac0 > > > + dma-names = "tx", "rx"; > > i2c-scl-internal-delay-ns = <110>; > > status = "disabled"; > > }; > > @@ -753,6 +763,8 @@ > > interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>; > > clocks = <&cpg CPG_MOD 919>; > > power-domains = <&cpg>; > > + dmas = <&dmac1 0x9b>, <&dmac1 0x9a>; > > dmac0 > > > + dma-names = "tx", "rx"; > > i2c-scl-internal-delay-ns = <110>; > > status = "disabled"; > > }; > > @@ -765,6 +777,8 @@ > > interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>; > > clocks = <&cpg CPG_MOD 918>; > > power-domains = <&cpg>; > > + dmas = <&dmac1 0x9d>, <&dmac1 0x9c>; > > dmac0 > > > + dma-names = "tx", "rx"; > > i2c-scl-internal-delay-ns = <6>; > > status = "disabled"; > > }; > > 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 --git a/arch/arm64/boot/dts/renesas/r8a7795.dtsi b/arch/arm64/boot/dts/renesas/r8a7795.dtsi index a7315eb..49896e4 100644 --- a/arch/arm64/boot/dts/renesas/r8a7795.dtsi +++ b/arch/arm64/boot/dts/renesas/r8a7795.dtsi @@ -693,6 +693,8 @@ interrupts = <GIC_SPI 287 IRQ_TYPE_LEVEL_HIGH>; clocks = <&cpg CPG_MOD 931>; power-domains = <&cpg>; + dmas = <&dmac1 0x91>, <&dmac1 0x90>; + dma-names = "tx", "rx"; i2c-scl-internal-delay-ns = <110>; status = "disabled"; }; @@ -705,6 +707,8 @@ interrupts = <GIC_SPI 288 IRQ_TYPE_LEVEL_HIGH>; clocks = <&cpg CPG_MOD 930>; power-domains = <&cpg>; + dmas = <&dmac1 0x93>, <&dmac1 0x92>; + dma-names = "tx", "rx"; i2c-scl-internal-delay-ns = <6>; status = "disabled"; }; @@ -717,6 +721,8 @@ interrupts = <GIC_SPI 286 IRQ_TYPE_LEVEL_HIGH>; clocks = <&cpg CPG_MOD 929>; power-domains = <&cpg>; + dmas = <&dmac1 0x95>, <&dmac1 0x94>; + dma-names = "tx", "rx"; i2c-scl-internal-delay-ns = <6>; status = "disabled"; }; @@ -729,6 +735,8 @@ interrupts = <GIC_SPI 290 IRQ_TYPE_LEVEL_HIGH>; clocks = <&cpg CPG_MOD 928>; power-domains = <&cpg>; + dmas = <&dmac1 0x97>, <&dmac1 0x96>; + dma-names = "tx", "rx"; i2c-scl-internal-delay-ns = <110>; status = "disabled"; }; @@ -741,6 +749,8 @@ interrupts = <GIC_SPI 19 IRQ_TYPE_LEVEL_HIGH>; clocks = <&cpg CPG_MOD 927>; power-domains = <&cpg>; + dmas = <&dmac1 0x99>, <&dmac1 0x98>; + dma-names = "tx", "rx"; i2c-scl-internal-delay-ns = <110>; status = "disabled"; }; @@ -753,6 +763,8 @@ interrupts = <GIC_SPI 20 IRQ_TYPE_LEVEL_HIGH>; clocks = <&cpg CPG_MOD 919>; power-domains = <&cpg>; + dmas = <&dmac1 0x9b>, <&dmac1 0x9a>; + dma-names = "tx", "rx"; i2c-scl-internal-delay-ns = <110>; status = "disabled"; }; @@ -765,6 +777,8 @@ interrupts = <GIC_SPI 21 IRQ_TYPE_LEVEL_HIGH>; clocks = <&cpg CPG_MOD 918>; power-domains = <&cpg>; + dmas = <&dmac1 0x9d>, <&dmac1 0x9c>; + dma-names = "tx", "rx"; i2c-scl-internal-delay-ns = <6>; status = "disabled"; };
Add DMA properties to the I2C nodes. Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se> --- arch/arm64/boot/dts/renesas/r8a7795.dtsi | 14 ++++++++++++++ 1 file changed, 14 insertions(+)