[PATCH v2] ARM: Samsung: s5p-fimc: fix dma coherent mask
Kukjin Kim
kgene.kim at samsung.com
Thu Sep 9 07:20:17 EDT 2010
Marek Szyprowski wrote:
>
> FIMC driver uses DMA_coherent allocator, which requires proper dma mask
> to be set.
>
> Signed-off-by: Marek Szyprowski <m.szyprowski at samsung.com>
> Signed-off-by: Kyungmin Park <kyungmin.park at samsung.com>
> ---
>
> Chnages since v1:
> - use DMA_BIT_MASK() macro, minor coding style change
>
> ---
> arch/arm/plat-s5p/dev-fimc0.c | 7 +++++++
> arch/arm/plat-s5p/dev-fimc1.c | 7 +++++++
> arch/arm/plat-s5p/dev-fimc2.c | 7 +++++++
> 3 files changed, 21 insertions(+), 0 deletions(-)
>
> diff --git a/arch/arm/plat-s5p/dev-fimc0.c b/arch/arm/plat-s5p/dev-fimc0.c
> index d3f1a9b..f9203fa 100644
> --- a/arch/arm/plat-s5p/dev-fimc0.c
> +++ b/arch/arm/plat-s5p/dev-fimc0.c
> @@ -10,6 +10,7 @@
> */
>
> #include <linux/kernel.h>
> +#include <linux/dma-mapping.h>
> #include <linux/platform_device.h>
> #include <linux/interrupt.h>
> #include <linux/ioport.h>
> @@ -28,9 +29,15 @@ static struct resource s5p_fimc0_resource[] = {
> },
> };
>
> +static u64 s5p_fimc0_dma_mask = DMA_BIT_MASK(32);
> +
> struct platform_device s5p_device_fimc0 = {
> .name = "s5p-fimc",
> .id = 0,
> .num_resources = ARRAY_SIZE(s5p_fimc0_resource),
> .resource = s5p_fimc0_resource,
> + .dev = {
> + .dma_mask = &s5p_fimc0_dma_mask,
> + .coherent_dma_mask = DMA_BIT_MASK(32),
> + },
> };
> diff --git a/arch/arm/plat-s5p/dev-fimc1.c b/arch/arm/plat-s5p/dev-fimc1.c
> index 41bd698..7ed91a3 100644
> --- a/arch/arm/plat-s5p/dev-fimc1.c
> +++ b/arch/arm/plat-s5p/dev-fimc1.c
> @@ -10,6 +10,7 @@
> */
>
> #include <linux/kernel.h>
> +#include <linux/dma-mapping.h>
> #include <linux/platform_device.h>
> #include <linux/interrupt.h>
> #include <linux/ioport.h>
> @@ -28,9 +29,15 @@ static struct resource s5p_fimc1_resource[] = {
> },
> };
>
> +static u64 s5p_fimc1_dma_mask = DMA_BIT_MASK(32);
> +
> struct platform_device s5p_device_fimc1 = {
> .name = "s5p-fimc",
> .id = 1,
> .num_resources = ARRAY_SIZE(s5p_fimc1_resource),
> .resource = s5p_fimc1_resource,
> + .dev = {
> + .dma_mask = &s5p_fimc1_dma_mask,
> + .coherent_dma_mask = DMA_BIT_MASK(32),
> + },
> };
> diff --git a/arch/arm/plat-s5p/dev-fimc2.c b/arch/arm/plat-s5p/dev-fimc2.c
> index dfddeda..5543d6373 100644
> --- a/arch/arm/plat-s5p/dev-fimc2.c
> +++ b/arch/arm/plat-s5p/dev-fimc2.c
> @@ -10,6 +10,7 @@
> */
>
> #include <linux/kernel.h>
> +#include <linux/dma-mapping.h>
> #include <linux/platform_device.h>
> #include <linux/interrupt.h>
> #include <linux/ioport.h>
> @@ -28,9 +29,15 @@ static struct resource s5p_fimc2_resource[] = {
> },
> };
>
> +static u64 s5p_fimc2_dma_mask = DMA_BIT_MASK(32);
> +
> struct platform_device s5p_device_fimc2 = {
> .name = "s5p-fimc",
> .id = 2,
> .num_resources = ARRAY_SIZE(s5p_fimc2_resource),
> .resource = s5p_fimc2_resource,
> + .dev = {
> + .dma_mask = &s5p_fimc2_dma_mask,
> + .coherent_dma_mask = DMA_BIT_MASK(32),
> + },
> };
> --
> 1.7.2.2
looks good to me..will apply :-)
Thanks.
Best regards,
Kgene.
--
Kukjin Kim <kgene.kim at samsung.com>, Senior Engineer,
SW Solution Development Team, Samsung Electronics Co., Ltd.
More information about the linux-arm-kernel
mailing list