[klibc] Supporting multiple video cards under Linux
H. Peter Anvin
hpa at zytor.com
Sat Jan 24 16:56:20 PST 2004
Jon Smirl wrote:
> Supporting multiple video cards under Linux
> When there are multiple video cards in a machine the system BIOS only
> initializes one of them. So I'm working on a version of the DRI drivers that
> will initialize these non-primary video cards. The new DRI driver achieves this
> via generating a hotplug event that runs a user space program when the driver is
> first loaded.
> This user space program needs to run very early since you may want to use one of
> these cards for your console. Because of this I'm looking at klibc and the early
> boot environment. The reset program works by getting a copy of the card's VBIOS
> and calling it's reset function. To do this the user space app needs to go into
> VM86 mode, or on non-86 architectures run a x86 emulator if need be. You can't
> call the VBIOS from a device driver becuase it has been written assuming that it
> will be run in real mode, not protected mode.
> I tried linking to klibc but I'm missing some key pieces. I need things like
> inb/w/l(), outb/w/l(), iopl(), and vm86 support. Is it possible to get these
> added to klibc? These are probably all macros simply generating ASM instructions
> or calling the kernel VM86 entry point.
Should be easy enough. Note that if you require vm86 support, you won't
be able to port these drivers to x86-64.
More information about the klibc