16 #include <linux/types.h>
20 #include <linux/module.h>
25 #include <linux/input.h>
32 #include <mach/hardware.h>
37 #include <asm/setup.h>
45 #include <mach/board.h>
55 static void __init ek_init_early(
void)
67 .vbus_pin_active_low = {1, 1},
85 .modalias =
"mtd_dataflash",
87 .max_speed_hz = 15 * 1000 * 1000,
127 .name =
"Partition 1",
132 .name =
"Partition 2",
147 .parts = ek_nand_partition,
154 .ncs_write_setup = 0,
159 .ncs_write_pulse = 4,
169 static void __init ek_add_device_nand(
void)
201 #if defined(CONFIG_SOC_CAMERA_OV2640) || \
202 defined(CONFIG_SOC_CAMERA_OV2640_MODULE)
209 static int i2c_camera_power(
struct device *
dev,
int on)
212 pr_debug(
"%s: %s the camera\n", __func__, on ?
"ENABLE" :
"DISABLE");
234 .board_info = &i2c_camera,
236 .power = i2c_camera_power,
237 .query_bus_param = isi_camera_query_bus_param,
241 .
name =
"soc-camera-pdrv",
244 .platform_data = &iclink_ov2640,
253 #if defined(CONFIG_FB_ATMEL) || defined(CONFIG_FB_ATMEL_MODULE)
258 .xres = 480, .yres = 272,
261 .left_margin = 1, .right_margin = 1,
262 .upper_margin = 40, .lower_margin = 1,
263 .hsync_len = 45, .vsync_len = 1,
270 static struct fb_monspecs at91fb_default_monspecs = {
272 .monitor =
"LB043WQ1",
274 .modedb = at91_tft_vga_modes,
282 #define AT91SAM9G45_DEFAULT_LCDCON2 (ATMEL_LCDC_MEMOR_LITTLE \
283 | ATMEL_LCDC_DISTYPE_TFT \
284 | ATMEL_LCDC_CLKMOD_ALWAYSACTIVE)
288 .lcdcon_is_backlight =
true,
291 .default_lcdcon2 = AT91SAM9G45_DEFAULT_LCDCON2,
292 .default_monspecs = &at91fb_default_monspecs,
307 .pendet_debounce = 0x0d,
308 .ts_sample_hold_time = 0x0a,
316 .use_external_triggers =
true,
323 #if defined(CONFIG_KEYBOARD_GPIO) || defined(CONFIG_KEYBOARD_GPIO_MODULE)
329 .desc =
"left_click",
336 .desc =
"right_click",
344 .desc =
"Joystick Left",
350 .desc =
"Joystick Right",
356 .desc =
"Joystick Up",
362 .desc =
"Joystick Down",
368 .desc =
"Joystick Press",
382 .platform_data = &ek_button_data,
386 static void __init ek_add_device_buttons(
void)
390 for (i = 0; i <
ARRAY_SIZE(ek_buttons); i++) {
398 static void __init ek_add_device_buttons(
void) {}
414 static struct gpio_led ek_leds[] = {
418 .default_trigger =
"heartbeat",
424 .default_trigger =
"nand-disk",
426 #if !(defined(CONFIG_LEDS_ATMEL_PWM) || defined(CONFIG_LEDS_ATMEL_PWM_MODULE))
431 .default_trigger =
"mmc0",
440 static struct gpio_led ek_pwm_led[] = {
441 #if defined(CONFIG_LEDS_ATMEL_PWM) || defined(CONFIG_LEDS_ATMEL_PWM_MODULE)
446 .default_trigger =
"none",
452 #if defined(CONFIG_SOC_CAMERA_OV2640) || \
453 defined(CONFIG_SOC_CAMERA_OV2640_MODULE)
458 static void __init ek_board_init(
void)
481 ek_add_device_nand();
493 ek_add_device_buttons();
508 .init_early = ek_init_early,
510 .init_machine = ek_board_init,