linux-sh.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2 0/2] R8A7779/Marzen: HPB-DMAC support for SDHI0
@ 2013-08-25 17:43 Sergei Shtylyov
  2013-08-25 17:46 ` [PATCH v2 1/2] ARM: shmobile: r8a7779: add HPB-DMAC support Sergei Shtylyov
                   ` (2 more replies)
  0 siblings, 3 replies; 12+ messages in thread
From: Sergei Shtylyov @ 2013-08-25 17:43 UTC (permalink / raw)
  To: linux-arm-kernel

Hello.

   Here's the set of 2 patches against the Simon Horman's 'renesas.git' repo,
'renesas-devel-20130823' tag. Here we add the HPB-DMAC platform code working on
R8A7779 and enable DMA for SDHI0 on Marzen. The patchset depends on the R-Car
HPB-DMAC driver patch posted earlier.

[1/2] ARM: shmobile: r8a7779: add HPB-DMAC support
[2/2] ARM: shmobile: Marzen: enable DMA for SDHI0

WBR, Sergei

^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH v2 1/2] ARM: shmobile: r8a7779: add HPB-DMAC support
  2013-08-25 17:43 [PATCH v2 0/2] R8A7779/Marzen: HPB-DMAC support for SDHI0 Sergei Shtylyov
@ 2013-08-25 17:46 ` Sergei Shtylyov
  2013-09-27  4:52   ` Simon Horman
  2013-08-25 17:47 ` [PATCH v2 2/2] ARM: shmobile: Marzen: enable DMA for SDHI0 Sergei Shtylyov
  2013-08-26  7:36 ` [PATCH v2 0/2] R8A7779/Marzen: HPB-DMAC support " Simon Horman
  2 siblings, 1 reply; 12+ messages in thread
From: Sergei Shtylyov @ 2013-08-25 17:46 UTC (permalink / raw)
  To: linux-arm-kernel

From: Max Filippov <max.filippov@cogentembedded.com>

Add HPB-DMAC platform device on R8A7779 SoC along with its slave and channel
configurations (only for SDHI0 so far).

Signed-off-by: Max Filippov <max.filippov@cogentembedded.com>
[Sergei: moved *enum* declaring HPB-DMAC slave IDs from now removed <mach/dma.h>
to <mach/r8a7779.h>, removed #include <mach/dma.h> from setup-r8a7779.c, removed
SSI-related *enum* values and SSI-related data from hpb_dmae_slaves[] and
hpb_dmae_channels[], added ASYNCMDR.ASBTMD{20|24|43} and ASYNCMDR.ASMD{20|24|43}
fields/values, fixed comments to ASYNCMDR.ASBTMD2[123] and ASYNCMDR.ASMD2[123]
fields/values, renamed all the bit/field/value #define's to include 'HBP_DMAE_'
prefix to match the driver, moved comments after the element initializers of
hpb_dmae_channels[].]
Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>

---
Changes in version 2:
- renamed all the bit/field/value #define's to include 'HBP_DMAE_' prefix to
  match the driver;
- added #define's for MMC[01] related fields of the ASYNCMDR register.

 arch/arm/mach-shmobile/include/mach/r8a7779.h |    7 +
 arch/arm/mach-shmobile/setup-r8a7779.c        |  154 ++++++++++++++++++++++++++
 2 files changed, 161 insertions(+)

Index: renesas/arch/arm/mach-shmobile/include/mach/r8a7779.h
=================================--- renesas.orig/arch/arm/mach-shmobile/include/mach/r8a7779.h
+++ renesas/arch/arm/mach-shmobile/include/mach/r8a7779.h
@@ -5,6 +5,13 @@
 #include <linux/pm_domain.h>
 #include <linux/sh_eth.h>
 
+/* HPB-DMA slave IDs */
+enum {
+	HPBDMA_SLAVE_DUMMY,
+	HPBDMA_SLAVE_SDHI0_TX,
+	HPBDMA_SLAVE_SDHI0_RX,
+};
+
 struct platform_device;
 
 struct r8a7779_pm_ch {
Index: renesas/arch/arm/mach-shmobile/setup-r8a7779.c
=================================--- renesas.orig/arch/arm/mach-shmobile/setup-r8a7779.c
+++ renesas/arch/arm/mach-shmobile/setup-r8a7779.c
@@ -25,6 +25,7 @@
 #include <linux/irqchip.h>
 #include <linux/irqchip/arm-gic.h>
 #include <linux/of_platform.h>
+#include <linux/platform_data/dma-rcar-hpbdma.h>
 #include <linux/platform_data/gpio-rcar.h>
 #include <linux/platform_data/irq-renesas-intc-irqpin.h>
 #include <linux/platform_device.h>
@@ -605,6 +606,158 @@ static struct resource ether_resources[]
 	},
 };
 
+/* HPB-DMA */
+
+/* Asynchronous mode register bits */
+#define HPB_DMAE_ASYNCMDR_ASMD43_MASK		BIT(23)	/* MMC1 */
+#define HPB_DMAE_ASYNCMDR_ASMD43_SINGLE		BIT(23)	/* MMC1 */
+#define HPB_DMAE_ASYNCMDR_ASMD43_MULTI		0	/* MMC1 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD43_MASK		BIT(22)	/* MMC1 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD43_BURST	BIT(22)	/* MMC1 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD43_NBURST	0	/* MMC1 */
+#define HPB_DMAE_ASYNCMDR_ASMD24_MASK		BIT(21)	/* MMC0 */
+#define HPB_DMAE_ASYNCMDR_ASMD24_SINGLE		BIT(21)	/* MMC0 */
+#define HPB_DMAE_ASYNCMDR_ASMD24_MULTI		0	/* MMC0 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD24_MASK		BIT(20)	/* MMC0 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD24_BURST	BIT(20)	/* MMC0 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD24_NBURST	0	/* MMC0 */
+#define HPB_DMAE_ASYNCMDR_ASMD41_MASK		BIT(19)	/* SDHI3 */
+#define HPB_DMAE_ASYNCMDR_ASMD41_SINGLE		BIT(19)	/* SDHI3 */
+#define HPB_DMAE_ASYNCMDR_ASMD41_MULTI		0	/* SDHI3 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD41_MASK		BIT(18)	/* SDHI3 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD41_BURST	BIT(18)	/* SDHI3 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD41_NBURST	0	/* SDHI3 */
+#define HPB_DMAE_ASYNCMDR_ASMD40_MASK		BIT(17)	/* SDHI3 */
+#define HPB_DMAE_ASYNCMDR_ASMD40_SINGLE		BIT(17)	/* SDHI3 */
+#define HPB_DMAE_ASYNCMDR_ASMD40_MULTI		0	/* SDHI3 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD40_MASK		BIT(16)	/* SDHI3 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD40_BURST	BIT(16)	/* SDHI3 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD40_NBURST	0	/* SDHI3 */
+#define HPB_DMAE_ASYNCMDR_ASMD39_MASK		BIT(15)	/* SDHI3 */
+#define HPB_DMAE_ASYNCMDR_ASMD39_SINGLE		BIT(15)	/* SDHI3 */
+#define HPB_DMAE_ASYNCMDR_ASMD39_MULTI		0	/* SDHI3 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD39_MASK		BIT(14)	/* SDHI3 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD39_BURST	BIT(14)	/* SDHI3 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD39_NBURST	0	/* SDHI3 */
+#define HPB_DMAE_ASYNCMDR_ASMD27_MASK		BIT(13)	/* SDHI2 */
+#define HPB_DMAE_ASYNCMDR_ASMD27_SINGLE		BIT(13)	/* SDHI2 */
+#define HPB_DMAE_ASYNCMDR_ASMD27_MULTI		0	/* SDHI2 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD27_MASK		BIT(12)	/* SDHI2 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD27_BURST	BIT(12)	/* SDHI2 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD27_NBURST	0	/* SDHI2 */
+#define HPB_DMAE_ASYNCMDR_ASMD26_MASK		BIT(11)	/* SDHI2 */
+#define HPB_DMAE_ASYNCMDR_ASMD26_SINGLE		BIT(11)	/* SDHI2 */
+#define HPB_DMAE_ASYNCMDR_ASMD26_MULTI		0	/* SDHI2 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD26_MASK		BIT(10)	/* SDHI2 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD26_BURST	BIT(10)	/* SDHI2 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD26_NBURST	0	/* SDHI2 */
+#define HPB_DMAE_ASYNCMDR_ASMD25_MASK		BIT(9)	/* SDHI2 */
+#define HPB_DMAE_ASYNCMDR_ASMD25_SINGLE		BIT(9)	/* SDHI2 */
+#define HPB_DMAE_ASYNCMDR_ASMD25_MULTI		0	/* SDHI2 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD25_MASK		BIT(8)	/* SDHI2 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD25_BURST	BIT(8)	/* SDHI2 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD25_NBURST	0	/* SDHI2 */
+#define HPB_DMAE_ASYNCMDR_ASMD23_MASK		BIT(7)	/* SDHI0 */
+#define HPB_DMAE_ASYNCMDR_ASMD23_SINGLE		BIT(7)	/* SDHI0 */
+#define HPB_DMAE_ASYNCMDR_ASMD23_MULTI		0	/* SDHI0 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD23_MASK		BIT(6)	/* SDHI0 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD23_BURST	BIT(6)	/* SDHI0 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD23_NBURST	0	/* SDHI0 */
+#define HPB_DMAE_ASYNCMDR_ASMD22_MASK		BIT(5)	/* SDHI0 */
+#define HPB_DMAE_ASYNCMDR_ASMD22_SINGLE		BIT(5)	/* SDHI0 */
+#define HPB_DMAE_ASYNCMDR_ASMD22_MULTI		0	/* SDHI0 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD22_MASK		BIT(4)	/* SDHI0 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD22_BURST	BIT(4)	/* SDHI0 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD22_NBURST	0	/* SDHI0 */
+#define HPB_DMAE_ASYNCMDR_ASMD21_MASK		BIT(3)	/* SDHI0 */
+#define HPB_DMAE_ASYNCMDR_ASMD21_SINGLE		BIT(3)	/* SDHI0 */
+#define HPB_DMAE_ASYNCMDR_ASMD21_MULTI		0	/* SDHI0 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD21_MASK		BIT(2)	/* SDHI0 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD21_BURST	BIT(2)	/* SDHI0 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD21_NBURST	0	/* SDHI0 */
+#define HPB_DMAE_ASYNCMDR_ASMD20_MASK		BIT(1)	/* SDHI1 */
+#define HPB_DMAE_ASYNCMDR_ASMD20_SINGLE		BIT(1)	/* SDHI1 */
+#define HPB_DMAE_ASYNCMDR_ASMD20_MULTI		0	/* SDHI1 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD20_MASK		BIT(0)	/* SDHI1 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD20_BURST	BIT(0)	/* SDHI1 */
+#define HPB_DMAE_ASYNCMDR_ASBTMD20_NBURST	0	/* SDHI1 */
+
+static const struct hpb_dmae_slave_config hpb_dmae_slaves[] = {
+	{
+		.id	= HPBDMA_SLAVE_SDHI0_TX,
+		.addr	= 0xffe4c000 + 0x30,
+		.dcr	= HPB_DMAE_DCR_SPDS_16BIT |
+			  HPB_DMAE_DCR_DMDL |
+			  HPB_DMAE_DCR_DPDS_16BIT,
+		.rstr	= HPB_DMAE_ASYNCRSTR_ASRST21 |
+			  HPB_DMAE_ASYNCRSTR_ASRST22 |
+			  HPB_DMAE_ASYNCRSTR_ASRST23,
+		.mdr	= HPB_DMAE_ASYNCMDR_ASMD21_SINGLE |
+			  HPB_DMAE_ASYNCMDR_ASBTMD21_NBURST,
+		.mdm	= HPB_DMAE_ASYNCMDR_ASMD21_MASK |
+			  HPB_DMAE_ASYNCMDR_ASBTMD21_MASK,
+		.port	= 0x0D0C,
+		.flags	= HPB_DMAE_SET_ASYNC_RESET | HPB_DMAE_SET_ASYNC_MODE,
+		.dma_ch	= 21,
+	}, {
+		.id	= HPBDMA_SLAVE_SDHI0_RX,
+		.addr	= 0xffe4c000 + 0x30,
+		.dcr	= HPB_DMAE_DCR_SMDL |
+			  HPB_DMAE_DCR_SPDS_16BIT |
+			  HPB_DMAE_DCR_DPDS_16BIT,
+		.rstr	= HPB_DMAE_ASYNCRSTR_ASRST21 |
+			  HPB_DMAE_ASYNCRSTR_ASRST22 |
+			  HPB_DMAE_ASYNCRSTR_ASRST23,
+		.mdr	= HPB_DMAE_ASYNCMDR_ASMD22_SINGLE |
+			  HPB_DMAE_ASYNCMDR_ASBTMD22_NBURST,
+		.mdm	= HPB_DMAE_ASYNCMDR_ASMD22_MASK |
+			  HPB_DMAE_ASYNCMDR_ASBTMD22_MASK,
+		.port	= 0x0D0C,
+		.flags	= HPB_DMAE_SET_ASYNC_RESET | HPB_DMAE_SET_ASYNC_MODE,
+		.dma_ch	= 22,
+	},
+};
+
+static const struct hpb_dmae_channel hpb_dmae_channels[] = {
+	HPB_DMAE_CHANNEL(0x93, HPBDMA_SLAVE_SDHI0_TX), /* ch. 21 */
+	HPB_DMAE_CHANNEL(0x93, HPBDMA_SLAVE_SDHI0_RX), /* ch. 22 */
+};
+
+static struct hpb_dmae_pdata dma_platform_data __initdata = {
+	.slaves			= hpb_dmae_slaves,
+	.num_slaves		= ARRAY_SIZE(hpb_dmae_slaves),
+	.channels		= hpb_dmae_channels,
+	.num_channels		= ARRAY_SIZE(hpb_dmae_channels),
+	.ts_shift		= {
+		[XMIT_SZ_8BIT]	= 0,
+		[XMIT_SZ_16BIT]	= 1,
+		[XMIT_SZ_32BIT]	= 2,
+	},
+	.num_hw_channels	= 44,
+};
+
+static struct resource hpb_dmae_resources[] __initdata = {
+	/* Channel registers */
+	DEFINE_RES_MEM(0xffc08000, 0x1000),
+	/* Common registers */
+	DEFINE_RES_MEM(0xffc09000, 0x170),
+	/* Asynchronous reset registers */
+	DEFINE_RES_MEM(0xffc00300, 4),
+	/* Asynchronous mode registers */
+	DEFINE_RES_MEM(0xffc00400, 4),
+	/* IRQ for DMA channels */
+	DEFINE_RES_NAMED(gic_iid(0x8e), 12, NULL, IORESOURCE_IRQ),
+};
+
+static void __init r8a7779_register_hpb_dmae(void)
+{
+	platform_device_register_resndata(&platform_bus, "hpb-dma-engine", -1,
+					  hpb_dmae_resources,
+					  ARRAY_SIZE(hpb_dmae_resources),
+					  &dma_platform_data,
+					  sizeof(dma_platform_data));
+}
+
 static struct platform_device *r8a7779_devices_dt[] __initdata = {
 	&scif0_device,
 	&scif1_device,
@@ -638,6 +791,7 @@ void __init r8a7779_add_standard_devices
 			    ARRAY_SIZE(r8a7779_devices_dt));
 	platform_add_devices(r8a7779_standard_devices,
 			    ARRAY_SIZE(r8a7779_standard_devices));
+	r8a7779_register_hpb_dmae();
 }
 
 void __init r8a7779_add_ether_device(struct sh_eth_plat_data *pdata)


^ permalink raw reply	[flat|nested] 12+ messages in thread

* [PATCH v2 2/2] ARM: shmobile: Marzen: enable DMA for SDHI0
  2013-08-25 17:43 [PATCH v2 0/2] R8A7779/Marzen: HPB-DMAC support for SDHI0 Sergei Shtylyov
  2013-08-25 17:46 ` [PATCH v2 1/2] ARM: shmobile: r8a7779: add HPB-DMAC support Sergei Shtylyov
@ 2013-08-25 17:47 ` Sergei Shtylyov
  2013-09-25  6:55   ` Simon Horman
  2013-09-27  4:55   ` Simon Horman
  2013-08-26  7:36 ` [PATCH v2 0/2] R8A7779/Marzen: HPB-DMAC support " Simon Horman
  2 siblings, 2 replies; 12+ messages in thread
From: Sergei Shtylyov @ 2013-08-25 17:47 UTC (permalink / raw)
  To: linux-arm-kernel

From: Max Filippov <max.filippov@cogentembedded.com>

Pass HPB-DMA slave IDs in the SDHI0 platform data to enable DMA in the SDHI
driver.

Signed-off-by: Max Filippov <max.filippov@cogentembedded.com>
[Sergei: removed #include <mach/dma.h>]
Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>

---
Changes in version 2:
- refreshed the patch.

 arch/arm/mach-shmobile/board-marzen.c |    2 ++
 1 file changed, 2 insertions(+)

Index: renesas/arch/arm/mach-shmobile/board-marzen.c
=================================--- renesas.orig/arch/arm/mach-shmobile/board-marzen.c
+++ renesas/arch/arm/mach-shmobile/board-marzen.c
@@ -123,6 +123,8 @@ static struct resource sdhi0_resources[]
 };
 
 static struct sh_mobile_sdhi_info sdhi0_platform_data = {
+	.dma_slave_tx = HPBDMA_SLAVE_SDHI0_TX,
+	.dma_slave_rx = HPBDMA_SLAVE_SDHI0_RX,
 	.tmio_flags = TMIO_MMC_WRPROTECT_DISABLE | TMIO_MMC_HAS_IDLE_WAIT,
 	.tmio_caps = MMC_CAP_SD_HIGHSPEED,
 };

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 0/2] R8A7779/Marzen: HPB-DMAC support for SDHI0
  2013-08-25 17:43 [PATCH v2 0/2] R8A7779/Marzen: HPB-DMAC support for SDHI0 Sergei Shtylyov
  2013-08-25 17:46 ` [PATCH v2 1/2] ARM: shmobile: r8a7779: add HPB-DMAC support Sergei Shtylyov
  2013-08-25 17:47 ` [PATCH v2 2/2] ARM: shmobile: Marzen: enable DMA for SDHI0 Sergei Shtylyov
@ 2013-08-26  7:36 ` Simon Horman
  2013-08-26 11:53   ` Sergei Shtylyov
  2 siblings, 1 reply; 12+ messages in thread
From: Simon Horman @ 2013-08-26  7:36 UTC (permalink / raw)
  To: linux-arm-kernel

On Sun, Aug 25, 2013 at 09:43:32PM +0400, Sergei Shtylyov wrote:
> Hello.
> 
>    Here's the set of 2 patches against the Simon Horman's 'renesas.git' repo,
> 'renesas-devel-20130823' tag. Here we add the HPB-DMAC platform code working on
> R8A7779 and enable DMA for SDHI0 on Marzen. The patchset depends on the R-Car
> HPB-DMAC driver patch posted earlier.
> 
> [1/2] ARM: shmobile: r8a7779: add HPB-DMAC support
> [2/2] ARM: shmobile: Marzen: enable DMA for SDHI0

Hi Sergei,

have those patches been merged?
If so, do you expect them to appear in v3.12-rc1?

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 0/2] R8A7779/Marzen: HPB-DMAC support for SDHI0
  2013-08-26  7:36 ` [PATCH v2 0/2] R8A7779/Marzen: HPB-DMAC support " Simon Horman
@ 2013-08-26 11:53   ` Sergei Shtylyov
  2013-08-27  9:18     ` Simon Horman
  0 siblings, 1 reply; 12+ messages in thread
From: Sergei Shtylyov @ 2013-08-26 11:53 UTC (permalink / raw)
  To: linux-arm-kernel

Hello.

On 26-08-2013 11:36, Simon Horman wrote:

>>     Here's the set of 2 patches against the Simon Horman's 'renesas.git' repo,
>> 'renesas-devel-20130823' tag. Here we add the HPB-DMAC platform code working on
>> R8A7779 and enable DMA for SDHI0 on Marzen. The patchset depends on the R-Car
>> HPB-DMAC driver patch posted earlier.

>> [1/2] ARM: shmobile: r8a7779: add HPB-DMAC support
>> [2/2] ARM: shmobile: Marzen: enable DMA for SDHI0

> Hi Sergei,

> have those patches been merged?

    No. The driver they depend on hasn't been merged yet.

> If so, do you expect them to appear in v3.12-rc1?

    I'm not sure what to expect at this point...

WBR, Sergei


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 0/2] R8A7779/Marzen: HPB-DMAC support for SDHI0
  2013-08-26 11:53   ` Sergei Shtylyov
@ 2013-08-27  9:18     ` Simon Horman
  2013-09-04 19:56       ` Sergei Shtylyov
  0 siblings, 1 reply; 12+ messages in thread
From: Simon Horman @ 2013-08-27  9:18 UTC (permalink / raw)
  To: linux-arm-kernel

On Mon, Aug 26, 2013 at 03:53:15PM +0400, Sergei Shtylyov wrote:
> Hello.
> 
> On 26-08-2013 11:36, Simon Horman wrote:
> 
> >>    Here's the set of 2 patches against the Simon Horman's 'renesas.git' repo,
> >>'renesas-devel-20130823' tag. Here we add the HPB-DMAC platform code working on
> >>R8A7779 and enable DMA for SDHI0 on Marzen. The patchset depends on the R-Car
> >>HPB-DMAC driver patch posted earlier.
> 
> >>[1/2] ARM: shmobile: r8a7779: add HPB-DMAC support
> >>[2/2] ARM: shmobile: Marzen: enable DMA for SDHI0
> 
> >Hi Sergei,
> 
> >have those patches been merged?
> 
>    No. The driver they depend on hasn't been merged yet.
> 
> >If so, do you expect them to appear in v3.12-rc1?
> 
>    I'm not sure what to expect at this point...

Thanks, I understand.

I think that the best thing would be for you to repost this series
once the dependencies have been merge and are available
in a stable branch.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 0/2] R8A7779/Marzen: HPB-DMAC support for SDHI0
  2013-08-27  9:18     ` Simon Horman
@ 2013-09-04 19:56       ` Sergei Shtylyov
  2013-09-05  0:09         ` Simon Horman
  0 siblings, 1 reply; 12+ messages in thread
From: Sergei Shtylyov @ 2013-09-04 19:56 UTC (permalink / raw)
  To: linux-arm-kernel

Hello.

On 08/27/2013 01:18 PM, Simon Horman wrote:

>>>>     Here's the set of 2 patches against the Simon Horman's 'renesas.git' repo,
>>>> 'renesas-devel-20130823' tag. Here we add the HPB-DMAC platform code working on
>>>> R8A7779 and enable DMA for SDHI0 on Marzen. The patchset depends on the R-Car
>>>> HPB-DMAC driver patch posted earlier.

>>>> [1/2] ARM: shmobile: r8a7779: add HPB-DMAC support
>>>> [2/2] ARM: shmobile: Marzen: enable DMA for SDHI0

>>> Hi Sergei,

>>> have those patches been merged?

>>     No. The driver they depend on hasn't been merged yet.

>>> If so, do you expect them to appear in v3.12-rc1?

>>     I'm not sure what to expect at this point...

> Thanks, I understand.

> I think that the best thing would be for you to repost this series
> once the dependencies have been merge and are available
> in a stable branch.

    The driver have been merged by Vinod Koul but I'm not sure which of his 
branches qualify as stable (his 'next' branch seems to imply non-fast forward 
updates).

WBR, Sergei


^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 0/2] R8A7779/Marzen: HPB-DMAC support for SDHI0
  2013-09-04 19:56       ` Sergei Shtylyov
@ 2013-09-05  0:09         ` Simon Horman
  0 siblings, 0 replies; 12+ messages in thread
From: Simon Horman @ 2013-09-05  0:09 UTC (permalink / raw)
  To: linux-arm-kernel

On Wed, Sep 04, 2013 at 11:56:04PM +0400, Sergei Shtylyov wrote:
> Hello.
> 
> On 08/27/2013 01:18 PM, Simon Horman wrote:
> 
> >>>>    Here's the set of 2 patches against the Simon Horman's 'renesas.git' repo,
> >>>>'renesas-devel-20130823' tag. Here we add the HPB-DMAC platform code working on
> >>>>R8A7779 and enable DMA for SDHI0 on Marzen. The patchset depends on the R-Car
> >>>>HPB-DMAC driver patch posted earlier.
> 
> >>>>[1/2] ARM: shmobile: r8a7779: add HPB-DMAC support
> >>>>[2/2] ARM: shmobile: Marzen: enable DMA for SDHI0
> 
> >>>Hi Sergei,
> 
> >>>have those patches been merged?
> 
> >>    No. The driver they depend on hasn't been merged yet.
> 
> >>>If so, do you expect them to appear in v3.12-rc1?
> 
> >>    I'm not sure what to expect at this point...
> 
> >Thanks, I understand.
> 
> >I think that the best thing would be for you to repost this series
> >once the dependencies have been merge and are available
> >in a stable branch.
> 
>    The driver have been merged by Vinod Koul but I'm not sure which
> of his branches qualify as stable (his 'next' branch seems to imply
> non-fast forward updates).

Thanks Sergei,

if it is in next at this stage then we should be able
to assume that it will appear in v3.12-rc1 and we can use
that as a base once it is available.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 2/2] ARM: shmobile: Marzen: enable DMA for SDHI0
  2013-08-25 17:47 ` [PATCH v2 2/2] ARM: shmobile: Marzen: enable DMA for SDHI0 Sergei Shtylyov
@ 2013-09-25  6:55   ` Simon Horman
  2013-09-25 16:16     ` Sergei Shtylyov
  2013-09-27  4:55   ` Simon Horman
  1 sibling, 1 reply; 12+ messages in thread
From: Simon Horman @ 2013-09-25  6:55 UTC (permalink / raw)
  To: linux-arm-kernel

[ Cc: Guennadi Liakhovetski ]

On Sun, Aug 25, 2013 at 09:47:26PM +0400, Sergei Shtylyov wrote:
> From: Max Filippov <max.filippov@cogentembedded.com>
> 
> Pass HPB-DMA slave IDs in the SDHI0 platform data to enable DMA in the SDHI
> driver.
> 
> Signed-off-by: Max Filippov <max.filippov@cogentembedded.com>
> [Sergei: removed #include <mach/dma.h>]
> Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
> 
> ---
> Changes in version 2:
> - refreshed the patch.
> 
>  arch/arm/mach-shmobile/board-marzen.c |    2 ++
>  1 file changed, 2 insertions(+)
> 
> Index: renesas/arch/arm/mach-shmobile/board-marzen.c
> =================================> --- renesas.orig/arch/arm/mach-shmobile/board-marzen.c
> +++ renesas/arch/arm/mach-shmobile/board-marzen.c
> @@ -123,6 +123,8 @@ static struct resource sdhi0_resources[]
>  };
>  
>  static struct sh_mobile_sdhi_info sdhi0_platform_data = {
> +	.dma_slave_tx = HPBDMA_SLAVE_SDHI0_TX,
> +	.dma_slave_rx = HPBDMA_SLAVE_SDHI0_RX,
>  	.tmio_flags = TMIO_MMC_WRPROTECT_DISABLE | TMIO_MMC_HAS_IDLE_WAIT,
>  	.tmio_caps = MMC_CAP_SD_HIGHSPEED,
>  };

Hi,

I am intending to queue up this change for v3.13.

I am wondering if you could give me some details of dependencies
of this change on the previous patch. If possible I would
like to apply this patch in a branch that does not include the previous patch.

Also, could you provide a patch to update the marzen defconfig?

Lastly, the driver does not seem to compile as it makes use of
shdma_free_irq() which was removed by Guennadi in
c1c63a14f4f2419d ("DMA: shdma: switch to managed resource allocation").

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 2/2] ARM: shmobile: Marzen: enable DMA for SDHI0
  2013-09-25  6:55   ` Simon Horman
@ 2013-09-25 16:16     ` Sergei Shtylyov
  0 siblings, 0 replies; 12+ messages in thread
From: Sergei Shtylyov @ 2013-09-25 16:16 UTC (permalink / raw)
  To: linux-arm-kernel

Hello.

On 09/25/2013 10:55 AM, Simon Horman wrote:

> [ Cc: Guennadi Liakhovetski ]

>> From: Max Filippov <max.filippov@cogentembedded.com>

>> Pass HPB-DMA slave IDs in the SDHI0 platform data to enable DMA in the SDHI
>> driver.

>> Signed-off-by: Max Filippov <max.filippov@cogentembedded.com>
>> [Sergei: removed #include <mach/dma.h>]
>> Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>

>> ---
>> Changes in version 2:
>> - refreshed the patch.

>>   arch/arm/mach-shmobile/board-marzen.c |    2 ++
>>   1 file changed, 2 insertions(+)

>> Index: renesas/arch/arm/mach-shmobile/board-marzen.c
>> =================================>> --- renesas.orig/arch/arm/mach-shmobile/board-marzen.c
>> +++ renesas/arch/arm/mach-shmobile/board-marzen.c
>> @@ -123,6 +123,8 @@ static struct resource sdhi0_resources[]
>>   };
>>
>>   static struct sh_mobile_sdhi_info sdhi0_platform_data = {
>> +	.dma_slave_tx = HPBDMA_SLAVE_SDHI0_TX,
>> +	.dma_slave_rx = HPBDMA_SLAVE_SDHI0_RX,
>>   	.tmio_flags = TMIO_MMC_WRPROTECT_DISABLE | TMIO_MMC_HAS_IDLE_WAIT,
>>   	.tmio_caps = MMC_CAP_SD_HIGHSPEED,
>>   };

> Hi,

> I am intending to queue up this change for v3.13.

    Thanks in advance. :-)

> I am wondering if you could give me some details of dependencies
> of this change on the previous patch. If possible I would
> like to apply this patch in a branch that does not include the previous patch.

    HPBDMA_SLAVE_* are defined there. I'm afraid it's not possible to apply 
this patch separately.

> Also, could you provide a patch to update the marzen defconfig?

    Yes, I intended to.

> Lastly, the driver does not seem to compile as it makes use of
> shdma_free_irq() which was removed by Guennadi in
> c1c63a14f4f2419d ("DMA: shdma: switch to managed resource allocation").

    Thanks for the information, I wasn't aware of that.

WBR, Sergei



^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 1/2] ARM: shmobile: r8a7779: add HPB-DMAC support
  2013-08-25 17:46 ` [PATCH v2 1/2] ARM: shmobile: r8a7779: add HPB-DMAC support Sergei Shtylyov
@ 2013-09-27  4:52   ` Simon Horman
  0 siblings, 0 replies; 12+ messages in thread
From: Simon Horman @ 2013-09-27  4:52 UTC (permalink / raw)
  To: linux-arm-kernel

On Sun, Aug 25, 2013 at 09:46:23PM +0400, Sergei Shtylyov wrote:
> From: Max Filippov <max.filippov@cogentembedded.com>
> 
> Add HPB-DMAC platform device on R8A7779 SoC along with its slave and channel
> configurations (only for SDHI0 so far).
> 
> Signed-off-by: Max Filippov <max.filippov@cogentembedded.com>
> [Sergei: moved *enum* declaring HPB-DMAC slave IDs from now removed <mach/dma.h>
> to <mach/r8a7779.h>, removed #include <mach/dma.h> from setup-r8a7779.c, removed
> SSI-related *enum* values and SSI-related data from hpb_dmae_slaves[] and
> hpb_dmae_channels[], added ASYNCMDR.ASBTMD{20|24|43} and ASYNCMDR.ASMD{20|24|43}
> fields/values, fixed comments to ASYNCMDR.ASBTMD2[123] and ASYNCMDR.ASMD2[123]
> fields/values, renamed all the bit/field/value #define's to include 'HBP_DMAE_'
> prefix to match the driver, moved comments after the element initializers of
> hpb_dmae_channels[].]
> Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
> 
> ---
> Changes in version 2:
> - renamed all the bit/field/value #define's to include 'HBP_DMAE_' prefix to
>   match the driver;
> - added #define's for MMC[01] related fields of the ASYNCMDR register.
> 
>  arch/arm/mach-shmobile/include/mach/r8a7779.h |    7 +
>  arch/arm/mach-shmobile/setup-r8a7779.c        |  154 ++++++++++++++++++++++++++
>  2 files changed, 161 insertions(+)

Thanks, queued up for v3.13.

^ permalink raw reply	[flat|nested] 12+ messages in thread

* Re: [PATCH v2 2/2] ARM: shmobile: Marzen: enable DMA for SDHI0
  2013-08-25 17:47 ` [PATCH v2 2/2] ARM: shmobile: Marzen: enable DMA for SDHI0 Sergei Shtylyov
  2013-09-25  6:55   ` Simon Horman
@ 2013-09-27  4:55   ` Simon Horman
  1 sibling, 0 replies; 12+ messages in thread
From: Simon Horman @ 2013-09-27  4:55 UTC (permalink / raw)
  To: linux-arm-kernel

On Sun, Aug 25, 2013 at 09:47:26PM +0400, Sergei Shtylyov wrote:
> From: Max Filippov <max.filippov@cogentembedded.com>
> 
> Pass HPB-DMA slave IDs in the SDHI0 platform data to enable DMA in the SDHI
> driver.
> 
> Signed-off-by: Max Filippov <max.filippov@cogentembedded.com>
> [Sergei: removed #include <mach/dma.h>]
> Signed-off-by: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>

Thanks, queued up for v3.13.

Please send along a defconfig update as you mentioned you would yesterday.

Thanks.


^ permalink raw reply	[flat|nested] 12+ messages in thread

end of thread, other threads:[~2013-09-27  4:55 UTC | newest]

Thread overview: 12+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-08-25 17:43 [PATCH v2 0/2] R8A7779/Marzen: HPB-DMAC support for SDHI0 Sergei Shtylyov
2013-08-25 17:46 ` [PATCH v2 1/2] ARM: shmobile: r8a7779: add HPB-DMAC support Sergei Shtylyov
2013-09-27  4:52   ` Simon Horman
2013-08-25 17:47 ` [PATCH v2 2/2] ARM: shmobile: Marzen: enable DMA for SDHI0 Sergei Shtylyov
2013-09-25  6:55   ` Simon Horman
2013-09-25 16:16     ` Sergei Shtylyov
2013-09-27  4:55   ` Simon Horman
2013-08-26  7:36 ` [PATCH v2 0/2] R8A7779/Marzen: HPB-DMAC support " Simon Horman
2013-08-26 11:53   ` Sergei Shtylyov
2013-08-27  9:18     ` Simon Horman
2013-09-04 19:56       ` Sergei Shtylyov
2013-09-05  0:09         ` Simon Horman

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).