[RFC] xserver: use LRMI for real-mode calls (v3)

Tiago Vignatti tiago.vignatti at nokia.com
Mon Jan 11 07:29:51 PST 2010


Okay, now there's no mistery anymore: all int10 module went to libx86, which
in turn is accessed by a shiny new lrmi. It became very easy to create real
mode contexts now; for instance all X server code has ~60 lines only. And the
cool thing is that the API for drivers keeps the same:

    git://people.freedesktop.org/~vignatti/xserver lrmi-for-children
    git://people.freedesktop.org/~vignatti/libx86


and posttool converted to such interface:

    git://people.freedesktop.org/~vignatti/posttool lrmi-for-children

In the library there's some code that I intentionally let away either because I
don't have the hardware to test here or because I think it's not needed
anymore (and because I'm lazy to add). We can eventually add though. They are:

- support generic memory functions: we might need this specialised functions
  to handle access to different types of memory, but for now LRMI doesn't have
  such interface and even doesn't implement a portable way for access "not
  popular" memories.
- non-PC initialization mode (which seems to be broken anyway) and int42
  handling (used only for non PCs)
- int1A handling
- cpu regs emulation capability from x86emu
- video memory mapping and bios reading functions are not portable (we
  probably should move all implementation xf86MapVidMem and xf86ReadBIOS to
  libpciaccess)

Also, stub functions should be implemented inside libx86 for BSD-like
systems.


Let's see if I'm able to warm more hearts than ajax's now :) So I appreciate
all your review.


Thanks,

              Tiago


More information about the xorg-devel mailing list