devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Peter Ujfalusi <peter.ujfalusi@ti.com>
To: Olof Johansson <olof@lixom.net>
Cc: "Koul, Vinod" <vinod.koul@intel.com>,
	Sekhar Nori <nsekhar@ti.com>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	linux-omap <linux-omap@vger.kernel.org>,
	"dmaengine@vger.kernel.org" <dmaengine@vger.kernel.org>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	Tony Lindgren <tony@atomide.com>,
	Robert Schwebel <r.schwebel@pengutronix.de>,
	"arm@kernel.org" <arm@kernel.org>
Subject: Re: [PATCH v2 13/14] ARM: DTS: am33xx: Use the new DT bindings for the eDMA3
Date: Mon, 2 Nov 2015 12:19:49 +0200	[thread overview]
Message-ID: <563738C5.4030309@ti.com> (raw)
In-Reply-To: <CAOesGMg0KsHnbF8hEYPZ8bY8wz9fC0_m7-KS4A6kB__nUi9kAw@mail.gmail.com>

Hi Olof,

On 11/02/2015 11:21 AM, Olof Johansson wrote:
> Hi,
> 
> 1) This seems to have broken BBB in -next for me, bisected down to this patch.
> 
> For bootlog:
> http://arm-soc.lixom.net/bootlogs/next/next-20151102/bbb-arm-omap2plus_defconfig.html

Aargh, I had the patch which should have been included to the series (just
sent it):
https://www.mail-archive.com/linux-omap@vger.kernel.org/msg121134.html

It was mixed with the patches I collected for 4.5, I don't know how this
happened, but this is the reason I have not seen the issue you are seeing.

> 
> 2) Please avoid merging DT/platform code in your driver tree, Vinod,
> at least without an ack from the platform maintainer. It can be a a
> huge mess if they end up causing conflicts, so we always ask to merge
> the DT changes through the platform maintainer (Tony in this case) by
> default.
> 
> 
> Thanks,
> 
> -Olof
> 
> On Fri, Oct 16, 2015 at 12:18 AM, Peter Ujfalusi <peter.ujfalusi@ti.com> wrote:
>> Switch to use the ti,edma3-tpcc and ti,edma3-tptc binding for the eDMA3 and
>> enable the DMA even crossbar with ti,am335x-edma-crossbar.
>> With the new bindings boards can customize and tweak the DMA channel
>> priority to match their needs. With the new binding the memcpy is safe
>> to be used since with the old binding it was not possible for a driver
>> to know which channel is allowed to be used as non HW triggered channel.
>>
>> Signed-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>
>> ---
>>  arch/arm/boot/dts/am335x-evm.dts    |  9 +---
>>  arch/arm/boot/dts/am335x-pepper.dts | 11 +----
>>  arch/arm/boot/dts/am33xx.dtsi       | 96 ++++++++++++++++++++++++++-----------
>>  3 files changed, 73 insertions(+), 43 deletions(-)
>>
>> diff --git a/arch/arm/boot/dts/am335x-evm.dts b/arch/arm/boot/dts/am335x-evm.dts
>> index 1942a5c8132d..507980672c32 100644
>> --- a/arch/arm/boot/dts/am335x-evm.dts
>> +++ b/arch/arm/boot/dts/am335x-evm.dts
>> @@ -743,8 +743,8 @@
>>  &mmc3 {
>>         /* these are on the crossbar and are outlined in the
>>            xbar-event-map element */
>> -       dmas = <&edma 12
>> -               &edma 13>;
>> +       dmas = <&edma_xbar 12 0 1
>> +               &edma_xbar 13 0 2>;
>>         dma-names = "tx", "rx";
>>         status = "okay";
>>         vmmc-supply = <&wlan_en_reg>;
>> @@ -766,11 +766,6 @@
>>         };
>>  };
>>
>> -&edma {
>> -       ti,edma-xbar-event-map = /bits/ 16 <1 12
>> -                                           2 13>;
>> -};
>> -
>>  &sham {
>>         status = "okay";
>>  };
>> diff --git a/arch/arm/boot/dts/am335x-pepper.dts b/arch/arm/boot/dts/am335x-pepper.dts
>> index 7106114c7464..39073b921664 100644
>> --- a/arch/arm/boot/dts/am335x-pepper.dts
>> +++ b/arch/arm/boot/dts/am335x-pepper.dts
>> @@ -339,13 +339,6 @@
>>         ti,non-removable;
>>  };
>>
>> -&edma {
>> -       /* Map eDMA MMC2 Events from Crossbar */
>> -       ti,edma-xbar-event-map = /bits/ 16 <1 12
>> -                                            2 13>;
>> -};
>> -
>> -
>>  &mmc3 {
>>         /* Wifi & Bluetooth on MMC #3 */
>>         status = "okay";
>> @@ -354,8 +347,8 @@
>>         vmmmc-supply = <&v3v3c_reg>;
>>         bus-width = <4>;
>>         ti,non-removable;
>> -       dmas = <&edma 12
>> -               &edma 13>;
>> +       dmas = <&edma_xbar 12 0 1
>> +               &edma_xbar 13 0 2>;
>>         dma-names = "tx", "rx";
>>  };
>>
>> diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi
>> index d23e2524d694..6053e75c6e99 100644
>> --- a/arch/arm/boot/dts/am33xx.dtsi
>> +++ b/arch/arm/boot/dts/am33xx.dtsi
>> @@ -174,12 +174,54 @@
>>                 };
>>
>>                 edma: edma@49000000 {
>> -                       compatible = "ti,edma3";
>> -                       ti,hwmods = "tpcc", "tptc0", "tptc1", "tptc2";
>> -                       reg =   <0x49000000 0x10000>,
>> -                               <0x44e10f90 0x40>;
>> +                       compatible = "ti,edma3-tpcc";
>> +                       ti,hwmods = "tpcc";
>> +                       reg =   <0x49000000 0x10000>;
>> +                       reg-names = "edma3_cc";
>>                         interrupts = <12 13 14>;
>> -                       #dma-cells = <1>;
>> +                       interrupt-names = "edma3_ccint", "emda3_mperr",
>> +                                         "edma3_ccerrint";
>> +                       dma-requests = <64>;
>> +                       #dma-cells = <2>;
>> +
>> +                       ti,tptcs = <&edma_tptc0 7>, <&edma_tptc1 5>,
>> +                                  <&edma_tptc2 0>;
>> +
>> +                       ti,edma-memcpy-channels = /bits/ 16 <20 21>;
>> +               };
>> +
>> +               edma_tptc0: tptc@49800000 {
>> +                       compatible = "ti,edma3-tptc";
>> +                       ti,hwmods = "tptc0";
>> +                       reg =   <0x49800000 0x100000>;
>> +                       interrupts = <112>;
>> +                       interrupt-names = "edma3_tcerrint";
>> +               };
>> +
>> +               edma_tptc1: tptc@49900000 {
>> +                       compatible = "ti,edma3-tptc";
>> +                       ti,hwmods = "tptc1";
>> +                       reg =   <0x49900000 0x100000>;
>> +                       interrupts = <113>;
>> +                       interrupt-names = "edma3_tcerrint";
>> +               };
>> +
>> +               edma_tptc2: tptc@49a00000 {
>> +                       compatible = "ti,edma3-tptc";
>> +                       ti,hwmods = "tptc2";
>> +                       reg =   <0x49a00000 0x100000>;
>> +                       interrupts = <114>;
>> +                       interrupt-names = "edma3_tcerrint";
>> +               };
>> +
>> +               edma_xbar: dma-router@44e10f90 {
>> +                       compatible = "ti,am335x-edma-crossbar";
>> +                       reg = <0x44e10f90 0x40>;
>> +
>> +                       #dma-cells = <3>;
>> +                       dma-requests = <32>;
>> +
>> +                       dma-masters = <&edma>;
>>                 };
>>
>>                 gpio0: gpio@44e07000 {
>> @@ -233,7 +275,7 @@
>>                         reg = <0x44e09000 0x2000>;
>>                         interrupts = <72>;
>>                         status = "disabled";
>> -                       dmas = <&edma 26>, <&edma 27>;
>> +                       dmas = <&edma 26 0>, <&edma 27 0>;
>>                         dma-names = "tx", "rx";
>>                 };
>>
>> @@ -244,7 +286,7 @@
>>                         reg = <0x48022000 0x2000>;
>>                         interrupts = <73>;
>>                         status = "disabled";
>> -                       dmas = <&edma 28>, <&edma 29>;
>> +                       dmas = <&edma 28 0>, <&edma 29 0>;
>>                         dma-names = "tx", "rx";
>>                 };
>>
>> @@ -255,7 +297,7 @@
>>                         reg = <0x48024000 0x2000>;
>>                         interrupts = <74>;
>>                         status = "disabled";
>> -                       dmas = <&edma 30>, <&edma 31>;
>> +                       dmas = <&edma 30 0>, <&edma 31 0>;
>>                         dma-names = "tx", "rx";
>>                 };
>>
>> @@ -322,8 +364,8 @@
>>                         ti,dual-volt;
>>                         ti,needs-special-reset;
>>                         ti,needs-special-hs-handling;
>> -                       dmas = <&edma 24
>> -                               &edma 25>;
>> +                       dmas = <&edma_xbar 24 0 0
>> +                               &edma_xbar 25 0 0>;
>>                         dma-names = "tx", "rx";
>>                         interrupts = <64>;
>>                         interrupt-parent = <&intc>;
>> @@ -335,8 +377,8 @@
>>                         compatible = "ti,omap4-hsmmc";
>>                         ti,hwmods = "mmc2";
>>                         ti,needs-special-reset;
>> -                       dmas = <&edma 2
>> -                               &edma 3>;
>> +                       dmas = <&edma 2 0
>> +                               &edma 3 0>;
>>                         dma-names = "tx", "rx";
>>                         interrupts = <28>;
>>                         interrupt-parent = <&intc>;
>> @@ -474,10 +516,10 @@
>>                         interrupts = <65>;
>>                         ti,spi-num-cs = <2>;
>>                         ti,hwmods = "spi0";
>> -                       dmas = <&edma 16
>> -                               &edma 17
>> -                               &edma 18
>> -                               &edma 19>;
>> +                       dmas = <&edma 16 0
>> +                               &edma 17 0
>> +                               &edma 18 0
>> +                               &edma 19 0>;
>>                         dma-names = "tx0", "rx0", "tx1", "rx1";
>>                         status = "disabled";
>>                 };
>> @@ -490,10 +532,10 @@
>>                         interrupts = <125>;
>>                         ti,spi-num-cs = <2>;
>>                         ti,hwmods = "spi1";
>> -                       dmas = <&edma 42
>> -                               &edma 43
>> -                               &edma 44
>> -                               &edma 45>;
>> +                       dmas = <&edma 42 0
>> +                               &edma 43 0
>> +                               &edma 44 0
>> +                               &edma 45 0>;
>>                         dma-names = "tx0", "rx0", "tx1", "rx1";
>>                         status = "disabled";
>>                 };
>> @@ -831,7 +873,7 @@
>>                         ti,hwmods = "sham";
>>                         reg = <0x53100000 0x200>;
>>                         interrupts = <109>;
>> -                       dmas = <&edma 36>;
>> +                       dmas = <&edma 36 0>;
>>                         dma-names = "rx";
>>                 };
>>
>> @@ -840,8 +882,8 @@
>>                         ti,hwmods = "aes";
>>                         reg = <0x53500000 0xa0>;
>>                         interrupts = <103>;
>> -                       dmas = <&edma 6>,
>> -                              <&edma 5>;
>> +                       dmas = <&edma 6 0>,
>> +                              <&edma 5 0>;
>>                         dma-names = "tx", "rx";
>>                 };
>>
>> @@ -854,8 +896,8 @@
>>                         interrupts = <80>, <81>;
>>                         interrupt-names = "tx", "rx";
>>                         status = "disabled";
>> -                       dmas = <&edma 8>,
>> -                               <&edma 9>;
>> +                       dmas = <&edma 8 2>,
>> +                               <&edma 9 2>;
>>                         dma-names = "tx", "rx";
>>                 };
>>
>> @@ -868,8 +910,8 @@
>>                         interrupts = <82>, <83>;
>>                         interrupt-names = "tx", "rx";
>>                         status = "disabled";
>> -                       dmas = <&edma 10>,
>> -                               <&edma 11>;
>> +                       dmas = <&edma 10 2>,
>> +                               <&edma 11 2>;
>>                         dma-names = "tx", "rx";
>>                 };
>>
>> --
>> 2.6.1
>>
>> --
>> To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
>> the body of a message to majordomo@vger.kernel.org
>> More majordomo info at  http://vger.kernel.org/majordomo-info.html
>> Please read the FAQ at  http://www.tux.org/lkml/


-- 
Péter

  parent reply	other threads:[~2015-11-02 10:19 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-10-16  7:17 [PATCH v2 00/14] dmaenigne: edma/ti-crossbar: fixes, new bindings Peter Ujfalusi
2015-10-16  7:17 ` [PATCH v2 01/14] dmaengine: edma: Remove alignment constraint for memcpy Peter Ujfalusi
2015-10-16  7:18 ` [PATCH v2 02/14] dmaengine: edma: Optimize memcpy operation Peter Ujfalusi
2015-10-16  7:18 ` [PATCH v2 03/14] dmaengine: edma: Simplify function parameter list for channel operations Peter Ujfalusi
2015-10-16  7:18 ` [PATCH v2 04/14] dmaengine: edma: Correct PaRAM access function names (_parm_ to _param_) Peter Ujfalusi
2015-10-16  7:18 ` [PATCH v2 05/14] dmaengine: edma: Merge map_dmach_to_queue into assign_channel_eventq Peter Ujfalusi
2015-10-16  7:18 ` [PATCH v2 06/14] dmaengine: edma: Get qDMA channel information from HW also Peter Ujfalusi
2015-10-16  7:18 ` [PATCH v2 07/14] dmaengine: edma: Refactor the dma device and channel struct initialization Peter Ujfalusi
2015-10-16  7:18 ` [PATCH v2 08/14] dmaengine: edma: Do not allocate memory for edma_rsv_info in case of DT boot Peter Ujfalusi
2015-10-16  7:18 ` [PATCH v2 09/14] dmaengine: edma: Merge the of parsing functions Peter Ujfalusi
2015-10-16  7:18 ` [PATCH v2 10/14] dmaengine: ti-dma-crossbar: Add support for crossbar on AM33xx/AM43xx Peter Ujfalusi
2015-10-16  7:18 ` [PATCH v2 11/14] dmaengine: Kconfig: edma: Select TI_DMA_CROSSBAR in case of ARCH_OMAP Peter Ujfalusi
2015-10-16  7:18 ` [PATCH v2 12/14] dmaengine: edma: New device tree binding Peter Ujfalusi
2015-10-16  7:18 ` [PATCH v2 13/14] ARM: DTS: am33xx: Use the new DT bindings for the eDMA3 Peter Ujfalusi
     [not found]   ` <1444979892-31626-14-git-send-email-peter.ujfalusi-l0cyMroinI0@public.gmane.org>
2015-11-02  9:21     ` Olof Johansson
     [not found]       ` <CAOesGMg0KsHnbF8hEYPZ8bY8wz9fC0_m7-KS4A6kB__nUi9kAw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-11-02 10:04         ` Vinod Koul
2015-11-02 12:13           ` Peter Ujfalusi
     [not found]             ` <5637534D.2020304-l0cyMroinI0@public.gmane.org>
2015-11-02 15:40               ` Vinod Koul
2015-11-02 15:46                 ` Peter Ujfalusi
2015-11-04  8:37                   ` Vinod Koul
2015-11-04  8:49                     ` Peter Ujfalusi
2015-11-02 10:19       ` Peter Ujfalusi [this message]
2015-12-04  0:54     ` Tony Lindgren
2015-12-04  8:32       ` Peter Ujfalusi
2015-10-16  7:18 ` [PATCH v2 14/14] ARM: DTS: am437x: " Peter Ujfalusi
     [not found] ` <1444979892-31626-1-git-send-email-peter.ujfalusi-l0cyMroinI0@public.gmane.org>
2015-10-27  1:24   ` [PATCH v2 00/14] dmaenigne: edma/ti-crossbar: fixes, new bindings Vinod Koul

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=563738C5.4030309@ti.com \
    --to=peter.ujfalusi@ti.com \
    --cc=arm@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=dmaengine@vger.kernel.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=nsekhar@ti.com \
    --cc=olof@lixom.net \
    --cc=r.schwebel@pengutronix.de \
    --cc=tony@atomide.com \
    --cc=vinod.koul@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).