Merge "msm: camera: common: Update holi camera workq wrapper" into camera-kernel.lnx.4.0

This commit is contained in:
Camera Software Integration 2020-06-24 18:03:53 -07:00 • committed by Gerrit - the friendly Code Review server
commit fd253633e1
2 changed files with 27 additions and 4 deletions

View file

@ -5323,6 +5323,11 @@ err:
return -ENOMEM;
}
static void cam_req_mgr_process_tfe_worker(struct work_struct *w)
{
cam_req_mgr_process_workq(w);
}
int cam_tfe_hw_mgr_init(struct cam_hw_mgr_intf *hw_mgr_intf, int *iommu_hdl)
{
int rc = -EFAULT;
@ -5477,7 +5482,8 @@ int cam_tfe_hw_mgr_init(struct cam_hw_mgr_intf *hw_mgr_intf, int *iommu_hdl)
/* Create Worker for tfe_hw_mgr with 10 tasks */
rc = cam_req_mgr_workq_create("cam_tfe_worker", 10,
&g_tfe_hw_mgr.workq, CRM_WORKQ_USAGE_NON_IRQ, 0);
&g_tfe_hw_mgr.workq, CRM_WORKQ_USAGE_NON_IRQ, 0,
cam_req_mgr_process_tfe_worker);
if (rc < 0) {
CAM_ERR(CAM_ISP, "Unable to create worker");
goto end;

View file

@ -3573,6 +3573,21 @@ compat_hw_name_failed:
return rc;
}
static void cam_req_mgr_process_ope_command_queue(struct work_struct *w)
{
cam_req_mgr_process_workq(w);
}
static void cam_req_mgr_process_ope_msg_queue(struct work_struct *w)
{
cam_req_mgr_process_workq(w);
}
static void cam_req_mgr_process_ope_timer_queue(struct work_struct *w)
{
cam_req_mgr_process_workq(w);
}
static int cam_ope_mgr_create_wq(void)
{
@ -3581,21 +3596,23 @@ static int cam_ope_mgr_create_wq(void)
rc = cam_req_mgr_workq_create("ope_command_queue", OPE_WORKQ_NUM_TASK,
&ope_hw_mgr->cmd_work, CRM_WORKQ_USAGE_NON_IRQ,
0);
0, cam_req_mgr_process_ope_command_queue);
if (rc) {
CAM_ERR(CAM_OPE, "unable to create a command worker");
goto cmd_work_failed;
}
rc = cam_req_mgr_workq_create("ope_message_queue", OPE_WORKQ_NUM_TASK,
&ope_hw_mgr->msg_work, CRM_WORKQ_USAGE_IRQ, 0);
&ope_hw_mgr->msg_work, CRM_WORKQ_USAGE_IRQ, 0,
cam_req_mgr_process_ope_msg_queue);
if (rc) {
CAM_ERR(CAM_OPE, "unable to create a message worker");
goto msg_work_failed;
}
rc = cam_req_mgr_workq_create("ope_timer_queue", OPE_WORKQ_NUM_TASK,
&ope_hw_mgr->timer_work, CRM_WORKQ_USAGE_IRQ, 0);
&ope_hw_mgr->timer_work, CRM_WORKQ_USAGE_IRQ, 0,
cam_req_mgr_process_ope_timer_queue);
if (rc) {
CAM_ERR(CAM_OPE, "unable to create a timer worker");
goto timer_work_failed;