Re: [PATCH v2 2/2] irqchip: Add Qualcomm MPM controller driver

From: Maulik Shah
Date: Tue Nov 30 2021 - 03:54:35 EST


Hi,

On 11/30/2021 2:01 PM, Shawn Guo wrote:
This can be converted to read poll_timeout(). This was introduced in
place of wmb() to make sure writes are completed.
Hmm, in this case, writel() will just do the right thing, as it wraps
wmb() there. Or am I missing something?

Shawn
#define writel(v,c)             ({ __iowmb(); writel_relaxed((v),(c)); })

writel() does not do wmb() after writel_relaxed(), it does before.

we need to make sure write is propagated, so wmb() or read  back with timeout need to be kept after writel() is done.

Thanks,
Maulik