[Xorg] OLS and console rearchitecture: second pass

Jon Smirl jonsmirl at yahoo.com
Thu Jul 29 17:33:48 PDT 2004

--- Jesse Barnes <jbarnes at engr.sgi.com> wrote
> In my case, I'll need it even for primary card reset.  :)  Can you
> post a link 
> to your old code?  I'd be interested in checking it out even if it's
> not the 
> package we settle on (I think Alan mentioned switching to qemu at
> some 
> point?).

I pushed a copy to bk://mesa3d@bkbits.net/boot

The code is a mess but I did get it working for a radeon. It needs the
VGA control and ROM fetch IOCTLs in the included DRM driver to work. It
is also built around libsysfs and klibc. I included copies of those.
The DRM driver has also been modified to generate a hotplug event.

You need a link in the hotplug directory to locate the reset program.
/etc/hotplug.d/dri/v86bios.hotplug -> /home/mesa/boot/v86bios/v86bios

The original source of this code is x86emu-0.8.tar.gz from Scitech. The
comments indicate that Egbert Eich wrote it. But after talking to
Egbert he seemed to wish that he hadn't.

This code does show that the basic architecture can work. For the
offical solution we need:
1) ROM access from sysfs
2) the VGA control device
3) klibc in the kernel build (it will be there in a few weeks)
4) not sure what to do about libsysfs, I find it pretty useless. It is
statically linked currently.
5) The current DRM driver needs to add a couple of lines of code that
generate the hotplug event. I already had GregKH modify class_simple so
that adding the event is easy. Other things DRM needs:
a) a lock to serialize resets if the driver is handling more than one
b) some mechanism to know that the hotplug event is finished to release
the lock. There may be a way to do this via the hotplug API or the
reset app can IOCTL the driver.
c) DRM needs to be modified to permanently AddMap the registers and
framebuffer. Right now the X server roots around in user space and then
tells DRM where the registers and fb are. Duh - DRM obviously knows
where these are without being told from user space. You need these maps
in place so that the reset app can Map registers/fb.

Jon Smirl
jonsmirl at yahoo.com

Do you Yahoo!?
New and Improved Yahoo! Mail - Send 10MB messages!

More information about the xorg mailing list