static void __exit mod_sysstat_recoder_exit(void){
	mod_sysstat_collect_stop();
	teardown_debugfs();
	delete_all_sysinfo_snapshot();
	print_msg("unload");

}
Exemple #2
0
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;
}
Exemple #3
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;
}