22 #include <linux/types.h>
26 #include <linux/module.h>
33 #include <linux/input.h>
38 #include <asm/setup.h>
46 #include <mach/hardware.h>
47 #include <mach/board.h>
57 static void __init ek_init_early(
void)
69 .vbus_pin_active_low = {1, 1},
85 #if defined(CONFIG_TOUCHSCREEN_ADS7846) || defined(CONFIG_TOUCHSCREEN_ADS7846_MODULE)
86 static int ads7843_pendown_state(
void)
97 .vref_delay_usecs = 100,
100 .pressure_max = 15000,
103 .debounce_tol = (~0),
107 static void __init ek_add_device_ts(
void)
113 static void __init ek_add_device_ts(
void) {}
120 #if defined(CONFIG_MTD_AT91_DATAFLASH_CARD)
122 .modalias =
"mtd_dataflash",
124 .max_speed_hz = 15 * 1000 * 1000,
128 #if defined(CONFIG_TOUCHSCREEN_ADS7846) || defined(CONFIG_TOUCHSCREEN_ADS7846_MODULE)
130 .modalias =
"ads7846",
132 .max_speed_hz = 125000 * 26,
134 .platform_data = &ads_info,
167 .name =
"Partition 1",
172 .name =
"Partition 2",
186 .parts = ek_nand_partition,
193 .ncs_write_setup = 0,
198 .ncs_write_pulse = 3,
208 static void __init ek_add_device_nand(
void)
237 .platform_data = &at24c512,
245 #if defined(CONFIG_FB_ATMEL) || defined(CONFIG_FB_ATMEL_MODULE)
248 .
name =
"TX09D50VM1CCA @ 60",
250 .xres = 240, .yres = 320,
253 .left_margin = 1, .right_margin = 33,
254 .upper_margin = 1, .lower_margin = 0,
255 .hsync_len = 5, .vsync_len = 1,
262 static struct fb_monspecs at91fb_default_monspecs = {
264 .monitor =
"TX09D70VM1CCA",
266 .modedb = at91_tft_vga_modes,
274 #define AT91SAM9263_DEFAULT_LCDCON2 (ATMEL_LCDC_MEMOR_LITTLE \
275 | ATMEL_LCDC_DISTYPE_TFT \
276 | ATMEL_LCDC_CLKMOD_ALWAYSACTIVE)
278 static void at91_lcdc_power_control(
int on)
285 .lcdcon_is_backlight =
true,
288 .default_lcdcon2 = AT91SAM9263_DEFAULT_LCDCON2,
289 .default_monspecs = &at91fb_default_monspecs,
290 .atmel_lcdfb_power_control = at91_lcdc_power_control,
302 #if defined(CONFIG_KEYBOARD_GPIO) || defined(CONFIG_KEYBOARD_GPIO_MODULE)
308 .desc =
"left_click",
315 .desc =
"right_click",
330 .platform_data = &ek_button_data,
334 static void __init ek_add_device_buttons(
void)
344 static void __init ek_add_device_buttons(
void) {}
360 static struct gpio_led ek_leds[] = {
365 .default_trigger =
"nand-disk",
370 .default_trigger =
"heartbeat",
377 static struct gpio_led ek_pwm_led[] = {
383 .default_trigger =
"none",
390 static void sam9263ek_transceiver_switch(
int on)
402 .transceiver_switch = sam9263ek_transceiver_switch,
405 static void __init ek_board_init(
void)
428 ek_add_device_nand();
434 ek_add_device_buttons();
449 .init_early = ek_init_early,
451 .init_machine = ek_board_init,