Thread (4 messages) flat view 4 messages, 3 authors, 2000-03-19

Re: controlfb: please test!

From: Michel Lanners <hidden>
Date: 2000-03-19 11:41:58

Hi list,

Here's another test patch for the detection problem on controlfb.
Again, this doesn't fix any problem, it's just to get a better
understanding of what happens in control..

I've also set up a little web page about the issue:

http://piglet.grunz.lu/~mlan/linux/dev/control.html

Please boot a kernel with this patch included ASAP and report your
results back to me! Thanks.

For the interested, there's more below...

On  19 Mar, this message from Daniel Jacobowitz echoed through cyberspace:
quoted
Here's what I've found so far:

- control manages mem in chunks of 2M (a pair of DIMMs), within a
region of 8M in size.
- 2M in bank 1, and 4M, are accessed at offset 0x0.
- 2M in bank 2 are accessed at offset 6M.
- the 2.3 code doesn't detect the mem at 2M in my case. It seems
writing to 0x0 garbles the memory contents at 2M: write to
2M, write to 0x0-garbling 2M, detect 0x0, detect 2M-garbled, so nothing
detected.
Aha!  This signifies a much bigger problem.  If the write to 0M garbles
the read from 2M, than the two are actually the same memory location!
It's my understanding that if only 2M is present it can be accessed at
0M and 2M (and possibly other offsets).  Does that seem to be wrong for
you?  Perhaps it can only be accessed when in a mode that requires it?
The detection code seems to indicate garbling; however, practical
experience seems to contradict that:
quoted
The next step is to compile a better detection check, that can detect
mirrored memory regions, so that I can find out what's wrong between
0x0 and 2M..... It's actually very strange, as my 4M do work when
accessed in one block starting at 0x0... so 2M would have to be
different from 0x0 ???
Try running the check after switching to a vmode which requires more
than 2M, please.
That's precisely what I run: 1152x870 at 32 bpp. Except when controlfb
only detects 2MB and sets me back to 16 bpp...

So, yes, under 2.2 kernels, I do use all my 4MB of VRAM, and they are
accessed as a single block starting at 0x0! Which indicates the mem at
2MB is _not_ the same as at 0x0.....

Anyway, below is yet another test patch which also checks for mirrored
locations. Have fun!

-------------------------------------------------------------------------
Michel Lanners                 |  " Read Philosophy.  Study Art.
23, Rue Paul Henkes            |    Ask Questions.  Make Mistakes.
L-1710 Luxembourg              |
email   mlan@cpu.lu            |
http://www.cpu.lu/~mlan        |                     Learn Always. "

Attachments

Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help