soc: mediatek: cmdq: return send msg error code
authorDennis YC Hsieh <dennis-yc.hsieh@mediatek.com>
Sun, 8 Mar 2020 10:52:47 +0000 (18:52 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 3 Jun 2020 06:21:19 +0000 (08:21 +0200)
[ Upstream commit 34c4e4072603ff5c174df73b973896abb76cbb51 ]

Return error code to client if send message fail,
so that client has chance to error handling.

Fixes: 576f1b4bc802 ("soc: mediatek: Add Mediatek CMDQ helper")
Signed-off-by: Dennis YC Hsieh <dennis-yc.hsieh@mediatek.com>
Reviewed-by: CK Hu <ck.hu@mediatek.com>
Link: https://lore.kernel.org/r/1583664775-19382-6-git-send-email-dennis-yc.hsieh@mediatek.com
Signed-off-by: Matthias Brugger <matthias.bgg@gmail.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/soc/mediatek/mtk-cmdq-helper.c

index 73a852b..34eec26 100644 (file)
@@ -258,7 +258,9 @@ int cmdq_pkt_flush_async(struct cmdq_pkt *pkt, cmdq_async_flush_cb cb,
                spin_unlock_irqrestore(&client->lock, flags);
        }
 
-       mbox_send_message(client->chan, pkt);
+       err = mbox_send_message(client->chan, pkt);
+       if (err < 0)
+               return err;
        /* We can send next packet immediately, so just call txdone. */
        mbox_client_txdone(client->chan, 0);