static void __exit mod_sysstat_recoder_exit(void){ mod_sysstat_collect_stop(); teardown_debugfs(); delete_all_sysinfo_snapshot(); print_msg("unload"); }
static int __devexit rmi_i2c_remove(struct i2c_client *client) { struct rmi_phys_device *phys = i2c_get_clientdata(client); struct rmi_device_platform_data *pd = client->dev.platform_data; if (IS_ENABLED(CONFIG_RMI4_DEBUG)) teardown_debugfs(phys->data); rmi_unregister_phys_device(phys); if (pd->gpio_config) pd->gpio_config(&pd->gpio_data, false); return 0; }
static void rmi_hid_remove(struct hid_device *hdev) { struct rmi_transport_device *xport = hid_get_drvdata(hdev); struct rmi_hid_data * hdata = xport->data; clear_bit(RMI_HID_STARTED, &hdata->flags); cancel_work_sync(&hdata->attn_report_work); cancel_work_sync(&hdata->reset_work); if (IS_ENABLED(CONFIG_RMI4_DEBUG)) teardown_debugfs(xport->data); rmi_unregister_transport_device(xport); hdev->ll_driver->close(hdev); hid_hw_stop(hdev); }
static int driver_ctl_cleanup(struct rmi_control_handler_data *hdata) { struct device *dev = hdata->dev; struct rmi_device *rmi_dev = to_rmi_device(dev); struct rmi_driver_data *driver_data = dev_get_drvdata(&rmi_dev->dev); struct driver_ctl_data *ctl_data = container_of(hdata, struct driver_ctl_data, hdata); teardown_debugfs(ctl_data); if (driver_data->pdt_props.has_bsr) device_remove_file(&rmi_dev->dev, &bsr_attribute); devm_kfree(dev, ctl_data); return 0; }