static void __init msm7x2x_init_mmc(void) { if (!machine_is_msm7x25_ffa() && !machine_is_msm7x27_ffa()) { vreg_mmc = vreg_get(NULL, "wlan"); if (IS_ERR(vreg_mmc)) { printk(KERN_ERR "%s: vreg get failed (%ld)\n", __func__, PTR_ERR(vreg_mmc)); return; } } sdcc_gpio_init(); #ifdef CONFIG_MMC_MSM_SDC1_SUPPORT msm_add_sdcc(1, &msm7x2x_sdc1_data); #endif #ifdef CONFIG_MMC_MSM_SDC2_SUPPORT /* LGE_CHANGE_S [[email protected]] 2010-04-24, BCM4325 control */ #if defined(CONFIG_LGE_BCM432X_PATCH) /* GPIO config */ gpio_tlmm_config(GPIO_CFG(CONFIG_BCM4325_GPIO_WL_REGON, 0, GPIO_CFG_OUTPUT, GPIO_CFG_PULL_UP, GPIO_CFG_2MA), GPIO_CFG_ENABLE); gpio_set_value(CONFIG_BCM4325_GPIO_WL_REGON, 0); gpio_tlmm_config(GPIO_CFG(CONFIG_BCM4325_GPIO_WL_RESET, 0, GPIO_CFG_OUTPUT, GPIO_CFG_PULL_UP, GPIO_CFG_2MA), GPIO_CFG_ENABLE); gpio_set_value(CONFIG_BCM4325_GPIO_WL_RESET, 0); gpio_tlmm_config(GPIO_CFG(CONFIG_BCM4325_GPIO_WL_HOSTWAKEUP, 0, GPIO_CFG_INPUT, GPIO_CFG_PULL_UP, GPIO_CFG_2MA), GPIO_CFG_ENABLE); /* Register platform device */ msm_add_sdcc(2, &bcm432x_sdcc_wlan_data); /* Enable RESET IRQ for wlan card detect */ enable_irq(gpio_to_irq(CONFIG_BCM4325_GPIO_WL_RESET)); #endif }
static void __init msm7x27_init_mmc(void) { if (machine_is_msm7x27_ffa()) { mpp_mmc = mpp_get(NULL, "mpp3"); if (!mpp_mmc) { printk(KERN_ERR "%s: mpp get failed (%ld)\n", __func__, PTR_ERR(vreg_mmc)); return; } } else { vreg_mmc = vreg_get(NULL, "mmc"); if (IS_ERR(vreg_mmc)) { printk(KERN_ERR "%s: vreg get failed (%ld)\n", __func__, PTR_ERR(vreg_mmc)); return; } } sdcc_gpio_init(); #ifdef CONFIG_MMC_MSM_SDC1_SUPPORT msm_add_sdcc(1, &msm7x27_sdcc_data, 0, 0); #endif if (machine_is_msm7x27_surf()) { #ifdef CONFIG_MMC_MSM_SDC2_SUPPORT msm_add_sdcc(2, &msm7x27_sdcc_data, 0, 0); #endif #ifdef CONFIG_MMC_MSM_SDC3_SUPPORT msm_add_sdcc(3, &msm7x27_sdcc_data, 0, 0); #endif #ifdef CONFIG_MMC_MSM_SDC4_SUPPORT msm_add_sdcc(4, &msm7x27_sdcc_data, 0, 0); #endif } }
static void __init qsd8x50_init_mmc(void) { if (machine_is_qsd8x50_ffa()) vreg_mmc = vreg_get(NULL, "gp6"); else vreg_mmc = vreg_get(NULL, "gp5"); if (IS_ERR(vreg_mmc)) { printk(KERN_ERR "%s: vreg get failed (%ld)\n", __func__, PTR_ERR(vreg_mmc)); return; } sdcc_gpio_init(); #ifdef CONFIG_MMC_MSM_SDC1_SUPPORT msm_add_sdcc(1, &qsd8x50_sdcc_data); #endif if (machine_is_qsd8x50_surf()) { #ifdef CONFIG_MMC_MSM_SDC2_SUPPORT msm_add_sdcc(2, &qsd8x50_sdcc_data); #endif #ifdef CONFIG_MMC_MSM_SDC3_SUPPORT msm_add_sdcc(3, &qsd8x50_sdcc_data); #endif #ifdef CONFIG_MMC_MSM_SDC4_SUPPORT msm_add_sdcc(4, &qsd8x50_sdcc_data); #endif } }
static void __init msm7x2x_init_mmc(void) { if (!machine_is_msm7x25_ffa() && !machine_is_msm7x27_ffa()) { vreg_mmc = vreg_get(NULL, "gp6"); if (IS_ERR(vreg_mmc)) { printk(KERN_ERR "%s: vreg get failed (%ld)\n", __func__, PTR_ERR(vreg_mmc)); return; } } sdcc_gpio_init(); #ifdef CONFIG_MMC_MSM_SDC1_SUPPORT msm_add_sdcc(1, &msm7x2x_sdcc_data); #endif #ifdef CONFIG_MMC_MSM_SDC2_SUPPORT #if defined(CONFIG_LGE_BCM432X_PATCH) gpio_tlmm_config(GPIO_CFG(CONFIG_BCM4325_GPIO_WL_REGON, 0, GPIO_OUTPUT, GPIO_PULL_UP, GPIO_2MA), GPIO_ENABLE); gpio_configure(CONFIG_BCM4325_GPIO_WL_REGON, GPIOF_DRIVE_OUTPUT); gpio_set_value(CONFIG_BCM4325_GPIO_WL_REGON, 0); gpio_tlmm_config(GPIO_CFG(CONFIG_BCM4325_GPIO_WL_RESET, 0, GPIO_OUTPUT, GPIO_PULL_UP, GPIO_2MA), GPIO_ENABLE); gpio_configure(CONFIG_BCM4325_GPIO_WL_RESET, GPIOF_DRIVE_OUTPUT); gpio_set_value(CONFIG_BCM4325_GPIO_WL_RESET, 0); gpio_tlmm_config(GPIO_CFG(CONFIG_BCM4325_GPIO_WL_HOSTWAKEUP, 0, GPIO_INPUT, GPIO_PULL_DOWN, GPIO_2MA), GPIO_ENABLE); gpio_configure(CONFIG_BCM4325_GPIO_WL_HOSTWAKEUP, GPIOF_INPUT); msm_add_sdcc(2, &bcm432x_sdcc_wlan_data); enable_irq(gpio_to_irq(CONFIG_BCM4325_GPIO_WL_RESET)); #else msm_add_sdcc(2, &msm7x2x_sdcc_data); #endif #endif #ifdef CONFIG_MMC_MSM_SDC3_SUPPORT msm_add_sdcc(3, &msm7x2x_sdcc_data); #endif #ifdef CONFIG_MMC_MSM_SDC4_SUPPORT msm_add_sdcc(4, &msm7x2x_sdcc_data); #endif }
static void __init msm7x2x_init_mmc(void) { vreg_mmc = vreg_get(NULL, "mmc"); if (IS_ERR(vreg_mmc)) { printk(KERN_ERR "%s: vreg get failed (%ld)\n", __func__, PTR_ERR(vreg_mmc)); return; } sdcc_gpio_init(); #ifdef CONFIG_MMC_MSM_SDC1_SUPPORT msm_add_sdcc(1, &msm7x2x_sdcc_data,0,0); #endif #ifdef CONFIG_MMC_MSM_SDC2_SUPPORT msm_add_sdcc(2, &msm7x2x_sdcc_data_wifi,0,0); #endif }
static void __init msm7x27a_init_mmc(void) { vreg_emmc = vreg_get(NULL, "emmc"); if (IS_ERR(vreg_emmc)) { pr_err("%s: vreg get failed (%ld)\n", __func__, PTR_ERR(vreg_emmc)); return; } vreg_mmc = vreg_get(NULL, "mmc"); if (IS_ERR(vreg_mmc)) { pr_err("%s: vreg get failed (%ld)\n", __func__, PTR_ERR(vreg_mmc)); return; } sdcc_gpio_init(); /* eMMC slot */ #ifdef CONFIG_MMC_MSM_SDC3_SUPPORT sdcc_vreg_data[2].vreg_data = vreg_emmc; sdcc_vreg_data[2].level = 2850; msm_add_sdcc(3, &sdc3_plat_data); #endif /* Micro-SD slot */ #ifdef CONFIG_MMC_MSM_SDC1_SUPPORT sdcc_vreg_data[0].vreg_data = vreg_mmc; sdcc_vreg_data[0].level = VREG_SD_LEVEL; msm_add_sdcc(1, &sdc1_plat_data); #endif /* SDIO WLAN slot */ #ifdef CONFIG_MMC_MSM_SDC2_SUPPORT sdcc_vreg_data[1].vreg_data = vreg_mmc; sdcc_vreg_data[1].level = 2850; msm_add_sdcc(2, &sdc2_plat_data); #endif /* Not Used */ #if (defined(CONFIG_MMC_MSM_SDC4_SUPPORT)\ && !defined(CONFIG_MMC_MSM_SDC3_8_BIT_SUPPORT)) sdcc_vreg_data[3].vreg_data = vreg_mmc; sdcc_vreg_data[3].level = 2850; msm_add_sdcc(4, &sdc4_plat_data); #endif }
static void __init msm7x2x_init_mmc(void) { if (!machine_is_msm7x25_ffa() && !machine_is_msm7x27_ffa()) { #ifdef CONFIG_MACH_MSM7X27_ELINI vreg_mmc = vreg_get(NULL, "mmc"); #else vreg_mmc = vreg_get(NULL, "gp6"); #endif if (IS_ERR(vreg_mmc)) { printk(KERN_ERR "%s: vreg get failed (%ld)\n", __func__, PTR_ERR(vreg_mmc)); return; } } sdcc_gpio_init(); #ifdef CONFIG_MMC_MSM_SDC1_SUPPORT msm_add_sdcc(1, &msm7x2x_sdcc_data); #endif #ifdef CONFIG_MMC_MSM_SDC2_SUPPORT /* LGE_CHANGE_S [[email protected]] 2010-04-24, BCM4325 control */ #if defined(CONFIG_LGE_BCM432X_PATCH) /* GPIO config */ gpio_tlmm_config(GPIO_CFG(CONFIG_BCM4325_GPIO_WL_REGON, 0, GPIO_OUTPUT, GPIO_PULL_UP, GPIO_2MA), GPIO_ENABLE); gpio_configure(CONFIG_BCM4325_GPIO_WL_REGON, GPIOF_DRIVE_OUTPUT); // LGE_UPDATE_S dk.moon 2010-06-23 workaround solution about power consumption problem (BCM4325) //gpio_set_value(CONFIG_BCM4325_GPIO_WL_REGON, 0); gpio_set_value(CONFIG_BCM4325_GPIO_WL_REGON, 1); // LGE_UPDATE_E dk.moon 2010-06-23 gpio_tlmm_config(GPIO_CFG(CONFIG_BCM4325_GPIO_WL_RESET, 0, GPIO_OUTPUT, GPIO_PULL_UP, GPIO_2MA), GPIO_ENABLE); gpio_configure(CONFIG_BCM4325_GPIO_WL_RESET, GPIOF_DRIVE_OUTPUT); gpio_set_value(CONFIG_BCM4325_GPIO_WL_RESET, 0); mdelay(100); // LGE_UPDATE_S dk.moon 2010-06-23 workaround solution about power consumption problem (BCM4325) gpio_set_value(CONFIG_BCM4325_GPIO_WL_REGON, 0); // LGE_UPDATE_E dk.moon 2010-06-23 gpio_tlmm_config(GPIO_CFG(CONFIG_BCM4325_GPIO_WL_HOSTWAKEUP, 0, GPIO_OUTPUT, GPIO_PULL_UP, GPIO_2MA), GPIO_ENABLE); gpio_configure(CONFIG_BCM4325_GPIO_WL_HOSTWAKEUP, GPIOF_INPUT); /* Register platform device */ msm_add_sdcc(2, &bcm432x_sdcc_wlan_data); /* Enable RESET IRQ for wlan card detect */ enable_irq(gpio_to_irq(CONFIG_BCM4325_GPIO_WL_RESET)); #else /* qualcomm or google */ msm_add_sdcc(2, &msm7x2x_sdcc_data); #endif /* CONFIG_LGE_BCM432X_PATCH */ /* LGE_CHANGE_E [[email protected]] 2010-04-24, BCM4325 control */ #endif #ifdef CONFIG_MMC_MSM_SDC3_SUPPORT msm_add_sdcc(3, &msm7x2x_sdcc_data); #endif #ifdef CONFIG_MMC_MSM_SDC4_SUPPORT msm_add_sdcc(4, &msm7x2x_sdcc_data); #endif }