mailbox: mtk-cmdq: Remove cmdq_cb_status
authorChun-Kuang Hu <chunkuang.hu@kernel.org>
Sun, 14 Mar 2021 23:33:21 +0000 (07:33 +0800)
committerJassi Brar <jaswinder.singh@linaro.org>
Sat, 26 Jun 2021 16:39:54 +0000 (11:39 -0500)
cmdq_cb_status is an error status. Use the standard error number
instead of cmdq_cb_status to prevent status duplication.

Signed-off-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>
Reviewed-by: Yongqiang Niu <yongqiang.niu@mediatek.com>
Signed-off-by: Jassi Brar <jaswinder.singh@linaro.org>
drivers/mailbox/mtk-cmdq-mailbox.c
include/linux/mailbox/mtk-cmdq-mailbox.h

index 3900ea6..1f2edc9 100644 (file)
@@ -180,7 +180,7 @@ static bool cmdq_thread_is_in_wfe(struct cmdq_thread *thread)
        return readl(thread->base + CMDQ_THR_WAIT_TOKEN) & CMDQ_THR_IS_WAITING;
 }
 
-static void cmdq_task_exec_done(struct cmdq_task *task, enum cmdq_cb_status sta)
+static void cmdq_task_exec_done(struct cmdq_task *task, int sta)
 {
        struct cmdq_task_cb *cb = &task->pkt->async_cb;
        struct cmdq_cb_data data;
@@ -244,10 +244,10 @@ static void cmdq_thread_irq_handler(struct cmdq *cmdq,
                        curr_task = task;
 
                if (!curr_task || curr_pa == task_end_pa - CMDQ_INST_SIZE) {
-                       cmdq_task_exec_done(task, CMDQ_CB_NORMAL);
+                       cmdq_task_exec_done(task, 0);
                        kfree(task);
                } else if (err) {
-                       cmdq_task_exec_done(task, CMDQ_CB_ERROR);
+                       cmdq_task_exec_done(task, -ENOEXEC);
                        cmdq_task_handle_error(curr_task);
                        kfree(task);
                }
@@ -415,7 +415,7 @@ static void cmdq_mbox_shutdown(struct mbox_chan *chan)
 
        list_for_each_entry_safe(task, tmp, &thread->task_busy_list,
                                 list_entry) {
-               cmdq_task_exec_done(task, CMDQ_CB_ERROR);
+               cmdq_task_exec_done(task, -ECONNABORTED);
                kfree(task);
        }
 
@@ -453,7 +453,7 @@ static int cmdq_mbox_flush(struct mbox_chan *chan, unsigned long timeout)
                                 list_entry) {
                cb = &task->pkt->async_cb;
                if (cb->cb) {
-                       data.sta = CMDQ_CB_ERROR;
+                       data.sta = -ECONNABORTED;
                        data.data = cb->data;
                        cb->cb(data);
                }
index d5a983d..2f7d9a3 100644 (file)
@@ -65,13 +65,8 @@ enum cmdq_code {
        CMDQ_CODE_LOGIC = 0xa0,
 };
 
-enum cmdq_cb_status {
-       CMDQ_CB_NORMAL = 0,
-       CMDQ_CB_ERROR
-};
-
 struct cmdq_cb_data {
-       enum cmdq_cb_status     sta;
+       int                     sta;
        void                    *data;
 };