OK! If you are programmer I can get you small guide.
HOW TO CREATE GRAPHICS DRIVER FOR MACOSX USING LINUX SOURCES.
1. Linux sources written in C. Rewrite it to C++ and create new class MyDriver with all Linux sources.
2. Some Linux system procedure must be rewritten to MacOSX system calls. Consult Apple or opensources.
For example
Linux
CODE
xf86DrvMsg(pScrn->scrnIndex, X_ERROR,
"%s: CP resume %d\n", __FUNCTION__, _ret);
MacOSX
CODE
IOLog("ERROR: %s: CP resume %d\n", __FUNCTION__, _ret);
3. You must change access to PCI bus, to BIOS and to GPU registers.
How to you can find in project
RadeonPCI4. Take
IOGraphics project.
You can find classes
IONDRV - base superclass
IOBootNDRV - small subclass with fixed settings
IOPEFNDRV - supposing that graphics driver located in ROM
You need to use your class MyDriver instead of them. Main member is doDriverIO(...).
Then create your own kext with subclass of IONDRVFramebuffer that override it's member doDriverIO to use your class. How to - for example OpenATI at
http://sf.net.
In this way you can get switch resolution.
5. What about QE/CI and hardwareOpenGL?
You may subclass of IOAccelerator in the project IOGraphics but I still don't know details. If you would work I am ready to speak.