lkml.org 
[lkml]   [2019]   [Feb]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH] mailbox: bcm-flexrm-mailbox: Fix FlexRM ring flush timeout issue
From
Date
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);

\
 
 \ /
  Last update: 2019-02-14 19:01    [W:0.073 / U:0.164 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site