Re: [PATCH] mailbox: bcm-flexrm-mailbox: Fix FlexRM ring flush timeout issue

From: Ray Jui
Date: Fri Jan 04 2019 - 13:45:28 EST




On 1/3/2019 7:50 PM, Rayagonda Kokatanur wrote:
> RING_CONTROL reg was not written due to wrong address, hence all
> the subsequent ring flush was timing out.
>
> Fixes: a371c10ea4b3 ("mailbox: bcm-flexrm-mailbox: Fix FlexRM ring flush sequence")
>
> Signed-off-by: Rayagonda Kokatanur <rayagonda.kokatanur@xxxxxxxxxxxx>
> Tested-by: Rayagonda Kokatanur <rayagonda.kokatanur@xxxxxxxxxxxx>
> ---
> drivers/mailbox/bcm-flexrm-mailbox.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/mailbox/bcm-flexrm-mailbox.c b/drivers/mailbox/bcm-flexrm-mailbox.c
> index d7a8ed7..57cd729 100644
> --- a/drivers/mailbox/bcm-flexrm-mailbox.c
> +++ b/drivers/mailbox/bcm-flexrm-mailbox.c
> @@ -1396,9 +1396,9 @@ static void flexrm_shutdown(struct mbox_chan *chan)
>
> /* Clear ring flush state */
> timeout = 1000; /* timeout of 1s */
> - writel_relaxed(0x0, ring + RING_CONTROL);
> + writel_relaxed(0x0, ring->regs + RING_CONTROL);
> do {
> - if (!(readl_relaxed(ring + RING_FLUSH_DONE) &
> + if (!(readl_relaxed(ring->regs + RING_FLUSH_DONE) &
> FLUSH_DONE_MASK))
> break;
> mdelay(1);
>

Looks good to me. Thanks.

Reviewed-by: Ray Jui <ray.jui@xxxxxxxxxxxx>