All of lore.kernel.org
 help / color / mirror / Atom feed
From: s.hauer@pengutronix.de (Sascha Hauer)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCHv2 07/11] mxc: Add support for the Babbage board
Date: Wed, 3 Feb 2010 12:10:03 +0100	[thread overview]
Message-ID: <20100203111003.GP6130@pengutronix.de> (raw)
In-Reply-To: <752ae69adb57d4f73fa011ba380cea1b927b9c8b.1265173480.git.amit.kucheria@canonical.com>

On Tue, Feb 02, 2010 at 09:16:29PM -0800, Amit Kucheria wrote:
> Babbage is a reference board from Freescale for their i.MX51 SoC.
> 
> Boot tested on a Babbage2.5 board
> 
> Signed-off-by: Amit Kucheria <amit.kucheria@canonical.com>
> ---
>  arch/arm/mach-mx5/Kconfig               |    6 ++
>  arch/arm/mach-mx5/Makefile              |    2 +
>  arch/arm/mach-mx5/board-mx51_babbage.c  |   99 +++++++++++++++++++++++++++++++
>  arch/arm/plat-mxc/include/mach/common.h |    1 +
>  4 files changed, 108 insertions(+), 0 deletions(-)
>  create mode 100644 arch/arm/mach-mx5/board-mx51_babbage.c
> 
> diff --git a/arch/arm/mach-mx5/Kconfig b/arch/arm/mach-mx5/Kconfig
> index ccd96fd..80a749c 100644
> --- a/arch/arm/mach-mx5/Kconfig
> +++ b/arch/arm/mach-mx5/Kconfig
> @@ -8,4 +8,10 @@ config ARCH_MX51
>  
>  comment "MX5 platforms:"
>  
> +config MACH_MX51_BABBAGE
> +	bool "Support MX51 BABBAGE platforms"
> +	help
> +	  Include support for MX51 Babbage platform. This includes specific
> +	  configurations for the board and its peripherals.
> +
>  endif
> diff --git a/arch/arm/mach-mx5/Makefile b/arch/arm/mach-mx5/Makefile
> index d74ce4f..e4cf91f 100644
> --- a/arch/arm/mach-mx5/Makefile
> +++ b/arch/arm/mach-mx5/Makefile
> @@ -5,3 +5,5 @@
>  # Object file lists.
>  obj-y   := cpu.o mm.o clock.o devices.o
>  
> +obj-$(CONFIG_MACH_MX51_BABBAGE) += board-mx51_babbage.o
> +
> diff --git a/arch/arm/mach-mx5/board-mx51_babbage.c b/arch/arm/mach-mx5/board-mx51_babbage.c

Uwe started to rename the board files on other i.MX platforms to
mach-*.c. Can you do the same please?

> new file mode 100644
> index 0000000..6cd0e14
> --- /dev/null
> +++ b/arch/arm/mach-mx5/board-mx51_babbage.c
> @@ -0,0 +1,99 @@
> +/*
> + * Copyright 2009 Freescale Semiconductor, Inc. All Rights Reserved.
> + * Copyright (C) 2009-2010 Amit Kucheria <amit.kucheria@canonical.com>
> + *
> + * The code contained herein is licensed under the GNU General Public
> + * License. You may obtain a copy of the GNU General Public License
> + * Version 2 or later at the following locations:
> + *
> + * http://www.opensource.org/licenses/gpl-license.html
> + * http://www.gnu.org/copyleft/gpl.html
> + */
> +
> +#include <linux/init.h>
> +#include <linux/platform_device.h>
> +
> +#include <mach/common.h>
> +#include <mach/hardware.h>
> +#include <mach/imx-uart.h>
> +#include <mach/iomux-mx51.h>
> +
> +#include <asm/irq.h>
> +#include <asm/setup.h>
> +#include <asm/mach-types.h>
> +#include <asm/mach/arch.h>
> +#include <asm/mach/time.h>
> +
> +#include "crm_regs.h"

Is this needed?

> +#include "devices.h"
> +
> +static struct platform_device *devices[] __initdata = {
> +	&mxc_fec_device,
> +};
> +
> +static struct pad_desc mx51babbage_pads[] = {
> +	/* UART1 */
> +	MX51_BABBAGE_PAD_UART1_RXD__UART1_RXD,
> +	MX51_BABBAGE_PAD_UART1_TXD__UART1_TXD,
> +	MX51_BABBAGE_PAD_UART1_RTS__UART1_RTS,
> +	MX51_BABBAGE_PAD_UART1_CTS__UART1_CTS,
> +
> +	/* UART2 */
> +	MX51_BABBAGE_PAD_UART2_RXD__UART2_RXD,
> +	MX51_BABBAGE_PAD_UART2_TXD__UART2_TXD,
> +
> +	/* UART3 */
> +	MX51_BABBAGE_PAD_EIM_D25__UART3_RXD,
> +	MX51_BABBAGE_PAD_EIM_D26__UART3_TXD,
> +	MX51_BABBAGE_PAD_EIM_D27__UART3_RTS,
> +	MX51_BABBAGE_PAD_EIM_D24__UART3_CTS,
> +};
> +
> +/* Serial ports */
> +#if defined(CONFIG_SERIAL_IMX) || defined(CONFIG_SERIAL_IMX_MODULE)
> +static struct imxuart_platform_data uart_pdata = {
> +	.flags = IMXUART_HAVE_RTSCTS,
> +};
> +
> +static inline void mxc_init_imx_uart(void)
> +{
> +	mxc_register_device(&mxc_uart_device0, &uart_pdata);
> +	mxc_register_device(&mxc_uart_device1, &uart_pdata);
> +	mxc_register_device(&mxc_uart_device2, &uart_pdata);
> +}
> +#else /* !SERIAL_IMX */
> +static inline void mxc_init_imx_uart(void)
> +{
> +}
> +#endif /* SERIAL_IMX */
> +
> +/*
> + * Board specific initialization.
> + */
> +static void __init mxc_board_init(void)
> +{
> +	mxc_iomux_v3_setup_multiple_pads(mx51babbage_pads,
> +					ARRAY_SIZE(mx51babbage_pads));
> +	mxc_init_imx_uart();
> +	platform_add_devices(devices, ARRAY_SIZE(devices));
> +}
> +
> +static void __init mx51_babbage_timer_init(void)
> +{
> +	mx51_clocks_init(32768, 24000000, 22579200, 24576000);
> +}
> +
> +static struct sys_timer mxc_timer = {
> +	.init	= mx51_babbage_timer_init,
> +};
> +
> +MACHINE_START(MX51_BABBAGE, "Freescale MX51 Babbage Board")
> +	/* Maintainer: Amit Kucheria <amit.kucheria@canonical.com> */
> +	.phys_io = MX51_AIPS1_BASE_ADDR,
> +	.io_pg_offst = ((MX51_AIPS1_BASE_ADDR_VIRT) >> 18) & 0xfffc,
> +	.boot_params = PHYS_OFFSET + 0x100,
> +	.map_io = mx51_map_io,
> +	.init_irq = mx51_init_irq,
> +	.init_machine = mxc_board_init,
> +	.timer = &mxc_timer,
> +MACHINE_END
> diff --git a/arch/arm/plat-mxc/include/mach/common.h b/arch/arm/plat-mxc/include/mach/common.h
> index 0a25576..33d4496 100644
> --- a/arch/arm/plat-mxc/include/mach/common.h
> +++ b/arch/arm/plat-mxc/include/mach/common.h
> @@ -21,6 +21,7 @@ extern void mx27_map_io(void);
>  extern void mx31_map_io(void);
>  extern void mx35_map_io(void);
>  extern void mx51_map_io(void);
> +extern void mx51_babbage_io_init(void);

Is this function used anywhere? I hope not...

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 |

WARNING: multiple messages have this Message-ID (diff)
From: Sascha Hauer <s.hauer@pengutronix.de>
To: Amit Kucheria <amit.kucheria@canonical.com>
Cc: List Linux Kernel <linux-kernel@vger.kernel.org>,
	linux-arm-kernel@lists.infradead.org, linux@arm.linux.org.uk,
	valentin.longchamp@epfl.ch, daniel@caiaq.de,
	grant.likely@secretlab.ca, Dinh.Nguyen@freescale.com,
	r.herring@freescale.com, bryan.wu@canonical.com
Subject: Re: [PATCHv2 07/11] mxc: Add support for the Babbage board
Date: Wed, 3 Feb 2010 12:10:03 +0100	[thread overview]
Message-ID: <20100203111003.GP6130@pengutronix.de> (raw)
In-Reply-To: <752ae69adb57d4f73fa011ba380cea1b927b9c8b.1265173480.git.amit.kucheria@canonical.com>

On Tue, Feb 02, 2010 at 09:16:29PM -0800, Amit Kucheria wrote:
> Babbage is a reference board from Freescale for their i.MX51 SoC.
> 
> Boot tested on a Babbage2.5 board
> 
> Signed-off-by: Amit Kucheria <amit.kucheria@canonical.com>
> ---
>  arch/arm/mach-mx5/Kconfig               |    6 ++
>  arch/arm/mach-mx5/Makefile              |    2 +
>  arch/arm/mach-mx5/board-mx51_babbage.c  |   99 +++++++++++++++++++++++++++++++
>  arch/arm/plat-mxc/include/mach/common.h |    1 +
>  4 files changed, 108 insertions(+), 0 deletions(-)
>  create mode 100644 arch/arm/mach-mx5/board-mx51_babbage.c
> 
> diff --git a/arch/arm/mach-mx5/Kconfig b/arch/arm/mach-mx5/Kconfig
> index ccd96fd..80a749c 100644
> --- a/arch/arm/mach-mx5/Kconfig
> +++ b/arch/arm/mach-mx5/Kconfig
> @@ -8,4 +8,10 @@ config ARCH_MX51
>  
>  comment "MX5 platforms:"
>  
> +config MACH_MX51_BABBAGE
> +	bool "Support MX51 BABBAGE platforms"
> +	help
> +	  Include support for MX51 Babbage platform. This includes specific
> +	  configurations for the board and its peripherals.
> +
>  endif
> diff --git a/arch/arm/mach-mx5/Makefile b/arch/arm/mach-mx5/Makefile
> index d74ce4f..e4cf91f 100644
> --- a/arch/arm/mach-mx5/Makefile
> +++ b/arch/arm/mach-mx5/Makefile
> @@ -5,3 +5,5 @@
>  # Object file lists.
>  obj-y   := cpu.o mm.o clock.o devices.o
>  
> +obj-$(CONFIG_MACH_MX51_BABBAGE) += board-mx51_babbage.o
> +
> diff --git a/arch/arm/mach-mx5/board-mx51_babbage.c b/arch/arm/mach-mx5/board-mx51_babbage.c

Uwe started to rename the board files on other i.MX platforms to
mach-*.c. Can you do the same please?

> new file mode 100644
> index 0000000..6cd0e14
> --- /dev/null
> +++ b/arch/arm/mach-mx5/board-mx51_babbage.c
> @@ -0,0 +1,99 @@
> +/*
> + * Copyright 2009 Freescale Semiconductor, Inc. All Rights Reserved.
> + * Copyright (C) 2009-2010 Amit Kucheria <amit.kucheria@canonical.com>
> + *
> + * The code contained herein is licensed under the GNU General Public
> + * License. You may obtain a copy of the GNU General Public License
> + * Version 2 or later at the following locations:
> + *
> + * http://www.opensource.org/licenses/gpl-license.html
> + * http://www.gnu.org/copyleft/gpl.html
> + */
> +
> +#include <linux/init.h>
> +#include <linux/platform_device.h>
> +
> +#include <mach/common.h>
> +#include <mach/hardware.h>
> +#include <mach/imx-uart.h>
> +#include <mach/iomux-mx51.h>
> +
> +#include <asm/irq.h>
> +#include <asm/setup.h>
> +#include <asm/mach-types.h>
> +#include <asm/mach/arch.h>
> +#include <asm/mach/time.h>
> +
> +#include "crm_regs.h"

Is this needed?

> +#include "devices.h"
> +
> +static struct platform_device *devices[] __initdata = {
> +	&mxc_fec_device,
> +};
> +
> +static struct pad_desc mx51babbage_pads[] = {
> +	/* UART1 */
> +	MX51_BABBAGE_PAD_UART1_RXD__UART1_RXD,
> +	MX51_BABBAGE_PAD_UART1_TXD__UART1_TXD,
> +	MX51_BABBAGE_PAD_UART1_RTS__UART1_RTS,
> +	MX51_BABBAGE_PAD_UART1_CTS__UART1_CTS,
> +
> +	/* UART2 */
> +	MX51_BABBAGE_PAD_UART2_RXD__UART2_RXD,
> +	MX51_BABBAGE_PAD_UART2_TXD__UART2_TXD,
> +
> +	/* UART3 */
> +	MX51_BABBAGE_PAD_EIM_D25__UART3_RXD,
> +	MX51_BABBAGE_PAD_EIM_D26__UART3_TXD,
> +	MX51_BABBAGE_PAD_EIM_D27__UART3_RTS,
> +	MX51_BABBAGE_PAD_EIM_D24__UART3_CTS,
> +};
> +
> +/* Serial ports */
> +#if defined(CONFIG_SERIAL_IMX) || defined(CONFIG_SERIAL_IMX_MODULE)
> +static struct imxuart_platform_data uart_pdata = {
> +	.flags = IMXUART_HAVE_RTSCTS,
> +};
> +
> +static inline void mxc_init_imx_uart(void)
> +{
> +	mxc_register_device(&mxc_uart_device0, &uart_pdata);
> +	mxc_register_device(&mxc_uart_device1, &uart_pdata);
> +	mxc_register_device(&mxc_uart_device2, &uart_pdata);
> +}
> +#else /* !SERIAL_IMX */
> +static inline void mxc_init_imx_uart(void)
> +{
> +}
> +#endif /* SERIAL_IMX */
> +
> +/*
> + * Board specific initialization.
> + */
> +static void __init mxc_board_init(void)
> +{
> +	mxc_iomux_v3_setup_multiple_pads(mx51babbage_pads,
> +					ARRAY_SIZE(mx51babbage_pads));
> +	mxc_init_imx_uart();
> +	platform_add_devices(devices, ARRAY_SIZE(devices));
> +}
> +
> +static void __init mx51_babbage_timer_init(void)
> +{
> +	mx51_clocks_init(32768, 24000000, 22579200, 24576000);
> +}
> +
> +static struct sys_timer mxc_timer = {
> +	.init	= mx51_babbage_timer_init,
> +};
> +
> +MACHINE_START(MX51_BABBAGE, "Freescale MX51 Babbage Board")
> +	/* Maintainer: Amit Kucheria <amit.kucheria@canonical.com> */
> +	.phys_io = MX51_AIPS1_BASE_ADDR,
> +	.io_pg_offst = ((MX51_AIPS1_BASE_ADDR_VIRT) >> 18) & 0xfffc,
> +	.boot_params = PHYS_OFFSET + 0x100,
> +	.map_io = mx51_map_io,
> +	.init_irq = mx51_init_irq,
> +	.init_machine = mxc_board_init,
> +	.timer = &mxc_timer,
> +MACHINE_END
> diff --git a/arch/arm/plat-mxc/include/mach/common.h b/arch/arm/plat-mxc/include/mach/common.h
> index 0a25576..33d4496 100644
> --- a/arch/arm/plat-mxc/include/mach/common.h
> +++ b/arch/arm/plat-mxc/include/mach/common.h
> @@ -21,6 +21,7 @@ extern void mx27_map_io(void);
>  extern void mx31_map_io(void);
>  extern void mx35_map_io(void);
>  extern void mx51_map_io(void);
> +extern void mx51_babbage_io_init(void);

Is this function used anywhere? I hope not...

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 |

  parent reply	other threads:[~2010-02-03 11:10 UTC|newest]

Thread overview: 81+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <cover.1265173480.git.amit.kucheria@canonical.com>
2010-02-03  5:16 ` [PATCHv2 00/11] Base support for Freescale i.MX51 SoC platform Amit Kucheria
2010-02-03  5:16   ` Amit Kucheria
2010-02-03  5:16   ` [PATCHv2 01/11] arm: mxc: TrustZone interrupt controller (TZIC) for i.MX5 family Amit Kucheria
2010-02-03  5:16     ` Amit Kucheria
2010-02-03  5:16     ` [PATCHv2 02/11] mxc timer: refactor timer code to use timer versions Amit Kucheria
2010-02-03  5:16       ` Amit Kucheria
2010-02-03  5:16       ` [PATCHv2 03/11] mxc: Fix Drive Strength Field in the IOMUX controller Amit Kucheria
2010-02-03  5:16         ` Amit Kucheria
2010-02-03  5:16         ` [PATCHv2 04/11] mxc: changes to common plat-mxc code to add support for i.MX5 Amit Kucheria
2010-02-03  5:16           ` Amit Kucheria
2010-02-03  5:16           ` [PATCHv2 05/11] mxc: Core support for i.MX5 series of processors from Freescale Amit Kucheria
2010-02-03  5:16             ` Amit Kucheria
2010-02-03  5:16             ` [PATCHv2 06/11] mxc: enable support for Freescale i.MX5 series of processors Amit Kucheria
2010-02-03  5:16               ` Amit Kucheria
2010-02-03  5:16               ` [PATCHv2 07/11] mxc: Add support for the Babbage board Amit Kucheria
2010-02-03  5:16                 ` Amit Kucheria
2010-02-03  5:16                 ` [PATCHv2 08/11] fec: fix uninitialized rx buffer usage Amit Kucheria
2010-02-03  5:16                   ` Amit Kucheria
2010-02-03  5:16                   ` Amit Kucheria
2010-02-03  5:16                   ` [PATCHv2 09/11] fec: Add LAN8700 phy support Amit Kucheria
2010-02-03  5:16                     ` Amit Kucheria
2010-02-03  5:16                     ` [PATCHv2 10/11] fec: Add ARCH_MX5 as a dependency Amit Kucheria
2010-02-03  5:16                       ` Amit Kucheria
2010-02-03  5:16                       ` [PATCHv2 11/11] mxc: Add imx51_defconfig Amit Kucheria
2010-02-03  5:16                         ` Amit Kucheria
2010-02-05  6:48                         ` Sascha Hauer
2010-02-05  6:48                           ` Sascha Hauer
2010-02-03 16:46                   ` [PATCHv2 08/11] fec: fix uninitialized rx buffer usage Grant Likely
2010-02-03 16:46                     ` Grant Likely
2010-02-03 18:33                     ` Amit Kucheria
2010-02-03 18:33                       ` Amit Kucheria
2010-02-03 18:38                       ` Grant Likely
2010-02-03 18:38                         ` Grant Likely
2010-02-03 20:23                         ` Grant Likely
2010-02-03 20:23                           ` Grant Likely
2010-02-03 11:10                 ` Sascha Hauer [this message]
2010-02-03 11:10                   ` [PATCHv2 07/11] mxc: Add support for the Babbage board Sascha Hauer
2010-02-03  7:03             ` [PATCHv2 05/11] mxc: Core support for i.MX5 series of processors from Freescale Eric Miao
2010-02-03  7:03               ` Eric Miao
2010-02-03 14:20               ` Amit Kucheria
2010-02-03 14:20                 ` Amit Kucheria
2010-02-03  9:24             ` Russell King - ARM Linux
2010-02-03  9:24               ` Russell King - ARM Linux
2010-02-03 11:04             ` Sascha Hauer
2010-02-03 11:04               ` Sascha Hauer
2010-02-03 20:07               ` Amit Kucheria
2010-02-03 20:07                 ` Amit Kucheria
2010-02-03 16:08             ` Rabin Vincent
2010-02-03 16:08               ` Rabin Vincent
2010-02-03  6:43           ` [PATCHv2 04/11] mxc: changes to common plat-mxc code to add support for i.MX5 Eric Miao
2010-02-03  6:43             ` Eric Miao
2010-02-03  9:49             ` Sascha Hauer
2010-02-03  9:49               ` Sascha Hauer
2010-02-03 13:38               ` Amit Kucheria
2010-02-03 13:38                 ` Amit Kucheria
2010-02-03 15:16                 ` Eric Miao
2010-02-03 15:16                   ` Eric Miao
2010-02-03 16:35           ` Grant Likely
2010-02-03 16:35             ` Grant Likely
2010-02-03  6:29         ` [PATCHv2 03/11] mxc: Fix Drive Strength Field in the IOMUX controller Eric Miao
2010-02-03  6:29           ` Eric Miao
2010-02-03  9:40           ` Sascha Hauer
2010-02-03  9:40             ` Sascha Hauer
2010-02-03 16:27         ` Grant Likely
2010-02-03 16:27           ` Grant Likely
2010-02-04  0:25           ` Amit Kucheria
2010-02-04  0:25             ` Amit Kucheria
2010-02-03 16:23       ` [PATCHv2 02/11] mxc timer: refactor timer code to use timer versions Grant Likely
2010-02-03 16:23         ` Grant Likely
2010-02-03  6:23     ` [PATCHv2 01/11] arm: mxc: TrustZone interrupt controller (TZIC) for i.MX5 family Eric Miao
2010-02-03  6:23       ` Eric Miao
2010-02-03  9:45       ` Sascha Hauer
2010-02-03  9:45         ` Sascha Hauer
2010-02-03 13:24       ` Amit Kucheria
2010-02-03 13:24         ` Amit Kucheria
2010-02-03 15:09         ` Eric Miao
2010-02-03 15:09           ` Eric Miao
2010-02-04  0:54           ` Eric Miao
2010-02-04  0:54             ` Eric Miao
2010-02-04 17:09         ` Nguyen Dinh-R00091
2010-02-04 17:09           ` Nguyen Dinh-R00091

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=20100203111003.GP6130@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.