Commit 5512e88f authored by Holger Schurig's avatar Holger Schurig Committed by Sascha Hauer

arm/imx21: add kbuild support for the Freescale i.MX21

* adds Kconfig variables
* specifies different physical address for i.MX21 because of the
  different memory layouts
* disables support for UART5/UART6 in the i.MX serial driver
  (the i.MX21 doesn't have those modules)

Based on code from "Martin Fuzzey" <mfuzzey@gmail.com>
Signed-off-by: default avatarHolger Schurig <hs4233@mail.mn-solutions.de>
Signed-off-by: default avatarSascha Hauer <s.hauer@pengutronix.de>
parent ccfe30a7
comment "MX2 family CPU support" comment "MX2 family CPU support"
depends on ARCH_MX2 depends on ARCH_MX2
choice
prompt "MX2 Type"
depends on ARCH_MX2
default MACH_MX21
config MACH_MX21
bool "i.MX21 support"
depends on ARCH_MX2
help
This enables support for Freescale's MX2 based i.MX21 processor.
config MACH_MX27 config MACH_MX27
bool "i.MX27 support" bool "i.MX27 support"
depends on ARCH_MX2 depends on ARCH_MX2
help help
This enables support for Freescale's MX2 based i.MX27 processor. This enables support for Freescale's MX2 based i.MX27 processor.
endchoice
comment "MX2 Platforms" comment "MX2 Platforms"
depends on ARCH_MX2 depends on ARCH_MX2
......
zreladdr-y := 0xA0008000 zreladdr-$(CONFIG_MACH_MX21) := 0xC0008000
params_phys-y := 0xA0000100 params_phys-$(CONFIG_MACH_MX21) := 0xC0000100
initrd_phys-y := 0xA0800000 initrd_phys-$(CONFIG_MACH_MX21) := 0xC0800000
zreladdr-$(CONFIG_MACH_MX27) := 0xA0008000
params_phys-$(CONFIG_MACH_MX27) := 0xA0000100
initrd_phys-$(CONFIG_MACH_MX27) := 0xA0800000
...@@ -99,6 +99,7 @@ struct platform_device mxc_uart_device3 = { ...@@ -99,6 +99,7 @@ struct platform_device mxc_uart_device3 = {
.num_resources = ARRAY_SIZE(uart3), .num_resources = ARRAY_SIZE(uart3),
}; };
#ifdef CONFIG_MACH_MX27
static struct resource uart4[] = { static struct resource uart4[] = {
{ {
.start = UART5_BASE_ADDR, .start = UART5_BASE_ADDR,
...@@ -136,3 +137,4 @@ struct platform_device mxc_uart_device5 = { ...@@ -136,3 +137,4 @@ struct platform_device mxc_uart_device5 = {
.resource = uart5, .resource = uart5,
.num_resources = ARRAY_SIZE(uart5), .num_resources = ARRAY_SIZE(uart5),
}; };
#endif
...@@ -14,7 +14,12 @@ ...@@ -14,7 +14,12 @@
#if defined CONFIG_ARCH_MX1 #if defined CONFIG_ARCH_MX1
#define PHYS_OFFSET UL(0x08000000) #define PHYS_OFFSET UL(0x08000000)
#elif defined CONFIG_ARCH_MX2 #elif defined CONFIG_ARCH_MX2
#ifdef CONFIG_MACH_MX21
#define PHYS_OFFSET UL(0xC0000000)
#endif
#ifdef CONFIG_MACH_MX27
#define PHYS_OFFSET UL(0xA0000000) #define PHYS_OFFSET UL(0xA0000000)
#endif
#elif defined CONFIG_ARCH_MX3 #elif defined CONFIG_ARCH_MX3
#define PHYS_OFFSET UL(0x80000000) #define PHYS_OFFSET UL(0x80000000)
#endif #endif
......
...@@ -29,6 +29,10 @@ ...@@ -29,6 +29,10 @@
# define cpu_is_mx31() (0) # define cpu_is_mx31() (0)
#endif #endif
#ifndef CONFIG_MACH_MX21
# define cpu_is_mx21() (0)
#endif
#ifndef CONFIG_MACH_MX27 #ifndef CONFIG_MACH_MX27
# define cpu_is_mx27() (0) # define cpu_is_mx27() (0)
#endif #endif
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment