aboutsummaryrefslogtreecommitdiffstats
path: root/arch/avr32/boards/favr-32/setup.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/avr32/boards/favr-32/setup.c')
-rw-r--r--arch/avr32/boards/favr-32/setup.c31
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
83static 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
82static struct fb_videomode __initdata lb104v03_modes[] = { 91static 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, &eth_data[0])); 325 set_hw_addr(at32_add_device_eth(0, &eth_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