static void aat2862_touch_ldo_enable(struct i2c_client *client, int on) { #if 0 aat2862_set_ldo(1, ENLDO_D, VLDO_3_0V); msleep(1); aat2862_set_ldo(1, ENLDO_C, VLDO_1_8V); #endif if(on) { aat2862_write_reg(client, 0x02, 0x0B); msleep(10); aat2862_write_reg(client, 0x02, 0x0F); msleep(10); touch_i2c2_enable(on); } else { touch_i2c2_enable(on); msleep(10); aat2862_write_reg(client, 0x02, 0x0B); msleep(10); aat2862_write_reg(client, 0x02, 0x03); } // printk(KERN_WARNING"[!] %s()\n", __func__); }
static int mipi_panel_power(int on) { int flag_on = !!on; static int mipi_power_save_on; int rc; if (mipi_power_save_on == flag_on) return 0; mipi_power_save_on = flag_on; if (reg_8901_l3 == NULL) { reg_8901_l3 = regulator_get(NULL, "8901_l3"); if (IS_ERR(reg_8901_l3)) { reg_8901_l3 = NULL; } } if(on){ aat2862_set_ldo(1,0,0x4); aat2862_set_ldo(1,1,0xC); rc = regulator_set_voltage(reg_8901_l3, 3000000, 3000000); if (!rc) rc = regulator_enable(reg_8901_l3); if (rc) { pr_err("'%s' regulator enable failed, rc=%d\n", "8901_l3", rc); return rc; } gpio_tlmm_config(GPIO_CFG(LCD_RESET_N, 0, GPIO_CFG_OUTPUT, GPIO_CFG_NO_PULL, GPIO_CFG_2MA),GPIO_CFG_ENABLE); gpio_set_value(LCD_RESET_N,1); mdelay(50); gpio_set_value(LCD_RESET_N,0); mdelay(20); gpio_set_value(LCD_RESET_N,1); mdelay(50); } else{ aat2862_set_ldo(0,0,0x0); aat2862_set_ldo(0,1,0x0); rc = regulator_disable(reg_8901_l3); if (rc) pr_warning("'%s' regulator disable failed, rc=%d\n", "8901_l3", rc); pr_info("%s(off): success\n", __func__); } return 0; }
static int mipi_panel_power(int on) { int flag_on = !!on; static int mipi_power_save_on; int rc; if (mipi_power_save_on == flag_on) return 0; mipi_power_save_on = flag_on; if (reg_8901_l3 == NULL) { reg_8901_l3 = regulator_get(NULL, "8901_l3"); if (IS_ERR(reg_8901_l3)) { reg_8901_l3 = NULL; } } if(on){ aat2862_set_ldo(1,0,0x4); aat2862_set_ldo(1,1,0xC); rc = regulator_set_voltage(reg_8901_l3, 3000000, 3000000); if (!rc) rc = regulator_enable(reg_8901_l3); if (rc) { pr_err("'%s' regulator enable failed, rc=%d\n", "8901_l3", rc); return rc; } } else{ aat2862_set_ldo(0,0,0x0); aat2862_set_ldo(0,1,0x0); rc = regulator_disable(reg_8901_l3); if (rc) pr_warning("'%s' regulator disable failed, rc=%d\n", "8901_l3", rc); pr_info("%s(off): success\n", __func__); } return 0; }