diff options
author | Vinod Koul <vinod.koul@linux.intel.com> | 2012-02-01 18:01:14 +0100 |
---|---|---|
committer | Vinod Koul <vinod.koul@linux.intel.com> | 2012-02-01 18:01:28 +0100 |
commit | e7211718b3aa0365a723d9b8192e6f50236a1c67 (patch) | |
tree | 35564f1a9a9fbc5eaaad2ce9e924c99afb98dcce | |
parent | Merge branch 'fixes' into next (diff) | |
parent | ARM: mach-shmobile: both USB DMAC instances on sh7372 are slave-only (diff) | |
download | linux-e7211718b3aa0365a723d9b8192e6f50236a1c67.tar.xz linux-e7211718b3aa0365a723d9b8192e6f50236a1c67.zip |
Merge branch 'fixes' into next
-rw-r--r-- | arch/arm/mach-shmobile/setup-sh7372.c | 2 | ||||
-rw-r--r-- | drivers/dma/shdma.c | 3 | ||||
-rw-r--r-- | include/linux/sh_dma.h | 1 |
3 files changed, 5 insertions, 1 deletions
diff --git a/arch/arm/mach-shmobile/setup-sh7372.c b/arch/arm/mach-shmobile/setup-sh7372.c index 6fcf304d3cdf..a83cf51fc099 100644 --- a/arch/arm/mach-shmobile/setup-sh7372.c +++ b/arch/arm/mach-shmobile/setup-sh7372.c @@ -662,6 +662,7 @@ static struct sh_dmae_pdata usb_dma0_platform_data = { .dmaor_is_32bit = 1, .needs_tend_set = 1, .no_dmars = 1, + .slave_only = 1, }; static struct resource sh7372_usb_dmae0_resources[] = { @@ -723,6 +724,7 @@ static struct sh_dmae_pdata usb_dma1_platform_data = { .dmaor_is_32bit = 1, .needs_tend_set = 1, .no_dmars = 1, + .slave_only = 1, }; static struct resource sh7372_usb_dmae1_resources[] = { diff --git a/drivers/dma/shdma.c b/drivers/dma/shdma.c index 54043cd831c8..812fd76e9c18 100644 --- a/drivers/dma/shdma.c +++ b/drivers/dma/shdma.c @@ -1262,7 +1262,8 @@ static int __init sh_dmae_probe(struct platform_device *pdev) INIT_LIST_HEAD(&shdev->common.channels); - dma_cap_set(DMA_MEMCPY, shdev->common.cap_mask); + if (!pdata->slave_only) + dma_cap_set(DMA_MEMCPY, shdev->common.cap_mask); if (pdata->slave && pdata->slave_num) dma_cap_set(DMA_SLAVE, shdev->common.cap_mask); diff --git a/include/linux/sh_dma.h b/include/linux/sh_dma.h index 8cd7fe59cf1a..425450b980b8 100644 --- a/include/linux/sh_dma.h +++ b/include/linux/sh_dma.h @@ -70,6 +70,7 @@ struct sh_dmae_pdata { unsigned int needs_tend_set:1; unsigned int no_dmars:1; unsigned int chclr_present:1; + unsigned int slave_only:1; }; /* DMA register */ |