diff options
author | Valentin Longchamp <valentin.longchamp@epfl.ch> | 2009-04-17 09:20:25 -0400 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2009-05-07 10:17:07 -0400 |
commit | 220bbcea278b4fef7ef0a45ce754222f8ed9d134 (patch) | |
tree | 93cdb33631ff8e6bff6789284128f3c92c8ceb09 /arch | |
parent | ec9be0debd822d5bd1d5bfdf297144396d56ac6b (diff) |
mx31moboard: clean-up of board support
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>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/mach-mx3/mx31moboard-devboard.c | 21 | ||||
-rw-r--r-- | arch/arm/mach-mx3/mx31moboard-marxbot.c | 5 | ||||
-rw-r--r-- | arch/arm/mach-mx3/mx31moboard.c | 38 |
3 files changed, 33 insertions, 31 deletions
diff --git a/arch/arm/mach-mx3/mx31moboard-devboard.c b/arch/arm/mach-mx3/mx31moboard-devboard.c index d080b4add79c..718702f1ebe6 100644 --- a/arch/arm/mach-mx3/mx31moboard-devboard.c +++ b/arch/arm/mach-mx3/mx31moboard-devboard.c | |||
@@ -16,33 +16,36 @@ | |||
16 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | 16 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
17 | */ | 17 | */ |
18 | 18 | ||
19 | #include <linux/types.h> | ||
20 | #include <linux/init.h> | 19 | #include <linux/init.h> |
21 | |||
22 | #include <linux/platform_device.h> | 20 | #include <linux/platform_device.h> |
21 | #include <linux/types.h> | ||
23 | 22 | ||
24 | #include <mach/hardware.h> | ||
25 | #include <mach/common.h> | 23 | #include <mach/common.h> |
26 | #include <mach/imx-uart.h> | 24 | #include <mach/imx-uart.h> |
27 | #include <mach/iomux-mx3.h> | 25 | #include <mach/iomux-mx3.h> |
26 | #include <mach/hardware.h> | ||
28 | 27 | ||
29 | #include "devices.h" | 28 | #include "devices.h" |
30 | 29 | ||
31 | static struct imxuart_platform_data uart_pdata = { | 30 | static unsigned int devboard_pins[] = { |
32 | .flags = IMXUART_HAVE_RTSCTS, | 31 | /* UART1 */ |
33 | }; | ||
34 | |||
35 | static int mxc_uart1_pins[] = { | ||
36 | MX31_PIN_CTS2__CTS2, MX31_PIN_RTS2__RTS2, | 32 | MX31_PIN_CTS2__CTS2, MX31_PIN_RTS2__RTS2, |
37 | MX31_PIN_TXD2__TXD2, MX31_PIN_RXD2__RXD2, | 33 | MX31_PIN_TXD2__TXD2, MX31_PIN_RXD2__RXD2, |
38 | }; | 34 | }; |
39 | 35 | ||
36 | static struct imxuart_platform_data uart_pdata = { | ||
37 | .flags = IMXUART_HAVE_RTSCTS, | ||
38 | }; | ||
39 | |||
40 | /* | 40 | /* |
41 | * system init for baseboard usage. Will be called by mx31moboard init. | 41 | * system init for baseboard usage. Will be called by mx31moboard init. |
42 | */ | 42 | */ |
43 | void __init mx31moboard_devboard_init(void) | 43 | void __init mx31moboard_devboard_init(void) |
44 | { | 44 | { |
45 | printk(KERN_INFO "Initializing mx31devboard peripherals\n"); | 45 | printk(KERN_INFO "Initializing mx31devboard peripherals\n"); |
46 | mxc_iomux_setup_multiple_pins(mxc_uart1_pins, ARRAY_SIZE(mxc_uart1_pins), "uart1"); | 46 | |
47 | mxc_iomux_setup_multiple_pins(devboard_pins, ARRAY_SIZE(devboard_pins), | ||
48 | "devboard"); | ||
49 | |||
47 | mxc_register_device(&mxc_uart_device1, &uart_pdata); | 50 | mxc_register_device(&mxc_uart_device1, &uart_pdata); |
48 | } | 51 | } |
diff --git a/arch/arm/mach-mx3/mx31moboard-marxbot.c b/arch/arm/mach-mx3/mx31moboard-marxbot.c index 9ef9566823fb..f5ea114e3248 100644 --- a/arch/arm/mach-mx3/mx31moboard-marxbot.c +++ b/arch/arm/mach-mx3/mx31moboard-marxbot.c | |||
@@ -16,13 +16,12 @@ | |||
16 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | 16 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
17 | */ | 17 | */ |
18 | 18 | ||
19 | #include <linux/types.h> | ||
20 | #include <linux/init.h> | 19 | #include <linux/init.h> |
21 | |||
22 | #include <linux/platform_device.h> | 20 | #include <linux/platform_device.h> |
21 | #include <linux/types.h> | ||
23 | 22 | ||
24 | #include <mach/hardware.h> | ||
25 | #include <mach/common.h> | 23 | #include <mach/common.h> |
24 | #include <mach/hardware.h> | ||
26 | #include <mach/imx-uart.h> | 25 | #include <mach/imx-uart.h> |
27 | #include <mach/iomux-mx3.h> | 26 | #include <mach/iomux-mx3.h> |
28 | 27 | ||
diff --git a/arch/arm/mach-mx3/mx31moboard.c b/arch/arm/mach-mx3/mx31moboard.c index 77168ed555ed..623df170a69d 100644 --- a/arch/arm/mach-mx3/mx31moboard.c +++ b/arch/arm/mach-mx3/mx31moboard.c | |||
@@ -16,26 +16,34 @@ | |||
16 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | 16 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA |
17 | */ | 17 | */ |
18 | 18 | ||
19 | #include <linux/types.h> | ||
20 | #include <linux/init.h> | 19 | #include <linux/init.h> |
21 | 20 | #include <linux/memory.h> | |
22 | #include <linux/platform_device.h> | ||
23 | #include <linux/mtd/physmap.h> | 21 | #include <linux/mtd/physmap.h> |
24 | #include <linux/mtd/partitions.h> | 22 | #include <linux/mtd/partitions.h> |
25 | #include <linux/memory.h> | 23 | #include <linux/platform_device.h> |
24 | #include <linux/types.h> | ||
26 | 25 | ||
27 | #include <mach/hardware.h> | ||
28 | #include <asm/mach-types.h> | 26 | #include <asm/mach-types.h> |
29 | #include <asm/mach/arch.h> | 27 | #include <asm/mach/arch.h> |
30 | #include <asm/mach/time.h> | 28 | #include <asm/mach/time.h> |
31 | #include <asm/mach/map.h> | 29 | #include <asm/mach/map.h> |
30 | #include <mach/board-mx31moboard.h> | ||
32 | #include <mach/common.h> | 31 | #include <mach/common.h> |
32 | #include <mach/hardware.h> | ||
33 | #include <mach/imx-uart.h> | 33 | #include <mach/imx-uart.h> |
34 | #include <mach/iomux-mx3.h> | 34 | #include <mach/iomux-mx3.h> |
35 | #include <mach/board-mx31moboard.h> | ||
36 | 35 | ||
37 | #include "devices.h" | 36 | #include "devices.h" |
38 | 37 | ||
38 | static unsigned int moboard_pins[] = { | ||
39 | /* UART0 */ | ||
40 | MX31_PIN_CTS1__CTS1, MX31_PIN_RTS1__RTS1, | ||
41 | MX31_PIN_TXD1__TXD1, MX31_PIN_RXD1__RXD1, | ||
42 | /* UART4 */ | ||
43 | MX31_PIN_PC_RST__CTS5, MX31_PIN_PC_VS2__RTS5, | ||
44 | MX31_PIN_PC_BVD2__TXD5, MX31_PIN_PC_BVD1__RXD5, | ||
45 | }; | ||
46 | |||
39 | static struct physmap_flash_data mx31moboard_flash_data = { | 47 | static struct physmap_flash_data mx31moboard_flash_data = { |
40 | .width = 2, | 48 | .width = 2, |
41 | }; | 49 | }; |
@@ -64,15 +72,6 @@ static struct platform_device *devices[] __initdata = { | |||
64 | &mx31moboard_flash, | 72 | &mx31moboard_flash, |
65 | }; | 73 | }; |
66 | 74 | ||
67 | static int mxc_uart0_pins[] = { | ||
68 | MX31_PIN_CTS1__CTS1, MX31_PIN_RTS1__RTS1, | ||
69 | MX31_PIN_TXD1__TXD1, MX31_PIN_RXD1__RXD1, | ||
70 | }; | ||
71 | static int mxc_uart4_pins[] = { | ||
72 | MX31_PIN_PC_RST__CTS5, MX31_PIN_PC_VS2__RTS5, | ||
73 | MX31_PIN_PC_BVD2__TXD5, MX31_PIN_PC_BVD1__RXD5, | ||
74 | }; | ||
75 | |||
76 | static int mx31moboard_baseboard; | 75 | static int mx31moboard_baseboard; |
77 | core_param(mx31moboard_baseboard, mx31moboard_baseboard, int, 0444); | 76 | core_param(mx31moboard_baseboard, mx31moboard_baseboard, int, 0444); |
78 | 77 | ||
@@ -81,12 +80,12 @@ core_param(mx31moboard_baseboard, mx31moboard_baseboard, int, 0444); | |||
81 | */ | 80 | */ |
82 | static void __init mxc_board_init(void) | 81 | static void __init mxc_board_init(void) |
83 | { | 82 | { |
83 | mxc_iomux_setup_multiple_pins(moboard_pins, ARRAY_SIZE(moboard_pins), | ||
84 | "moboard"); | ||
85 | |||
84 | platform_add_devices(devices, ARRAY_SIZE(devices)); | 86 | platform_add_devices(devices, ARRAY_SIZE(devices)); |
85 | 87 | ||
86 | mxc_iomux_setup_multiple_pins(mxc_uart0_pins, ARRAY_SIZE(mxc_uart0_pins), "uart0"); | ||
87 | mxc_register_device(&mxc_uart_device0, &uart_pdata); | 88 | mxc_register_device(&mxc_uart_device0, &uart_pdata); |
88 | |||
89 | mxc_iomux_setup_multiple_pins(mxc_uart4_pins, ARRAY_SIZE(mxc_uart4_pins), "uart4"); | ||
90 | mxc_register_device(&mxc_uart_device4, &uart_pdata); | 89 | mxc_register_device(&mxc_uart_device4, &uart_pdata); |
91 | 90 | ||
92 | switch (mx31moboard_baseboard) { | 91 | switch (mx31moboard_baseboard) { |
@@ -99,7 +98,8 @@ static void __init mxc_board_init(void) | |||
99 | mx31moboard_marxbot_init(); | 98 | mx31moboard_marxbot_init(); |
100 | break; | 99 | break; |
101 | default: | 100 | default: |
102 | printk(KERN_ERR "Illegal mx31moboard_baseboard type %d\n", mx31moboard_baseboard); | 101 | printk(KERN_ERR "Illegal mx31moboard_baseboard type %d\n", |
102 | mx31moboard_baseboard); | ||
103 | } | 103 | } |
104 | } | 104 | } |
105 | 105 | ||