static int cypress_input_open(struct input_dev *dev) { struct cypress_touchkey_info *info = input_get_drvdata(dev); dev_info(&info->client->dev, "%s.\n", __func__); cypress_touchkey_resume(&info->client->dev); gpio_tlmm_config(GPIO_CFG(info->pdata->gpio_scl, 0, GPIO_CFG_INPUT, GPIO_CFG_NO_PULL, GPIO_CFG_2MA), 1); gpio_tlmm_config(GPIO_CFG(info->pdata->gpio_sda, 0, GPIO_CFG_INPUT, GPIO_CFG_NO_PULL, GPIO_CFG_2MA), 1); return 0; }
static void cypress_touchkey_late_resume(struct early_suspend *h) { struct cypress_touchkey_info *info; info = container_of(h, struct cypress_touchkey_info, early_suspend); cypress_touchkey_resume(&info->client->dev); #ifdef CONFIG_LEDS_CLASS /*led sysfs write led value before resume process is not executed */ info->current_status = 1; queue_work(info->led_wq, &info->led_work); #endif }
static void cypress_touchkey_late_resume(struct early_suspend *h) { struct cypress_touchkey_info *info; info = container_of(h, struct cypress_touchkey_info, early_suspend); cypress_touchkey_resume(&info->client->dev); }