[U-Boot] [PATCH] arm: Kirkwood: Add memory barriers to kwgbe_send/recv

Simon Kagstrom simon.kagstrom at netinsight.net
Thu Jul 2 08:47:02 CEST 2009


On Wed, 1 Jul 2009 09:57:10 -0700
Prafulla Wadaskar <prafulla at marvell.com> wrote:
> > kwgbe_send/recv both have loops waiting for the hardware to 
> > set  a bit.
> > GCC 4.3.3 cleverly optimizes this to ... a while(1); loop.
> Struct used is defined as volatile here.
> Is this not sufficient?

Right, but that was only for recv - send isn't volatile. I'll send a
new patch with the required changes. The question is which :-):

1. Make structure volatile in send as well

2. Use readl() where needed

3. Keep the memory barrier approach (and maybe add a mb() macro to arm
   as well)

I'm happy to get suggestions!


I'll prepare the openrd_base board patches a bit more and send them to
the list later today.

// Simon



More information about the U-Boot mailing list