struct pm_qos_request cpufreq_pm_qos_req;
};
-static int enabled = 0;
-
static int mms_ts_power(struct mms_ts_info *info, int on)
{
int ret = 0;
- if (enabled == on) {
+ if (info->enabled == on) {
pr_err("melfas-ts : %s same state!", __func__);
return 0;
}
if (regulator_is_enabled(info->regulator_pwr) == !!on &&
regulator_is_enabled(info->regulator_vdd) == !!on) {
- enabled = on;
+ info->enabled = on;
} else {
pr_err("melfas-ts : regulator_is_enabled value error!");
ret = -1;
#endif
enable_irq(info->irq);
- info->enabled = true;
info->resume_done = true;
}
if (info->enabled == false)
return;
- info->enabled = false;
release_all_fingers(info);
while(retries_off--) {
if (retries_off < 0) {
dev_err(&info->client->dev, "%s : power off error!\n", __func__);
- info->enabled = true;
return;
}
} else
info->noise_mode = false;
#endif
- info->enabled = true;
}
static void melfas_ta_cb(struct tsp_callbacks *cb, bool ta_status)
info->resume_done = false;
mms_ts_power(info, true);
- info->enabled = true;
schedule_delayed_work(&info->work_config_set,
msecs_to_jiffies(10));
"%s already power off\n", __func__);
return;
}
- info->enabled = false;
while (!info->resume_done) {
if (!retries--)
goto err_fw_init;
}
- info->enabled = true;
info->resume_done= true;
snprintf(info->phys, sizeof(info->phys),
goto err_regulator;
}
disable_irq(info->irq);
- info->enabled = false;
mms_ts_power(info, false);
dev_info(&client->dev,
return 0;
disable_irq(info->irq);
- info->enabled = false;
release_all_fingers(info);
mms_ts_power(info, 0);