2012-08-29 04:48:52

by Tushar Behera

[permalink] [raw]
Subject: [PATCH 0/2] ARM: EXYNOS: Set the capability of pdm0 and pdm1 as DMA_PRIVATE

DMA clients pdma0 and pdma1 are internal to the SoC and are used only
by dedicated peripherals. Since they cannot be used for generic
purpose, their capability should be set as DMA_PRIVATE.

The patches are rebased on top of v3.6-rc3.

Tushar Behera (2):
ARM: EXYNOS: Set the capability of pdm0 and pdm1 as DMA_PRIVATE
DMA: PL330: Set the capability of pdm0 and pdm1 as DMA_PRIVATE

arch/arm/mach-exynos/dma.c | 2 ++
drivers/dma/pl330.c | 1 +
2 files changed, 3 insertions(+), 0 deletions(-)

--
1.7.4.1


2012-08-29 04:48:57

by Tushar Behera

[permalink] [raw]
Subject: [PATCH 1/2] ARM: EXYNOS: Set the capability of pdm0 and pdm1 as DMA_PRIVATE

DMA clients pdma0 and pdma1 are internal to the SoC and are used only
by dedicated peripherals. Since they cannot be used for generic
purpose, their capability should be set as DMA_PRIVATE.

CC: Kukjin Kim <[email protected]>
Signed-off-by: Tushar Behera <[email protected]>
---
arch/arm/mach-exynos/dma.c | 2 ++
1 files changed, 2 insertions(+), 0 deletions(-)

diff --git a/arch/arm/mach-exynos/dma.c b/arch/arm/mach-exynos/dma.c
index f60b66d..21d568b 100644
--- a/arch/arm/mach-exynos/dma.c
+++ b/arch/arm/mach-exynos/dma.c
@@ -303,10 +303,12 @@ static int __init exynos_dma_init(void)

dma_cap_set(DMA_SLAVE, exynos_pdma0_pdata.cap_mask);
dma_cap_set(DMA_CYCLIC, exynos_pdma0_pdata.cap_mask);
+ dma_cap_set(DMA_PRIVATE, exynos_pdma0_pdata.cap_mask);
amba_device_register(&exynos_pdma0_device, &iomem_resource);

dma_cap_set(DMA_SLAVE, exynos_pdma1_pdata.cap_mask);
dma_cap_set(DMA_CYCLIC, exynos_pdma1_pdata.cap_mask);
+ dma_cap_set(DMA_PRIVATE, exynos_pdma1_pdata.cap_mask);
amba_device_register(&exynos_pdma1_device, &iomem_resource);

dma_cap_set(DMA_MEMCPY, exynos_mdma1_pdata.cap_mask);
--
1.7.4.1

2012-08-29 04:49:01

by Tushar Behera

[permalink] [raw]
Subject: [PATCH 2/2] DMA: PL330: Set the capability of pdm0 and pdm1 as DMA_PRIVATE

DMA clients pdma0 and pdma1 are internal to the SoC and are used only
by dedicated peripherals. Since they cannot be used for generic
purpose, their capability should be set as DMA_PRIVATE.

CC: Vinod Koul <[email protected]>
Signed-off-by: Tushar Behera <[email protected]>
---
drivers/dma/pl330.c | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/drivers/dma/pl330.c b/drivers/dma/pl330.c
index e4feba6..600ea5e 100644
--- a/drivers/dma/pl330.c
+++ b/drivers/dma/pl330.c
@@ -2954,6 +2954,7 @@ pl330_probe(struct amba_device *adev, const struct amba_id *id)
if (pi->pcfg.num_peri) {
dma_cap_set(DMA_SLAVE, pd->cap_mask);
dma_cap_set(DMA_CYCLIC, pd->cap_mask);
+ dma_cap_set(DMA_PRIVATE, pd->cap_mask);
}
}

--
1.7.4.1

2012-08-31 00:45:01

by Vinod Koul

[permalink] [raw]
Subject: Re: [PATCH 0/2] ARM: EXYNOS: Set the capability of pdm0 and pdm1 as DMA_PRIVATE

On Wed, 2012-08-29 at 10:16 +0530, Tushar Behera wrote:
> DMA clients pdma0 and pdma1 are internal to the SoC and are used only
> by dedicated peripherals. Since they cannot be used for generic
> purpose, their capability should be set as DMA_PRIVATE.
>
> The patches are rebased on top of v3.6-rc3.
Kukjin, if you ack them I can take thru my tree, other way round is fine
with me too.
>
> Tushar Behera (2):
> ARM: EXYNOS: Set the capability of pdm0 and pdm1 as DMA_PRIVATE
> DMA: PL330: Set the capability of pdm0 and pdm1 as DMA_PRIVATE
>
> arch/arm/mach-exynos/dma.c | 2 ++
> drivers/dma/pl330.c | 1 +
> 2 files changed, 3 insertions(+), 0 deletions(-)
>

--
~Vinod Koul
Intel Corp.