aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap2
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-omap2')
-rw-r--r--arch/arm/mach-omap2/board-am3517evm.c39
1 files changed, 39 insertions, 0 deletions
diff --git a/arch/arm/mach-omap2/board-am3517evm.c b/arch/arm/mach-omap2/board-am3517evm.c
index af99faf2cced..fe2446ded5ad 100644
--- a/arch/arm/mach-omap2/board-am3517evm.c
+++ b/arch/arm/mach-omap2/board-am3517evm.c
@@ -38,6 +38,39 @@
38#define LCD_PANEL_BKLIGHT_PWR 182 38#define LCD_PANEL_BKLIGHT_PWR 182
39#define LCD_PANEL_PWM 181 39#define LCD_PANEL_PWM 181
40 40
41static struct i2c_board_info __initdata am3517evm_i2c_boardinfo[] = {
42 {
43 I2C_BOARD_INFO("s35390a", 0x30),
44 .type = "s35390a",
45 },
46};
47
48/*
49 * RTC - S35390A
50 */
51#define GPIO_RTCS35390A_IRQ 55
52
53static void __init am3517_evm_rtc_init(void)
54{
55 int r;
56
57 omap_mux_init_gpio(GPIO_RTCS35390A_IRQ, OMAP_PIN_INPUT_PULLUP);
58 r = gpio_request(GPIO_RTCS35390A_IRQ, "rtcs35390a-irq");
59 if (r < 0) {
60 printk(KERN_WARNING "failed to request GPIO#%d\n",
61 GPIO_RTCS35390A_IRQ);
62 return;
63 }
64 r = gpio_direction_input(GPIO_RTCS35390A_IRQ);
65 if (r < 0) {
66 printk(KERN_WARNING "GPIO#%d cannot be configured as input\n",
67 GPIO_RTCS35390A_IRQ);
68 gpio_free(GPIO_RTCS35390A_IRQ);
69 return;
70 }
71 am3517evm_i2c_boardinfo[0].irq = gpio_to_irq(GPIO_RTCS35390A_IRQ);
72}
73
41static int __init am3517_evm_i2c_init(void) 74static int __init am3517_evm_i2c_init(void)
42{ 75{
43 omap_register_i2c_bus(1, 400, NULL, 0); 76 omap_register_i2c_bus(1, 400, NULL, 0);
@@ -235,6 +268,12 @@ static void __init am3517_evm_init(void)
235 usb_ehci_init(&ehci_pdata); 268 usb_ehci_init(&ehci_pdata);
236 /* DSS */ 269 /* DSS */
237 am3517_evm_display_init(); 270 am3517_evm_display_init();
271
272 /* RTC - S35390A */
273 am3517_evm_rtc_init();
274
275 i2c_register_board_info(1, am3517evm_i2c_boardinfo,
276 ARRAY_SIZE(am3517evm_i2c_boardinfo));
238} 277}
239 278
240static void __init am3517_evm_map_io(void) 279static void __init am3517_evm_map_io(void)