All of lore.kernel.org
 help / color / mirror / Atom feed
From: Lee Jones <lee.jones@linaro.org>
To: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org
Cc: arnd@arndb.de, linus.walleij@stericsson.com,
	Vinod Koul <vinod.koul@intel.com>, Dan Williams <djbw@fb.com>,
	Per Forlin <per.forlin@stericsson.com>,
	Rabin Vincent <rabin@rab.in>
Subject: [PATCH 24/32 v3] dmaengine: ste_dma40: Supply full Device Tree parsing support
Date: Thu, 18 Apr 2013 15:17:52 +0100	[thread overview]
Message-ID: <20130418141752.GC3959@gmail.com> (raw)
In-Reply-To: <20130418121253.GF27903@gmail.com>

Using the new DMA DT bindings and API, we can register the DMA40 driver
as Device Tree capable. Now, when a client attempts to allocate a
channel using the DMA DT bindings via its own node, we are able to parse
the request and allocate a channel in the correct manner.

Cc: Vinod Koul <vinod.koul@intel.com>
Cc: Dan Williams <djbw@fb.com>
Cc: Per Forlin <per.forlin@stericsson.com>
Cc: Rabin Vincent <rabin@rab.in>
Signed-off-by: Lee Jones <lee.jones@linaro.org>

diff --git a/Documentation/devicetree/bindings/dma/ste-dma40.txt b/Documentation/devicetree/bindings/dma/ste-dma40.txt
new file mode 100644
index 0000000..2679a87
--- /dev/null
+++ b/Documentation/devicetree/bindings/dma/ste-dma40.txt
@@ -0,0 +1,62 @@
+* DMA40 DMA Controller
+
+Required properties:
+- compatible: "stericsson,dma40"
+- reg: Address range of the DMAC registers
+- reg-names: Names of the above areas to use during resource look-up
+- interrupt: Should contain the DMAC interrupt number
+- #dma-cells: must be <3>
+
+Optional properties:
+- dma-channels: Number of channels supported by hardware - if not present
+		the driver will attempt to obtain the information from H/W
+
+Example:
+
+	dma: dma-controller@801C0000 {
+		compatible = "stericsson,db8500-dma40", "stericsson,dma40";
+		reg = <0x801C0000 0x1000  0x40010000 0x800>;
+		reg-names = "base", "lcpa";
+		interrupt-parent = <&intc>;
+		interrupts = <0 25 0x4>;
+
+		#dma-cells = <2>;
+		dma-channels = <8>;
+	};
+
+Clients
+Required properties:
+- dmas: Comma separated list of dma channel requests
+- dma-names: Names of the aforementioned requested channels
+
+Each dmas request consists of 4 cells:
+  1. A phandle pointing to the DMA controller
+  2. Device Type
+  3. The DMA request line number (only when 'use fixed channel' is set)
+  4. A 32bit mask specifying; mode, direction and endianess [NB: This list will grow]
+        0x00000001: Mode:
+                Logical channel when unset
+                Physical channel when set
+        0x00000002: Direction:
+                Memory to Device when unset
+                Device to Memory when set
+        0x00000004: Endianess:
+                Little endian when unset
+                Big endian when set
+        0x00000008: Use fixed channel:
+                Use automatic channel selection when unset
+                Use DMA request line number when set
+
+Example:
+
+	uart@80120000 {
+		compatible = "arm,pl011", "arm,primecell";
+		reg = <0x80120000 0x1000>;
+		interrupts = <0 11 0x4>;
+
+		dmas = <&dma 13 0 0x2>, /* Logical - DevToMem */
+		       <&dma 13 0 0x0>; /* Logical - MemToDev */
+		dma-names = "rx", "rx";
+
+		status = "disabled";
+	};
diff --git a/drivers/dma/ste_dma40.c b/drivers/dma/ste_dma40.c
index bad8753..94d0edb 100644
--- a/drivers/dma/ste_dma40.c
+++ b/drivers/dma/ste_dma40.c
@@ -18,6 +18,7 @@
 #include <linux/pm_runtime.h>
 #include <linux/err.h>
 #include <linux/of.h>
+#include <linux/of_dma.h>
 #include <linux/amba/bus.h>
 #include <linux/regulator/consumer.h>
 #include <linux/platform_data/dma-ste-dma40.h>
@@ -2409,6 +2410,50 @@ static void d40_set_prio_realtime(struct d40_chan *d40c)
 		__d40_set_prio_rt(d40c, d40c->dma_cfg.dev_type, false);
 }
 
+#define D40_DT_FLAGS_MODE(flags)       ((flags >> 0) & 0x1)
+#define D40_DT_FLAGS_DIR(flags)        ((flags >> 1) & 0x1)
+#define D40_DT_FLAGS_BIG_ENDIAN(flags) ((flags >> 2) & 0x1)
+#define D40_DT_FLAGS_FIXED_CHAN(flags) ((flags >> 3) & 0x1)
+
+static struct dma_chan *d40_xlate(struct of_phandle_args *dma_spec,
+				  struct of_dma *ofdma)
+{
+	struct stedma40_chan_cfg cfg;
+	dma_cap_mask_t cap;
+	u32 flags;
+
+	memset(&cfg, 0, sizeof(struct stedma40_chan_cfg));
+
+	dma_cap_zero(cap);
+	dma_cap_set(DMA_SLAVE, cap);
+
+	cfg.dev_type = dma_spec->args[0];
+	flags = dma_spec->args[2];
+
+	switch (D40_DT_FLAGS_MODE(flags)) {
+	case 0: cfg.mode = STEDMA40_MODE_LOGICAL; break;
+	case 1: cfg.mode = STEDMA40_MODE_PHYSICAL; break;
+	}
+
+	switch (D40_DT_FLAGS_DIR(flags)) {
+	case 0:
+		cfg.dir = STEDMA40_MEM_TO_PERIPH;
+		cfg.dst_info.big_endian = D40_DT_FLAGS_BIG_ENDIAN(flags);
+		break;
+	case 1:
+		cfg.dir = STEDMA40_PERIPH_TO_MEM;
+		cfg.src_info.big_endian = D40_DT_FLAGS_BIG_ENDIAN(flags);
+		break;
+	}
+
+	if (D40_DT_FLAGS_FIXED_CHAN(flags)) {
+		cfg.phy_channel = dma_spec->args[1];
+		cfg.use_fixed_channel = true;
+	}
+
+	return dma_request_channel(cap, stedma40_filter, &cfg);
+}
+
 /* DMA ENGINE functions */
 static int d40_alloc_chan_resources(struct dma_chan *chan)
 {
@@ -3615,6 +3660,13 @@ static int __init d40_probe(struct platform_device *pdev)
 
 	d40_hw_init(base);
 
+	if (np) {
+		err = of_dma_controller_register(np, d40_xlate, NULL);
+		if (err && err != -ENODEV)
+			dev_err(&pdev->dev,
+				"could not register of_dma_controller\n");
+	}
+
 	dev_info(base->dev, "initialized\n");
 	return 0;

WARNING: multiple messages have this Message-ID (diff)
From: lee.jones@linaro.org (Lee Jones)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 24/32 v3] dmaengine: ste_dma40: Supply full Device Tree parsing support
Date: Thu, 18 Apr 2013 15:17:52 +0100	[thread overview]
Message-ID: <20130418141752.GC3959@gmail.com> (raw)
In-Reply-To: <20130418121253.GF27903@gmail.com>

Using the new DMA DT bindings and API, we can register the DMA40 driver
as Device Tree capable. Now, when a client attempts to allocate a
channel using the DMA DT bindings via its own node, we are able to parse
the request and allocate a channel in the correct manner.

Cc: Vinod Koul <vinod.koul@intel.com>
Cc: Dan Williams <djbw@fb.com>
Cc: Per Forlin <per.forlin@stericsson.com>
Cc: Rabin Vincent <rabin@rab.in>
Signed-off-by: Lee Jones <lee.jones@linaro.org>

diff --git a/Documentation/devicetree/bindings/dma/ste-dma40.txt b/Documentation/devicetree/bindings/dma/ste-dma40.txt
new file mode 100644
index 0000000..2679a87
--- /dev/null
+++ b/Documentation/devicetree/bindings/dma/ste-dma40.txt
@@ -0,0 +1,62 @@
+* DMA40 DMA Controller
+
+Required properties:
+- compatible: "stericsson,dma40"
+- reg: Address range of the DMAC registers
+- reg-names: Names of the above areas to use during resource look-up
+- interrupt: Should contain the DMAC interrupt number
+- #dma-cells: must be <3>
+
+Optional properties:
+- dma-channels: Number of channels supported by hardware - if not present
+		the driver will attempt to obtain the information from H/W
+
+Example:
+
+	dma: dma-controller at 801C0000 {
+		compatible = "stericsson,db8500-dma40", "stericsson,dma40";
+		reg = <0x801C0000 0x1000  0x40010000 0x800>;
+		reg-names = "base", "lcpa";
+		interrupt-parent = <&intc>;
+		interrupts = <0 25 0x4>;
+
+		#dma-cells = <2>;
+		dma-channels = <8>;
+	};
+
+Clients
+Required properties:
+- dmas: Comma separated list of dma channel requests
+- dma-names: Names of the aforementioned requested channels
+
+Each dmas request consists of 4 cells:
+  1. A phandle pointing to the DMA controller
+  2. Device Type
+  3. The DMA request line number (only when 'use fixed channel' is set)
+  4. A 32bit mask specifying; mode, direction and endianess [NB: This list will grow]
+        0x00000001: Mode:
+                Logical channel when unset
+                Physical channel when set
+        0x00000002: Direction:
+                Memory to Device when unset
+                Device to Memory when set
+        0x00000004: Endianess:
+                Little endian when unset
+                Big endian when set
+        0x00000008: Use fixed channel:
+                Use automatic channel selection when unset
+                Use DMA request line number when set
+
+Example:
+
+	uart at 80120000 {
+		compatible = "arm,pl011", "arm,primecell";
+		reg = <0x80120000 0x1000>;
+		interrupts = <0 11 0x4>;
+
+		dmas = <&dma 13 0 0x2>, /* Logical - DevToMem */
+		       <&dma 13 0 0x0>; /* Logical - MemToDev */
+		dma-names = "rx", "rx";
+
+		status = "disabled";
+	};
diff --git a/drivers/dma/ste_dma40.c b/drivers/dma/ste_dma40.c
index bad8753..94d0edb 100644
--- a/drivers/dma/ste_dma40.c
+++ b/drivers/dma/ste_dma40.c
@@ -18,6 +18,7 @@
 #include <linux/pm_runtime.h>
 #include <linux/err.h>
 #include <linux/of.h>
+#include <linux/of_dma.h>
 #include <linux/amba/bus.h>
 #include <linux/regulator/consumer.h>
 #include <linux/platform_data/dma-ste-dma40.h>
@@ -2409,6 +2410,50 @@ static void d40_set_prio_realtime(struct d40_chan *d40c)
 		__d40_set_prio_rt(d40c, d40c->dma_cfg.dev_type, false);
 }
 
+#define D40_DT_FLAGS_MODE(flags)       ((flags >> 0) & 0x1)
+#define D40_DT_FLAGS_DIR(flags)        ((flags >> 1) & 0x1)
+#define D40_DT_FLAGS_BIG_ENDIAN(flags) ((flags >> 2) & 0x1)
+#define D40_DT_FLAGS_FIXED_CHAN(flags) ((flags >> 3) & 0x1)
+
+static struct dma_chan *d40_xlate(struct of_phandle_args *dma_spec,
+				  struct of_dma *ofdma)
+{
+	struct stedma40_chan_cfg cfg;
+	dma_cap_mask_t cap;
+	u32 flags;
+
+	memset(&cfg, 0, sizeof(struct stedma40_chan_cfg));
+
+	dma_cap_zero(cap);
+	dma_cap_set(DMA_SLAVE, cap);
+
+	cfg.dev_type = dma_spec->args[0];
+	flags = dma_spec->args[2];
+
+	switch (D40_DT_FLAGS_MODE(flags)) {
+	case 0: cfg.mode = STEDMA40_MODE_LOGICAL; break;
+	case 1: cfg.mode = STEDMA40_MODE_PHYSICAL; break;
+	}
+
+	switch (D40_DT_FLAGS_DIR(flags)) {
+	case 0:
+		cfg.dir = STEDMA40_MEM_TO_PERIPH;
+		cfg.dst_info.big_endian = D40_DT_FLAGS_BIG_ENDIAN(flags);
+		break;
+	case 1:
+		cfg.dir = STEDMA40_PERIPH_TO_MEM;
+		cfg.src_info.big_endian = D40_DT_FLAGS_BIG_ENDIAN(flags);
+		break;
+	}
+
+	if (D40_DT_FLAGS_FIXED_CHAN(flags)) {
+		cfg.phy_channel = dma_spec->args[1];
+		cfg.use_fixed_channel = true;
+	}
+
+	return dma_request_channel(cap, stedma40_filter, &cfg);
+}
+
 /* DMA ENGINE functions */
 static int d40_alloc_chan_resources(struct dma_chan *chan)
 {
@@ -3615,6 +3660,13 @@ static int __init d40_probe(struct platform_device *pdev)
 
 	d40_hw_init(base);
 
+	if (np) {
+		err = of_dma_controller_register(np, d40_xlate, NULL);
+		if (err && err != -ENODEV)
+			dev_err(&pdev->dev,
+				"could not register of_dma_controller\n");
+	}
+
 	dev_info(base->dev, "initialized\n");
 	return 0;

  parent reply	other threads:[~2013-04-18 14:17 UTC|newest]

Thread overview: 337+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-04-18 10:11 [PATCH 00/32] dmaengine: Refactor the DMA40 driver Lee Jones
2013-04-18 10:11 ` Lee Jones
2013-04-18 10:11 ` [PATCH 01/32] dmaengine: ste_dma40: Assign memcpy channels in the driver Lee Jones
2013-04-18 10:11   ` Lee Jones
2013-04-22  9:22   ` Vinod Koul
2013-04-22  9:22     ` Vinod Koul
2013-04-25  9:20   ` Linus Walleij
2013-04-25  9:20     ` Linus Walleij
2013-04-18 10:11 ` [PATCH 02/32] dmaengine: ste_dma40: Move default memcpy configs into " Lee Jones
2013-04-18 10:11   ` Lee Jones
2013-04-22  9:21   ` Vinod Koul
2013-04-22  9:21     ` Vinod Koul
2013-04-24 14:44   ` Linus Walleij
2013-04-24 14:44     ` Linus Walleij
2013-04-18 10:11 ` [PATCH 03/32] dmaengine: ste_dma40: Use the BIT macro to replace ugly '(1 << x)'s Lee Jones
2013-04-18 10:11   ` Lee Jones
2013-04-18 10:43   ` Russell King - ARM Linux
2013-04-18 10:43     ` Russell King - ARM Linux
2013-04-18 11:00     ` Lee Jones
2013-04-18 11:00       ` Lee Jones
2013-04-18 12:16   ` [PATCH 03/32 v2] " Lee Jones
2013-04-18 12:16     ` Lee Jones
2013-04-22 10:13     ` Vinod Koul
2013-04-22 10:13       ` Vinod Koul
2013-04-24 14:54     ` Linus Walleij
2013-04-24 14:54       ` Linus Walleij
2013-04-24 15:08       ` Lee Jones
2013-04-24 15:08         ` Lee Jones
2013-04-24 15:09   ` [PATCH 03/32] " Lee Jones
2013-04-24 15:09     ` Lee Jones
2013-04-24 15:11   ` [PATCH 03/32 v3] " Lee Jones
2013-04-24 15:11     ` Lee Jones
2013-04-24 19:24     ` Rabin Vincent
2013-04-24 19:24       ` Rabin Vincent
2013-04-25  8:13       ` Lee Jones
2013-04-25  8:13         ` Lee Jones
2013-04-26 11:39   ` [PATCH 03/32 v4] " Lee Jones
2013-04-26 11:39     ` Lee Jones
2013-04-26 15:04     ` Linus Walleij
2013-04-26 15:04       ` Linus Walleij
2013-04-18 10:11 ` [PATCH 04/32] dmaengine: ste_dma40: Amalgamate DMA source and destination channel numbers Lee Jones
2013-04-18 10:11   ` Lee Jones
2013-04-25  8:06   ` Linus Walleij
2013-04-25  8:06     ` Linus Walleij
2013-04-25  8:36     ` Arnd Bergmann
2013-04-25  8:36       ` Arnd Bergmann
2013-04-25  8:55       ` Linus Walleij
2013-04-25  8:55         ` Linus Walleij
2013-04-25  9:06     ` Lee Jones
2013-04-25  9:06       ` Lee Jones
2013-04-25 12:43       ` Linus Walleij
2013-04-25 12:43         ` Linus Walleij
2013-04-25 13:09         ` Russell King - ARM Linux
2013-04-25 13:09           ` Russell King - ARM Linux
2013-04-25 13:21           ` Linus Walleij
2013-04-25 13:21             ` Linus Walleij
2013-04-25 13:20         ` Lee Jones
2013-04-25 13:20           ` Lee Jones
2013-04-25 13:24           ` Linus Walleij
2013-04-25 13:24             ` Linus Walleij
2013-04-26 14:28             ` Lee Jones
2013-04-26 14:28               ` Lee Jones
2013-04-18 10:11 ` [PATCH 05/32] dmaengine: ste_dma40: Supply macros to resolve 'src' and 'dst' directions Lee Jones
2013-04-18 10:11   ` Lee Jones
2013-04-18 10:50   ` Arnd Bergmann
2013-04-18 10:50     ` Arnd Bergmann
2013-04-22  9:42   ` Vinod Koul
2013-04-22  9:42     ` Vinod Koul
2013-04-22 10:27     ` Lee Jones
2013-04-22 10:27       ` Lee Jones
2013-04-22 10:19       ` Vinod Koul
2013-04-22 10:19         ` Vinod Koul
2013-04-24  8:53       ` Lee Jones
2013-04-24  8:53         ` Lee Jones
2013-04-25  8:22   ` Linus Walleij
2013-04-25  8:22     ` Linus Walleij
2013-04-25  9:19     ` Lee Jones
2013-04-25  9:19       ` Lee Jones
2013-04-18 10:11 ` [PATCH 06/32] ARM: ux500: Strip out duplicate USB DMA configuration Lee Jones
2013-04-18 10:11   ` Lee Jones
2013-04-18 10:51   ` Arnd Bergmann
2013-04-18 10:51     ` Arnd Bergmann
2013-04-25  8:24   ` Linus Walleij
2013-04-25  8:24     ` Linus Walleij
2013-04-18 10:11 ` [PATCH 07/32] ARM: ux500: Supply address location names for the DMA40 DMA controller Lee Jones
2013-04-18 10:11   ` Lee Jones
2013-04-18 10:48   ` Arnd Bergmann
2013-04-18 10:48     ` Arnd Bergmann
2013-04-18 11:01     ` Lee Jones
2013-04-18 11:01       ` Lee Jones
2013-04-18 11:09     ` Lee Jones
2013-04-18 11:09       ` Lee Jones
2013-04-25  8:26   ` Linus Walleij
2013-04-25  8:26     ` Linus Walleij
2013-04-25  9:17     ` Lee Jones
2013-04-25  9:17       ` Lee Jones
2013-04-25 12:45       ` Linus Walleij
2013-04-25 12:45         ` Linus Walleij
2013-04-18 10:11 ` [PATCH 08/32] dmaengine: ste_dma40: Optimise local MAX() macro Lee Jones
2013-04-18 10:11   ` Lee Jones
2013-04-18 10:46   ` Arnd Bergmann
2013-04-18 10:46     ` Arnd Bergmann
2013-04-18 11:00     ` Russell King - ARM Linux
2013-04-18 11:00       ` Russell King - ARM Linux
2013-04-18 11:19       ` Arnd Bergmann
2013-04-18 11:19         ` Arnd Bergmann
2013-04-22 10:10   ` Vinod Koul
2013-04-22 10:10     ` Vinod Koul
2013-04-22 10:53     ` Lee Jones
2013-04-22 10:53       ` Lee Jones
2013-04-24  8:49   ` [PATCH 08/32 v2] dmaengine: ste_dma40: Remove home-brew " Lee Jones
2013-04-24  8:49     ` Lee Jones
2013-04-25 12:48     ` Linus Walleij
2013-04-25 12:48       ` Linus Walleij
2013-05-01 14:28       ` Lee Jones
2013-05-01 14:28         ` Lee Jones
2013-04-25  8:36   ` [PATCH 08/32] dmaengine: ste_dma40: Optimise local " Linus Walleij
2013-04-25  8:36     ` Linus Walleij
2013-04-25  9:15     ` Lee Jones
2013-04-25  9:15       ` Lee Jones
2013-04-18 10:11 ` [PATCH 09/32] ARM: ux500: Remove unused 'data_width' attributes from SDI DMA configs Lee Jones
2013-04-18 10:11   ` Lee Jones
2013-04-25  8:44   ` Linus Walleij
2013-04-25  8:44     ` Linus Walleij
2013-04-25  9:14     ` Lee Jones
2013-04-25  9:14       ` Lee Jones
2013-04-25 12:49       ` Linus Walleij
2013-04-25 12:49         ` Linus Walleij
2013-04-25 13:13         ` Lee Jones
2013-04-25 13:13           ` Lee Jones
2013-04-18 10:11 ` [PATCH 10/32] ARM: ux500: Remove unused 'data_width' attributes from SSP " Lee Jones
2013-04-18 10:11   ` Lee Jones
2013-04-25  8:45   ` Linus Walleij
2013-04-25  8:45     ` Linus Walleij
2013-04-18 10:11 ` [PATCH 11/32] ARM: ux500: Remove unused 'data_width' attributes from UART " Lee Jones
2013-04-18 10:11   ` Lee Jones
2013-04-25  8:45   ` Linus Walleij
2013-04-25  8:45     ` Linus Walleij
2013-04-18 10:11 ` [PATCH 12/32] ARM: ux500: Remove superfluous 'psize' attribute from Audio platform data Lee Jones
2013-04-18 10:11   ` Lee Jones
2013-04-25  9:00   ` Linus Walleij
2013-04-25  9:00     ` Linus Walleij
2013-05-01 14:42   ` Lee Jones
2013-05-01 14:42     ` Lee Jones
2013-05-02  8:38     ` Lee Jones
2013-05-02  8:38       ` Lee Jones
2013-05-03 13:57       ` Linus Walleij
2013-05-03 13:57         ` Linus Walleij
2013-06-10  9:04         ` Lee Jones
2013-06-10  9:04           ` Lee Jones
2013-06-10  9:12           ` Lee Jones
2013-06-10  9:12             ` Lee Jones
2013-04-18 10:11 ` [PATCH 13/32] dmaengine: ste_dma40: Calculate number of logical channels from physical ones Lee Jones
2013-04-18 10:11   ` Lee Jones
2013-04-22  9:23   ` Vinod Koul
2013-04-22  9:23     ` Vinod Koul
2013-04-22 10:11     ` Lee Jones
2013-04-22 10:11       ` Lee Jones
2013-04-25  9:13   ` Linus Walleij
2013-04-25  9:13     ` Linus Walleij
2013-04-25  9:29     ` Lee Jones
2013-04-25  9:29       ` Lee Jones
2013-04-25 12:51       ` Linus Walleij
2013-04-25 12:51         ` Linus Walleij
2013-04-18 10:11 ` [PATCH 14/32] dmaengine: ste_dma40: Remove 'always true' checking Lee Jones
2013-04-18 10:11   ` Lee Jones
2013-04-18 10:53   ` Arnd Bergmann
2013-04-18 10:53     ` Arnd Bergmann
2013-04-22  9:44   ` Vinod Koul
2013-04-22  9:44     ` Vinod Koul
2013-04-25  9:17   ` Linus Walleij
2013-04-25  9:17     ` Linus Walleij
2013-04-25  9:24     ` Lee Jones
2013-04-25  9:24       ` Lee Jones
2013-04-18 10:11 ` [PATCH 15/32] dmaengine: ste_dma40: Separate Logical Global Interrupt Mask (GIM) unmasking Lee Jones
2013-04-18 10:11   ` Lee Jones
2013-04-18 10:45   ` Russell King - ARM Linux
2013-04-18 10:45     ` Russell King - ARM Linux
2013-04-18 10:54   ` Arnd Bergmann
2013-04-18 10:54     ` Arnd Bergmann
2013-04-22  9:51   ` Vinod Koul
2013-04-22  9:51     ` Vinod Koul
2013-04-22 10:40     ` Lee Jones
2013-04-22 10:40       ` Lee Jones
2013-04-24  8:51       ` Lee Jones
2013-04-24  8:51         ` Lee Jones
2013-04-25 11:00   ` Linus Walleij
2013-04-25 11:00     ` Linus Walleij
2013-04-18 10:11 ` [PATCH 16/32] dmaengine: ste_dma40: Remove unnecessary call to d40_phy_cfg() Lee Jones
2013-04-18 10:11   ` Lee Jones
2013-04-18 10:55   ` Arnd Bergmann
2013-04-18 10:55     ` Arnd Bergmann
2013-04-22  9:52   ` Vinod Koul
2013-04-22  9:52     ` Vinod Koul
2013-04-25 11:09   ` Linus Walleij
2013-04-25 11:09     ` Linus Walleij
2013-04-18 10:11 ` [PATCH 17/32] dmaengine: ste_dma40: Remove redundant argument from d40_phy_cfg() Lee Jones
2013-04-18 10:11   ` Lee Jones
2013-04-22  9:34   ` Vinod Koul
2013-04-22  9:34     ` Vinod Koul
2013-04-22 10:18     ` Lee Jones
2013-04-22 10:18       ` Lee Jones
2013-04-25 11:14       ` Linus Walleij
2013-04-25 11:14         ` Linus Walleij
2013-04-24  8:55     ` Lee Jones
2013-04-24  8:55       ` Lee Jones
2013-04-25 11:12   ` Linus Walleij
2013-04-25 11:12     ` Linus Walleij
2013-04-18 10:12 ` [PATCH 18/32] dmaengine: ste_dma40: Don't configure runtime configurable setup during allocate Lee Jones
2013-04-18 10:12   ` Lee Jones
2013-04-25 11:15   ` Linus Walleij
2013-04-25 11:15     ` Linus Walleij
2013-04-18 10:12 ` [PATCH 19/32] dmaengine: ste_dma40: Move more setup into the configuration routines Lee Jones
2013-04-18 10:12   ` Lee Jones
2013-04-22  9:37   ` Vinod Koul
2013-04-22  9:37     ` Vinod Koul
2013-04-25 11:17   ` Linus Walleij
2013-04-25 11:17     ` Linus Walleij
2013-04-18 10:12 ` [PATCH 20/32] dmaengine: ste_dma40: Move rev error-check up to revision acquisition Lee Jones
2013-04-18 10:12   ` Lee Jones
2013-04-22  9:41   ` Vinod Koul
2013-04-22  9:41     ` Vinod Koul
2013-04-25 11:17   ` Linus Walleij
2013-04-25 11:17     ` Linus Walleij
2013-04-18 10:12 ` [PATCH 21/32] dmaengine: ste_dma40: Also report the number of logical channels Lee Jones
2013-04-18 10:12   ` Lee Jones
2013-04-22  9:36   ` Vinod Koul
2013-04-22  9:36     ` Vinod Koul
2013-04-22 10:14     ` Lee Jones
2013-04-22 10:14       ` Lee Jones
2013-04-22  9:48       ` Vinod Koul
2013-04-22  9:48         ` Vinod Koul
2013-04-22 10:37         ` Lee Jones
2013-04-22 10:37           ` Lee Jones
2013-04-22 10:23           ` Vinod Koul
2013-04-22 10:23             ` Vinod Koul
2013-04-22 10:52           ` Russell King - ARM Linux
2013-04-22 10:52             ` Russell King - ARM Linux
2013-04-24  8:35             ` Lee Jones
2013-04-24  8:35               ` Lee Jones
2013-04-24  8:39   ` [PATCH 21/32 v2] " Lee Jones
2013-04-24  8:39     ` Lee Jones
2013-04-25 11:20     ` Linus Walleij
2013-04-25 11:20       ` Linus Walleij
2013-04-18 10:12 ` [PATCH 22/32] dmaengine: ste_dma40: Allocate plat_data on declaration Lee Jones
2013-04-18 10:12   ` Lee Jones
2013-04-22  9:38   ` Vinod Koul
2013-04-22  9:38     ` Vinod Koul
2013-04-22  9:40   ` Vinod Koul
2013-04-22  9:40     ` Vinod Koul
2013-04-25 11:22   ` Linus Walleij
2013-04-25 11:22     ` Linus Walleij
2013-04-18 10:12 ` [PATCH 23/32] dmaengine: ste_dma40: Allow driver to be probe()able when DT is enabled Lee Jones
2013-04-18 10:12   ` Lee Jones
2013-04-18 10:58   ` Arnd Bergmann
2013-04-18 10:58     ` Arnd Bergmann
2013-04-22 10:02   ` Vinod Koul
2013-04-22 10:02     ` Vinod Koul
2013-04-25 11:24   ` Linus Walleij
2013-04-25 11:24     ` Linus Walleij
2013-04-18 10:12 ` [PATCH 24/32] dmaengine: ste_dma40: Supply full Device Tree parsing support Lee Jones
2013-04-18 10:12   ` Lee Jones
2013-04-18 11:06   ` Arnd Bergmann
2013-04-18 11:06     ` Arnd Bergmann
2013-04-18 11:31     ` Lee Jones
2013-04-18 11:31       ` Lee Jones
2013-04-18 11:37       ` Arnd Bergmann
2013-04-18 11:37         ` Arnd Bergmann
2013-04-18 11:47         ` Lee Jones
2013-04-18 11:47           ` Lee Jones
2013-04-18 12:23           ` Arnd Bergmann
2013-04-18 12:23             ` Arnd Bergmann
2013-04-18 11:07   ` Arnd Bergmann
2013-04-18 11:07     ` Arnd Bergmann
2013-04-18 12:12   ` [PATCH 24/32 v2] " Lee Jones
2013-04-18 12:12     ` Lee Jones
2013-04-18 12:32     ` Arnd Bergmann
2013-04-18 12:32       ` Arnd Bergmann
2013-04-18 13:43       ` Lee Jones
2013-04-18 13:43         ` Lee Jones
2013-04-18 14:17     ` Lee Jones [this message]
2013-04-18 14:17       ` [PATCH 24/32 v3] " Lee Jones
2013-04-18 21:53       ` Arnd Bergmann
2013-04-18 21:53         ` Arnd Bergmann
2013-04-22 10:18       ` Vinod Koul
2013-04-22 10:18         ` Vinod Koul
2013-04-25 11:33       ` Linus Walleij
2013-04-25 11:33         ` Linus Walleij
2013-04-25 11:33         ` Linus Walleij
2013-04-22 10:17     ` [PATCH 24/32 v2] " Vinod Koul
2013-04-22 10:17       ` Vinod Koul
2013-04-22 10:16   ` [PATCH 24/32] " Vinod Koul
2013-04-22 10:16     ` Vinod Koul
2013-04-18 10:12 ` [PATCH 25/32] ARM: ux500: Setup the DMA40 driver's DT node using the new DMA API Lee Jones
2013-04-18 10:12   ` Lee Jones
2013-04-18 11:08   ` Arnd Bergmann
2013-04-18 11:08     ` Arnd Bergmann
2013-04-25 11:35   ` Linus Walleij
2013-04-25 11:35     ` Linus Walleij
2013-04-18 10:12 ` [PATCH 26/32] ARM: ux500: Supply UART's DMA configuration via Device Tree Lee Jones
2013-04-18 10:12   ` Lee Jones
2013-04-25 11:36   ` Linus Walleij
2013-04-25 11:36     ` Linus Walleij
2013-04-18 10:12 ` [PATCH 27/32] ARM: ux500: Stop registering DMA40 from platform data when DT is enabled Lee Jones
2013-04-18 10:12   ` Lee Jones
2013-04-25 11:37   ` Linus Walleij
2013-04-25 11:37     ` Linus Walleij
2013-04-18 10:12 ` [PATCH 28/32] ARM: ux500: Pass remnant platform data though to DMA40 driver Lee Jones
2013-04-18 10:12   ` Lee Jones
2013-04-18 11:11   ` Arnd Bergmann
2013-04-18 11:11     ` Arnd Bergmann
2013-04-25 11:39   ` Linus Walleij
2013-04-25 11:39     ` Linus Walleij
2013-04-18 10:12 ` [PATCH 29/32] ARM: ux500: Stop passing UART's platform data for Device Tree boots Lee Jones
2013-04-18 10:12   ` Lee Jones
2013-04-25 11:41   ` Linus Walleij
2013-04-25 11:41     ` Linus Walleij
2013-04-18 10:12 ` [PATCH 30/32] ARM: ux500: Supply MMC DMA configuration via Device Tree Lee Jones
2013-04-18 10:12   ` Lee Jones
2013-04-25 11:43   ` Linus Walleij
2013-04-25 11:43     ` Linus Walleij
2013-04-25 11:49     ` Lee Jones
2013-04-25 11:49       ` Lee Jones
2013-04-25 12:56       ` Linus Walleij
2013-04-25 12:56         ` Linus Walleij
2013-04-25 13:11         ` Lee Jones
2013-04-25 13:11           ` Lee Jones
2013-04-18 10:12 ` [PATCH 31/32] ARM: ux500: Stop passing MMC's platform data for Device Tree boots Lee Jones
2013-04-18 10:12   ` Lee Jones
2013-04-25 11:44   ` Linus Walleij
2013-04-25 11:44     ` Linus Walleij
2013-04-18 10:12 ` [PATCH 32/32] ARM: ux500: Move SDI (MMC) and UART devices under more descriptive heading Lee Jones
2013-04-18 10:12   ` Lee Jones
2013-04-25 11:46   ` Linus Walleij
2013-04-25 11:46     ` Linus Walleij
2013-04-26 13:42     ` Lee Jones
2013-04-26 13:42       ` Lee Jones

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=20130418141752.GC3959@gmail.com \
    --to=lee.jones@linaro.org \
    --cc=arnd@arndb.de \
    --cc=djbw@fb.com \
    --cc=linus.walleij@stericsson.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=per.forlin@stericsson.com \
    --cc=rabin@rab.in \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.