diff --git a/model/input/driver/touchscreen/touch_gt911.c b/model/input/driver/touchscreen/touch_gt911.c index df8aa506..5936d8f3 100644 --- a/model/input/driver/touchscreen/touch_gt911.c +++ b/model/input/driver/touchscreen/touch_gt911.c @@ -250,6 +250,7 @@ static void FreeChipConfig(TouchChipCfg *config) { if (config == NULL) { HDF_LOGE("%s: param is null", __func__); + return; } if (config->pwrSeq.pwrOn.buf != NULL) { OsalMemFree(config->pwrSeq.pwrOn.buf); @@ -294,7 +295,7 @@ static int32_t HdfGoodixChipInit(struct HdfDeviceObject *device) chipDev->ops = &g_gt911ChipOps; chipDev->chipName = chipCfg->chipName; chipDev->vendorName = chipCfg->vendorName; - device->priv = chipDev; + device->priv = (void *)chipDev; if (RegisterTouchChipDevice(chipDev) != HDF_SUCCESS) { goto EXIT1; @@ -311,18 +312,10 @@ EXIT: static void HdfGoodixChipRelease(struct HdfDeviceObject *device) { - ChipDevice *chipDev = NULL; if (device == NULL || device->priv == NULL) { HDF_LOGE("%s: param is null", __func__); return; } - - chipDev = (ChipDevice *)device->priv; - if (chipDev->chipCfg != NULL) { - FreeChipConfig(chipDev->chipCfg); - } - OsalMemFree(chipDev); - HDF_LOGI("%s: goodix chip is release", __func__); }