diff options
author | Tony Lindgren <tony@atomide.com> | 2005-09-08 18:07:38 -0400 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2005-09-08 18:07:38 -0400 |
commit | 7c38cf021b42a4297bc8f860ab627734bdd6c8d1 (patch) | |
tree | 89c3b807ca90f5c7e5692ddbcd388511dc289530 /arch/arm/mach-omap1/board-h2.c | |
parent | d7b6b3589471c3856f1e6dc9c77abc4af962ffdb (diff) |
[ARM] 2890/1: OMAP 1/4: Update omap1 specific files, take 2
Patch from Tony Lindgren
This patch syncs the mainline kernel with linux-omap tree.
The highlights of the patch are:
- Convert more drivers to register resources in board-*.c to take
advantage of the driver model by David Brownell and Ladislav Michl
- Use set_irq_type() for GPIO interrupts instead of
omap_set_gpio_edge_ctrl() by David Brownell
- Add minimal support for handling optional add-on boards, such as
OSK Mistral board with LCD and keypad, by David Brownell
- Minimal support for loading functions to SRAM by Tony Lindgren
- Wake up from serial port by muxing RX lines temporarily into GPIO
interrupts by Tony Lindgren
- 32KHz sched_clock by Tony Lindgren and Juha Yrjola
Signed-off-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/mach-omap1/board-h2.c')
-rw-r--r-- | arch/arm/mach-omap1/board-h2.c | 27 |
1 files changed, 20 insertions, 7 deletions
diff --git a/arch/arm/mach-omap1/board-h2.c b/arch/arm/mach-omap1/board-h2.c index f4983ee95ab4..d46a70063b0c 100644 --- a/arch/arm/mach-omap1/board-h2.c +++ b/arch/arm/mach-omap1/board-h2.c | |||
@@ -33,6 +33,7 @@ | |||
33 | #include <asm/mach/map.h> | 33 | #include <asm/mach/map.h> |
34 | 34 | ||
35 | #include <asm/arch/gpio.h> | 35 | #include <asm/arch/gpio.h> |
36 | #include <asm/arch/mux.h> | ||
36 | #include <asm/arch/tc.h> | 37 | #include <asm/arch/tc.h> |
37 | #include <asm/arch/usb.h> | 38 | #include <asm/arch/usb.h> |
38 | #include <asm/arch/common.h> | 39 | #include <asm/arch/common.h> |
@@ -80,8 +81,7 @@ static struct flash_platform_data h2_flash_data = { | |||
80 | }; | 81 | }; |
81 | 82 | ||
82 | static struct resource h2_flash_resource = { | 83 | static struct resource h2_flash_resource = { |
83 | .start = OMAP_CS2B_PHYS, | 84 | /* This is on CS3, wherever it's mapped */ |
84 | .end = OMAP_CS2B_PHYS + OMAP_CS2B_SIZE - 1, | ||
85 | .flags = IORESOURCE_MEM, | 85 | .flags = IORESOURCE_MEM, |
86 | }; | 86 | }; |
87 | 87 | ||
@@ -126,10 +126,9 @@ static void __init h2_init_smc91x(void) | |||
126 | printk("Error requesting gpio 0 for smc91x irq\n"); | 126 | printk("Error requesting gpio 0 for smc91x irq\n"); |
127 | return; | 127 | return; |
128 | } | 128 | } |
129 | omap_set_gpio_edge_ctrl(0, OMAP_GPIO_FALLING_EDGE); | ||
130 | } | 129 | } |
131 | 130 | ||
132 | void h2_init_irq(void) | 131 | static void __init h2_init_irq(void) |
133 | { | 132 | { |
134 | omap_init_irq(); | 133 | omap_init_irq(); |
135 | omap_gpio_init(); | 134 | omap_gpio_init(); |
@@ -152,9 +151,13 @@ static struct omap_usb_config h2_usb_config __initdata = { | |||
152 | }; | 151 | }; |
153 | 152 | ||
154 | static struct omap_mmc_config h2_mmc_config __initdata = { | 153 | static struct omap_mmc_config h2_mmc_config __initdata = { |
155 | .mmc_blocks = 1, | 154 | .mmc [0] = { |
156 | .mmc1_power_pin = -1, /* tps65010 gpio3 */ | 155 | .enabled = 1, |
157 | .mmc1_switch_pin = OMAP_MPUIO(1), | 156 | .wire4 = 1, |
157 | .wp_pin = OMAP_MPUIO(3), | ||
158 | .power_pin = -1, /* tps65010 gpio3 */ | ||
159 | .switch_pin = OMAP_MPUIO(1), | ||
160 | }, | ||
158 | }; | 161 | }; |
159 | 162 | ||
160 | static struct omap_board_config_kernel h2_config[] = { | 163 | static struct omap_board_config_kernel h2_config[] = { |
@@ -164,6 +167,16 @@ static struct omap_board_config_kernel h2_config[] = { | |||
164 | 167 | ||
165 | static void __init h2_init(void) | 168 | static void __init h2_init(void) |
166 | { | 169 | { |
170 | /* NOTE: revC boards support NAND-boot, which can put NOR on CS2B | ||
171 | * and NAND (either 16bit or 8bit) on CS3. | ||
172 | */ | ||
173 | h2_flash_resource.end = h2_flash_resource.start = omap_cs3_phys(); | ||
174 | h2_flash_resource.end += SZ_32M - 1; | ||
175 | |||
176 | /* MMC: card detect and WP */ | ||
177 | // omap_cfg_reg(U19_ARMIO1); /* CD */ | ||
178 | omap_cfg_reg(BALLOUT_V8_ARMIO3); /* WP */ | ||
179 | |||
167 | platform_add_devices(h2_devices, ARRAY_SIZE(h2_devices)); | 180 | platform_add_devices(h2_devices, ARRAY_SIZE(h2_devices)); |
168 | omap_board_config = h2_config; | 181 | omap_board_config = h2_config; |
169 | omap_board_config_size = ARRAY_SIZE(h2_config); | 182 | omap_board_config_size = ARRAY_SIZE(h2_config); |