diff options
Diffstat (limited to 'arch/avr32/boards/favr-32/setup.c')
-rw-r--r-- | arch/avr32/boards/favr-32/setup.c | 31 |
1 files changed, 11 insertions, 20 deletions
diff --git a/arch/avr32/boards/favr-32/setup.c b/arch/avr32/boards/favr-32/setup.c index 1ee4faf0742d..745c408c2ac5 100644 --- a/arch/avr32/boards/favr-32/setup.c +++ b/arch/avr32/boards/favr-32/setup.c | |||
@@ -17,6 +17,7 @@ | |||
17 | #include <linux/linkage.h> | 17 | #include <linux/linkage.h> |
18 | #include <linux/gpio.h> | 18 | #include <linux/gpio.h> |
19 | #include <linux/leds.h> | 19 | #include <linux/leds.h> |
20 | #include <linux/atmel-mci.h> | ||
20 | #include <linux/atmel-pwm-bl.h> | 21 | #include <linux/atmel-pwm-bl.h> |
21 | #include <linux/spi/spi.h> | 22 | #include <linux/spi/spi.h> |
22 | #include <linux/spi/ads7846.h> | 23 | #include <linux/spi/ads7846.h> |
@@ -79,6 +80,14 @@ static struct spi_board_info __initdata spi1_board_info[] = { | |||
79 | }, | 80 | }, |
80 | }; | 81 | }; |
81 | 82 | ||
83 | static struct mci_platform_data __initdata mci0_data = { | ||
84 | .slot[0] = { | ||
85 | .bus_width = 4, | ||
86 | .detect_pin = -ENODEV, | ||
87 | .wp_pin = -ENODEV, | ||
88 | }, | ||
89 | }; | ||
90 | |||
82 | static struct fb_videomode __initdata lb104v03_modes[] = { | 91 | static struct fb_videomode __initdata lb104v03_modes[] = { |
83 | { | 92 | { |
84 | .name = "640x480 @ 50", | 93 | .name = "640x480 @ 50", |
@@ -307,28 +316,10 @@ static int __init favr32_init(void) | |||
307 | * Favr-32 uses 32-bit SDRAM interface. Reserve the SDRAM-specific | 316 | * Favr-32 uses 32-bit SDRAM interface. Reserve the SDRAM-specific |
308 | * pins so that nobody messes with them. | 317 | * pins so that nobody messes with them. |
309 | */ | 318 | */ |
310 | at32_reserve_pin(GPIO_PIN_PE(0)); /* DATA[16] */ | 319 | at32_reserve_pin(GPIO_PIOE_BASE, ATMEL_EBI_PE_DATA_ALL); |
311 | at32_reserve_pin(GPIO_PIN_PE(1)); /* DATA[17] */ | ||
312 | at32_reserve_pin(GPIO_PIN_PE(2)); /* DATA[18] */ | ||
313 | at32_reserve_pin(GPIO_PIN_PE(3)); /* DATA[19] */ | ||
314 | at32_reserve_pin(GPIO_PIN_PE(4)); /* DATA[20] */ | ||
315 | at32_reserve_pin(GPIO_PIN_PE(5)); /* DATA[21] */ | ||
316 | at32_reserve_pin(GPIO_PIN_PE(6)); /* DATA[22] */ | ||
317 | at32_reserve_pin(GPIO_PIN_PE(7)); /* DATA[23] */ | ||
318 | at32_reserve_pin(GPIO_PIN_PE(8)); /* DATA[24] */ | ||
319 | at32_reserve_pin(GPIO_PIN_PE(9)); /* DATA[25] */ | ||
320 | at32_reserve_pin(GPIO_PIN_PE(10)); /* DATA[26] */ | ||
321 | at32_reserve_pin(GPIO_PIN_PE(11)); /* DATA[27] */ | ||
322 | at32_reserve_pin(GPIO_PIN_PE(12)); /* DATA[28] */ | ||
323 | at32_reserve_pin(GPIO_PIN_PE(13)); /* DATA[29] */ | ||
324 | at32_reserve_pin(GPIO_PIN_PE(14)); /* DATA[30] */ | ||
325 | at32_reserve_pin(GPIO_PIN_PE(15)); /* DATA[31] */ | ||
326 | at32_reserve_pin(GPIO_PIN_PE(26)); /* SDCS */ | ||
327 | 320 | ||
328 | at32_select_gpio(GPIO_PIN_PB(3), 0); /* IRQ from ADS7843 */ | 321 | at32_select_gpio(GPIO_PIN_PB(3), 0); /* IRQ from ADS7843 */ |
329 | 322 | ||
330 | at32_add_system_devices(); | ||
331 | |||
332 | at32_add_device_usart(0); | 323 | at32_add_device_usart(0); |
333 | 324 | ||
334 | set_hw_addr(at32_add_device_eth(0, ð_data[0])); | 325 | set_hw_addr(at32_add_device_eth(0, ð_data[0])); |
@@ -339,7 +330,7 @@ static int __init favr32_init(void) | |||
339 | 330 | ||
340 | at32_add_device_pwm(1 << atmel_pwm_bl_pdata.pwm_channel); | 331 | at32_add_device_pwm(1 << atmel_pwm_bl_pdata.pwm_channel); |
341 | at32_add_device_spi(1, spi1_board_info, ARRAY_SIZE(spi1_board_info)); | 332 | at32_add_device_spi(1, spi1_board_info, ARRAY_SIZE(spi1_board_info)); |
342 | at32_add_device_mci(0, NULL); | 333 | at32_add_device_mci(0, &mci0_data); |
343 | at32_add_device_usba(0, NULL); | 334 | at32_add_device_usba(0, NULL); |
344 | at32_add_device_lcdc(0, &favr32_lcdc_data, fbmem_start, fbmem_size, 0); | 335 | at32_add_device_lcdc(0, &favr32_lcdc_data, fbmem_start, fbmem_size, 0); |
345 | 336 | ||