linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* i.MX patches for next
@ 2010-11-05  9:46 Sascha Hauer
  2010-11-05  9:46 ` [PATCH 1/7] ARM i.MX51 boards: Do not use PHYS_OFFSET Sascha Hauer
                   ` (6 more replies)
  0 siblings, 7 replies; 13+ messages in thread
From: Sascha Hauer @ 2010-11-05  9:46 UTC (permalink / raw)
  To: linux-arm-kernel


The following changes since commit 255ed73db5c48bcdda69aac642e265fde60564e5:

  imx: remove deprecated symbols as all users are gone now (2010-11-05 09:12:31 +0100)

are available in the git repository at:
  git://git.pengutronix.de/git/imx/linux-2.6.git imx-pu

Sascha Hauer (7):
      ARM i.MX51 boards: Do not use PHYS_OFFSET
      ARM i.MX irq: Compile avic irq code only on SoCs that need it
      ARM i.MX51: Make CONFIG_MXC_TZIC an invisible option
      ARM i.MX irq: Allow runtime decision between AVIC and TZIC
      ARM i.MX DMA: return gracefully on different socs
      ARM i.MX51: return gracefully on different socs
      ARM i.MX27 pm: return gracefully on different socs

 arch/arm/mach-imx/Kconfig                    |    3 +
 arch/arm/mach-imx/dma-v1.c                   |    2 +-
 arch/arm/mach-imx/pm-imx27.c                 |    3 +
 arch/arm/mach-mx3/Kconfig                    |    2 +
 arch/arm/mach-mx5/board-cpuimx51.c           |    2 +-
 arch/arm/mach-mx5/board-cpuimx51sd.c         |    2 +-
 arch/arm/mach-mx5/board-mx51_3ds.c           |    2 +-
 arch/arm/mach-mx5/cpu.c                      |    3 +
 arch/arm/plat-mxc/Kconfig                    |   11 ++--
 arch/arm/plat-mxc/Makefile                   |    3 +-
 arch/arm/plat-mxc/{irq.c => avic.c}          |    2 +
 arch/arm/plat-mxc/cpu.c                      |    3 +
 arch/arm/plat-mxc/include/mach/entry-macro.S |   66 ++++++++++++++++----------
 arch/arm/plat-mxc/include/mach/mxc.h         |    8 +++
 arch/arm/plat-mxc/tzic.c                     |    3 +
 15 files changed, 79 insertions(+), 36 deletions(-)
 rename arch/arm/plat-mxc/{irq.c => avic.c} (98%)

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

* [PATCH 1/7] ARM i.MX51 boards: Do not use PHYS_OFFSET
  2010-11-05  9:46 i.MX patches for next Sascha Hauer
@ 2010-11-05  9:46 ` Sascha Hauer
  2010-11-05 10:30   ` Uwe Kleine-König
  2010-11-05  9:46 ` [PATCH 2/7] ARM i.MX irq: Compile avic irq code only on SoCs that need it Sascha Hauer
                   ` (5 subsequent siblings)
  6 siblings, 1 reply; 13+ messages in thread
From: Sascha Hauer @ 2010-11-05  9:46 UTC (permalink / raw)
  To: linux-arm-kernel

PHYS_OFFSET may become a variable once the runtime PHYS_OFFSET
patch is merged, so use MX51_PHYS_OFFSET for boot_params.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
---
 arch/arm/mach-mx5/board-cpuimx51.c   |    2 +-
 arch/arm/mach-mx5/board-cpuimx51sd.c |    2 +-
 arch/arm/mach-mx5/board-mx51_3ds.c   |    2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/arch/arm/mach-mx5/board-cpuimx51.c b/arch/arm/mach-mx5/board-cpuimx51.c
index 6a9792f..1e01ec7 100644
--- a/arch/arm/mach-mx5/board-cpuimx51.c
+++ b/arch/arm/mach-mx5/board-cpuimx51.c
@@ -292,7 +292,7 @@ static struct sys_timer mxc_timer = {
 
 MACHINE_START(EUKREA_CPUIMX51, "Eukrea CPUIMX51 Module")
 	/* Maintainer: Eric B?nard <eric@eukrea.com> */
-	.boot_params = PHYS_OFFSET + 0x100,
+	.boot_params = MX51_PHYS_OFFSET + 0x100,
 	.map_io = mx51_map_io,
 	.init_irq = mx51_init_irq,
 	.init_machine = eukrea_cpuimx51_init,
diff --git a/arch/arm/mach-mx5/board-cpuimx51sd.c b/arch/arm/mach-mx5/board-cpuimx51sd.c
index 4b3a611..24bbdb8 100644
--- a/arch/arm/mach-mx5/board-cpuimx51sd.c
+++ b/arch/arm/mach-mx5/board-cpuimx51sd.c
@@ -323,7 +323,7 @@ static struct sys_timer mxc_timer = {
 
 MACHINE_START(EUKREA_CPUIMX51SD, "Eukrea CPUIMX51SD")
 	/* Maintainer: Eric B?nard <eric@eukrea.com> */
-	.boot_params = PHYS_OFFSET + 0x100,
+	.boot_params = MX51_PHYS_OFFSET + 0x100,
 	.map_io = mx51_map_io,
 	.init_irq = mx51_init_irq,
 	.init_machine = eukrea_cpuimx51sd_init,
diff --git a/arch/arm/mach-mx5/board-mx51_3ds.c b/arch/arm/mach-mx5/board-mx51_3ds.c
index 79ce8dc..873cc1f 100644
--- a/arch/arm/mach-mx5/board-mx51_3ds.c
+++ b/arch/arm/mach-mx5/board-mx51_3ds.c
@@ -186,7 +186,7 @@ static struct sys_timer mxc_timer = {
 
 MACHINE_START(MX51_3DS, "Freescale MX51 3-Stack Board")
 	/* Maintainer: Freescale Semiconductor, Inc. */
-	.boot_params = PHYS_OFFSET + 0x100,
+	.boot_params = MX3x_PHYS_OFFSET + 0x100,
 	.map_io = mx51_map_io,
 	.init_irq = mx51_init_irq,
 	.init_machine = mxc_board_init,
-- 
1.7.2.3

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

* [PATCH 2/7] ARM i.MX irq: Compile avic irq code only on SoCs that need it
  2010-11-05  9:46 i.MX patches for next Sascha Hauer
  2010-11-05  9:46 ` [PATCH 1/7] ARM i.MX51 boards: Do not use PHYS_OFFSET Sascha Hauer
@ 2010-11-05  9:46 ` Sascha Hauer
  2010-11-05 14:05   ` Paulius Zaleckas
  2010-11-05  9:46 ` [PATCH 3/7] ARM i.MX51: Make CONFIG_MXC_TZIC an invisible option Sascha Hauer
                   ` (4 subsequent siblings)
  6 siblings, 1 reply; 13+ messages in thread
From: Sascha Hauer @ 2010-11-05  9:46 UTC (permalink / raw)
  To: linux-arm-kernel

This patch adds a Kconfig option for the avic irq controller
and lets the SoCs that need it select this option.
Also, as we have two irq controllers for i.MX, irq.c is not
appropriate anymore, so rename it to avic.c

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
---
 arch/arm/mach-imx/Kconfig           |    3 +++
 arch/arm/mach-mx3/Kconfig           |    2 ++
 arch/arm/plat-mxc/Kconfig           |    4 ++++
 arch/arm/plat-mxc/Makefile          |    3 ++-
 arch/arm/plat-mxc/{irq.c => avic.c} |    0
 5 files changed, 11 insertions(+), 1 deletions(-)
 rename arch/arm/plat-mxc/{irq.c => avic.c} (100%)

diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig
index 197f9e2..58b6114 100644
--- a/arch/arm/mach-imx/Kconfig
+++ b/arch/arm/mach-imx/Kconfig
@@ -7,6 +7,7 @@ config SOC_IMX1
 	select CPU_ARM920T
 	select IMX_HAVE_DMA_V1
 	select IMX_HAVE_IOMUX_V1
+	select MXC_AVIC
 	bool
 
 comment "MX1 platforms:"
@@ -36,6 +37,7 @@ config SOC_IMX21
 	select ARCH_MXC_AUDMUX_V1
 	select IMX_HAVE_DMA_V1
 	select IMX_HAVE_IOMUX_V1
+	select MXC_AVIC
 	bool
 
 config SOC_IMX27
@@ -43,6 +45,7 @@ config SOC_IMX27
 	select ARCH_MXC_AUDMUX_V1
 	select IMX_HAVE_DMA_V1
 	select IMX_HAVE_IOMUX_V1
+	select MXC_AVIC
 	bool
 
 choice
diff --git a/arch/arm/mach-mx3/Kconfig b/arch/arm/mach-mx3/Kconfig
index 5000ac1..7863199 100644
--- a/arch/arm/mach-mx3/Kconfig
+++ b/arch/arm/mach-mx3/Kconfig
@@ -3,6 +3,7 @@ if ARCH_MX3
 config ARCH_MX31
 	select ARCH_HAS_RNGA
 	select ARCH_MXC_AUDMUX_V2
+	select MXC_AVIC
 	bool
 
 config ARCH_MX35
@@ -10,6 +11,7 @@ config ARCH_MX35
 	select ARCH_MXC_IOMUX_V3
 	select ARCH_MXC_AUDMUX_V2
 	select HAVE_EPIT
+	select MXC_AVIC
 
 comment "MX3 platforms:"
 
diff --git a/arch/arm/plat-mxc/Kconfig b/arch/arm/plat-mxc/Kconfig
index 64e3a64..31d07c0 100644
--- a/arch/arm/plat-mxc/Kconfig
+++ b/arch/arm/plat-mxc/Kconfig
@@ -25,6 +25,7 @@ config ARCH_MX25
 	select ARCH_MXC_IOMUX_V3
 	select HAVE_FB_IMX
 	select ARCH_MXC_AUDMUX_V2
+	select MXC_AVIC
 	help
 	  This enables support for systems based on the Freescale i.MX25 family
 
@@ -75,6 +76,9 @@ config MXC_TZIC
 	  containing this interrupt controller.
 	  Say N here only if you are really sure.
 
+config MXC_AVIC
+	bool
+
 config MXC_PWM
 	tristate "Enable PWM driver"
 	select HAVE_PWM
diff --git a/arch/arm/plat-mxc/Makefile b/arch/arm/plat-mxc/Makefile
index 3726709..0e12591 100644
--- a/arch/arm/plat-mxc/Makefile
+++ b/arch/arm/plat-mxc/Makefile
@@ -3,10 +3,11 @@
 #
 
 # Common support
-obj-y := irq.o clock.o gpio.o time.o devices.o cpu.o system.o
+obj-y := clock.o gpio.o time.o devices.o cpu.o system.o
 
 # MX51 uses the TZIC interrupt controller, older platforms use AVIC (irq.o)
 obj-$(CONFIG_MXC_TZIC) += tzic.o
+obj-$(CONFIG_MXC_AVIC) += avic.o
 
 obj-$(CONFIG_IMX_HAVE_IOMUX_V1) += iomux-v1.o
 obj-$(CONFIG_ARCH_MXC_IOMUX_V3) += iomux-v3.o
diff --git a/arch/arm/plat-mxc/irq.c b/arch/arm/plat-mxc/avic.c
similarity index 100%
rename from arch/arm/plat-mxc/irq.c
rename to arch/arm/plat-mxc/avic.c
-- 
1.7.2.3

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

* [PATCH 3/7] ARM i.MX51: Make CONFIG_MXC_TZIC an invisible option
  2010-11-05  9:46 i.MX patches for next Sascha Hauer
  2010-11-05  9:46 ` [PATCH 1/7] ARM i.MX51 boards: Do not use PHYS_OFFSET Sascha Hauer
  2010-11-05  9:46 ` [PATCH 2/7] ARM i.MX irq: Compile avic irq code only on SoCs that need it Sascha Hauer
@ 2010-11-05  9:46 ` Sascha Hauer
  2010-11-05  9:46 ` [PATCH 4/7] ARM i.MX irq: Allow runtime decision between AVIC and TZIC Sascha Hauer
                   ` (3 subsequent siblings)
  6 siblings, 0 replies; 13+ messages in thread
From: Sascha Hauer @ 2010-11-05  9:46 UTC (permalink / raw)
  To: linux-arm-kernel

There's no point showing this option to the user. The correct
value will be selected anyway.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
---
 arch/arm/plat-mxc/Kconfig |    7 +------
 1 files changed, 1 insertions(+), 6 deletions(-)

diff --git a/arch/arm/plat-mxc/Kconfig b/arch/arm/plat-mxc/Kconfig
index 31d07c0..8c6cd50 100644
--- a/arch/arm/plat-mxc/Kconfig
+++ b/arch/arm/plat-mxc/Kconfig
@@ -69,12 +69,7 @@ config MXC_IRQ_PRIOR
 	  Say N here, unless you have a specialized requirement.
 
 config MXC_TZIC
-	bool "Enable TrustZone Interrupt Controller"
-	depends on ARCH_MX51
-	help
-	  This will be automatically selected for all processors
-	  containing this interrupt controller.
-	  Say N here only if you are really sure.
+	bool
 
 config MXC_AVIC
 	bool
-- 
1.7.2.3

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

* [PATCH 4/7] ARM i.MX irq: Allow runtime decision between AVIC and TZIC
  2010-11-05  9:46 i.MX patches for next Sascha Hauer
                   ` (2 preceding siblings ...)
  2010-11-05  9:46 ` [PATCH 3/7] ARM i.MX51: Make CONFIG_MXC_TZIC an invisible option Sascha Hauer
@ 2010-11-05  9:46 ` Sascha Hauer
  2010-11-05 10:37   ` Uwe Kleine-König
  2010-11-05 11:49   ` Uwe Kleine-König
  2010-11-05  9:46 ` [PATCH 5/7] ARM i.MX DMA: return gracefully on different socs Sascha Hauer
                   ` (2 subsequent siblings)
  6 siblings, 2 replies; 13+ messages in thread
From: Sascha Hauer @ 2010-11-05  9:46 UTC (permalink / raw)
  To: linux-arm-kernel

As we are on a path to support more different i.MX SoCs in a single
binary we have to able to support both AVIC and TZIC in a single
binary. This patch only introduces overhead when both controllers
are needed.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
---
 arch/arm/plat-mxc/avic.c                     |    2 +
 arch/arm/plat-mxc/cpu.c                      |    3 +
 arch/arm/plat-mxc/include/mach/entry-macro.S |   66 ++++++++++++++++----------
 arch/arm/plat-mxc/include/mach/mxc.h         |    8 +++
 arch/arm/plat-mxc/tzic.c                     |    3 +
 5 files changed, 57 insertions(+), 25 deletions(-)

diff --git a/arch/arm/plat-mxc/avic.c b/arch/arm/plat-mxc/avic.c
index 7331f2a..1cb464a 100644
--- a/arch/arm/plat-mxc/avic.c
+++ b/arch/arm/plat-mxc/avic.c
@@ -118,6 +118,8 @@ void __init mxc_init_irq(void __iomem *irqbase)
 	int i;
 
 	avic_base = irqbase;
+	mxc_irq_base = irqbase;
+	mxc_irq_controller_type = MXC_IRQ_TYPE_AVIC;
 
 	/* put the AVIC into the reset value with
 	 * all interrupts disabled
diff --git a/arch/arm/plat-mxc/cpu.c b/arch/arm/plat-mxc/cpu.c
index 386e0d5..dc14a1c 100644
--- a/arch/arm/plat-mxc/cpu.c
+++ b/arch/arm/plat-mxc/cpu.c
@@ -9,3 +9,6 @@ void mxc_set_cpu_type(unsigned int type)
 	__mxc_cpu_type = type;
 }
 
+void __iomem *mxc_irq_base;
+int mxc_irq_controller_type;
+
diff --git a/arch/arm/plat-mxc/include/mach/entry-macro.S b/arch/arm/plat-mxc/include/mach/entry-macro.S
index aeb0869..a7dd008 100644
--- a/arch/arm/plat-mxc/include/mach/entry-macro.S
+++ b/arch/arm/plat-mxc/include/mach/entry-macro.S
@@ -18,40 +18,18 @@
 	.endm
 
 	.macro  get_irqnr_preamble, base, tmp
-#ifndef CONFIG_MXC_TZIC
-	ldr	\base, =avic_base
+	ldr	\base, =mxc_irq_base
 	ldr	\base, [\base]
 #ifdef CONFIG_MXC_IRQ_PRIOR
 	ldr	r4, [\base, #AVIC_NIMASK]
 #endif
-#elif defined CONFIG_MXC_TZIC
-	ldr	\base, =tzic_base
-	ldr	\base, [\base]
-#endif /* CONFIG_MXC_TZIC */
 	.endm
 
 	.macro  arch_ret_to_user, tmp1, tmp2
 	.endm
 
-	@ this macro checks which interrupt occured
-	@ and returns its number in irqnr
-	@ and returns if an interrupt occured in irqstat
-	.macro	get_irqnr_and_base, irqnr, irqstat, base, tmp
-#ifndef CONFIG_MXC_TZIC
-	@ Load offset & priority of the highest priority
-	@ interrupt pending from AVIC_NIVECSR
-	ldr	\irqstat, [\base, #0x40]
-	@ Shift to get the decoded IRQ number, using ASR so
-	@ 'no interrupt pending' becomes 0xffffffff
-	mov	\irqnr, \irqstat, asr #16
-	@ set zero flag if IRQ + 1 == 0
-	adds	\tmp, \irqnr, #1
-#ifdef CONFIG_MXC_IRQ_PRIOR
-	bicne	\tmp, \irqstat, #0xFFFFFFE0
-	strne	\tmp, [\base, #AVIC_NIMASK]
-	streq	r4, [\base, #AVIC_NIMASK]
-#endif
-#elif defined CONFIG_MXC_TZIC
+	.macro	tzic_get_irqnr_and_base, irqnr, irqstat, base, tmp
+
 	@ Load offset & priority of the highest priority
 	@ interrupt pending.
 	@ 0xD80 is HIPND0 register
@@ -76,6 +54,44 @@
 	mov  \irqnr, #0
 2002:
 	movs \irqnr, \irqnr
+	.endm
+
+	.macro	avic_get_irqnr_and_base, irqnr, irqstat, base, tmp
+
+	@ Load offset & priority of the highest priority
+	@ interrupt pending from AVIC_NIVECSR
+	ldr	\irqstat, [\base, #0x40]
+	@ Shift to get the decoded IRQ number, using ASR so
+	@ 'no interrupt pending' becomes 0xffffffff
+	mov	\irqnr, \irqstat, asr #16
+	@ set zero flag if IRQ + 1 == 0
+	adds	\tmp, \irqnr, #1
+#ifdef CONFIG_MXC_IRQ_PRIOR
+	bicne	\tmp, \irqstat, #0xFFFFFFE0
+	strne	\tmp, [\base, #AVIC_NIMASK]
+	streq	r4, [\base, #AVIC_NIMASK]
+#endif
+	.endm
+
+	.macro get_irqnr_and_base, irqnr, irqstat, base, tmp
+#if defined CONFIG_MXC_TZIC && defined CONFIG_MXC_AVIC
+	ldr	\tmp, =mxc_irq_controller_type
+	ldr	\tmp, [\tmp]
+	cmp	\tmp, #MXC_IRQ_TYPE_AVIC
+	beq	3001f
+
+	tzic_get_irqnr_and_base \irqnr, \irqstat, \base, \tmp
+	b	3002f
+3001:
+	avic_get_irqnr_and_base \irqnr, \irqstat, \base, \tmp
+3002:
+
+#elif defined CONFIG_MXC_TZIC
+	tzic_get_irqnr_and_base \irqnr, \irqstat, \base, \tmp
+#elif defined CONFIG_MXC_AVIC
+	avic_get_irqnr_and_base \irqnr, \irqstat, \base, \tmp
+#else
+#error no tzic and no avic?
 #endif
 	.endm
 
diff --git a/arch/arm/plat-mxc/include/mach/mxc.h b/arch/arm/plat-mxc/include/mach/mxc.h
index a42c720..3432b78 100644
--- a/arch/arm/plat-mxc/include/mach/mxc.h
+++ b/arch/arm/plat-mxc/include/mach/mxc.h
@@ -154,4 +154,12 @@ extern struct cpu_op *(*get_cpu_op)(int *op);
 #define cpu_is_mx3()	(cpu_is_mx31() || cpu_is_mx35() || cpu_is_mxc91231())
 #define cpu_is_mx2()	(cpu_is_mx21() || cpu_is_mx27())
 
+#ifndef __ASSEMBLY__
+extern int mxc_irq_controller_type;
+extern void __iomem *mxc_irq_base;
+#endif
+
+#define MXC_IRQ_TYPE_AVIC	1
+#define MXC_IRQ_TYPE_TZIC	2
+
 #endif /*  __ASM_ARCH_MXC_H__ */
diff --git a/arch/arm/plat-mxc/tzic.c b/arch/arm/plat-mxc/tzic.c
index 3703ab2..f2179b1 100644
--- a/arch/arm/plat-mxc/tzic.c
+++ b/arch/arm/plat-mxc/tzic.c
@@ -122,6 +122,9 @@ void __init tzic_init_irq(void __iomem *irqbase)
 	int i;
 
 	tzic_base = irqbase;
+	mxc_irq_base = irqbase;
+	mxc_irq_controller_type = MXC_IRQ_TYPE_TZIC;
+
 	/* put the TZIC into the reset value with
 	 * all interrupts disabled
 	 */
-- 
1.7.2.3

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

* [PATCH 5/7] ARM i.MX DMA: return gracefully on different socs
  2010-11-05  9:46 i.MX patches for next Sascha Hauer
                   ` (3 preceding siblings ...)
  2010-11-05  9:46 ` [PATCH 4/7] ARM i.MX irq: Allow runtime decision between AVIC and TZIC Sascha Hauer
@ 2010-11-05  9:46 ` Sascha Hauer
  2010-11-05  9:46 ` [PATCH 6/7] ARM i.MX51: " Sascha Hauer
  2010-11-05  9:46 ` [PATCH 7/7] ARM i.MX27 pm: " Sascha Hauer
  6 siblings, 0 replies; 13+ messages in thread
From: Sascha Hauer @ 2010-11-05  9:46 UTC (permalink / raw)
  To: linux-arm-kernel

Code called from an initcall can be maybe called for
machines it's not intended for. So check for valid
machines and return gracefully if an incompatible machine
is found.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
---
 arch/arm/mach-imx/dma-v1.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/arch/arm/mach-imx/dma-v1.c b/arch/arm/mach-imx/dma-v1.c
index 3e8c47c..dcb24a9 100644
--- a/arch/arm/mach-imx/dma-v1.c
+++ b/arch/arm/mach-imx/dma-v1.c
@@ -818,7 +818,7 @@ static int __init imx_dma_init(void)
 		imx_dmav1_baseaddr = MX27_IO_ADDRESS(MX27_DMA_BASE_ADDR);
 	else
 #endif
-		BUG();
+		return 0;
 
 	dma_clk = clk_get(NULL, "dma");
 	clk_enable(dma_clk);
-- 
1.7.2.3

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

* [PATCH 6/7] ARM i.MX51: return gracefully on different socs
  2010-11-05  9:46 i.MX patches for next Sascha Hauer
                   ` (4 preceding siblings ...)
  2010-11-05  9:46 ` [PATCH 5/7] ARM i.MX DMA: return gracefully on different socs Sascha Hauer
@ 2010-11-05  9:46 ` Sascha Hauer
  2010-11-05  9:46 ` [PATCH 7/7] ARM i.MX27 pm: " Sascha Hauer
  6 siblings, 0 replies; 13+ messages in thread
From: Sascha Hauer @ 2010-11-05  9:46 UTC (permalink / raw)
  To: linux-arm-kernel

Code called from an initcall can be maybe called for
machines it's not intended for. So check for valid
machines and return gracefully if an incompatible machine
is found.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
---
 arch/arm/mach-mx5/cpu.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/arch/arm/mach-mx5/cpu.c b/arch/arm/mach-mx5/cpu.c
index eaacb6e..061ab70 100644
--- a/arch/arm/mach-mx5/cpu.c
+++ b/arch/arm/mach-mx5/cpu.c
@@ -79,6 +79,9 @@ EXPORT_SYMBOL(mx51_revision);
  */
 static int __init mx51_neon_fixup(void)
 {
+	if (!cpu_is_mx51())
+		return 0;
+
 	if (mx51_revision() < MX51_CHIP_REV_3_0 && (elf_hwcap & HWCAP_NEON)) {
 		elf_hwcap &= ~HWCAP_NEON;
 		pr_info("Turning off NEON support, detected broken NEON implementation\n");
-- 
1.7.2.3

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

* [PATCH 7/7] ARM i.MX27 pm: return gracefully on different socs
  2010-11-05  9:46 i.MX patches for next Sascha Hauer
                   ` (5 preceding siblings ...)
  2010-11-05  9:46 ` [PATCH 6/7] ARM i.MX51: " Sascha Hauer
@ 2010-11-05  9:46 ` Sascha Hauer
  6 siblings, 0 replies; 13+ messages in thread
From: Sascha Hauer @ 2010-11-05  9:46 UTC (permalink / raw)
  To: linux-arm-kernel

Code called from an initcall can be maybe called for
machines it's not intended for. So check for valid
machines and return gracefully if an incompatible machine
is found.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
---
 arch/arm/mach-imx/pm-imx27.c |    3 +++
 1 files changed, 3 insertions(+), 0 deletions(-)

diff --git a/arch/arm/mach-imx/pm-imx27.c b/arch/arm/mach-imx/pm-imx27.c
index afc17ce..6bf81ce 100644
--- a/arch/arm/mach-imx/pm-imx27.c
+++ b/arch/arm/mach-imx/pm-imx27.c
@@ -39,6 +39,9 @@ static struct platform_suspend_ops mx27_suspend_ops = {
 
 static int __init mx27_pm_init(void)
 {
+	if (!cpu_is_mx27())
+		return 0;
+
 	suspend_set_ops(&mx27_suspend_ops);
 	return 0;
 }
-- 
1.7.2.3

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

* [PATCH 1/7] ARM i.MX51 boards: Do not use PHYS_OFFSET
  2010-11-05  9:46 ` [PATCH 1/7] ARM i.MX51 boards: Do not use PHYS_OFFSET Sascha Hauer
@ 2010-11-05 10:30   ` Uwe Kleine-König
  0 siblings, 0 replies; 13+ messages in thread
From: Uwe Kleine-König @ 2010-11-05 10:30 UTC (permalink / raw)
  To: linux-arm-kernel

Hey Sascha,

On Fri, Nov 05, 2010 at 10:46:05AM +0100, Sascha Hauer wrote:
> PHYS_OFFSET may become a variable once the runtime PHYS_OFFSET
> patch is merged, so use MX51_PHYS_OFFSET for boot_params.
> 
> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
> ---
>  arch/arm/mach-mx5/board-cpuimx51.c   |    2 +-
>  arch/arm/mach-mx5/board-cpuimx51sd.c |    2 +-
>  arch/arm/mach-mx5/board-mx51_3ds.c   |    2 +-
>  3 files changed, 3 insertions(+), 3 deletions(-)
> 
> diff --git a/arch/arm/mach-mx5/board-cpuimx51.c b/arch/arm/mach-mx5/board-cpuimx51.c
> index 6a9792f..1e01ec7 100644
> --- a/arch/arm/mach-mx5/board-cpuimx51.c
> +++ b/arch/arm/mach-mx5/board-cpuimx51.c
> @@ -292,7 +292,7 @@ static struct sys_timer mxc_timer = {
>  
>  MACHINE_START(EUKREA_CPUIMX51, "Eukrea CPUIMX51 Module")
>  	/* Maintainer: Eric B?nard <eric@eukrea.com> */
> -	.boot_params = PHYS_OFFSET + 0x100,
> +	.boot_params = MX51_PHYS_OFFSET + 0x100,
>  	.map_io = mx51_map_io,
>  	.init_irq = mx51_init_irq,
>  	.init_machine = eukrea_cpuimx51_init,
> diff --git a/arch/arm/mach-mx5/board-cpuimx51sd.c b/arch/arm/mach-mx5/board-cpuimx51sd.c
> index 4b3a611..24bbdb8 100644
> --- a/arch/arm/mach-mx5/board-cpuimx51sd.c
> +++ b/arch/arm/mach-mx5/board-cpuimx51sd.c
> @@ -323,7 +323,7 @@ static struct sys_timer mxc_timer = {
>  
>  MACHINE_START(EUKREA_CPUIMX51SD, "Eukrea CPUIMX51SD")
>  	/* Maintainer: Eric B?nard <eric@eukrea.com> */
> -	.boot_params = PHYS_OFFSET + 0x100,
> +	.boot_params = MX51_PHYS_OFFSET + 0x100,
>  	.map_io = mx51_map_io,
>  	.init_irq = mx51_init_irq,
>  	.init_machine = eukrea_cpuimx51sd_init,
> diff --git a/arch/arm/mach-mx5/board-mx51_3ds.c b/arch/arm/mach-mx5/board-mx51_3ds.c
> index 79ce8dc..873cc1f 100644
> --- a/arch/arm/mach-mx5/board-mx51_3ds.c
> +++ b/arch/arm/mach-mx5/board-mx51_3ds.c
> @@ -186,7 +186,7 @@ static struct sys_timer mxc_timer = {
>  
>  MACHINE_START(MX51_3DS, "Freescale MX51 3-Stack Board")
>  	/* Maintainer: Freescale Semiconductor, Inc. */
> -	.boot_params = PHYS_OFFSET + 0x100,
> +	.boot_params = MX3x_PHYS_OFFSET + 0x100,
This looks wrong.

Uwe
-- 
Pengutronix e.K.                           | Uwe Kleine-K?nig            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |

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

* [PATCH 4/7] ARM i.MX irq: Allow runtime decision between AVIC and TZIC
  2010-11-05  9:46 ` [PATCH 4/7] ARM i.MX irq: Allow runtime decision between AVIC and TZIC Sascha Hauer
@ 2010-11-05 10:37   ` Uwe Kleine-König
  2010-11-05 12:04     ` Sascha Hauer
  2010-11-05 11:49   ` Uwe Kleine-König
  1 sibling, 1 reply; 13+ messages in thread
From: Uwe Kleine-König @ 2010-11-05 10:37 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, Nov 05, 2010 at 10:46:08AM +0100, Sascha Hauer wrote:
> As we are on a path to support more different i.MX SoCs in a single
> binary we have to able to support both AVIC and TZIC in a single
> binary. This patch only introduces overhead when both controllers
> are needed.
> 
> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
> ---
>  arch/arm/plat-mxc/avic.c                     |    2 +
>  arch/arm/plat-mxc/cpu.c                      |    3 +
>  arch/arm/plat-mxc/include/mach/entry-macro.S |   66 ++++++++++++++++----------
>  arch/arm/plat-mxc/include/mach/mxc.h         |    8 +++
>  arch/arm/plat-mxc/tzic.c                     |    3 +
>  5 files changed, 57 insertions(+), 25 deletions(-)
> 
> diff --git a/arch/arm/plat-mxc/avic.c b/arch/arm/plat-mxc/avic.c
> index 7331f2a..1cb464a 100644
> --- a/arch/arm/plat-mxc/avic.c
> +++ b/arch/arm/plat-mxc/avic.c
> @@ -118,6 +118,8 @@ void __init mxc_init_irq(void __iomem *irqbase)
>  	int i;
>  
>  	avic_base = irqbase;
Is avic_base still needed?

> +	mxc_irq_base = irqbase;
> +	mxc_irq_controller_type = MXC_IRQ_TYPE_AVIC;
>  
>  	/* put the AVIC into the reset value with
>  	 * all interrupts disabled
> diff --git a/arch/arm/plat-mxc/cpu.c b/arch/arm/plat-mxc/cpu.c
> index 386e0d5..dc14a1c 100644
> --- a/arch/arm/plat-mxc/cpu.c
> +++ b/arch/arm/plat-mxc/cpu.c
> @@ -9,3 +9,6 @@ void mxc_set_cpu_type(unsigned int type)
>  	__mxc_cpu_type = type;
>  }
>  
> +void __iomem *mxc_irq_base;
> +int mxc_irq_controller_type;
> +
> diff --git a/arch/arm/plat-mxc/include/mach/entry-macro.S b/arch/arm/plat-mxc/include/mach/entry-macro.S
> index aeb0869..a7dd008 100644
> --- a/arch/arm/plat-mxc/include/mach/entry-macro.S
> +++ b/arch/arm/plat-mxc/include/mach/entry-macro.S
> @@ -18,40 +18,18 @@
>  	.endm
>  
>  	.macro  get_irqnr_preamble, base, tmp
> -#ifndef CONFIG_MXC_TZIC
> -	ldr	\base, =avic_base
> +	ldr	\base, =mxc_irq_base
>  	ldr	\base, [\base]
>  #ifdef CONFIG_MXC_IRQ_PRIOR
>  	ldr	r4, [\base, #AVIC_NIMASK]
>  #endif
> -#elif defined CONFIG_MXC_TZIC
> -	ldr	\base, =tzic_base
> -	ldr	\base, [\base]
> -#endif /* CONFIG_MXC_TZIC */
>  	.endm
>  
>  	.macro  arch_ret_to_user, tmp1, tmp2
>  	.endm
>  
> -	@ this macro checks which interrupt occured
> -	@ and returns its number in irqnr
> -	@ and returns if an interrupt occured in irqstat
> -	.macro	get_irqnr_and_base, irqnr, irqstat, base, tmp
> -#ifndef CONFIG_MXC_TZIC
> -	@ Load offset & priority of the highest priority
> -	@ interrupt pending from AVIC_NIVECSR
> -	ldr	\irqstat, [\base, #0x40]
> -	@ Shift to get the decoded IRQ number, using ASR so
> -	@ 'no interrupt pending' becomes 0xffffffff
> -	mov	\irqnr, \irqstat, asr #16
> -	@ set zero flag if IRQ + 1 == 0
> -	adds	\tmp, \irqnr, #1
> -#ifdef CONFIG_MXC_IRQ_PRIOR
> -	bicne	\tmp, \irqstat, #0xFFFFFFE0
> -	strne	\tmp, [\base, #AVIC_NIMASK]
> -	streq	r4, [\base, #AVIC_NIMASK]
> -#endif
> -#elif defined CONFIG_MXC_TZIC
> +	.macro	tzic_get_irqnr_and_base, irqnr, irqstat, base, tmp
> +
>  	@ Load offset & priority of the highest priority
>  	@ interrupt pending.
>  	@ 0xD80 is HIPND0 register
> @@ -76,6 +54,44 @@
>  	mov  \irqnr, #0
>  2002:
>  	movs \irqnr, \irqnr
> +	.endm
> +
> +	.macro	avic_get_irqnr_and_base, irqnr, irqstat, base, tmp
> +
> +	@ Load offset & priority of the highest priority
> +	@ interrupt pending from AVIC_NIVECSR
> +	ldr	\irqstat, [\base, #0x40]
> +	@ Shift to get the decoded IRQ number, using ASR so
> +	@ 'no interrupt pending' becomes 0xffffffff
> +	mov	\irqnr, \irqstat, asr #16
> +	@ set zero flag if IRQ + 1 == 0
> +	adds	\tmp, \irqnr, #1
> +#ifdef CONFIG_MXC_IRQ_PRIOR
> +	bicne	\tmp, \irqstat, #0xFFFFFFE0
> +	strne	\tmp, [\base, #AVIC_NIMASK]
> +	streq	r4, [\base, #AVIC_NIMASK]
> +#endif
> +	.endm
> +
> +	.macro get_irqnr_and_base, irqnr, irqstat, base, tmp
> +#if defined CONFIG_MXC_TZIC && defined CONFIG_MXC_AVIC
> +	ldr	\tmp, =mxc_irq_controller_type
> +	ldr	\tmp, [\tmp]
> +	cmp	\tmp, #MXC_IRQ_TYPE_AVIC
> +	beq	3001f
> +
> +	tzic_get_irqnr_and_base \irqnr, \irqstat, \base, \tmp
> +	b	3002f
> +3001:
> +	avic_get_irqnr_and_base \irqnr, \irqstat, \base, \tmp
> +3002:
> +
> +#elif defined CONFIG_MXC_TZIC
> +	tzic_get_irqnr_and_base \irqnr, \irqstat, \base, \tmp
> +#elif defined CONFIG_MXC_AVIC
> +	avic_get_irqnr_and_base \irqnr, \irqstat, \base, \tmp
> +#else
> +#error no tzic and no avic?
>  #endif
>  	.endm
>  
> diff --git a/arch/arm/plat-mxc/include/mach/mxc.h b/arch/arm/plat-mxc/include/mach/mxc.h
> index a42c720..3432b78 100644
> --- a/arch/arm/plat-mxc/include/mach/mxc.h
> +++ b/arch/arm/plat-mxc/include/mach/mxc.h
> @@ -154,4 +154,12 @@ extern struct cpu_op *(*get_cpu_op)(int *op);
>  #define cpu_is_mx3()	(cpu_is_mx31() || cpu_is_mx35() || cpu_is_mxc91231())
>  #define cpu_is_mx2()	(cpu_is_mx21() || cpu_is_mx27())
>  
> +#ifndef __ASSEMBLY__
> +extern int mxc_irq_controller_type;
> +extern void __iomem *mxc_irq_base;
> +#endif
> +
> +#define MXC_IRQ_TYPE_AVIC	1
> +#define MXC_IRQ_TYPE_TZIC	2
> +
>  #endif /*  __ASM_ARCH_MXC_H__ */
> diff --git a/arch/arm/plat-mxc/tzic.c b/arch/arm/plat-mxc/tzic.c
> index 3703ab2..f2179b1 100644
> --- a/arch/arm/plat-mxc/tzic.c
> +++ b/arch/arm/plat-mxc/tzic.c
> @@ -122,6 +122,9 @@ void __init tzic_init_irq(void __iomem *irqbase)
>  	int i;
>  
>  	tzic_base = irqbase;
ditto for tzic_base.

Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-K?nig            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |

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

* [PATCH 4/7] ARM i.MX irq: Allow runtime decision between AVIC and TZIC
  2010-11-05  9:46 ` [PATCH 4/7] ARM i.MX irq: Allow runtime decision between AVIC and TZIC Sascha Hauer
  2010-11-05 10:37   ` Uwe Kleine-König
@ 2010-11-05 11:49   ` Uwe Kleine-König
  1 sibling, 0 replies; 13+ messages in thread
From: Uwe Kleine-König @ 2010-11-05 11:49 UTC (permalink / raw)
  To: linux-arm-kernel

Hello,

On Fri, Nov 05, 2010 at 10:46:08AM +0100, Sascha Hauer wrote:
> As we are on a path to support more different i.MX SoCs in a single
> binary we have to able to support both AVIC and TZIC in a single
> binary. This patch only introduces overhead when both controllers
> are needed.
During my lunch break I remembered this patch:

	http://article.gmane.org/gmane.linux.ports.arm.kernel/84809

With that supporting both irq controllers should be a bit nicer.

Best regards
Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-K?nig            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |

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

* [PATCH 4/7] ARM i.MX irq: Allow runtime decision between AVIC and TZIC
  2010-11-05 10:37   ` Uwe Kleine-König
@ 2010-11-05 12:04     ` Sascha Hauer
  0 siblings, 0 replies; 13+ messages in thread
From: Sascha Hauer @ 2010-11-05 12:04 UTC (permalink / raw)
  To: linux-arm-kernel

On Fri, Nov 05, 2010 at 11:37:33AM +0100, Uwe Kleine-K?nig wrote:
> On Fri, Nov 05, 2010 at 10:46:08AM +0100, Sascha Hauer wrote:
> > As we are on a path to support more different i.MX SoCs in a single
> > binary we have to able to support both AVIC and TZIC in a single
> > binary. This patch only introduces overhead when both controllers
> > are needed.
> > 
> > Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
> > ---
> >  arch/arm/plat-mxc/avic.c                     |    2 +
> >  arch/arm/plat-mxc/cpu.c                      |    3 +
> >  arch/arm/plat-mxc/include/mach/entry-macro.S |   66 ++++++++++++++++----------
> >  arch/arm/plat-mxc/include/mach/mxc.h         |    8 +++
> >  arch/arm/plat-mxc/tzic.c                     |    3 +
> >  5 files changed, 57 insertions(+), 25 deletions(-)
> > 
> > diff --git a/arch/arm/plat-mxc/avic.c b/arch/arm/plat-mxc/avic.c
> > index 7331f2a..1cb464a 100644
> > --- a/arch/arm/plat-mxc/avic.c
> > +++ b/arch/arm/plat-mxc/avic.c
> > @@ -118,6 +118,8 @@ void __init mxc_init_irq(void __iomem *irqbase)
> >  	int i;
> >  
> >  	avic_base = irqbase;
> Is avic_base still needed?
> 
> > +++ b/arch/arm/plat-mxc/tzic.c
> > @@ -122,6 +122,9 @@ void __init tzic_init_irq(void __iomem *irqbase)
> >  	int i;
> >  
> >  	tzic_base = irqbase;
> ditto for tzic_base.

The C code uses them. I only kept them to create a minimal patch. They
can be removed in a later patch.

Sascha


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

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

* [PATCH 2/7] ARM i.MX irq: Compile avic irq code only on SoCs that need it
  2010-11-05  9:46 ` [PATCH 2/7] ARM i.MX irq: Compile avic irq code only on SoCs that need it Sascha Hauer
@ 2010-11-05 14:05   ` Paulius Zaleckas
  0 siblings, 0 replies; 13+ messages in thread
From: Paulius Zaleckas @ 2010-11-05 14:05 UTC (permalink / raw)
  To: linux-arm-kernel

On 11/05/2010 11:46 AM, Sascha Hauer wrote:
> This patch adds a Kconfig option for the avic irq controller
> and lets the SoCs that need it select this option.
> Also, as we have two irq controllers for i.MX, irq.c is not
> appropriate anymore, so rename it to avic.c
>
> Signed-off-by: Sascha Hauer<s.hauer@pengutronix.de>
> ---
>   arch/arm/mach-imx/Kconfig           |    3 +++
>   arch/arm/mach-mx3/Kconfig           |    2 ++
>   arch/arm/plat-mxc/Kconfig           |    4 ++++
>   arch/arm/plat-mxc/Makefile          |    3 ++-
>   arch/arm/plat-mxc/{irq.c =>  avic.c} |    0
>   5 files changed, 11 insertions(+), 1 deletions(-)
>   rename arch/arm/plat-mxc/{irq.c =>  avic.c} (100%)
>
> diff --git a/arch/arm/mach-imx/Kconfig b/arch/arm/mach-imx/Kconfig
> index 197f9e2..58b6114 100644
> --- a/arch/arm/mach-imx/Kconfig
> +++ b/arch/arm/mach-imx/Kconfig
> @@ -7,6 +7,7 @@ config SOC_IMX1
>   	select CPU_ARM920T
>   	select IMX_HAVE_DMA_V1
>   	select IMX_HAVE_IOMUX_V1
> +	select MXC_AVIC
>   	bool
>
>   comment "MX1 platforms:"
> @@ -36,6 +37,7 @@ config SOC_IMX21
>   	select ARCH_MXC_AUDMUX_V1
>   	select IMX_HAVE_DMA_V1
>   	select IMX_HAVE_IOMUX_V1
> +	select MXC_AVIC
>   	bool
>
>   config SOC_IMX27
> @@ -43,6 +45,7 @@ config SOC_IMX27
>   	select ARCH_MXC_AUDMUX_V1
>   	select IMX_HAVE_DMA_V1
>   	select IMX_HAVE_IOMUX_V1
> +	select MXC_AVIC
>   	bool
>
>   choice
> diff --git a/arch/arm/mach-mx3/Kconfig b/arch/arm/mach-mx3/Kconfig
> index 5000ac1..7863199 100644
> --- a/arch/arm/mach-mx3/Kconfig
> +++ b/arch/arm/mach-mx3/Kconfig
> @@ -3,6 +3,7 @@ if ARCH_MX3
>   config ARCH_MX31
>   	select ARCH_HAS_RNGA
>   	select ARCH_MXC_AUDMUX_V2
> +	select MXC_AVIC
>   	bool
>
>   config ARCH_MX35
> @@ -10,6 +11,7 @@ config ARCH_MX35
>   	select ARCH_MXC_IOMUX_V3
>   	select ARCH_MXC_AUDMUX_V2
>   	select HAVE_EPIT
> +	select MXC_AVIC
>
>   comment "MX3 platforms:"
>
> diff --git a/arch/arm/plat-mxc/Kconfig b/arch/arm/plat-mxc/Kconfig
> index 64e3a64..31d07c0 100644
> --- a/arch/arm/plat-mxc/Kconfig
> +++ b/arch/arm/plat-mxc/Kconfig
> @@ -25,6 +25,7 @@ config ARCH_MX25
>   	select ARCH_MXC_IOMUX_V3
>   	select HAVE_FB_IMX
>   	select ARCH_MXC_AUDMUX_V2
> +	select MXC_AVIC
>   	help
>   	  This enables support for systems based on the Freescale i.MX25 family
>
> @@ -75,6 +76,9 @@ config MXC_TZIC
>   	  containing this interrupt controller.
>   	  Say N here only if you are really sure.
>
> +config MXC_AVIC
> +	bool
> +
>   config MXC_PWM
>   	tristate "Enable PWM driver"
>   	select HAVE_PWM
> diff --git a/arch/arm/plat-mxc/Makefile b/arch/arm/plat-mxc/Makefile
> index 3726709..0e12591 100644
> --- a/arch/arm/plat-mxc/Makefile
> +++ b/arch/arm/plat-mxc/Makefile
> @@ -3,10 +3,11 @@
>   #
>
>   # Common support
> -obj-y := irq.o clock.o gpio.o time.o devices.o cpu.o system.o
> +obj-y := clock.o gpio.o time.o devices.o cpu.o system.o
>
>   # MX51 uses the TZIC interrupt controller, older platforms use AVIC (irq.o)

it is not irq.o anymore as stated in the comment

>   obj-$(CONFIG_MXC_TZIC) += tzic.o
> +obj-$(CONFIG_MXC_AVIC) += avic.o
>
>   obj-$(CONFIG_IMX_HAVE_IOMUX_V1) += iomux-v1.o
>   obj-$(CONFIG_ARCH_MXC_IOMUX_V3) += iomux-v3.o
> diff --git a/arch/arm/plat-mxc/irq.c b/arch/arm/plat-mxc/avic.c
> similarity index 100%
> rename from arch/arm/plat-mxc/irq.c
> rename to arch/arm/plat-mxc/avic.c

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

end of thread, other threads:[~2010-11-05 14:05 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-11-05  9:46 i.MX patches for next Sascha Hauer
2010-11-05  9:46 ` [PATCH 1/7] ARM i.MX51 boards: Do not use PHYS_OFFSET Sascha Hauer
2010-11-05 10:30   ` Uwe Kleine-König
2010-11-05  9:46 ` [PATCH 2/7] ARM i.MX irq: Compile avic irq code only on SoCs that need it Sascha Hauer
2010-11-05 14:05   ` Paulius Zaleckas
2010-11-05  9:46 ` [PATCH 3/7] ARM i.MX51: Make CONFIG_MXC_TZIC an invisible option Sascha Hauer
2010-11-05  9:46 ` [PATCH 4/7] ARM i.MX irq: Allow runtime decision between AVIC and TZIC Sascha Hauer
2010-11-05 10:37   ` Uwe Kleine-König
2010-11-05 12:04     ` Sascha Hauer
2010-11-05 11:49   ` Uwe Kleine-König
2010-11-05  9:46 ` [PATCH 5/7] ARM i.MX DMA: return gracefully on different socs Sascha Hauer
2010-11-05  9:46 ` [PATCH 6/7] ARM i.MX51: " Sascha Hauer
2010-11-05  9:46 ` [PATCH 7/7] ARM i.MX27 pm: " Sascha Hauer

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