summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--drivers/misc/qseecom.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/misc/qseecom.c b/drivers/misc/qseecom.c
index fab9a07955dd..0c7cbfb862b9 100644
--- a/drivers/misc/qseecom.c
+++ b/drivers/misc/qseecom.c
@@ -252,7 +252,6 @@ struct qseecom_control {
bool whitelist_support;
bool commonlib_loaded;
bool commonlib64_loaded;
- struct ion_handle *cmnlib_ion_handle;
struct ce_hw_usage_info ce_info;
int qsee_bw_count;
@@ -2616,6 +2615,8 @@ static int qseecom_unload_app(struct qseecom_dev_handle *data,
if (!strcmp((void *)ptr_app->app_name,
(void *)data->client.app_name)) {
found_app = true;
+ if (ptr_app->app_blocked)
+ app_crash = false;
if (app_crash || ptr_app->ref_cnt == 1)
unload = true;
break;
@@ -4295,6 +4296,7 @@ static int qseecom_load_commonlib_image(struct qseecom_dev_handle *data,
void *cmd_buf = NULL;
size_t cmd_len;
uint32_t app_arch = 0;
+ struct ion_handle *cmnlib_ion_handle = NULL;
if (!cmnlib_name) {
pr_err("cmnlib_name is NULL\n");
@@ -4309,7 +4311,7 @@ static int qseecom_load_commonlib_image(struct qseecom_dev_handle *data,
if (__qseecom_get_fw_size(cmnlib_name, &fw_size, &app_arch))
return -EIO;
- ret = __qseecom_allocate_img_data(&qseecom.cmnlib_ion_handle,
+ ret = __qseecom_allocate_img_data(&cmnlib_ion_handle,
&img_data, fw_size, &pa);
if (ret)
return -EIO;
@@ -4350,7 +4352,7 @@ static int qseecom_load_commonlib_image(struct qseecom_dev_handle *data,
goto exit_unregister_bus_bw_need;
}
- ret = msm_ion_do_cache_op(qseecom.ion_clnt, qseecom.cmnlib_ion_handle,
+ ret = msm_ion_do_cache_op(qseecom.ion_clnt, cmnlib_ion_handle,
img_data, fw_size,
ION_IOC_CLEAN_INV_CACHES);
if (ret) {
@@ -4398,7 +4400,7 @@ exit_unregister_bus_bw_need:
}
exit_free_img_data:
- __qseecom_free_img_data(&qseecom.cmnlib_ion_handle);
+ __qseecom_free_img_data(&cmnlib_ion_handle);
return ret;
}