diff options
| author | Derek Chen <chenche@codeaurora.org> | 2018-03-09 17:33:03 -0500 |
|---|---|---|
| committer | Derek Chen <chenche@codeaurora.org> | 2018-03-09 18:01:36 -0500 |
| commit | 481e2be78a60267daba89716ab7de7da70781d3e (patch) | |
| tree | 9753327ccc0c2afa034620dcc7193b1345343c42 | |
| parent | c2c950b468079a41c31d819051ffb8d9ad9eac8f (diff) | |
ASoC: msm: qdsp6v2: Fix APR packet size for SET_UI_PROPERTY
The APR packet size was incorrect for the API
VSS_ICOMMON_CMD_SET_UI_PROPERTY. Using struct
param_hdr_v1 made the previous calculation for
packet size < 0.
Signed-off-by: Derek Chen <chenche@codeaurora.org>
Change-Id: I7496e78ad6918251f90fdd5d778b322d4a81c4c0
| -rw-r--r-- | sound/soc/msm/qdsp6v2/q6voice.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/sound/soc/msm/qdsp6v2/q6voice.c b/sound/soc/msm/qdsp6v2/q6voice.c index a0f30a32f8e6..17d78704709f 100644 --- a/sound/soc/msm/qdsp6v2/q6voice.c +++ b/sound/soc/msm/qdsp6v2/q6voice.c @@ -8623,6 +8623,7 @@ static int voice_pack_and_set_cvs_ui_property(struct voice_data *v, { struct vss_icommon_cmd_set_ui_property *set_ui_property = NULL; u32 total_size = 0; + u32 pkt_size = 0; bool iid_supported = q6common_is_instance_id_supported(); void *apr_cvs; int ret = 0; @@ -8640,7 +8641,7 @@ static int voice_pack_and_set_cvs_ui_property(struct voice_data *v, return -ENOMEM; ret = q6common_pack_pp_params(set_ui_property->param_data, ¶m_hdr, - param_data, &total_size); + param_data, &pkt_size); if (ret) { pr_err("%s: Failed to pack params, error %d", __func__, ret); goto done; @@ -8654,7 +8655,7 @@ static int voice_pack_and_set_cvs_ui_property(struct voice_data *v, APR_HDR_FIELD(APR_MSG_TYPE_SEQ_CMD, APR_HDR_LEN(APR_HDR_SIZE), APR_PKT_VER); set_ui_property->apr_hdr.pkt_size = - APR_PKT_SIZE(APR_HDR_SIZE, total_size - APR_HDR_SIZE); + APR_PKT_SIZE(APR_HDR_SIZE, pkt_size); set_ui_property->apr_hdr.src_svc = 0; set_ui_property->apr_hdr.src_domain = APR_DOMAIN_APPS; set_ui_property->apr_hdr.src_port = |
