As the year comes to an end, I will like to recap what Brace Computer Laboratory was able to accomplish this year.
For first half of the year, most of my efforts were devoted to further developing OpenChrome graphics stack. Probably the biggest accomplishment this year for OpenChrome DRM was finally figuring out why changing the screen resolution during run time causes X Server to crash. I finally added device support for VIA Technologies VT1632(A) and Silicon Image SiI 164 DVI transmitters. I discovered that code to properly set up display FIFO for CLE 266 and KM400 chipsets was missing, so I added the code to properly support CLE266 and KM400 chipsets. With all of these efforts, OpenChrome DRM KMS code achieved rough feature parity with OpenChrome DDX UMS code.
However, during the second half of the year, the momentum slowed down considerably. Although this happened during the first half of the year, the test code that would have formed the foundation of the code to replace the current GEM / TTM memory allocator code got lost along with ADATA Ultimate SU800 SSD 128 GB suddenly dying. That effort got restarted, but the newer code, which is more complete, is still not finished for me to test the code.
Regarding OpenChrome DDX, I did not put in as much effort into developing it like I did during prior years, but made some progress in fixing several outstanding issues. For example, I fixed Samsung NC20 netbook and VIA Embedded EPIA-M830 mainboard standby resume issues. Fixed ECS VX900-I mainboard VGA screen distortion when an HDMI display is connected simultaneously. Towards end of the year, I put in the initial effort into fixing VT (Virtual Terminal) display issue (i.e., blank screen) after the computer has gone through at least one standby resume. Unfortunately, the code was not perfect. Finally, I worked together with someone who wanted the VT issue solved yesterday, and appears to have fixed the issue (used HP 2133 Mini-Note for validation). Now, you should be able to use VT even after standby resume (Previously, this only worked only when OpenChrome DRM is in use.).
Starting the second half of the year, I started getting into developing other graphics stacks other than OpenChrome. I chose R128 (ATI Technologies RAGE 128) graphics stack. I did do two minor releases (here and here), but the second one was merely to fix an issue introduced by the first release. Spent some time trying to figure out how to fix standby resume issue and EXA rendering artifacts issue. Unfortunately, made no progress in those areas this year.
Towards end of the year, I started to do minor maintenance work of cleaning up the old, neglected DDXs so that at least they do not give so many compilation warnings with newer X Servers. I cleaned up all the code compilation warnings and released newer versions of DDX for Intel740, Number Nine Imagine 128, Matrox, NeoMagic, and Chips & Technologies.
Finally, I will like to appreciate all of those who supported me financially by donating to Brace Computer Laboratory. I hope to continue improving and fixing underserved graphics device drivers next year and for many years to come.