touch: fix parade driver deinit sequence
driver context is freed before calling power off sequence, which is resulting invalid memory access causing system crash. complete power off sequence before free up driver context. Change-Id: Ib6665d904d2747ec87a62b47cfadcb91f713ffe6 Signed-off-by: Surya Teja Kudiri <quic_skudiri@quicinc.com>
Esse commit está contido em:
@@ -17344,7 +17344,6 @@ error_detect:
|
||||
if (cd->cpdata->setup_power)
|
||||
cd->cpdata->setup_power(cd->cpdata, PT_MT_POWER_OFF, dev);
|
||||
sysfs_remove_group(&dev->kobj, &early_attr_group);
|
||||
kfree(cd);
|
||||
error_enable_regulator:
|
||||
pt_del_core(dev);
|
||||
dev_set_drvdata(dev, NULL);
|
||||
@@ -17352,6 +17351,7 @@ error_enable_regulator:
|
||||
error_get_regulator:
|
||||
pt_get_regulator(cd, false);
|
||||
error_alloc_data:
|
||||
kfree(cd);
|
||||
error_no_pdata:
|
||||
pr_err("%s failed.\n", __func__);
|
||||
return rc;
|
||||
|
Referência em uma nova issue
Block a user