Messages in this thread | | | Subject | Re: [PATCH] mailbox: bcm-flexrm-mailbox: Fix FlexRM ring flush timeout issue | From | Ray Jui <> | Date | Thu, 14 Feb 2019 10:00:52 -0800 |
| |
Hi Jassi,
Have you had a chance to review this fix? This is a critical fix for a crash during driver shutdown.
Regards,
Ray
On 2/4/2019 11:22 AM, Scott Branden wrote: > Fix looks good. > > On 2019-02-04 11:21 a.m., Ray Jui wrote: >> From: Rayagonda Kokatanur <rayagonda.kokatanur@broadcom.com> >> >> 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@broadcom.com> >> Signed-off-by: Ray Jui <ray.jui@broadcom.com> > Reviewed-by: Scott Branden <scott.branden@broadcom.com> >> --- >> 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 d713271ebf7c..a64116586b4c 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);
| |