1
0
Fork 0

otgcontrol: clean up uninitialize code in driver probe

pull/10/head
Steinar Bakkemo 2019-08-15 10:25:47 +02:00
parent 7f19e08723
commit a7a96a0a46
3 changed files with 9 additions and 11 deletions

View File

@ -198,22 +198,18 @@ static int rm_otgcontrol_probe(struct platform_device *pdev)
platform_set_drvdata(pdev, otgc_data);
return 0;
error_1:
kfree(otgc_data);
return ret;
error_2:
kfree(pdata);
kfree(otgc_data);
return ret;
error_3:
otgcontrol_uninit_sysfs_nodes(otgc_data);
otgcontrol_uninit_extcon(otgc_data);
otgcontrol_uninit_one_wire_mux_state(otgc_data);
otgcontrol_uninit_gpio_irq(otgc_data);
error_2:
kfree(pdata);
error_1:
kfree(otgc_data);
return ret;
}

View File

@ -60,7 +60,10 @@ int otgcontrol_init_one_wire_mux_state(struct rm_otgcontrol_data *otgc_data)
void otgcontrol_uninit_one_wire_mux_state(struct rm_otgcontrol_data *otgc_data)
{
devm_pinctrl_put(otgc_data->one_wire_pinctrl);
if ((otgc_data->one_wire_pinctrl != NULL) && !IS_ERR(otgc_data->one_wire_pinctrl)) {
devm_pinctrl_put(otgc_data->one_wire_pinctrl);
otgc_data->one_wire_pinctrl = NULL;
}
}
int otgcontrol_switch_one_wire_mux_state(struct rm_otgcontrol_data *otgc_data, int state)

View File

@ -183,7 +183,6 @@ int otgcontrol_init_sysfs_nodes(struct rm_otgcontrol_data *otgc_data)
void otgcontrol_uninit_sysfs_nodes(struct rm_otgcontrol_data *otgc_data)
{
printk("%s: Enter\n", __func__);
printk("%s: Decrementing kobject refcount\n", __func__);
if((otgc_data->kobject != NULL) && !IS_ERR(otgc_data->kobject)) {
kobject_put(otgc_data->kobject);