Booting Imac G5
Benjamin Herrenschmidt
benh at kernel.crashing.org
Mon Nov 22 14:51:29 EST 2004
On Mon, 2004-11-22 at 14:42 +1100, Benjamin Herrenschmidt wrote:
> > I think I found the problem.
> > While testing my RTC driver, I had some problems which seemed to be
> > cache related.
> > I made a try:
> > in arch/ppc64/kernel/misc.S, in flush_dcache_range and
> > flush_dcache_phys_range, I added a
> > dcbf 0,r6 just after the dcbst 0,r6.
> > This fixed the problems I had in the RTC driver and I can notice that I
> > got no more segfault using this patch (I even can now update my Gentoo
> > under X11 using Gnome !).
> > I guess I could remove the dcbst, as dcbz does the same plus L1 cache
> > invalidation.
> > I'm not completly sure of what the problem is, but I think it can be
> > either the dbcst is not appropriate, as it does not invalidate the L1
> > cache in 970FX, or HID registers are not well programmed.
Oh, and flush_dcache_range/phys_range aren't really used anyway for
anything but the IOMMU code, which shouldn't be used on the iMac since
you have <= 2Gb of RAM on this machine... so unless you did something
else, those 2 functions don't explain the issue (flush_dcache_icache is
another one tho).
Ben.
More information about the Linuxppc64-dev
mailing list