Skip to content

Commit

Permalink
mx31moboard: clean-up of board support
Browse files Browse the repository at this point in the history
Various improvements (includes in alphabetical order, platform devices
declaration order change, ...)

The pins now are claimed in a single function call from a main table for
every board for a better clarity and to adopt the current agreement for
mx31 devices.

Signed-off-by: Valentin Longchamp <valentin.longchamp@epfl.ch>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
  • Loading branch information
Valentin Longchamp authored and Sascha Hauer committed May 7, 2009
1 parent ec9be0d commit 220bbce
Show file tree
Hide file tree
Showing 3 changed files with 33 additions and 31 deletions.
21 changes: 12 additions & 9 deletions arch/arm/mach-mx3/mx31moboard-devboard.c
Original file line number Diff line number Diff line change
Expand Up @@ -16,33 +16,36 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/

#include <linux/types.h>
#include <linux/init.h>

#include <linux/platform_device.h>
#include <linux/types.h>

#include <mach/hardware.h>
#include <mach/common.h>
#include <mach/imx-uart.h>
#include <mach/iomux-mx3.h>
#include <mach/hardware.h>

#include "devices.h"

static struct imxuart_platform_data uart_pdata = {
.flags = IMXUART_HAVE_RTSCTS,
};

static int mxc_uart1_pins[] = {
static unsigned int devboard_pins[] = {
/* UART1 */
MX31_PIN_CTS2__CTS2, MX31_PIN_RTS2__RTS2,
MX31_PIN_TXD2__TXD2, MX31_PIN_RXD2__RXD2,
};

static struct imxuart_platform_data uart_pdata = {
.flags = IMXUART_HAVE_RTSCTS,
};

/*
* system init for baseboard usage. Will be called by mx31moboard init.
*/
void __init mx31moboard_devboard_init(void)
{
printk(KERN_INFO "Initializing mx31devboard peripherals\n");
mxc_iomux_setup_multiple_pins(mxc_uart1_pins, ARRAY_SIZE(mxc_uart1_pins), "uart1");

mxc_iomux_setup_multiple_pins(devboard_pins, ARRAY_SIZE(devboard_pins),
"devboard");

mxc_register_device(&mxc_uart_device1, &uart_pdata);
}
5 changes: 2 additions & 3 deletions arch/arm/mach-mx3/mx31moboard-marxbot.c
Original file line number Diff line number Diff line change
Expand Up @@ -16,13 +16,12 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/

#include <linux/types.h>
#include <linux/init.h>

#include <linux/platform_device.h>
#include <linux/types.h>

#include <mach/hardware.h>
#include <mach/common.h>
#include <mach/hardware.h>
#include <mach/imx-uart.h>
#include <mach/iomux-mx3.h>

Expand Down
38 changes: 19 additions & 19 deletions arch/arm/mach-mx3/mx31moboard.c
Original file line number Diff line number Diff line change
Expand Up @@ -16,26 +16,34 @@
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/

#include <linux/types.h>
#include <linux/init.h>

#include <linux/platform_device.h>
#include <linux/memory.h>
#include <linux/mtd/physmap.h>
#include <linux/mtd/partitions.h>
#include <linux/memory.h>
#include <linux/platform_device.h>
#include <linux/types.h>

#include <mach/hardware.h>
#include <asm/mach-types.h>
#include <asm/mach/arch.h>
#include <asm/mach/time.h>
#include <asm/mach/map.h>
#include <mach/board-mx31moboard.h>
#include <mach/common.h>
#include <mach/hardware.h>
#include <mach/imx-uart.h>
#include <mach/iomux-mx3.h>
#include <mach/board-mx31moboard.h>

#include "devices.h"

static unsigned int moboard_pins[] = {
/* UART0 */
MX31_PIN_CTS1__CTS1, MX31_PIN_RTS1__RTS1,
MX31_PIN_TXD1__TXD1, MX31_PIN_RXD1__RXD1,
/* UART4 */
MX31_PIN_PC_RST__CTS5, MX31_PIN_PC_VS2__RTS5,
MX31_PIN_PC_BVD2__TXD5, MX31_PIN_PC_BVD1__RXD5,
};

static struct physmap_flash_data mx31moboard_flash_data = {
.width = 2,
};
Expand Down Expand Up @@ -64,15 +72,6 @@ static struct platform_device *devices[] __initdata = {
&mx31moboard_flash,
};

static int mxc_uart0_pins[] = {
MX31_PIN_CTS1__CTS1, MX31_PIN_RTS1__RTS1,
MX31_PIN_TXD1__TXD1, MX31_PIN_RXD1__RXD1,
};
static int mxc_uart4_pins[] = {
MX31_PIN_PC_RST__CTS5, MX31_PIN_PC_VS2__RTS5,
MX31_PIN_PC_BVD2__TXD5, MX31_PIN_PC_BVD1__RXD5,
};

static int mx31moboard_baseboard;
core_param(mx31moboard_baseboard, mx31moboard_baseboard, int, 0444);

Expand All @@ -81,12 +80,12 @@ core_param(mx31moboard_baseboard, mx31moboard_baseboard, int, 0444);
*/
static void __init mxc_board_init(void)
{
mxc_iomux_setup_multiple_pins(moboard_pins, ARRAY_SIZE(moboard_pins),
"moboard");

platform_add_devices(devices, ARRAY_SIZE(devices));

mxc_iomux_setup_multiple_pins(mxc_uart0_pins, ARRAY_SIZE(mxc_uart0_pins), "uart0");
mxc_register_device(&mxc_uart_device0, &uart_pdata);

mxc_iomux_setup_multiple_pins(mxc_uart4_pins, ARRAY_SIZE(mxc_uart4_pins), "uart4");
mxc_register_device(&mxc_uart_device4, &uart_pdata);

switch (mx31moboard_baseboard) {
Expand All @@ -99,7 +98,8 @@ static void __init mxc_board_init(void)
mx31moboard_marxbot_init();
break;
default:
printk(KERN_ERR "Illegal mx31moboard_baseboard type %d\n", mx31moboard_baseboard);
printk(KERN_ERR "Illegal mx31moboard_baseboard type %d\n",
mx31moboard_baseboard);
}
}

Expand Down

0 comments on commit 220bbce

Please sign in to comment.