static void oled_detection_work(struct work_struct *work) { struct lcd_info *lcd = container_of(work, struct lcd_info, oled_detection.work); int oled_det_level = gpio_get_value(GPIO_OLED_DET); dev_info(&lcd->ld->dev, "%s, %d, %d\n", __func__, lcd->oled_detection_count, oled_det_level); if (!oled_det_level) esd_reset_lcd(lcd); }
static void esd_detection_work(struct work_struct *work) { struct lcd_info *lcd = container_of(work, struct lcd_info, esd_detection.work); int esd_det_level = gpio_get_value(ESD_DET); dev_info(&lcd->ld->dev, "%s, %d, %d\n", __func__, lcd->esd_detection_count, esd_det_level); if (!esd_det_level) esd_reset_lcd(lcd); enable_irq(lcd->irq); }