lkml.org 
[lkml]   [2020]   [Dec]   [2]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH] soc: mediatek: cmdq: Remove cmdq_pkt_flush()
    Date
    rx_callback is a standard mailbox callback mechanism and could
    cover the function of proprietary cmdq_task_cb, so it is better
    to use the standard one instead of the proprietary one. But
    register rx_callback should before mbox_request_channel(),
    so remove cmdq_pkt_flush() and let client driver implement
    its own synchronous flush.

    Signed-off-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>
    ---
    drivers/soc/mediatek/mtk-cmdq-helper.c | 32 --------------------------
    include/linux/soc/mediatek/mtk-cmdq.h | 12 ----------
    2 files changed, 44 deletions(-)

    diff --git a/drivers/soc/mediatek/mtk-cmdq-helper.c b/drivers/soc/mediatek/mtk-cmdq-helper.c
    index 505651b0d715..fd3bc39538a1 100644
    --- a/drivers/soc/mediatek/mtk-cmdq-helper.c
    +++ b/drivers/soc/mediatek/mtk-cmdq-helper.c
    @@ -502,36 +502,4 @@ int cmdq_pkt_flush_async(struct cmdq_pkt *pkt, cmdq_async_flush_cb cb,
    }
    EXPORT_SYMBOL(cmdq_pkt_flush_async);

    -struct cmdq_flush_completion {
    - struct completion cmplt;
    - bool err;
    -};
    -
    -static void cmdq_pkt_flush_cb(struct cmdq_cb_data data)
    -{
    - struct cmdq_flush_completion *cmplt;
    -
    - cmplt = (struct cmdq_flush_completion *)data.data;
    - if (data.sta != CMDQ_CB_NORMAL)
    - cmplt->err = true;
    - else
    - cmplt->err = false;
    - complete(&cmplt->cmplt);
    -}
    -
    -int cmdq_pkt_flush(struct cmdq_pkt *pkt)
    -{
    - struct cmdq_flush_completion cmplt;
    - int err;
    -
    - init_completion(&cmplt.cmplt);
    - err = cmdq_pkt_flush_async(pkt, cmdq_pkt_flush_cb, &cmplt);
    - if (err < 0)
    - return err;
    - wait_for_completion(&cmplt.cmplt);
    -
    - return cmplt.err ? -EFAULT : 0;
    -}
    -EXPORT_SYMBOL(cmdq_pkt_flush);
    -
    MODULE_LICENSE("GPL v2");
    diff --git a/include/linux/soc/mediatek/mtk-cmdq.h b/include/linux/soc/mediatek/mtk-cmdq.h
    index 960704d75994..2c6aa84c0e80 100644
    --- a/include/linux/soc/mediatek/mtk-cmdq.h
    +++ b/include/linux/soc/mediatek/mtk-cmdq.h
    @@ -288,16 +288,4 @@ int cmdq_pkt_finalize(struct cmdq_pkt *pkt);
    int cmdq_pkt_flush_async(struct cmdq_pkt *pkt, cmdq_async_flush_cb cb,
    void *data);

    -/**
    - * cmdq_pkt_flush() - trigger CMDQ to execute the CMDQ packet
    - * @pkt: the CMDQ packet
    - *
    - * Return: 0 for success; else the error code is returned
    - *
    - * Trigger CMDQ to execute the CMDQ packet. Note that this is a
    - * synchronous flush function. When the function returned, the recorded
    - * commands have been done.
    - */
    -int cmdq_pkt_flush(struct cmdq_pkt *pkt);
    -
    #endif /* __MTK_CMDQ_H__ */
    --
    2.17.1
    \
     
     \ /
      Last update: 2020-12-03 01:02    [W:2.468 / U:0.180 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site