99f3cd87d0
- Add a missing "ATI" in one of the device descriptions. - In machfb_init_engine() adjust a wait_for_fifo() call to the actual number of operations. - As a speed optimization cache setting the foreground and back- ground colors. - I got the meaning of V_DISPLAY_BLANK wrong, it's blank like turn off and not blank like turn on and clear the screen. So move clearing the screen to machfb_clear() were it hopefully belongs. - Properly implement V_DISPLAY_BLANK, V_DISPLAY_STAND_BY and V_DISPLAY_SUSPEND. This makes blank_saver.ko and green_saver.ko work. [1] - Implement machfb_load_palette() and machfb_save_palette() and set the V_ADP_PALETTE flag. This makes fade_saver.ko work. [2] - Install our 16-color color map only once and with an offset of 16 as the OBP driver expects white to be at index 0 and black at 255. This fixes the inversion of the colors back at the boot prompt after shutting down FreeBSD. This will also be handy if we ever want to implement breaking into OFW. Unfortunately there doesn't seem to be a better way to achieve this as e.g. bypassing the color map isn't supported by all Mach64 chips. - Move invalidating the cache variables to machfb_set_mode() and set the V_ADP_MODECHANGE flag. This causes machfb_set_mode() to be called when the X server shuts down. This hopefully will fix the screen corruption happening occasionally when shutting down the X server and which is present until switching to another VTY. Inspired by: NetBSD [1] Based on: Xorg [2] Approved by: re (scottl) |
||
---|---|---|
.. | ||
boot_font.c | ||
creator.c | ||
creatorreg.h | ||
fb.c | ||
fbreg.h | ||
gallant12x22.c | ||
gallant12x22.h | ||
gfb.c | ||
gfb.h | ||
machfb.c | ||
machfbreg.h | ||
s3_pci.c | ||
splash_bmp.c | ||
splash_pcx.c | ||
splash.c | ||
splashreg.h | ||
tga.c | ||
tga.h | ||
vga.c | ||
vgareg.h |