aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-omap1/board-h2.c
diff options
context:
space:
mode:
Diffstat (limited to 'arch/arm/mach-omap1/board-h2.c')
-rw-r--r--arch/arm/mach-omap1/board-h2.c31
1 files changed, 13 insertions, 18 deletions
diff --git a/arch/arm/mach-omap1/board-h2.c b/arch/arm/mach-omap1/board-h2.c
index 68b2beda8b99..d2cda58bcc48 100644
--- a/arch/arm/mach-omap1/board-h2.c
+++ b/arch/arm/mach-omap1/board-h2.c
@@ -292,15 +292,6 @@ static struct platform_device h2_kp_device = {
292 292
293#define H2_IRDA_FIRSEL_GPIO_PIN 17 293#define H2_IRDA_FIRSEL_GPIO_PIN 17
294 294
295#if defined(CONFIG_OMAP_IR) || defined(CONFIG_OMAP_IR_MODULE)
296static int h2_transceiver_mode(struct device *dev, int state)
297{
298 /* SIR when low, else MIR/FIR when HIGH */
299 gpio_set_value(H2_IRDA_FIRSEL_GPIO_PIN, !(state & IR_SIRMODE));
300 return 0;
301}
302#endif
303
304static struct omap_irda_config h2_irda_data = { 295static struct omap_irda_config h2_irda_data = {
305 .transceiver_cap = IR_SIRMODE | IR_MIRMODE | IR_FIRMODE, 296 .transceiver_cap = IR_SIRMODE | IR_MIRMODE | IR_FIRMODE,
306 .rx_channel = OMAP_DMA_UART3_RX, 297 .rx_channel = OMAP_DMA_UART3_RX,
@@ -437,14 +428,18 @@ static void __init h2_init(void)
437 /* omap_cfg_reg(U19_ARMIO1); */ /* CD */ 428 /* omap_cfg_reg(U19_ARMIO1); */ /* CD */
438 omap_cfg_reg(BALLOUT_V8_ARMIO3); /* WP */ 429 omap_cfg_reg(BALLOUT_V8_ARMIO3); /* WP */
439 430
440 /* Irda */ 431 /* Mux pins for keypad */
441#if defined(CONFIG_OMAP_IR) || defined(CONFIG_OMAP_IR_MODULE) 432 omap_cfg_reg(F18_1610_KBC0);
442 omap_writel(omap_readl(FUNC_MUX_CTRL_A) | 7, FUNC_MUX_CTRL_A); 433 omap_cfg_reg(D20_1610_KBC1);
443 if (gpio_request(H2_IRDA_FIRSEL_GPIO_PIN, "IRDA mode") < 0) 434 omap_cfg_reg(D19_1610_KBC2);
444 BUG(); 435 omap_cfg_reg(E18_1610_KBC3);
445 gpio_direction_output(H2_IRDA_FIRSEL_GPIO_PIN, 0); 436 omap_cfg_reg(C21_1610_KBC4);
446 h2_irda_data.transceiver_mode = h2_transceiver_mode; 437 omap_cfg_reg(G18_1610_KBR0);
447#endif 438 omap_cfg_reg(F19_1610_KBR1);
439 omap_cfg_reg(H14_1610_KBR2);
440 omap_cfg_reg(E20_1610_KBR3);
441 omap_cfg_reg(E19_1610_KBR4);
442 omap_cfg_reg(N19_1610_KBR5);
448 443
449 platform_add_devices(h2_devices, ARRAY_SIZE(h2_devices)); 444 platform_add_devices(h2_devices, ARRAY_SIZE(h2_devices));
450 omap_board_config = h2_config; 445 omap_board_config = h2_config;
@@ -452,7 +447,7 @@ static void __init h2_init(void)
452 omap_serial_init(); 447 omap_serial_init();
453 omap_register_i2c_bus(1, 100, h2_i2c_board_info, 448 omap_register_i2c_bus(1, 100, h2_i2c_board_info,
454 ARRAY_SIZE(h2_i2c_board_info)); 449 ARRAY_SIZE(h2_i2c_board_info));
455 omap_usb_init(&h2_usb_config); 450 omap1_usb_init(&h2_usb_config);
456 h2_mmc_init(); 451 h2_mmc_init();
457} 452}
458 453