[PATCH 1/3] mailbox: mtk-cmdq: Remove cmdq_cb_status

Chun-Kuang Hu chunkuang.hu at kernel.org
Tue May 25 23:15:02 PDT 2021


+ Yongqiang

Chun-Kuang Hu <chunkuang.hu at kernel.org> 於 2021年3月15日 週一 上午7:33寫道:
>
> cmdq_cb_status is an error status. Use the standard error number
> instead of cmdq_cb_status to prevent status duplication.
>
> Cc: Jassi Brar <jassisinghbrar at gmail.com>
> Cc: Matthias Brugger <matthias.bgg at gmail.com>
> Cc: Houlong Wei <houlong.wei at mediatek.com>
> Cc: Bibby Hsieh <bibby.hsieh at mediatek.com>
> Cc: Dennis YC Hsieh <dennis-yc.hsieh at mediatek.com>
> Cc: linux-kernel at vger.kernel.org
> Cc: linux-arm-kernel at lists.infradead.org
> Cc: linux-mediatek at lists.infradead.org
> Signed-off-by: Chun-Kuang Hu <chunkuang.hu at kernel.org>
> ---
>  drivers/mailbox/mtk-cmdq-mailbox.c       | 10 +++++-----
>  include/linux/mailbox/mtk-cmdq-mailbox.h |  7 +------
>  2 files changed, 6 insertions(+), 11 deletions(-)
>
> diff --git a/drivers/mailbox/mtk-cmdq-mailbox.c b/drivers/mailbox/mtk-cmdq-mailbox.c
> index 5665b6ea8119..3d37c1cd40f1 100644
> --- a/drivers/mailbox/mtk-cmdq-mailbox.c
> +++ b/drivers/mailbox/mtk-cmdq-mailbox.c
> @@ -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);
>                 }
> diff --git a/include/linux/mailbox/mtk-cmdq-mailbox.h b/include/linux/mailbox/mtk-cmdq-mailbox.h
> index d5a983d65f05..2f7d9a37d611 100644
> --- a/include/linux/mailbox/mtk-cmdq-mailbox.h
> +++ b/include/linux/mailbox/mtk-cmdq-mailbox.h
> @@ -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;
>  };
>
> --
> 2.17.1
>



More information about the Linux-mediatek mailing list