static void __init omap3_touchbook_init(void) { pm_power_off = omap3_touchbook_poweroff; omap3_touchbook_i2c_init(); platform_add_devices(omap3_touchbook_devices, ARRAY_SIZE(omap3_touchbook_devices)); omap_serial_init(); omap_mux_init_gpio(170, OMAP_PIN_INPUT); gpio_request(176, "DVI_nPD"); /* REVISIT leave DVI powered down until it's needed ... */ gpio_direction_output(176, true); /* Touchscreen and accelerometer */ spi_register_board_info(omap3_ads7846_spi_board_info, ARRAY_SIZE(omap3_ads7846_spi_board_info)); omap3_ads7846_init(); usb_musb_init(&musb_board_data); usb_ehci_init(&ehci_pdata); omap3touchbook_flash_init(); /* Ensure SDRC pins are mux'd for self-refresh */ omap_mux_init_signal("sdrc_cke0", OMAP_PIN_OUTPUT); omap_mux_init_signal("sdrc_cke1", OMAP_PIN_OUTPUT); }
static void __init am3517_evm_init(void) { omap3_mux_init(board_mux, OMAP_PACKAGE_CBB); am3517_evm_i2c_init(); platform_add_devices(am3517_evm_devices, ARRAY_SIZE(am3517_evm_devices)); omap_serial_init(); /* Configure GPIO for EHCI port */ omap_mux_init_gpio(57, OMAP_PIN_OUTPUT); usb_ehci_init(&ehci_pdata); am3517_evm_hecc_init(&am3517_evm_hecc_pdata); /* DSS */ am3517_evm_display_init(); /* RTC - S35390A */ am3517_evm_rtc_init(); i2c_register_board_info(1, am3517evm_i2c1_boardinfo, ARRAY_SIZE(am3517evm_i2c1_boardinfo)); /*Ethernet*/ am3517_evm_ethernet_init(&am3517_evm_emac_pdata); }
static void __init omap3_stalker_init(void) { omap3_mux_init(board_mux, OMAP_PACKAGE_CUS); omap3_stalker_i2c_init(); platform_add_devices(omap3_stalker_devices, ARRAY_SIZE(omap3_stalker_devices)); spi_register_board_info(omap3stalker_spi_board_info, ARRAY_SIZE(omap3stalker_spi_board_info)); omap_serial_init(); usb_musb_init(&musb_board_data); usb_ehci_init(&ehci_pdata); ads7846_dev_init(); omap_mux_init_gpio(21, OMAP_PIN_OUTPUT); omap_mux_init_gpio(18, OMAP_PIN_INPUT_PULLUP); omap3stalker_init_eth(); omap3_stalker_display_init(); /* Ensure SDRC pins are mux'd for self-refresh */ omap_mux_init_signal("sdr_cke0", OMAP_PIN_OUTPUT); omap_mux_init_signal("sdr_cke1", OMAP_PIN_OUTPUT); }
static void __init omap3_beagle_init(void) { omap3_mux_init(board_mux, OMAP_PACKAGE_CBB); omap3_beagle_init_rev(); omap3_beagle_i2c_init(); platform_add_devices(omap3_beagle_devices, ARRAY_SIZE(omap3_beagle_devices)); omap_serial_init(); omap_mux_init_gpio(170, OMAP_PIN_INPUT); gpio_request(170, "DVI_nPD"); /* REVISIT leave DVI powered down until it's needed ... */ gpio_direction_output(170, true); usb_musb_init(&musb_board_data); usb_ehci_init(&ehci_pdata); omap3beagle_flash_init(); /* Ensure SDRC pins are mux'd for self-refresh */ omap_mux_init_signal("sdrc_cke0", OMAP_PIN_OUTPUT); omap_mux_init_signal("sdrc_cke1", OMAP_PIN_OUTPUT); beagle_display_init(); #ifdef CONFIG_USB_ANDROID omap3beagle_android_gadget_init(); #endif omap3_beagle_pm_init(); }
static void __init devkit8000_init(void) { omap3_mux_init(board_mux, OMAP_PACKAGE_CUS); omap_serial_init(); omap_dm9000_init(); devkit8000_i2c_init(); platform_add_devices(devkit8000_devices, ARRAY_SIZE(devkit8000_devices)); omap_board_config = devkit8000_config; omap_board_config_size = ARRAY_SIZE(devkit8000_config); spi_register_board_info(devkit8000_spi_board_info, ARRAY_SIZE(devkit8000_spi_board_info)); devkit8000_ads7846_init(); usb_musb_init(&musb_board_data); usb_ehci_init(&ehci_pdata); devkit8000_flash_init(); /* Ensure SDRC pins are mux'd for self-refresh */ omap_mux_init_signal("sdrc_cke0", OMAP_PIN_OUTPUT); omap_mux_init_signal("sdrc_cke1", OMAP_PIN_OUTPUT); }
static void __init omap3_bug_init(void) { /* Get BUG board version and save it */ //omap3bug_board_rev(); printk(KERN_INFO "BUGBASE: Init i2c..\n"); omap3_bug_i2c_init(); printk(KERN_INFO "BUGBASE: Init spi..\n"); spi_register_board_info(omap3bug_spi_board_info, ARRAY_SIZE(omap3bug_spi_board_info)); omap_serial_init(); gpio_request(35, "mmc1_enable"); platform_add_devices(omap3_bug_devices, ARRAY_SIZE(omap3_bug_devices)); //omap_init_twl4030(); usb_gpio_settings(); usb_musb_init(); bugbase_gadget_init(); usb_ehci_init(&ehci_pdata); gen_gpio_settings(); omap3bug_flash_init(); omap_init_bmi_slots(); /* Pin Mux - Set T8 to GPT9_PWM_EVT */ // For LED - should probably be moved into uboot omap_cfg_reg(T8_34XX_GPIO55_OUT); }
static int cm_t35_twl_gpio_setup(struct device *dev, unsigned gpio, unsigned ngpio) { int wlan_rst = gpio + 2; if ((gpio_request(wlan_rst, "WLAN RST") == 0) && (gpio_direction_output(wlan_rst, 1) == 0)) { gpio_export(wlan_rst, 0); udelay(10); gpio_set_value(wlan_rst, 0); udelay(10); gpio_set_value(wlan_rst, 1); } else { pr_err("CM-T35: could not obtain gpio for WiFi reset\n"); } /* gpio + 0 is "mmc0_cd" (input/IRQ) */ mmc[0].gpio_cd = gpio + 0; omap2_hsmmc_init(mmc); /* link regulators to MMC adapters */ cm_t35_vmmc1_supply.dev = mmc[0].dev; cm_t35_vsim_supply.dev = mmc[0].dev; /* setup USB with proper PHY reset GPIOs */ ehci_pdata.reset_gpio_port[0] = gpio + 6; ehci_pdata.reset_gpio_port[1] = gpio + 7; usb_ehci_init(&ehci_pdata); return 0; }
static void __init omap_evt_init(void) { printk(">>> omap_evt_init\n"); omap3_mux_init(board_mux, OMAP_PACKAGE_CBP); evt_peripherals_init(); pr_info("CPU variant: %s\n", cpu_is_omap3622()? "OMAP3622": "OMAP3621"); #ifdef CONFIG_PM #ifdef CONFIG_TWL4030_CORE omap_voltage_register_pmic(&omap_pmic_core, "core"); omap_voltage_register_pmic(&omap_pmic_mpu, "mpu"); #endif omap_voltage_init_vc(&vc_config); #endif //omap3xxx_hwmod_init(); //omap_mux_init_gpio(64, OMAP_PIN_OUTPUT); usb_ehci_init(&ehci_pdata); conn_add_plat_device(); printk("<<< omap_evt_init\n"); }
static void __init omap_sdp_init(void) { omap3_mux_init(board_mux, OMAP_PACKAGE_CBP); zoom_peripherals_init(); board_smc91x_init(); enable_board_wakeup_source(); usb_ehci_init(&ehci_pdata); }
static void __init omap_zoom_init(void) { omap3_mux_init(board_mux, OMAP_PACKAGE_CBP); zoom_peripherals_init(); zoom_debugboard_init(); omap_mux_init_gpio(64, OMAP_PIN_OUTPUT); usb_ehci_init(&ehci_pdata); }
static void __init overo_init(void) { omap3_mux_init(board_mux, OMAP_PACKAGE_CBB); overo_i2c_init(); overo_display_init(); platform_add_devices(overo_devices, ARRAY_SIZE(overo_devices)); omap_serial_init(); overo_flash_init(); usb_musb_init(&musb_board_data); usb_ehci_init(&ehci_pdata); overo_ads7846_init(); overo_init_smsc911x(); #ifdef CONFIG_USB_ANDROID overo_android_gadget_init(); #endif /* Ensure SDRC pins are mux'd for self-refresh */ omap_mux_init_signal("sdrc_cke0", OMAP_PIN_OUTPUT); omap_mux_init_signal("sdrc_cke1", OMAP_PIN_OUTPUT); if ((gpio_request(OVERO_GPIO_W2W_NRESET, "OVERO_GPIO_W2W_NRESET") == 0) && (gpio_direction_output(OVERO_GPIO_W2W_NRESET, 1) == 0)) { gpio_export(OVERO_GPIO_W2W_NRESET, 0); gpio_set_value(OVERO_GPIO_W2W_NRESET, 0); udelay(10); gpio_set_value(OVERO_GPIO_W2W_NRESET, 1); } else { printk(KERN_ERR "could not obtain gpio for " "OVERO_GPIO_W2W_NRESET\n"); } if ((gpio_request(OVERO_GPIO_BT_XGATE, "OVERO_GPIO_BT_XGATE") == 0) && (gpio_direction_output(OVERO_GPIO_BT_XGATE, 0) == 0)) gpio_export(OVERO_GPIO_BT_XGATE, 0); else printk(KERN_ERR "could not obtain gpio for OVERO_GPIO_BT_XGATE\n"); if ((gpio_request(OVERO_GPIO_BT_NRESET, "OVERO_GPIO_BT_NRESET") == 0) && (gpio_direction_output(OVERO_GPIO_BT_NRESET, 1) == 0)) { gpio_export(OVERO_GPIO_BT_NRESET, 0); gpio_set_value(OVERO_GPIO_BT_NRESET, 0); mdelay(6); gpio_set_value(OVERO_GPIO_BT_NRESET, 1); } else { printk(KERN_ERR "could not obtain gpio for " "OVERO_GPIO_BT_NRESET\n"); } if ((gpio_request(OVERO_GPIO_USBH_CPEN, "OVERO_GPIO_USBH_CPEN") == 0) && (gpio_direction_output(OVERO_GPIO_USBH_CPEN, 1) == 0)) gpio_export(OVERO_GPIO_USBH_CPEN, 0); else printk(KERN_ERR "could not obtain gpio for " "OVERO_GPIO_USBH_CPEN\n"); }
static void __init board_init(void) { omap_board_config = board_config; omap_board_config_size = ARRAY_SIZE(board_config); archos_accel_init(&board_mma7456l_pdata); omap_i2c_init(); #ifdef CONFIG_OMAP3_PM prcm_init(); #endif init_buffer_pbias(); if (archos_lcd_panel_init(&board_dss_data) < 0) pr_err("archos_lcd_panel_init failed!\n"); if (archos_tvout_venc_init(&board_dss_data) < 0) pr_err("archos_tvout_venc_init failed\n"); if (archos_tvout_hdmi_init(&board_dss_data) < 0) pr_err("archos_tvout_hdmi_init failed\n"); if (archos_tvout_extdac_init(&board_dss_data) < 0) pr_err("archos_tvout_extdac_init failed\n"); platform_device_register(&board_dss_device); platform_device_register(&omap_tvp_isp_device); #ifdef CONFIG_ARCHOS_NAND_MOD { /* fixup for nand support of hw version 1.1 */ u32 ret = gpmc_cs_read_reg(0, GPMC_CS_CONFIG1); if (hardware_rev == 1 && (ret & 0xC00) == GPMC_CONFIG1_DEVICETYPE_NAND) { usb_config.rev[1].enable_usb_musb.nb = 161; usb_config.rev[1].enable_usb_musb.mux_cfg = K26_3430_GPIO161; usb_config.rev[1].enable_usb_ehci.nb = 167; usb_config.rev[1].enable_usb_ehci.mux_cfg = B23_3430_GPIO167; } } #endif archosg7_init(); archos_flash_init(); archos_atmega_init(); ads7846_dev_init(); omap_serial_init(); usb_musb_init(); usb_ehci_init(); archos_usb2sata_init(); archos_audio_gpio_init(); archos_keys_init(); archos_wifi_bt_init(); omap_cfg_reg(AH26_3430_GPIO2); pm_power_off = archos_power_off; }
static void __init overo_init(void) { overo_i2c_init(); platform_add_devices(overo_devices, ARRAY_SIZE(overo_devices)); omap_board_config = overo_config; omap_board_config_size = ARRAY_SIZE(overo_config); omap_serial_init(); twl4030_mmc_init(mmc); usb_musb_init(); usb_ehci_init(); overo_flash_init(); if ((gpio_request(OVERO_GPIO_W2W_NRESET, "OVERO_GPIO_W2W_NRESET") == 0) && (gpio_direction_output(OVERO_GPIO_W2W_NRESET, 1) == 0)) { gpio_export(OVERO_GPIO_W2W_NRESET, 0); gpio_set_value(OVERO_GPIO_W2W_NRESET, 0); udelay(10); gpio_set_value(OVERO_GPIO_W2W_NRESET, 1); } else { printk(KERN_ERR "could not obtain gpio for " "OVERO_GPIO_W2W_NRESET\n"); } if ((gpio_request(OVERO_GPIO_BT_XGATE, "OVERO_GPIO_BT_XGATE") == 0) && (gpio_direction_output(OVERO_GPIO_BT_XGATE, 0) == 0)) gpio_export(OVERO_GPIO_BT_XGATE, 0); else printk(KERN_ERR "could not obtain gpio for OVERO_GPIO_BT_XGATE\n"); if ((gpio_request(OVERO_GPIO_BT_NRESET, "OVERO_GPIO_BT_NRESET") == 0) && (gpio_direction_output(OVERO_GPIO_BT_NRESET, 1) == 0)) { gpio_export(OVERO_GPIO_BT_NRESET, 0); gpio_set_value(OVERO_GPIO_BT_NRESET, 0); mdelay(6); gpio_set_value(OVERO_GPIO_BT_NRESET, 1); } else { printk(KERN_ERR "could not obtain gpio for " "OVERO_GPIO_BT_NRESET\n"); } if ((gpio_request(OVERO_GPIO_USBH_CPEN, "OVERO_GPIO_USBH_CPEN") == 0) && (gpio_direction_output(OVERO_GPIO_USBH_CPEN, 1) == 0)) gpio_export(OVERO_GPIO_USBH_CPEN, 0); else printk(KERN_ERR "could not obtain gpio for " "OVERO_GPIO_USBH_CPEN\n"); if ((gpio_request(OVERO_GPIO_USBH_NRESET, "OVERO_GPIO_USBH_NRESET") == 0) && (gpio_direction_output(OVERO_GPIO_USBH_NRESET, 1) == 0)) gpio_export(OVERO_GPIO_USBH_NRESET, 0); else printk(KERN_ERR "could not obtain gpio for " "OVERO_GPIO_USBH_NRESET\n"); }
static void __init am3517_evm_init(void) { omap3_mux_init(board_mux, OMAP_PACKAGE_CBB); platform_add_devices(am3517_evm_devices, ARRAY_SIZE(am3517_evm_devices)); omap_serial_init(); usb_musb_init(); usb_ehci_init(&ehci_pdata); }
static void __init omap_sdp_init(void) { omap3_mux_init(board_mux, OMAP_PACKAGE_CBP); omap_serial_init(); zoom_peripherals_init(); board_smc91x_init(); board_flash_init(sdp_flash_partitions, chip_sel_sdp); enable_board_wakeup_source(); usb_ehci_init(&ehci_pdata); }
static void __init omap_sdp_init(void) { omap3_mux_init(board_mux, OMAP_PACKAGE_CBP); zoom_peripherals_init(); board_smc91x_init(); enable_board_wakeup_source(); omap_mux_init_signal("gpio_126", OMAP_PIN_OUTPUT); omap_mux_init_signal("gpio_61", OMAP_PIN_OUTPUT); usb_ehci_init(&ehci_pdata); usb_ohci_init(&ohci_pdata); }
static void __init omap3_evm_init(void) { omap3_evm_get_revision(); if (get_omap3_evm_rev() >= OMAP3EVM_BOARD_GEN_2) omap3evm_twldata.vaux2 = &omap3evm_vaux2; else omap3evm_twldata.vusb = &omap3_evm_vusb; omap3_mux_init(board_mux, OMAP_PACKAGE_CBB); omap3_evm_i2c_init(); platform_add_devices(omap3_evm_devices, ARRAY_SIZE(omap3_evm_devices)); spi_register_board_info(omap3evm_spi_board_info, ARRAY_SIZE(omap3evm_spi_board_info)); omap_serial_init(); /* OMAP3EVM uses ISP1504 phy and so register nop transceiver */ usb_nop_xceiv_register(); if (get_omap3_evm_rev() >= OMAP3EVM_BOARD_GEN_2) { /* enable EHCI VBUS using GPIO22 */ omap_mux_init_gpio(22, OMAP_PIN_INPUT_PULLUP); gpio_request(OMAP3_EVM_EHCI_VBUS, "enable EHCI VBUS"); gpio_direction_output(OMAP3_EVM_EHCI_VBUS, 0); gpio_set_value(OMAP3_EVM_EHCI_VBUS, 1); /* Select EHCI port on main board */ omap_mux_init_gpio(61, OMAP_PIN_INPUT_PULLUP); gpio_request(OMAP3_EVM_EHCI_SELECT, "select EHCI port"); gpio_direction_output(OMAP3_EVM_EHCI_SELECT, 0); gpio_set_value(OMAP3_EVM_EHCI_SELECT, 0); /* setup EHCI phy reset config */ omap_mux_init_gpio(21, OMAP_PIN_INPUT_PULLUP); ehci_pdata.reset_gpio_port[1] = 21; /* EVM REV >= E can supply 500mA with EXTVBUS programming */ musb_board_data.power = 500; musb_board_data.extvbus = 1; } else { /* setup EHCI phy reset on MDC */ omap_mux_init_gpio(135, OMAP_PIN_OUTPUT); ehci_pdata.reset_gpio_port[1] = 135; } usb_musb_init(&musb_board_data); usb_ehci_init(&ehci_pdata); ads7846_dev_init(); omap3evm_init_smsc911x(); omap3_evm_display_init(); }
static void __init omap3_beagle_init(void) { omap3_mux_init(board_mux, OMAP_PACKAGE_CBB); omap3_beagle_i2c_init(); printk(KERN_INFO "*************INIT I2C**************\n"); platform_add_devices(omap3_beagle_devices, ARRAY_SIZE(omap3_beagle_devices)); omap_serial_init(); // omap_mux_init_gpio(170, OMAP_PIN_INPUT); // gpio_request(170, "DVI_nPD"); // /* REVISIT leave DVI powered down until it's needed ... */ // gpio_direction_output(170, true); //added by haolong to fix reset io of smsc9514, 2012/04/10------- printk(KERN_ERR "#########pulldown gpio 40#######\n"); if(omap_mux_init_gpio(40, OMAP_PIN_OUTPUT) < 0) { printk(KERN_ERR "Unable to mux HUB_RST\n"); } if (gpio_request(40, "HUB_RST") < 0) { printk(KERN_ERR "Unable to get HUB_RST GPIO\n"); } gpio_direction_output(40, 0); //------------------------------------------------------- usb_musb_init(); usb_ehci_init(&ehci_pdata); omap3beagle_flash_init(); /* Ensure SDRC pins are mux'd for self-refresh */ omap_mux_init_signal("sdrc_cke0", OMAP_PIN_OUTPUT); omap_mux_init_signal("sdrc_cke1", OMAP_PIN_OUTPUT); //--------------------------20111121 modified by haolong--------------------- // if (gpio_request(129, "DVI reset") < 0) { // printk(KERN_ERR "Unable to get DVI reset GPIO\n"); // return; // } // gpio_direction_output(129, 1); //------------------------------------------------------------------------ //2012/04/17 modified by haolong omap_mux_set_gpio(OMAP_MUX_MODE4, 15); // if(omap_mux_init_gpio(15, OMAP_PIN_OUTPUT) < 0) // { // printk(KERN_ERR "Unable to mux GPIO15_IRQ\n"); // } // if (gpio_request(15, "GPIO15_IRQ") < 0) { // printk(KERN_ERR "Unable to get IRQ GPIO\n"); // } // gpio_direction_output(15, 1); //--------------------------- }
static void __init cm_t35_init(void) { omap3_mux_init(board_mux, OMAP_PACKAGE_CUS); omap_serial_init(); cm_t35_init_i2c(); cm_t35_init_nand(); cm_t35_init_ads7846(); cm_t35_init_ethernet(); cm_t35_init_led(); cm_t35_init_display(); usb_musb_init(&musb_board_data); usb_ehci_init(&ehci_pdata); }
static void __init omap4_ehci_init(void) { int ret; struct clk *phy_ref_clk; /* FREF_CLK3 provides the 19.2 MHz reference clock to the PHY */ phy_ref_clk = clk_get(NULL, "auxclk3_ck"); if (IS_ERR(phy_ref_clk)) { pr_err("Cannot request auxclk3\n"); goto error1; } clk_set_rate(phy_ref_clk, 19200000); clk_enable(phy_ref_clk); /* disable the power to the usb hub prior to init */ ret = gpio_request(GPIO_HUB_POWER, "hub_power"); if (ret) { pr_err("Cannot request GPIO %d\n", GPIO_HUB_POWER); goto error1; } gpio_export(GPIO_HUB_POWER, 0); gpio_direction_output(GPIO_HUB_POWER, 0); gpio_set_value(GPIO_HUB_POWER, 0); /* reset phy+hub */ ret = gpio_request(GPIO_HUB_NRESET, "hub_nreset"); if (ret) { pr_err("Cannot request GPIO %d\n", GPIO_HUB_NRESET); goto error2; } gpio_export(GPIO_HUB_NRESET, 0); gpio_direction_output(GPIO_HUB_NRESET, 0); gpio_set_value(GPIO_HUB_NRESET, 0); gpio_set_value(GPIO_HUB_NRESET, 1); usb_ehci_init(&ehci_pdata); /* enable power to hub */ gpio_set_value(GPIO_HUB_POWER, 1); return; error2: gpio_free(GPIO_HUB_POWER); error1: pr_err("Unable to initialize EHCI power/reset\n"); return; }
static void __init omap_zoom_init(void) { if (machine_is_omap_zoom2()) { omap3_mux_init(board_mux, OMAP_PACKAGE_CBB); } else if (machine_is_omap_zoom3()) { omap3_mux_init(board_mux, OMAP_PACKAGE_CBP); omap_mux_init_gpio(ZOOM3_EHCI_RESET_GPIO, OMAP_PIN_OUTPUT); usb_ehci_init(&ehci_pdata); } board_nand_init(zoom_nand_partitions, ARRAY_SIZE(zoom_nand_partitions), ZOOM_NAND_CS); zoom_debugboard_init(); zoom_peripherals_init(); zoom_display_init(); }
static void __init omap3_beagle_init(void) { omap3_beagle_i2c_init(); platform_add_devices(omap3_beagle_devices, ARRAY_SIZE(omap3_beagle_devices)); omap_board_config = omap3_beagle_config; omap_board_config_size = ARRAY_SIZE(omap3_beagle_config); omap_serial_init(); omap_cfg_reg(J25_34XX_GPIO170); usb_musb_init(); usb_ehci_init(); omap3beagle_flash_init(); beagle_display_init(); }
static void __init omap3_evm_init(void) { omap3_evm_get_revision(); omap3_mux_init(board_mux, OMAP_PACKAGE_CBB); omap3_evm_i2c_init(); platform_add_devices(omap3_evm_devices, ARRAY_SIZE(omap3_evm_devices)); spi_register_board_info(omap3evm_spi_board_info, ARRAY_SIZE(omap3evm_spi_board_info)); omap_serial_init(); #ifdef CONFIG_NOP_USB_XCEIV /* OMAP3EVM uses ISP1504 phy and so register nop transceiver */ usb_nop_xceiv_register(); #endif if (get_omap3_evm_rev() >= OMAP3EVM_BOARD_GEN_2) { /* enable EHCI VBUS using GPIO22 */ omap_mux_init_gpio(22, OMAP_PIN_INPUT_PULLUP); gpio_request(OMAP3_EVM_EHCI_VBUS, "enable EHCI VBUS"); gpio_direction_output(OMAP3_EVM_EHCI_VBUS, 0); gpio_set_value(OMAP3_EVM_EHCI_VBUS, 1); /* Select EHCI port on main board */ omap_mux_init_gpio(61, OMAP_PIN_INPUT_PULLUP); gpio_request(OMAP3_EVM_EHCI_SELECT, "select EHCI port"); gpio_direction_output(OMAP3_EVM_EHCI_SELECT, 0); gpio_set_value(OMAP3_EVM_EHCI_SELECT, 0); /* setup EHCI phy reset config */ omap_mux_init_gpio(21, OMAP_PIN_INPUT_PULLUP); ehci_pdata.reset_gpio_port[1] = 21; } else { /* setup EHCI phy reset on MDC */ omap_mux_init_gpio(135, OMAP_PIN_OUTPUT); ehci_pdata.reset_gpio_port[1] = 135; /* MDC also need VUSB1V5 regulator */ ehci_pdata.aux[1] = 1; } usb_musb_init(); usb_ehci_init(&ehci_pdata); ads7846_dev_init(); omap3evm_init_smsc911x(); }
static void __init am3517_evm_init(void) { omap3_mux_init(board_mux, OMAP_PACKAGE_CBB); am3517_evm_i2c_init(); platform_add_devices(am3517_evm_devices, ARRAY_SIZE(am3517_evm_devices)); omap_serial_init(); /* Configure GPIO for EHCI port */ omap_mux_init_gpio(57, OMAP_PIN_OUTPUT); usb_ehci_init(&ehci_pdata); am3517_evm_hecc_init(&am3517_evm_hecc_pdata); clk_add_alias("master", "dm644x_ccdc", "master", &vpfe_capture_dev.dev); clk_add_alias("slave", "dm644x_ccdc", "slave", &vpfe_capture_dev.dev); /* DSS */ am3517_evm_display_init(); /* RTC - S35390A */ am3517_evm_rtc_init(); i2c_register_board_info(1, am3517evm_i2c1_boardinfo, ARRAY_SIZE(am3517evm_i2c1_boardinfo)); /*Ethernet*/ am3517_evm_ethernet_init(&am3517_evm_emac_pdata); /* MUSB */ am3517_evm_musb_init(); /* TSC 2004 */ omap_mux_init_gpio(65, OMAP_PIN_INPUT_PULLUP); am3517evm_tsc_i2c_boardinfo[0].irq = gpio_to_irq(GPIO_TSC2004_IRQ); i2c_register_board_info(1, am3517evm_tsc_i2c_boardinfo, ARRAY_SIZE(am3517evm_tsc_i2c_boardinfo)); /* Init TCA6416 keypad */ tca6416_keypad_init_irq(); /* MMC init function */ omap2_hsmmc_init(mmc); }
static int cm_t3517_init_usbh(void) { int err; err = gpio_request(USB_HUB_RESET_GPIO, "usb hub rst"); if (err) { pr_err("CM-T3517: usb hub rst gpio request failed: %d\n", err); } else { gpio_direction_output(USB_HUB_RESET_GPIO, 0); udelay(10); gpio_set_value(USB_HUB_RESET_GPIO, 1); msleep(1); } usb_ehci_init(&cm_t3517_ehci_pdata); return 0; }
static void __init omap3pandora_init(void) { omap3_mux_init(board_mux, OMAP_PACKAGE_CBB); omap3pandora_i2c_init(); platform_add_devices(omap3pandora_devices, ARRAY_SIZE(omap3pandora_devices)); omap_serial_init(); spi_register_board_info(omap3pandora_spi_board_info, ARRAY_SIZE(omap3pandora_spi_board_info)); omap3pandora_ads7846_init(); usb_ehci_init(&ehci_pdata); pandora_keys_gpio_init(); usb_musb_init(&musb_board_data); /* Ensure SDRC pins are mux'd for self-refresh */ omap_mux_init_signal("sdrc_cke0", OMAP_PIN_OUTPUT); omap_mux_init_signal("sdrc_cke1", OMAP_PIN_OUTPUT); }
static void __init board_init(void) { omap_board_config = board_config; omap_board_config_size = ARRAY_SIZE(board_config); archos_accel_init(&board_mma7456l_pdata); omap_i2c_init(); #ifdef CONFIG_OMAP3_PM prcm_init(); #endif init_buffer_pbias(); if (archos_lcd_panel_init(&board_dss_data) < 0) pr_err("archos_lcd_panel_init failed!\n"); if (archos_tvout_venc_init(&board_dss_data) < 0) pr_err("archos_tvout_venc_init failed\n"); if (archos_tvout_hdmi_init(&board_dss_data) < 0) pr_err("archos_tvout_hdmi_init failed\n"); if (archos_tvout_extdac_init(&board_dss_data) < 0) pr_err("archos_tvout_extdac_init failed\n"); platform_device_register(&board_dss_device); platform_device_register(&omap_tvp_isp_device); archosg7_init(); archos_flash_init(); archos_atmega_init(); ads7846_dev_init(); omap_serial_init(); usb_musb_init(); hsmmc_init(); usb_ehci_init(); archos_usbhdd_init(); archos_audio_gpio_init(); archos_keys_init(); archos_wifi_bt_init(); omap_cfg_reg(AH26_3430_GPIO2); pm_power_off = archos_power_off; }
static void __init omap_3430sdp_init(void) { omap3430_i2c_init(); platform_add_devices(sdp3430_devices, ARRAY_SIZE(sdp3430_devices)); if (omap_rev() > OMAP3430_REV_ES1_0) ts_gpio = SDP3430_TS_GPIO_IRQ_SDPV2; else ts_gpio = SDP3430_TS_GPIO_IRQ_SDPV1; sdp3430_spi_board_info[0].irq = gpio_to_irq(ts_gpio); spi_register_board_info(sdp3430_spi_board_info, ARRAY_SIZE(sdp3430_spi_board_info)); ads7846_dev_init(); omap_serial_init(); usb_musb_init(); board_smc91x_init(); sdp3430_display_init(); enable_board_wakeup_source(); usb_ehci_init(&ehci_pdata); }
static void __init omap_3430sdp_init(void) { omap3430_i2c_init(); platform_add_devices(sdp3430_devices, ARRAY_SIZE(sdp3430_devices)); omap_board_config = sdp3430_config; omap_board_config_size = ARRAY_SIZE(sdp3430_config); if (omap_rev() > OMAP3430_REV_ES1_0) ts_gpio = OMAP34XX_TS_GPIO_IRQ_SDPV2; else ts_gpio = OMAP34XX_TS_GPIO_IRQ_SDPV1; sdp3430_spi_board_info[0].irq = gpio_to_irq(ts_gpio); spi_register_board_info(sdp3430_spi_board_info, ARRAY_SIZE(sdp3430_spi_board_info)); ads7846_dev_init(); sdp3430_flash_init(); msecure_init(); omap_serial_init(); usb_musb_init(); usb_ehci_init(); }
static void __init rhino_init(void) { /* Initialize MUX overrides */ omap3_mux_init(board_mux, OMAP_PACKAGE_CBB); /* Initialize I2C lines */ rhino_i2c_init(); /* Add all platform devices */ platform_add_devices(rhino_devices, ARRAY_SIZE(rhino_devices)); /* Initialize the serial device */ omap_serial_init(); /* Configure GPIO for EHCI port */ omap_mux_init_gpio(57, OMAP_PIN_OUTPUT); usb_ehci_init(&ehci_pdata); rhino_hecc_init(&rhino_hecc_pdata); /* Initialize the NAND flash */ board_nand_init(rhino_nand_partitions, ARRAY_SIZE(rhino_nand_partitions), 0, NAND_BUSWIDTH_16); /* Configure the RTC */ omap_mux_init_gpio(GPIO_RTCDS1390_IRQ, OMAP_PIN_INPUT_PULLDOWN); if (gpio_request(GPIO_RTCDS1390_IRQ, "rtcs35390a-irq") < 0) printk(KERN_WARNING "failed to request GPIO#%d\n", GPIO_RTCDS1390_IRQ); if (gpio_direction_input(GPIO_RTCDS1390_IRQ)) printk(KERN_WARNING "GPIO#%d cannot be configured as input\n", GPIO_RTCDS1390_IRQ); rhino_spi_board_info[0].irq = gpio_to_irq(GPIO_RTCDS1390_IRQ); /* Initialize SPI devices */ rhino_spi_init(); /* Initialize Ethernet */ rhino_ethernet_init(&rhino_emac_pdata); rhino_musb_init(); /* MMC init function */ omap2_hsmmc_init(mmc); }