linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
From: s.hauer@pengutronix.de (Sascha Hauer)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 06/12] ARM: mxc: Setup consistent dma size at boot time
Date: Mon, 8 Aug 2011 18:47:31 +0200	[thread overview]
Message-ID: <20110808164731.GP31404@pengutronix.de> (raw)
In-Reply-To: <1312813712-22808-7-git-send-email-tixy@yxit.co.uk>

Hi Jon,

On Mon, Aug 08, 2011 at 03:28:26PM +0100, Jon Medhurst wrote:
> Signed-off-by: Jon Medhurst <tixy@yxit.co.uk>
> CC: Sascha Hauer <kernel@pengutronix.de>
> CC: Amit Kucheria <amit.kucheria@canonical.com>
> ---
>  arch/arm/plat-mxc/include/mach/common.h |    1 +
>  arch/arm/plat-mxc/include/mach/memory.h |   15 ---------------
>  arch/arm/mach-imx/mm-imx1.c             |    1 +
>  arch/arm/mach-imx/mm-imx21.c            |    1 +
>  arch/arm/mach-imx/mm-imx25.c            |    1 +
>  arch/arm/mach-imx/mm-imx27.c            |    1 +
>  arch/arm/mach-imx/mm-imx31.c            |    1 +
>  arch/arm/mach-imx/mm-imx35.c            |    1 +
>  arch/arm/mach-mx5/mm-mx50.c             |    1 +
>  arch/arm/mach-mx5/mm.c                  |    2 ++
>  arch/arm/plat-mxc/system.c              |   16 ++++++++++++++++
>  11 files changed, 26 insertions(+), 15 deletions(-)

Should the base patch be ok I'd like to rework this one. I want to
call init_consistent_dma_size on a per board base instead in a global
function with ifdeffery.

Sascha

> 
> diff --git a/arch/arm/plat-mxc/include/mach/common.h b/arch/arm/plat-mxc/include/mach/common.h
> index 4e3d978..40fb4d8 100644
> --- a/arch/arm/plat-mxc/include/mach/common.h
> +++ b/arch/arm/plat-mxc/include/mach/common.h
> @@ -72,4 +72,5 @@ extern void mxc_arch_reset_init(void __iomem *);
>  extern void mx51_efikamx_reset(void);
>  extern int mx53_revision(void);
>  extern int mx53_display_revision(void);
> +extern void __init mxc_init_consistent_dma_size(void);
>  #endif
> diff --git a/arch/arm/plat-mxc/include/mach/memory.h b/arch/arm/plat-mxc/include/mach/memory.h
> index 11be5cd..3ec84b9 100644
> --- a/arch/arm/plat-mxc/include/mach/memory.h
> +++ b/arch/arm/plat-mxc/include/mach/memory.h
> @@ -40,19 +40,4 @@
>  # endif
>  #endif
>  
> -#if defined(CONFIG_MX3_VIDEO)
> -/*
> - * Increase size of DMA-consistent memory region.
> - * This is required for mx3 camera driver to capture at least two QXGA frames.
> - */
> -#define CONSISTENT_DMA_SIZE SZ_8M
> -
> -#elif defined(CONFIG_MX1_VIDEO) || defined(CONFIG_VIDEO_MX2_HOSTSUPPORT)
> -/*
> - * Increase size of DMA-consistent memory region.
> - * This is required for i.MX camera driver to capture at least four VGA frames.
> - */
> -#define CONSISTENT_DMA_SIZE SZ_4M
> -#endif /* CONFIG_MX1_VIDEO || CONFIG_VIDEO_MX2_HOSTSUPPORT */
> -
>  #endif /* __ASM_ARCH_MXC_MEMORY_H__ */
> diff --git a/arch/arm/mach-imx/mm-imx1.c b/arch/arm/mach-imx/mm-imx1.c
> index 2bded59..f70e318 100644
> --- a/arch/arm/mach-imx/mm-imx1.c
> +++ b/arch/arm/mach-imx/mm-imx1.c
> @@ -33,6 +33,7 @@ static struct map_desc imx_io_desc[] __initdata = {
>  void __init mx1_map_io(void)
>  {
>  	iotable_init(imx_io_desc, ARRAY_SIZE(imx_io_desc));
> +	mxc_init_consistent_dma_size();
>  }
>  
>  void __init imx1_init_early(void)
> diff --git a/arch/arm/mach-imx/mm-imx21.c b/arch/arm/mach-imx/mm-imx21.c
> index 3f05dfe..440816a 100644
> --- a/arch/arm/mach-imx/mm-imx21.c
> +++ b/arch/arm/mach-imx/mm-imx21.c
> @@ -60,6 +60,7 @@ static struct map_desc imx21_io_desc[] __initdata = {
>  void __init mx21_map_io(void)
>  {
>  	iotable_init(imx21_io_desc, ARRAY_SIZE(imx21_io_desc));
> +	mxc_init_consistent_dma_size();
>  }
>  
>  void __init imx21_init_early(void)
> diff --git a/arch/arm/mach-imx/mm-imx25.c b/arch/arm/mach-imx/mm-imx25.c
> index cc4d152..12f5759 100644
> --- a/arch/arm/mach-imx/mm-imx25.c
> +++ b/arch/arm/mach-imx/mm-imx25.c
> @@ -48,6 +48,7 @@ static struct map_desc mx25_io_desc[] __initdata = {
>  void __init mx25_map_io(void)
>  {
>  	iotable_init(mx25_io_desc, ARRAY_SIZE(mx25_io_desc));
> +	mxc_init_consistent_dma_size();
>  }
>  
>  void __init imx25_init_early(void)
> diff --git a/arch/arm/mach-imx/mm-imx27.c b/arch/arm/mach-imx/mm-imx27.c
> index 96dd1f5..8799265 100644
> --- a/arch/arm/mach-imx/mm-imx27.c
> +++ b/arch/arm/mach-imx/mm-imx27.c
> @@ -60,6 +60,7 @@ static struct map_desc imx27_io_desc[] __initdata = {
>  void __init mx27_map_io(void)
>  {
>  	iotable_init(imx27_io_desc, ARRAY_SIZE(imx27_io_desc));
> +	mxc_init_consistent_dma_size();
>  }
>  
>  void __init imx27_init_early(void)
> diff --git a/arch/arm/mach-imx/mm-imx31.c b/arch/arm/mach-imx/mm-imx31.c
> index b7c55e7..b2331cf 100644
> --- a/arch/arm/mach-imx/mm-imx31.c
> +++ b/arch/arm/mach-imx/mm-imx31.c
> @@ -45,6 +45,7 @@ static struct map_desc mx31_io_desc[] __initdata = {
>  void __init mx31_map_io(void)
>  {
>  	iotable_init(mx31_io_desc, ARRAY_SIZE(mx31_io_desc));
> +	mxc_init_consistent_dma_size();
>  }
>  
>  void __init imx31_init_early(void)
> diff --git a/arch/arm/mach-imx/mm-imx35.c b/arch/arm/mach-imx/mm-imx35.c
> index f49bac7..eb60521 100644
> --- a/arch/arm/mach-imx/mm-imx35.c
> +++ b/arch/arm/mach-imx/mm-imx35.c
> @@ -41,6 +41,7 @@ static struct map_desc mx35_io_desc[] __initdata = {
>  void __init mx35_map_io(void)
>  {
>  	iotable_init(mx35_io_desc, ARRAY_SIZE(mx35_io_desc));
> +	mxc_init_consistent_dma_size();
>  }
>  
>  void __init imx35_init_early(void)
> diff --git a/arch/arm/mach-mx5/mm-mx50.c b/arch/arm/mach-mx5/mm-mx50.c
> index 77e374c..04a02cc 100644
> --- a/arch/arm/mach-mx5/mm-mx50.c
> +++ b/arch/arm/mach-mx5/mm-mx50.c
> @@ -46,6 +46,7 @@ static struct map_desc mx50_io_desc[] __initdata = {
>  void __init mx50_map_io(void)
>  {
>  	iotable_init(mx50_io_desc, ARRAY_SIZE(mx50_io_desc));
> +	mxc_init_consistent_dma_size();
>  }
>  
>  void __init imx50_init_early(void)
> diff --git a/arch/arm/mach-mx5/mm.c b/arch/arm/mach-mx5/mm.c
> index baea6e5..e0ca2b5 100644
> --- a/arch/arm/mach-mx5/mm.c
> +++ b/arch/arm/mach-mx5/mm.c
> @@ -49,6 +49,7 @@ static struct map_desc mx53_io_desc[] __initdata = {
>  void __init mx51_map_io(void)
>  {
>  	iotable_init(mx51_io_desc, ARRAY_SIZE(mx51_io_desc));
> +	mxc_init_consistent_dma_size();
>  }
>  
>  void __init imx51_init_early(void)
> @@ -61,6 +62,7 @@ void __init imx51_init_early(void)
>  void __init mx53_map_io(void)
>  {
>  	iotable_init(mx53_io_desc, ARRAY_SIZE(mx53_io_desc));
> +	mxc_init_consistent_dma_size();
>  }
>  
>  void __init imx53_init_early(void)
> diff --git a/arch/arm/plat-mxc/system.c b/arch/arm/plat-mxc/system.c
> index 8024f2a..75d1592 100644
> --- a/arch/arm/plat-mxc/system.c
> +++ b/arch/arm/plat-mxc/system.c
> @@ -21,6 +21,7 @@
>  #include <linux/io.h>
>  #include <linux/err.h>
>  #include <linux/delay.h>
> +#include <linux/dma-mapping.h>
>  
>  #include <mach/hardware.h>
>  #include <mach/common.h>
> @@ -74,3 +75,18 @@ void mxc_arch_reset_init(void __iomem *base)
>  {
>  	wdog_base = base;
>  }
> +
> +void __init mxc_init_consistent_dma_size(void)
> +{
> +#if defined(CONFIG_MX3_VIDEO)
> +
> +	/* Required for mx3 camera driver to capture at least two QXGA frames */
> +	init_consistent_dma_size(SZ_8M);
> +
> +#elif defined(CONFIG_MX1_VIDEO) || defined(CONFIG_VIDEO_MX2_HOSTSUPPORT)
> +
> +	/* Required for i.MX camera driver to capture at least 4 VGA frames */
> +	init_consistent_dma_size(SZ_4M);
> +
> +#endif
> +}
> -- 
> 1.7.2.5
> 
> 

-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

  reply	other threads:[~2011-08-08 16:47 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-08-08 14:28 [PATCH 0/12] ARM: Remove define CONSISTENT_DMA_SIZE Jon Medhurst
2011-08-08 14:28 ` [PATCH 01/12] ARM: Add init_consistent_dma_size() Jon Medhurst
2011-08-18 13:02   ` Nicolas Pitre
2011-08-08 14:28 ` [PATCH 02/12] ARM: omap: Setup consistent dma size at boot time Jon Medhurst
2011-08-08 14:28 ` [PATCH 03/12] ARM: mach-s3c64xx: " Jon Medhurst
2011-08-08 14:28 ` [PATCH 04/12] ARM: mach-s5p64x0: " Jon Medhurst
2011-08-08 14:28 ` [PATCH 05/12] ARM: mach-s5pv210: " Jon Medhurst
2011-08-11 12:50   ` Pavel Machek
2011-08-11 13:08     ` Tixy
2011-08-12 15:09       ` Pavel Machek
2011-08-08 14:28 ` [PATCH 06/12] ARM: mxc: " Jon Medhurst
2011-08-08 16:47   ` Sascha Hauer [this message]
2011-08-08 17:07     ` Tixy
2011-08-18  3:12     ` Nicolas Pitre
2011-08-18  8:13       ` Tixy
2011-08-18 18:51         ` Sascha Hauer
2011-08-19  9:08           ` Tixy
2011-08-19 17:00             ` Sascha Hauer
2011-08-22 11:05               ` Tixy
2011-08-22 11:37                 ` Sascha Hauer
2011-08-08 14:28 ` [PATCH 07/12] ARM: mach-davinci: " Jon Medhurst
2011-08-08 14:28 ` [PATCH 08/12] ARM: mach-u300: " Jon Medhurst
2011-08-09  9:31   ` Linus Walleij
2011-08-08 14:28 ` [PATCH 09/12] ARM: mach-at91: " Jon Medhurst
2011-08-08 19:52   ` Nicolas Ferre
2011-08-08 14:28 ` [PATCH 10/12] ARM: mach-bcmring: " Jon Medhurst
2011-08-08 14:28 ` [PATCH 11/12] ARM: mach-shmobile: " Jon Medhurst
2011-08-08 14:28 ` [PATCH 12/12] ARM: Remove support for macro CONSISTENT_DMA_SIZE Jon Medhurst
2011-08-22 13:06 ` Submitting patchset: ARM: Remove define CONSISTENT_DMA_SIZE Tixy
2011-08-22 13:59   ` Nicolas Pitre

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=20110808164731.GP31404@pengutronix.de \
    --to=s.hauer@pengutronix.de \
    --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 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).