Loading drivers/misc/thinkpad_acpi.c +17 −0 Original line number Diff line number Diff line Loading @@ -188,6 +188,7 @@ struct ibm_struct { int (*write) (char *); void (*exit) (void); void (*resume) (void); void (*suspend) (pm_message_t state); struct list_head all_drivers; Loading Loading @@ -658,6 +659,21 @@ static struct input_dev *tpacpi_inputdev; static struct mutex tpacpi_inputdev_send_mutex; static LIST_HEAD(tpacpi_all_drivers); static int tpacpi_suspend_handler(struct platform_device *pdev, pm_message_t state) { struct ibm_struct *ibm, *itmp; list_for_each_entry_safe(ibm, itmp, &tpacpi_all_drivers, all_drivers) { if (ibm->suspend) (ibm->suspend)(state); } return 0; } static int tpacpi_resume_handler(struct platform_device *pdev) { struct ibm_struct *ibm, *itmp; Loading @@ -677,6 +693,7 @@ static struct platform_driver tpacpi_pdriver = { .name = TPACPI_DRVR_NAME, .owner = THIS_MODULE, }, .suspend = tpacpi_suspend_handler, .resume = tpacpi_resume_handler, }; Loading Loading
drivers/misc/thinkpad_acpi.c +17 −0 Original line number Diff line number Diff line Loading @@ -188,6 +188,7 @@ struct ibm_struct { int (*write) (char *); void (*exit) (void); void (*resume) (void); void (*suspend) (pm_message_t state); struct list_head all_drivers; Loading Loading @@ -658,6 +659,21 @@ static struct input_dev *tpacpi_inputdev; static struct mutex tpacpi_inputdev_send_mutex; static LIST_HEAD(tpacpi_all_drivers); static int tpacpi_suspend_handler(struct platform_device *pdev, pm_message_t state) { struct ibm_struct *ibm, *itmp; list_for_each_entry_safe(ibm, itmp, &tpacpi_all_drivers, all_drivers) { if (ibm->suspend) (ibm->suspend)(state); } return 0; } static int tpacpi_resume_handler(struct platform_device *pdev) { struct ibm_struct *ibm, *itmp; Loading @@ -677,6 +693,7 @@ static struct platform_driver tpacpi_pdriver = { .name = TPACPI_DRVR_NAME, .owner = THIS_MODULE, }, .suspend = tpacpi_suspend_handler, .resume = tpacpi_resume_handler, }; Loading