A transmit FIFO can never be full, because the mailbox framework waits until mbox->ops->last_tx_done() succeeds before sending the next message. sun6i_msgbox_last_tx_done() ensures that the FIFO is empty. Since the extra check here is unnecessary, remove it. Signed-off-by: Samuel Holland <samuel@xxxxxxxxxxxx> --- drivers/mailbox/sun6i-msgbox.c | 6 ------ 1 file changed, 6 deletions(-) diff --git a/drivers/mailbox/sun6i-msgbox.c b/drivers/mailbox/sun6i-msgbox.c index 15d6fd522dc5..ccecf2e5941d 100644 --- a/drivers/mailbox/sun6i-msgbox.c +++ b/drivers/mailbox/sun6i-msgbox.c @@ -106,12 +106,6 @@ static int sun6i_msgbox_send_data(struct mbox_chan *chan, void *data) if (WARN_ON_ONCE(!(readl(mbox->regs + CTRL_REG(n)) & CTRL_TX(n)))) return 0; - /* We cannot post a new message if the FIFO is full. */ - if (readl(mbox->regs + FIFO_STAT_REG(n)) & FIFO_STAT_MASK) { - mbox_dbg(mbox, "Channel %d busy sending 0x%08x\n", n, msg); - return -EBUSY; - } - writel(msg, mbox->regs + MSG_DATA_REG(n)); mbox_dbg(mbox, "Channel %d sent 0x%08x\n", n, msg); -- 2.24.1