mirror of
https://github.com/torvalds/linux.git
synced 2026-06-01 11:03:43 +02:00
ASoc: qcom: q6prm: Use automatic cleanup of kfree()
Its common pattern in q6dsp code to allocate temporary buffer to send gpr/apr packets and free at the function exit. Now this can be simplified via __free(kfree) mechanism. No functional changes. Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@oss.qualcomm.com> Link: https://patch.msgid.link/20251023102444.88158-16-srinivas.kandagatla@oss.qualcomm.com Signed-off-by: Mark Brown <broonie@kernel.org>
This commit is contained in:
parent
89cf2223ee
commit
de8e95773c
|
|
@ -62,8 +62,7 @@ static int q6prm_set_hw_core_req(struct device *dev, uint32_t hw_block_id, bool
|
||||||
struct prm_cmd_request_hw_core *req;
|
struct prm_cmd_request_hw_core *req;
|
||||||
gpr_device_t *gdev = prm->gdev;
|
gpr_device_t *gdev = prm->gdev;
|
||||||
uint32_t opcode, rsp_opcode;
|
uint32_t opcode, rsp_opcode;
|
||||||
struct gpr_pkt *pkt;
|
struct gpr_pkt *pkt __free(kfree) = NULL;
|
||||||
int rc;
|
|
||||||
|
|
||||||
if (enable) {
|
if (enable) {
|
||||||
opcode = PRM_CMD_REQUEST_HW_RSC;
|
opcode = PRM_CMD_REQUEST_HW_RSC;
|
||||||
|
|
@ -88,11 +87,7 @@ static int q6prm_set_hw_core_req(struct device *dev, uint32_t hw_block_id, bool
|
||||||
|
|
||||||
req->hw_clk_id = hw_block_id;
|
req->hw_clk_id = hw_block_id;
|
||||||
|
|
||||||
rc = q6prm_send_cmd_sync(prm, pkt, rsp_opcode);
|
return q6prm_send_cmd_sync(prm, pkt, rsp_opcode);
|
||||||
|
|
||||||
kfree(pkt);
|
|
||||||
|
|
||||||
return rc;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int q6prm_vote_lpass_core_hw(struct device *dev, uint32_t hw_block_id,
|
int q6prm_vote_lpass_core_hw(struct device *dev, uint32_t hw_block_id,
|
||||||
|
|
@ -116,8 +111,7 @@ static int q6prm_request_lpass_clock(struct device *dev, int clk_id, int clk_att
|
||||||
struct apm_module_param_data *param_data;
|
struct apm_module_param_data *param_data;
|
||||||
struct prm_cmd_request_rsc *req;
|
struct prm_cmd_request_rsc *req;
|
||||||
gpr_device_t *gdev = prm->gdev;
|
gpr_device_t *gdev = prm->gdev;
|
||||||
struct gpr_pkt *pkt;
|
struct gpr_pkt *pkt __free(kfree) = NULL;
|
||||||
int rc;
|
|
||||||
|
|
||||||
pkt = audioreach_alloc_cmd_pkt(sizeof(*req), PRM_CMD_REQUEST_HW_RSC, 0, gdev->svc.id,
|
pkt = audioreach_alloc_cmd_pkt(sizeof(*req), PRM_CMD_REQUEST_HW_RSC, 0, gdev->svc.id,
|
||||||
GPR_PRM_MODULE_IID);
|
GPR_PRM_MODULE_IID);
|
||||||
|
|
@ -139,11 +133,7 @@ static int q6prm_request_lpass_clock(struct device *dev, int clk_id, int clk_att
|
||||||
req->clock_id.clock_attri = clk_attr;
|
req->clock_id.clock_attri = clk_attr;
|
||||||
req->clock_id.clock_root = clk_root;
|
req->clock_id.clock_root = clk_root;
|
||||||
|
|
||||||
rc = q6prm_send_cmd_sync(prm, pkt, PRM_CMD_RSP_REQUEST_HW_RSC);
|
return q6prm_send_cmd_sync(prm, pkt, PRM_CMD_RSP_REQUEST_HW_RSC);
|
||||||
|
|
||||||
kfree(pkt);
|
|
||||||
|
|
||||||
return rc;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static int q6prm_release_lpass_clock(struct device *dev, int clk_id, int clk_attr, int clk_root,
|
static int q6prm_release_lpass_clock(struct device *dev, int clk_id, int clk_attr, int clk_root,
|
||||||
|
|
@ -153,8 +143,7 @@ static int q6prm_release_lpass_clock(struct device *dev, int clk_id, int clk_att
|
||||||
struct apm_module_param_data *param_data;
|
struct apm_module_param_data *param_data;
|
||||||
struct prm_cmd_release_rsc *rel;
|
struct prm_cmd_release_rsc *rel;
|
||||||
gpr_device_t *gdev = prm->gdev;
|
gpr_device_t *gdev = prm->gdev;
|
||||||
struct gpr_pkt *pkt;
|
struct gpr_pkt *pkt __free(kfree) = NULL;
|
||||||
int rc;
|
|
||||||
|
|
||||||
pkt = audioreach_alloc_cmd_pkt(sizeof(*rel), PRM_CMD_RELEASE_HW_RSC, 0, gdev->svc.id,
|
pkt = audioreach_alloc_cmd_pkt(sizeof(*rel), PRM_CMD_RELEASE_HW_RSC, 0, gdev->svc.id,
|
||||||
GPR_PRM_MODULE_IID);
|
GPR_PRM_MODULE_IID);
|
||||||
|
|
@ -173,11 +162,7 @@ static int q6prm_release_lpass_clock(struct device *dev, int clk_id, int clk_att
|
||||||
rel->num_clk_id = 1;
|
rel->num_clk_id = 1;
|
||||||
rel->clock_id.clock_id = clk_id;
|
rel->clock_id.clock_id = clk_id;
|
||||||
|
|
||||||
rc = q6prm_send_cmd_sync(prm, pkt, PRM_CMD_RSP_RELEASE_HW_RSC);
|
return q6prm_send_cmd_sync(prm, pkt, PRM_CMD_RSP_RELEASE_HW_RSC);
|
||||||
|
|
||||||
kfree(pkt);
|
|
||||||
|
|
||||||
return rc;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
int q6prm_set_lpass_clock(struct device *dev, int clk_id, int clk_attr, int clk_root,
|
int q6prm_set_lpass_clock(struct device *dev, int clk_id, int clk_attr, int clk_root,
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user