Re: PATCH: support for Arctic/Beech/Ebony

Joakim Tjernlund
2003-01-31T00:00:50Z

> At 02:37 PM 1/30/2003, Joakim Tjernlund wrote:
>
> > > > > > - You don't need mb() since ioremap will add the
> > > > > > GUARDED attribute to the mapping.
> > > > >
> > > > > Well, this is not quite correct.
> > > > >
> > > > > GUARDED attribute does _NOT_ prevent reordering of loads and stores
> > on PPC
> > > > > (on 4xx at least).
> > > > >
> > > > > See comments in asm-ppc/system.h and also IBM app note "Software
> > > > > consideration when migrating to the PowerPC 440GP from 405GP"
> > > > >
> > > >
> > > >hmm, maybe it's specific to the 8xx family. 860 and 862 does not do
> > > >speculative accesses on GUARDED memory.
> > >
> > > It does! But speculative accesses and access reordering are not the same
> > > thing :)
> >
> >what do you mean, does or does not do speculative accesses?
>
> Sorry for being unclear.
NP
>
> If I remember correctly, cache inhibited + guarded is enough for 8xx to
> prevent both speculative access and load/store reordering.

OK, thanks.

> But this is not true for ALL PPC processors, 440GP is an example when this
> is not enough
>
>
> > >
> > > There is a subtle difference.
> >
> >Yes I understand now, but I discussed this with my HW contact at Motorola
> >and he agreed
> >that it was OK to remove the mb(). Maybe he was wrong or perhaps non
> >speculative accesses
> >on mpc 860/862 also disables reorder? I can not find any statement that
> >confirms this.
> >
> >Howerver I have been running our boards without the mb()'s for months now,
> >no problem with
> >it so far.
>
> Well, patch we are discussing is for 4xx, not for 8xx.

Yes, so the mb()'s should be put back.

Marius, sorry for the noise.

Jocke
>
> Eugene.