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: Holger Schurig <hs4233@mail.mn-solutions.de> Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
This commit is contained in:
parent
ccfe30a7c8
commit
5512e88f3a
5 changed files with 31 additions and 3 deletions
|
@ -1,12 +1,25 @@
|
||||||
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
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,7 @@
|
||||||
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 = {
|
||||||
.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 = {
|
||||||
.resource = uart5,
|
.resource = uart5,
|
||||||
.num_resources = ARRAY_SIZE(uart5),
|
.num_resources = ARRAY_SIZE(uart5),
|
||||||
};
|
};
|
||||||
|
#endif
|
||||||
|
|
|
@ -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 @@
|
||||||
# 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
|
||||||
|
|
Loading…
Add table
Reference in a new issue