Merge "ASoc: msm: Fix KW issues for audio adm driver"
This commit is contained in:
commit
ee4cdc8d63
1 changed files with 7 additions and 3 deletions
|
@ -1219,7 +1219,7 @@ static int adm_process_get_param_response(u32 opcode, u32 idx, u32 *payload,
|
||||||
struct adm_cmd_rsp_get_pp_params_v5 *v5_rsp = NULL;
|
struct adm_cmd_rsp_get_pp_params_v5 *v5_rsp = NULL;
|
||||||
struct adm_cmd_rsp_get_pp_params_v6 *v6_rsp = NULL;
|
struct adm_cmd_rsp_get_pp_params_v6 *v6_rsp = NULL;
|
||||||
u32 *param_data = NULL;
|
u32 *param_data = NULL;
|
||||||
int data_size;
|
int data_size = 0;
|
||||||
int struct_size;
|
int struct_size;
|
||||||
|
|
||||||
if (payload == NULL) {
|
if (payload == NULL) {
|
||||||
|
@ -1233,7 +1233,7 @@ static int adm_process_get_param_response(u32 opcode, u32 idx, u32 *payload,
|
||||||
if (payload_size < struct_size) {
|
if (payload_size < struct_size) {
|
||||||
pr_err("%s: payload size %d < expected size %d\n",
|
pr_err("%s: payload size %d < expected size %d\n",
|
||||||
__func__, payload_size, struct_size);
|
__func__, payload_size, struct_size);
|
||||||
break;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
v5_rsp = (struct adm_cmd_rsp_get_pp_params_v5 *) payload;
|
v5_rsp = (struct adm_cmd_rsp_get_pp_params_v5 *) payload;
|
||||||
data_size = v5_rsp->param_hdr.param_size;
|
data_size = v5_rsp->param_hdr.param_size;
|
||||||
|
@ -1244,7 +1244,7 @@ static int adm_process_get_param_response(u32 opcode, u32 idx, u32 *payload,
|
||||||
if (payload_size < struct_size) {
|
if (payload_size < struct_size) {
|
||||||
pr_err("%s: payload size %d < expected size %d\n",
|
pr_err("%s: payload size %d < expected size %d\n",
|
||||||
__func__, payload_size, struct_size);
|
__func__, payload_size, struct_size);
|
||||||
break;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
v6_rsp = (struct adm_cmd_rsp_get_pp_params_v6 *) payload;
|
v6_rsp = (struct adm_cmd_rsp_get_pp_params_v6 *) payload;
|
||||||
data_size = v6_rsp->param_hdr.param_size;
|
data_size = v6_rsp->param_hdr.param_size;
|
||||||
|
@ -1272,6 +1272,10 @@ static int adm_process_get_param_response(u32 opcode, u32 idx, u32 *payload,
|
||||||
pr_debug("%s: GET_PP PARAM: received parameter length: 0x%x\n",
|
pr_debug("%s: GET_PP PARAM: received parameter length: 0x%x\n",
|
||||||
__func__, adm_get_parameters[idx]);
|
__func__, adm_get_parameters[idx]);
|
||||||
/* store params after param_size */
|
/* store params after param_size */
|
||||||
|
if (param_data == NULL) {
|
||||||
|
pr_err("%s: Invalid parameter data got!\n", __func__);
|
||||||
|
return -EINVAL;
|
||||||
|
}
|
||||||
memcpy(&adm_get_parameters[idx + 1], param_data, data_size);
|
memcpy(&adm_get_parameters[idx + 1], param_data, data_size);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue