All of lore.kernel.org
 help / color / mirror / Atom feed
From: santosh.shilimkar@ti.com (Santosh Shilimkar)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v3 4/7] of: configure the platform device dma parameters
Date: Wed, 7 May 2014 09:24:09 -0400	[thread overview]
Message-ID: <536A33F9.3040406@ti.com> (raw)
In-Reply-To: <536949B8.3030106@ti.com>

On Tuesday 06 May 2014 04:44 PM, Santosh Shilimkar wrote:
> On Tuesday 06 May 2014 05:40 AM, Arnd Bergmann wrote:
>> On Monday 05 May 2014 17:47:32 Santosh Shilimkar wrote:
>>
>>> +       dev->coherent_dma_mask = DMA_BIT_MASK(32);
>>> +       if (!dev->dma_mask)
>>> +               dev->dma_mask = &dev->coherent_dma_mask;
>>> +
>>> +       /*
>>> +        * if dma-ranges property doesn't exist - just return else
>>> +        * setup the dma offset
>>> +        */
>>> +       ret = of_dma_get_range(dev->of_node, &dma_addr, &paddr, &size);
>>> +       if (ret < 0) {
>>> +               dev_dbg(dev, "no dma range information to setup\n");
>>> +               return;
>>> +       }
>>> +
>>> +       /* DMA ranges found. Calculate and set dma_pfn_offset */
>>> +       dev->dma_pfn_offset = PFN_DOWN(paddr - dma_addr);
>>> +       dev_dbg(dev, "dma_pfn_offset(%#08lx)\n", dev->dma_pfn_offset);
>>> +}
>>
>> I think there should at least be a comment about why we are computing
>> the correct DMA mask here and then ignore that and just use DMA_BIT_MASK(32)
>> instead. I understand that Russell and Rob prefer it that way and I'm not
>> going to argue, but I find it counterintuitive and I think it deserves
>> an explanation in the source code for anybody who is trying to figure
>> out how things fit together.
>>
> In this patch, the dma_mask related code is just moved. We are not calculating
> dma_mask either. I was looking for the history of how DMA_BIT_MASK(32)
> landed up but couldn't trace it down apart from the fact that the code was
> carried from powerPC. May be Rob knows.
> 
> How about below comment ? I didn't delibratly added point about bus
> intercepting drivers dma_set_*mask() call etc.
> 
> /*
>  * Set default dma-mask to 32 bit. Drivers are expected to setup
>  * the correct supported dma_mask.
>  */  
> +       dev->coherent_dma_mask = DMA_BIT_MASK(32);
> +       if (!dev->dma_mask)
> +               dev->dma_mask = &dev->coherent_dma_mask;
> 
Updated patch below for records.

>From 591c1ee465ce5372385dbc41e7d3e36cbb477bd8 Mon Sep 17 00:00:00 2001
From: Santosh Shilimkar <santosh.shilimkar@ti.com>
Date: Thu, 24 Apr 2014 11:30:04 -0400
Subject: [PATCH v3 4/7] of: configure the platform device dma parameters

Retrieve DMA configuration from DT and setup platform device's DMA
parameters. The DMA configuration in DT has to be specified using
"dma-ranges" and "dma-coherent" properties if supported.

We setup dma_pfn_offset using "dma-ranges" and dma_coherent_ops
using "dma-coherent" device tree properties.

The set_arch_dma_coherent_ops macro has to be defined by arch if
it supports coherent dma_ops. Otherwise, set_arch_dma_coherent_ops() is
declared as nop.

Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Olof Johansson <olof@lixom.net>
Cc: Grant Likely <grant.likely@linaro.org>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
---
 drivers/of/platform.c       |   65 +++++++++++++++++++++++++++++++++++++++----
 include/linux/dma-mapping.h |    7 +++++
 2 files changed, 66 insertions(+), 6 deletions(-)

diff --git a/drivers/of/platform.c b/drivers/of/platform.c
index 404d1da..91fa983 100644
--- a/drivers/of/platform.c
+++ b/drivers/of/platform.c
@@ -187,6 +187,64 @@ struct platform_device *of_device_alloc(struct device_node *np,
 EXPORT_SYMBOL(of_device_alloc);
 
 /**
+ * of_dma_configure - Setup DMA configuration
+ * @dev:	Device to apply DMA configuration
+ *
+ * Try to get devices's DMA configuration from DT and update it
+ * accordingly.
+ *
+ * In case if platform code need to use own special DMA configuration,it
+ * can use Platform bus notifier and handle BUS_NOTIFY_ADD_DEVICE event
+ * to fix up DMA configuration.
+ */
+static void of_dma_configure(struct platform_device *pdev)
+{
+	u64 dma_addr, paddr, size;
+	int ret;
+	struct device *dev = &pdev->dev;
+
+#if defined(CONFIG_MICROBLAZE)
+	pdev->archdata.dma_mask = 0xffffffffUL;
+#endif
+
+	/*
+	 * Set default dma-mask to 32 bit. Drivers are expected to setup
+	 * the correct supported dma_mask.
+	 */
+	dev->coherent_dma_mask = DMA_BIT_MASK(32);
+
+	/*
+	 * Set it to coherent_dma_mask by default if the architecture
+	 * code has not set it.
+	 */
+	if (!dev->dma_mask)
+		dev->dma_mask = &dev->coherent_dma_mask;
+
+	/*
+	 * if dma-coherent property exist, call arch hook to setup
+	 * dma coherent operations.
+	 */
+	if (of_dma_is_coherent(dev->of_node)) {
+		set_arch_dma_coherent_ops(dev);
+		dev_dbg(dev, "device is dma coherent\n");
+	}
+
+	/*
+	 * if dma-ranges property doesn't exist - just return else
+	 * setup the dma offset
+	 */
+	ret = of_dma_get_range(dev->of_node, &dma_addr, &paddr, &size);
+	if (ret < 0) {
+		dev_dbg(dev, "no dma range information to setup\n");
+		return;
+	}
+
+	/* DMA ranges found. Calculate and set dma_pfn_offset */
+	dev->dma_pfn_offset = PFN_DOWN(paddr - dma_addr);
+	dev_dbg(dev, "dma_pfn_offset(%#08lx)\n", dev->dma_pfn_offset);
+}
+
+/**
  * of_platform_device_create_pdata - Alloc, initialize and register an of_device
  * @np: pointer to node to create device for
  * @bus_id: name to assign device
@@ -211,12 +269,7 @@ static struct platform_device *of_platform_device_create_pdata(
 	if (!dev)
 		return NULL;
 
-#if defined(CONFIG_MICROBLAZE)
-	dev->archdata.dma_mask = 0xffffffffUL;
-#endif
-	dev->dev.coherent_dma_mask = DMA_BIT_MASK(32);
-	if (!dev->dev.dma_mask)
-		dev->dev.dma_mask = &dev->dev.coherent_dma_mask;
+	of_dma_configure(dev);
 	dev->dev.bus = &platform_bus_type;
 	dev->dev.platform_data = platform_data;
 
diff --git a/include/linux/dma-mapping.h b/include/linux/dma-mapping.h
index fd4aee2..c7d9b1b 100644
--- a/include/linux/dma-mapping.h
+++ b/include/linux/dma-mapping.h
@@ -123,6 +123,13 @@ static inline int dma_coerce_mask_and_coherent(struct device *dev, u64 mask)
 
 extern u64 dma_get_required_mask(struct device *dev);
 
+#ifndef set_arch_dma_coherent_ops
+static inline int set_arch_dma_coherent_ops(struct device *dev)
+{
+	return 0;
+}
+#endif
+
 static inline unsigned int dma_get_max_seg_size(struct device *dev)
 {
 	return dev->dma_parms ? dev->dma_parms->max_segment_size : 65536;
-- 
1.7.9.5


 

WARNING: multiple messages have this Message-ID (diff)
From: Santosh Shilimkar <santosh.shilimkar@ti.com>
To: Arnd Bergmann <arnd@arndb.de>
Cc: Rob Herring <robherring2@gmail.com>,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>,
	"linux-arm-kernel@lists.infradead.org"
	<linux-arm-kernel@lists.infradead.org>,
	"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
	Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
	Russell King <linux@arm.linux.org.uk>,
	Olof Johansson <olof@lixom.net>,
	Grant Likely <grant.likely@linaro.org>,
	Rob Herring <robh+dt@kernel.org>,
	Catalin Marinas <catalin.marinas@arm.com>,
	Linus Walleij <linus.walleij@linaro.org>,
	"Strashko, Grygorii" <grygorii.strashko@ti.com>
Subject: Re: [PATCH v3 4/7] of: configure the platform device dma parameters
Date: Wed, 7 May 2014 09:24:09 -0400	[thread overview]
Message-ID: <536A33F9.3040406@ti.com> (raw)
In-Reply-To: <536949B8.3030106@ti.com>

On Tuesday 06 May 2014 04:44 PM, Santosh Shilimkar wrote:
> On Tuesday 06 May 2014 05:40 AM, Arnd Bergmann wrote:
>> On Monday 05 May 2014 17:47:32 Santosh Shilimkar wrote:
>>
>>> +       dev->coherent_dma_mask = DMA_BIT_MASK(32);
>>> +       if (!dev->dma_mask)
>>> +               dev->dma_mask = &dev->coherent_dma_mask;
>>> +
>>> +       /*
>>> +        * if dma-ranges property doesn't exist - just return else
>>> +        * setup the dma offset
>>> +        */
>>> +       ret = of_dma_get_range(dev->of_node, &dma_addr, &paddr, &size);
>>> +       if (ret < 0) {
>>> +               dev_dbg(dev, "no dma range information to setup\n");
>>> +               return;
>>> +       }
>>> +
>>> +       /* DMA ranges found. Calculate and set dma_pfn_offset */
>>> +       dev->dma_pfn_offset = PFN_DOWN(paddr - dma_addr);
>>> +       dev_dbg(dev, "dma_pfn_offset(%#08lx)\n", dev->dma_pfn_offset);
>>> +}
>>
>> I think there should at least be a comment about why we are computing
>> the correct DMA mask here and then ignore that and just use DMA_BIT_MASK(32)
>> instead. I understand that Russell and Rob prefer it that way and I'm not
>> going to argue, but I find it counterintuitive and I think it deserves
>> an explanation in the source code for anybody who is trying to figure
>> out how things fit together.
>>
> In this patch, the dma_mask related code is just moved. We are not calculating
> dma_mask either. I was looking for the history of how DMA_BIT_MASK(32)
> landed up but couldn't trace it down apart from the fact that the code was
> carried from powerPC. May be Rob knows.
> 
> How about below comment ? I didn't delibratly added point about bus
> intercepting drivers dma_set_*mask() call etc.
> 
> /*
>  * Set default dma-mask to 32 bit. Drivers are expected to setup
>  * the correct supported dma_mask.
>  */  
> +       dev->coherent_dma_mask = DMA_BIT_MASK(32);
> +       if (!dev->dma_mask)
> +               dev->dma_mask = &dev->coherent_dma_mask;
> 
Updated patch below for records.

>From 591c1ee465ce5372385dbc41e7d3e36cbb477bd8 Mon Sep 17 00:00:00 2001
From: Santosh Shilimkar <santosh.shilimkar@ti.com>
Date: Thu, 24 Apr 2014 11:30:04 -0400
Subject: [PATCH v3 4/7] of: configure the platform device dma parameters

Retrieve DMA configuration from DT and setup platform device's DMA
parameters. The DMA configuration in DT has to be specified using
"dma-ranges" and "dma-coherent" properties if supported.

We setup dma_pfn_offset using "dma-ranges" and dma_coherent_ops
using "dma-coherent" device tree properties.

The set_arch_dma_coherent_ops macro has to be defined by arch if
it supports coherent dma_ops. Otherwise, set_arch_dma_coherent_ops() is
declared as nop.

Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Arnd Bergmann <arnd@arndb.de>
Cc: Olof Johansson <olof@lixom.net>
Cc: Grant Likely <grant.likely@linaro.org>
Cc: Catalin Marinas <catalin.marinas@arm.com>
Cc: Linus Walleij <linus.walleij@linaro.org>
Reviewed-by: Rob Herring <robh@kernel.org>
Signed-off-by: Grygorii Strashko <grygorii.strashko@ti.com>
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
---
 drivers/of/platform.c       |   65 +++++++++++++++++++++++++++++++++++++++----
 include/linux/dma-mapping.h |    7 +++++
 2 files changed, 66 insertions(+), 6 deletions(-)

diff --git a/drivers/of/platform.c b/drivers/of/platform.c
index 404d1da..91fa983 100644
--- a/drivers/of/platform.c
+++ b/drivers/of/platform.c
@@ -187,6 +187,64 @@ struct platform_device *of_device_alloc(struct device_node *np,
 EXPORT_SYMBOL(of_device_alloc);
 
 /**
+ * of_dma_configure - Setup DMA configuration
+ * @dev:	Device to apply DMA configuration
+ *
+ * Try to get devices's DMA configuration from DT and update it
+ * accordingly.
+ *
+ * In case if platform code need to use own special DMA configuration,it
+ * can use Platform bus notifier and handle BUS_NOTIFY_ADD_DEVICE event
+ * to fix up DMA configuration.
+ */
+static void of_dma_configure(struct platform_device *pdev)
+{
+	u64 dma_addr, paddr, size;
+	int ret;
+	struct device *dev = &pdev->dev;
+
+#if defined(CONFIG_MICROBLAZE)
+	pdev->archdata.dma_mask = 0xffffffffUL;
+#endif
+
+	/*
+	 * Set default dma-mask to 32 bit. Drivers are expected to setup
+	 * the correct supported dma_mask.
+	 */
+	dev->coherent_dma_mask = DMA_BIT_MASK(32);
+
+	/*
+	 * Set it to coherent_dma_mask by default if the architecture
+	 * code has not set it.
+	 */
+	if (!dev->dma_mask)
+		dev->dma_mask = &dev->coherent_dma_mask;
+
+	/*
+	 * if dma-coherent property exist, call arch hook to setup
+	 * dma coherent operations.
+	 */
+	if (of_dma_is_coherent(dev->of_node)) {
+		set_arch_dma_coherent_ops(dev);
+		dev_dbg(dev, "device is dma coherent\n");
+	}
+
+	/*
+	 * if dma-ranges property doesn't exist - just return else
+	 * setup the dma offset
+	 */
+	ret = of_dma_get_range(dev->of_node, &dma_addr, &paddr, &size);
+	if (ret < 0) {
+		dev_dbg(dev, "no dma range information to setup\n");
+		return;
+	}
+
+	/* DMA ranges found. Calculate and set dma_pfn_offset */
+	dev->dma_pfn_offset = PFN_DOWN(paddr - dma_addr);
+	dev_dbg(dev, "dma_pfn_offset(%#08lx)\n", dev->dma_pfn_offset);
+}
+
+/**
  * of_platform_device_create_pdata - Alloc, initialize and register an of_device
  * @np: pointer to node to create device for
  * @bus_id: name to assign device
@@ -211,12 +269,7 @@ static struct platform_device *of_platform_device_create_pdata(
 	if (!dev)
 		return NULL;
 
-#if defined(CONFIG_MICROBLAZE)
-	dev->archdata.dma_mask = 0xffffffffUL;
-#endif
-	dev->dev.coherent_dma_mask = DMA_BIT_MASK(32);
-	if (!dev->dev.dma_mask)
-		dev->dev.dma_mask = &dev->dev.coherent_dma_mask;
+	of_dma_configure(dev);
 	dev->dev.bus = &platform_bus_type;
 	dev->dev.platform_data = platform_data;
 
diff --git a/include/linux/dma-mapping.h b/include/linux/dma-mapping.h
index fd4aee2..c7d9b1b 100644
--- a/include/linux/dma-mapping.h
+++ b/include/linux/dma-mapping.h
@@ -123,6 +123,13 @@ static inline int dma_coerce_mask_and_coherent(struct device *dev, u64 mask)
 
 extern u64 dma_get_required_mask(struct device *dev);
 
+#ifndef set_arch_dma_coherent_ops
+static inline int set_arch_dma_coherent_ops(struct device *dev)
+{
+	return 0;
+}
+#endif
+
 static inline unsigned int dma_get_max_seg_size(struct device *dev)
 {
 	return dev->dma_parms ? dev->dma_parms->max_segment_size : 65536;
-- 
1.7.9.5


 

  reply	other threads:[~2014-05-07 13:24 UTC|newest]

Thread overview: 172+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-04-24 15:30 [PATCH v3 0/7] of: setup dma parameters using dma-ranges and dma-coherent Santosh Shilimkar
2014-04-24 15:30 ` Santosh Shilimkar
2014-04-24 15:30 ` Santosh Shilimkar
2014-04-24 15:30 ` [PATCH v3 1/7] device: introduce per device dma_pfn_offset Santosh Shilimkar
2014-04-24 15:30   ` Santosh Shilimkar
2014-04-24 15:30   ` Santosh Shilimkar
2014-05-02  1:01   ` Rob Herring
2014-05-02  1:01     ` Rob Herring
2014-04-24 15:30 ` [PATCH v3 2/7] of: introduce of_dma_get_range() helper Santosh Shilimkar
2014-04-24 15:30   ` Santosh Shilimkar
2014-04-24 15:30   ` Santosh Shilimkar
2014-05-02  1:06   ` Rob Herring
2014-05-02  1:06     ` Rob Herring
2014-05-02  1:06     ` Rob Herring
2014-04-24 15:30 ` [PATCH v3 3/7] of: introduce of_dma_is_coherent() helper Santosh Shilimkar
2014-04-24 15:30   ` Santosh Shilimkar
2014-04-24 15:30   ` Santosh Shilimkar
2014-05-02  0:56   ` Rob Herring
2014-05-02  0:56     ` Rob Herring
2014-05-02  0:56     ` Rob Herring
2014-05-05 21:45     ` Santosh Shilimkar
2014-05-05 21:45       ` Santosh Shilimkar
2014-05-05 22:06       ` Rob Herring
2014-05-05 22:06         ` Rob Herring
2014-05-05 22:06         ` Rob Herring
2014-04-24 15:30 ` [PATCH v3 4/7] of: configure the platform device dma parameters Santosh Shilimkar
2014-04-24 15:30   ` Santosh Shilimkar
2014-04-24 15:30   ` Santosh Shilimkar
2014-04-29 14:41   ` Grant Likely
2014-04-29 14:41     ` Grant Likely
2014-04-29 14:41     ` Grant Likely
2014-04-30 14:19     ` Santosh Shilimkar
2014-04-30 14:19       ` Santosh Shilimkar
2014-04-30 14:19       ` Santosh Shilimkar
2014-05-01 13:12       ` Grant Likely
2014-05-01 13:12         ` Grant Likely
2014-05-01 13:12         ` Grant Likely
2014-05-01 13:16         ` Santosh Shilimkar
2014-05-01 13:16           ` Santosh Shilimkar
2014-05-01 13:16           ` Santosh Shilimkar
2014-05-02  9:58         ` Arnd Bergmann
2014-05-02  9:58           ` Arnd Bergmann
2014-05-02  9:58           ` Arnd Bergmann
2014-05-02 13:13           ` Santosh Shilimkar
2014-05-02 13:13             ` Santosh Shilimkar
2014-05-02 13:13             ` Santosh Shilimkar
2014-05-02 15:13             ` Arnd Bergmann
2014-05-02 15:13               ` Arnd Bergmann
2014-05-02 15:13               ` Arnd Bergmann
2014-05-27 12:56           ` Grant Likely
2014-05-27 12:56             ` Grant Likely
2014-05-27 12:56             ` Grant Likely
2014-05-27 13:30             ` Arnd Bergmann
2014-05-27 13:30               ` Arnd Bergmann
2014-05-28  8:23               ` Linus Walleij
2014-05-28  8:23                 ` Linus Walleij
2014-05-28 13:29                 ` Arnd Bergmann
2014-05-28 13:29                   ` Arnd Bergmann
2014-05-28 13:29                   ` Arnd Bergmann
2014-05-28 13:32                   ` Linus Walleij
2014-05-28 13:32                     ` Linus Walleij
2014-05-28 13:32                     ` Linus Walleij
2014-05-28 14:04                     ` Santosh Shilimkar
2014-05-28 14:04                       ` Santosh Shilimkar
2014-05-28 14:04                       ` Santosh Shilimkar
2014-05-29 14:01                       ` Linus Walleij
2014-05-29 14:01                         ` Linus Walleij
2014-05-29 14:08                         ` Santosh Shilimkar
2014-05-29 14:08                           ` Santosh Shilimkar
2014-05-29 19:24                           ` Arnd Bergmann
2014-05-29 19:24                             ` Arnd Bergmann
2014-05-29 19:24                             ` Arnd Bergmann
2014-05-29 20:04                             ` Santosh Shilimkar
2014-05-29 20:04                               ` Santosh Shilimkar
2014-05-29 20:04                               ` Santosh Shilimkar
2014-05-02  0:49   ` Rob Herring
2014-05-02  0:49     ` Rob Herring
2014-05-02  0:49     ` Rob Herring
2014-05-05 21:47     ` Santosh Shilimkar
2014-05-05 21:47       ` Santosh Shilimkar
2014-05-05 21:47       ` Santosh Shilimkar
2014-05-05 22:08       ` Rob Herring
2014-05-05 22:08         ` Rob Herring
2014-05-06  9:40       ` Arnd Bergmann
2014-05-06  9:40         ` Arnd Bergmann
2014-05-06  9:40         ` Arnd Bergmann
2014-05-06 20:44         ` Santosh Shilimkar
2014-05-06 20:44           ` Santosh Shilimkar
2014-05-06 20:44           ` Santosh Shilimkar
2014-05-07 13:24           ` Santosh Shilimkar [this message]
2014-05-07 13:24             ` Santosh Shilimkar
2014-05-02 16:54   ` Bjorn Helgaas
2014-05-02 16:54     ` Bjorn Helgaas
2014-05-02 16:54     ` Bjorn Helgaas
2014-05-02 18:59     ` Arnd Bergmann
2014-05-02 18:59       ` Arnd Bergmann
2014-05-05 20:45       ` Bjorn Helgaas
2014-05-05 20:45         ` Bjorn Helgaas
2014-05-05 20:45         ` Bjorn Helgaas
2014-05-05 20:55         ` Arnd Bergmann
2014-05-05 20:55           ` Arnd Bergmann
2014-05-05 20:55           ` Arnd Bergmann
2014-05-05 22:28           ` Bjorn Helgaas
2014-05-05 22:28             ` Bjorn Helgaas
2014-05-05 22:28             ` Bjorn Helgaas
2014-05-06  3:44             ` Benjamin Herrenschmidt
2014-05-06  3:44               ` Benjamin Herrenschmidt
2014-05-06  9:54               ` Arnd Bergmann
2014-05-06  9:54                 ` Arnd Bergmann
2014-05-06  9:54                 ` Arnd Bergmann
2014-05-06 13:32                 ` Santosh Shilimkar
2014-05-06 13:32                   ` Santosh Shilimkar
2014-05-06 13:32                   ` Santosh Shilimkar
2014-04-24 15:30 ` [PATCH v3 5/7] ARM: dma: Use dma_pfn_offset for dma address translation Santosh Shilimkar
2014-04-24 15:30   ` Santosh Shilimkar
2014-04-24 15:30   ` Santosh Shilimkar
2014-05-02 14:32   ` Rob Herring
2014-05-02 14:32     ` Rob Herring
2014-05-02 14:32     ` Rob Herring
2014-05-02 14:58   ` Russell King - ARM Linux
2014-05-02 14:58     ` Russell King - ARM Linux
2014-05-02 15:05     ` Santosh Shilimkar
2014-05-02 15:05       ` Santosh Shilimkar
2014-05-02 15:05       ` Santosh Shilimkar
2014-05-05 19:50       ` Russell King - ARM Linux
2014-05-05 19:50         ` Russell King - ARM Linux
2014-05-05 21:43         ` Santosh Shilimkar
2014-05-05 21:43           ` Santosh Shilimkar
2014-05-05 21:43           ` Santosh Shilimkar
2014-04-24 15:30 ` [PATCH v3 6/7] ARM: dma: implement set_arch_dma_coherent_ops() Santosh Shilimkar
2014-04-24 15:30   ` Santosh Shilimkar
2014-04-24 15:30   ` Santosh Shilimkar
2014-05-02  0:58   ` Rob Herring
2014-05-02  0:58     ` Rob Herring
2014-05-02  0:58     ` Rob Herring
2014-04-24 15:30 ` [PATCH v3 7/7] ARM: dma: use phys_addr_t in __dma_page_[cpu_to_dev/dev_to_cpu] Santosh Shilimkar
2014-04-24 15:30   ` Santosh Shilimkar
2014-04-24 15:30   ` Santosh Shilimkar
2014-04-24 15:45   ` Will Deacon
2014-04-24 15:45     ` Will Deacon
2014-05-01 13:19 ` [PATCH v3 0/7] of: setup dma parameters using dma-ranges and dma-coherent Santosh Shilimkar
2014-05-01 13:19   ` Santosh Shilimkar
2014-05-01 13:19   ` Santosh Shilimkar
2014-05-01 13:25   ` Russell King - ARM Linux
2014-05-01 13:25     ` Russell King - ARM Linux
2014-05-01 14:06     ` Santosh Shilimkar
2014-05-01 14:06       ` Santosh Shilimkar
2014-05-01 14:06       ` Santosh Shilimkar
2014-05-02 14:41     ` Rob Herring
2014-05-02 14:41       ` Rob Herring
2014-05-02 14:41       ` Rob Herring
2014-05-02 16:41       ` Santosh Shilimkar
2014-05-02 16:41         ` Santosh Shilimkar
2014-05-14 10:12     ` Grant Likely
2014-05-14 10:12       ` Grant Likely
2014-05-14 10:12       ` Grant Likely
2014-06-02  6:37 ` Shawn Guo
2014-06-02  6:37   ` Shawn Guo
2014-06-02  6:37   ` Shawn Guo
2014-06-02 13:24   ` Santosh Shilimkar
2014-06-02 13:24     ` Santosh Shilimkar
2014-06-02 15:06     ` Arnd Bergmann
2014-06-02 15:06       ` Arnd Bergmann
2014-06-02 15:06       ` Arnd Bergmann
2014-06-02 15:54       ` Santosh Shilimkar
2014-06-02 15:54         ` Santosh Shilimkar
2014-06-02 15:54         ` Santosh Shilimkar
2014-06-02 19:00         ` Arnd Bergmann
2014-06-02 19:00           ` Arnd Bergmann
2014-06-02 19:08           ` Santosh Shilimkar
2014-06-02 19:08             ` Santosh Shilimkar
2014-06-02 19:08             ` Santosh Shilimkar

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=536A33F9.3040406@ti.com \
    --to=santosh.shilimkar@ti.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /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.