[Intel-gfx] source-based replacement for video bios on ivybridge -- I'm stuck!

ron minnich rminnich at gmail.com
Thu Aug 23 00:04:20 CEST 2012


OK, thanks to the great suggestions and help I found on this list I am
now lighting up the display, i.e. clock recovery and so on work, the
display is trained, and it seems I am getting
data from memory to the display. Now I'm trying to understand some
other things.

I can set the GTT entries, and as an experiment I set them to start at
physical 0. i.e. [0] = 1, [1] = 4097, and so on. The low order bits
are the same as the BIOS settings: Valid is set but no other bits.
Now, as I change the GTT entries to point at different windows of low
memory, what is on the display changes -- I'm essentially looking at
kernel memory. But what surprised me a bit was I was hoping to
get a pretty dynamic display as the contents of kernel memory changed.
Such is not the case -- the display is static. So I think I'm missing
something else, any ideas? I think the display hardware is kind of
running
as each time I change the gtt the image on the screen changes in a
very consistent way, e.g. if I increase the value of all gtt's by 1
MiB then the screen scrolls up.

Next, the GSM on this system is at ADA00000. If I leave the entries
set to what the bios sets, e..g
[0] = 0xada0001
[1] - 0xada1001

etc. then I would expect I can mmap bar[2] and store into that region.
But what happens instead, is that nothing changes when I write to the
mmap'ed region. Is there some other issue I am getting wrong here?

Finally, if I dump what the data I mmap at bar[2], then change the
gtt, then dump it again, it does change. I think I have the bar values
right, but ...

Thanks again for your help.

ron



More information about the Intel-gfx mailing list