static void eid_mddi_power_client(struct msm_mddi_client_data *cdata, int on) { unsigned id, on_off; B("KERN_DEBUG %s: enter.\n", __func__); if(on) { on_off = 0; id = PM_VREG_PDOWN_MDDI_ID; msm_proc_comm(PCOM_VREG_PULLDOWN, &on_off, &id); gpio_set_value(MEMPHIS_V_VDDE2E_VDD2_GPIO, 1); msleep(3); id = PM_VREG_PDOWN_AUX_ID; msm_proc_comm(PCOM_VREG_PULLDOWN, &on_off, &id); vreg_enable(vreg_lcm_2v85); if (machine_is_bahamas()){ msleep(1); id = PM_VREG_PDOWN_RFRX2_ID; msm_proc_comm(PCOM_VREG_PULLDOWN, &on_off, &id); vreg_enable(vreg_lcm_2v6); } msleep(3); gpio_set_value(MEMPHIS_MDDI_RSTz, 1); msleep(10); } else { gpio_set_value(MEMPHIS_MDDI_RSTz, 0); msleep(10); on_off = 1; if (machine_is_bahamas()){ vreg_disable(vreg_lcm_2v6); id = PM_VREG_PDOWN_RFRX2_ID; msm_proc_comm(PCOM_VREG_PULLDOWN, &on_off, &id); msleep(1); } vreg_disable(vreg_lcm_2v85); id = PM_VREG_PDOWN_AUX_ID; msm_proc_comm(PCOM_VREG_PULLDOWN, &on_off, &id); msleep(5); gpio_set_value(MEMPHIS_V_VDDE2E_VDD2_GPIO, 0); msleep(200); id = PM_VREG_PDOWN_MDDI_ID; msm_proc_comm(PCOM_VREG_PULLDOWN, &on_off, &id); } }
int __init eid_init(void) { int rc; vreg_lcm_2v85 = vreg_get(0, "gp4"); if (IS_ERR(vreg_lcm_2v85)) return PTR_ERR(vreg_lcm_2v85); if (machine_is_bahamas()){ vreg_lcm_2v6 = vreg_get(0, "rfrx2"); if (IS_ERR(vreg_lcm_2v6)) return PTR_ERR(vreg_lcm_2v6); } rc = platform_device_register(&msm_device_mdp); if (rc) return rc; msm_device_mddi0.dev.platform_data = &eid_pdata; rc = platform_device_register(&msm_device_mddi0); if (rc) return rc; led_trigger_register_simple("lcd-backlight-gate", &eid_lcd_backlight); if (IS_ERR(eid_lcd_backlight)) printk(KERN_ERR "%s: backlight registration failed!\n", __func__); rc = display_sysfs_init() ; if (rc) return rc ; return 0; }
static int __init bahamasmmc_dbg_init(void) { if (!machine_is_bahamas()) return 0; struct dentry *dent; dent = debugfs_create_dir("bahamasmmc_dbg", 0); if (IS_ERR(dent)) return PTR_ERR(dent); debugfs_create_file("wifi_reset", 0644, dent, NULL, &bahamasmmc_dbg_wifi_reset_fops); debugfs_create_file("wifi_cd", 0644, dent, NULL, &bahamasmmc_dbg_wifi_cd_fops); debugfs_create_file("wifi_pwr", 0644, dent, NULL, &bahamasmmc_dbg_wifi_pwr_fops); debugfs_create_file("sd_pwr", 0644, dent, NULL, &bahamasmmc_dbg_sd_pwr_fops); debugfs_create_file("sd_cd", 0644, dent, NULL, &bahamasmmc_dbg_sd_cd_fops); return 0; }