static int adp8860_remove(struct i2c_client *client) { struct adp8860_bl *data = i2c_get_clientdata(client); adp8860_clr_bits(client, ADP8860_MDCR, NSTBY); if (data->led) adp8860_led_remove(client); if (data->en_ambl_sens) sysfs_remove_group(&data->bl->dev.kobj, &adp8860_bl_attr_group); return 0; }
static int __devexit adp8860_remove(struct i2c_client *client) { struct adp8860_bl *data = i2c_get_clientdata(client); adp8860_clr_bits(client, ADP8860_MDCR, NSTBY); if (data->led) adp8860_led_remove(client); if (data->en_ambl_sens) sysfs_remove_group(&data->bl->dev.kobj, &adp8860_bl_attr_group); backlight_device_unregister(data->bl); kfree(data); return 0; }