[lkml]   [1998]   [Aug]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
SubjectRe: Next round of console patches
Tom Eastep writes:
> >Gerd Knorr writes:
> >> [ lockup with vesafb + mtrr + Millennium 2MB ]
> >>
> >> > vesafb: framebuffer at 0xa0800000, mapped to 0xc8800000, size 2048k
> >>
> >> Ok, size is correct.=A0 Base address probably too, otherwise you
> >> would'nt see anything...
> >>
> >> Richard, any idea what is wrong there?=A0 vesafb will try to create a
> >> mtrr entry for the framebuffer: base=3D0xa0800000, 2 MB size.=A0 This
> >> locks the machine (which can be "fixed" by disabling mtrr in .config).
> >
> >Sorry, I haven't been following this thread. At what point does the
> >machine lock up? Is it as soon as the MTRR region is setup, or later
> >(such as when you do graphics operations or change video modes)?
> It appears that the lockup occurs when the video mode is changed during
> bootup).

OK, that would make sense if the write-combining is fouling up MMIO
register access. Can you please patch your kernel where it calls
mtrr_add() and add another call to mtrr_add() so that you set up a
small uncacheable region either at the beginning or the end of the
With luck that will fix it. If it does, start trimming the uncacheable
region down in size until it fails again. That will tell you the
minimum size of the register region. If you're unsure of how big a
region to start with (say 4 kBytes still fails), make the entire
framebuffer uncacheable and step down in factors of two.

I'm afraid that this can be a rather tedious process. You can make it
easier by disabling the call to mtrr_add() and using the /proc/mtrr
interface manually. It will save editing and recompiling :-)



To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to
Please read the FAQ at

 \ /
  Last update: 2005-03-22 13:44    [W:0.121 / U:7.248 seconds]
©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site