Hi Arnd and Simon, Thanks for your comments. On 2024-04-18 21:03:51 +0200, Arnd Bergmann wrote: > On Thu, Apr 18, 2024, at 20:32, Simon Horman wrote: > > > > Hi Niklas, > > > > I think that the use of __iowbm() means that this will not > > compile for many architectures: grep indicates it > > is only defined for arm, arm64, and arc. > > > > Perhaps COMPILE_TEST should be qualified somehow? > > > >> + /* Re-enable TX/RX interrupts */ > >> + spin_lock_irqsave(&priv->lock, flags); > >> + rtsn_ctrl_data_irq(priv, true); > >> + __iowmb(); > >> + spin_unlock_irqrestore(&priv->lock, flags); > > I think this needs a comment anyway: what is this trying > to serialize? > > The arm64 __iowmb() usually tries to ensure that a memory > write to a coherent buffer is complete before a following > writel() is sent to the bus, but this one appears to be > after the writel() where it has no effect because the > transaction may still be in flight on the bus after it > has left the store buffer. Indeed, this is a leftover from development. Thanks for catching it, will drop for v2. > > Arnd -- Kind Regards, Niklas Söderlund