[PATCH] ARM: mxs: Initial support for Ka-Ro TX28

Shawn Guo shawn.guo at freescale.com
Sat Feb 26 02:50:28 EST 2011


On Thu, Feb 24, 2011 at 10:04:40PM +0100, Uwe Kleine-König wrote:
> From: Lothar Waßmann <LW at KARO-electronics.de>
> 
> Based on code created by Lothar Waßmann, Sascha Hauer, Wolfram Sang and
> me.
> 
> Signed-off-by: Lothar Waßmann <LW at KARO-electronics.de>
> Signed-off-by: Sascha Hauer <s.hauer at pengutronix.de>
> Signed-off-by: Wolfram Sang <w.sang at pengutronix.de>
> Signed-off-by: Uwe Kleine-König <u.kleine-koenig at pengutronix.de>
> ---
>  arch/arm/mach-mxs/Kconfig                   |   12 ++
>  arch/arm/mach-mxs/Makefile                  |    2 +
>  arch/arm/mach-mxs/include/mach/mxs.h        |    9 +-
>  arch/arm/mach-mxs/include/mach/uncompress.h |    1 +
>  arch/arm/mach-mxs/mach-tx28.c               |  175 +++++++++++++++++++++++++++
>  arch/arm/mach-mxs/module-tx28.c             |  131 ++++++++++++++++++++
>  arch/arm/mach-mxs/module-tx28.h             |    9 ++
>  7 files changed, 337 insertions(+), 2 deletions(-)
>  create mode 100644 arch/arm/mach-mxs/mach-tx28.c
>  create mode 100644 arch/arm/mach-mxs/module-tx28.c
>  create mode 100644 arch/arm/mach-mxs/module-tx28.h
> 
> diff --git a/arch/arm/mach-mxs/Kconfig b/arch/arm/mach-mxs/Kconfig
> index 836cc81..895d066 100644
> --- a/arch/arm/mach-mxs/Kconfig
> +++ b/arch/arm/mach-mxs/Kconfig
> @@ -39,4 +39,16 @@ config MACH_MX28EVK
>  	  Include support for MX28EVK platform. This includes specific
>  	  configurations for the board and its peripherals.
>  
> +config MODULE_TX28
> +	bool
> +	select SOC_IMX28
> +	select MXS_HAVE_AMBA_DUART
> +	select MXS_HAVE_PLATFORM_AUART
> +	select MXS_HAVE_PLATFORM_FEC
> +	select MXS_HAVE_PLATFORM_MXS_PWM
> +
> +config MACH_TX28
> +	bool "Ka-Ro TX28 module"
> +	select MODULE_TX28
> +
>  endif
> diff --git a/arch/arm/mach-mxs/Makefile b/arch/arm/mach-mxs/Makefile
> index 6b26f02..2f1f614 100644
> --- a/arch/arm/mach-mxs/Makefile
> +++ b/arch/arm/mach-mxs/Makefile
> @@ -9,5 +9,7 @@ obj-$(CONFIG_SOC_IMX28) += clock-mx28.o mm-mx28.o
>  
>  obj-$(CONFIG_MACH_MX23EVK) += mach-mx23evk.o
>  obj-$(CONFIG_MACH_MX28EVK) += mach-mx28evk.o
> +obj-$(CONFIG_MODULE_TX28) += module-tx28.o
> +obj-$(CONFIG_MACH_TX28)    += mach-tx28.o
>  
>  obj-y += devices/
> diff --git a/arch/arm/mach-mxs/include/mach/mxs.h b/arch/arm/mach-mxs/include/mach/mxs.h
> index f186c08..35a89dd 100644
> --- a/arch/arm/mach-mxs/include/mach/mxs.h
> +++ b/arch/arm/mach-mxs/include/mach/mxs.h
> @@ -28,8 +28,13 @@
>  /*
>   * MXS CPU types
>   */
> -#define cpu_is_mx23()		(machine_is_mx23evk())
> -#define cpu_is_mx28()		(machine_is_mx28evk())
> +#define cpu_is_mx23()		(					\
> +		machine_is_mx23evk() ||					\
> +		0)
> +#define cpu_is_mx28()		(					\
> +		machine_is_mx28evk() ||					\
> +		machine_is_tx28() ||					\
> +		0)
>  
>  /*
>   * IO addresses common to MXS-based
> diff --git a/arch/arm/mach-mxs/include/mach/uncompress.h b/arch/arm/mach-mxs/include/mach/uncompress.h
> index a005e76..f12a173 100644
> --- a/arch/arm/mach-mxs/include/mach/uncompress.h
> +++ b/arch/arm/mach-mxs/include/mach/uncompress.h
> @@ -63,6 +63,7 @@ static inline void __arch_decomp_setup(unsigned long arch_id)
>  		mxs_duart_base = MX23_DUART_BASE_ADDR;
>  		break;
>  	case MACH_TYPE_MX28EVK:
> +	case MACH_TYPE_TX28:
>  		mxs_duart_base = MX28_DUART_BASE_ADDR;
>  		break;
>  	default:
> diff --git a/arch/arm/mach-mxs/mach-tx28.c b/arch/arm/mach-mxs/mach-tx28.c
> new file mode 100644
> index 0000000..540d6ea
> --- /dev/null
> +++ b/arch/arm/mach-mxs/mach-tx28.c
> @@ -0,0 +1,175 @@
> +/*
> + * Copyright (C) 2010 <LW at KARO-electronics.de>
> + *
> + * based on: mach-mx28_evk.c

mach-mx28evk.c?

> + * Copyright 2010 Freescale Semiconductor, Inc. All Rights Reserved.
> + *
> + * This program is free software; you can redistribute it and/or
> + * modify it under the terms of the GNU General Public License
> + * version 2 as published by the Free Software Foundation
> + */

-- 
Regards,
Shawn




More information about the linux-arm-kernel mailing list