Next round of console patches

Martin Mares (mj@ucw.cz)
Wed, 26 Aug 1998 22:34:17 +0200


Hello, world!\n

As I've got lots of bug reports regarding the console and related things
and the development console code has evolved a lot since last merge with
the official tree, I've put a patch against 2.1.118 at

ftp://atrey.karlin.mff.cuni.cz/pub/local/mj/linux/patches/l-con118.gz

If you have any problems with console in 2.1.118 or if you just want to stay on
the bleeding edge, please test this patch and tell me whether does it fix your
problems or not (or even breaks things which have worked).

If no major problems arise, I'll send the whole patch to Linus next week.

Have a nice fortnight

-- 
Martin `MJ' Mares   <mj@ucw.cz>   http://atrey.karlin.mff.cuni.cz/~mj/
Faculty of Math and Physics, Charles University, Prague, Czech Rep., Earth
"Lisp Users: Due to the holiday, there will be no garbage collection on Monday."

Brief summary of changes: ~~~~~~~~~~~~~~~~~~~~~~~~~

Jakub Jelinek [jj] Martin Mares [mm] Geert Uytterhoeven [ge]

console: o Remove the ugly #ifdef CONFIG_SUN_CONSOLE from vt.c - it is not needed. [jj] o Replaced KD_FONT_FLAG_NEW by KD_FONT_FLAG_OLD, so that KDFONTOP requests receive no additional flags and (P|G)IO_FONT(|X) receive several compatibility flags. [mm] o Killed KD_FONT_FLAG_GLOBAL -- it wasn't implemented anyway and it will be better to do this in user space by calling KDFONTOP for font copy. [mm] o vt_console_print now disables the CONSOLE_BH as well and works even with kmsg_redirect set. [mm] o Removed kd_size_changed(). We already send SIGWINCH in vc_resize(). [mm] o Unimaps fixes [jj] o Cleanup of screen switching. This should fix several bug reports and also some multihead related problems I'm experiencing here. [mm] o Moved palette setting and saving of screen contents to redraw_screen(), killed few scattered palette set and screen saving calls around. [mm] o Leds and shift state are recomputed only when really switching screens. [mm] o Now saving console originally visible on the display we switch to instead of fg_console. [mm] o take_over_console now calls update_screen() for all visible screens it encounters and it also doesn't set the new driver as default when its initialization fails. [mm] o The con_set_palette() hook is called for all consoles, not depending on their visibility. It's up to the low-level driver to determine whether it should reload the hardware palette or not. This is not a good solution, but until we change the FB palette logic, it's the only way to go. [mm] o Killed video_mem_start and video_mem_end as they are no longer used. [mm] o Got rid of video_screen_size (it was merely an alias for screenbuf_size). [mm] o Fixed several bugs in console blanking. Now should work even on EGA and not call the blanking function twice if VESA blanking is switched off. [mm]

fbcon: o CONFIG_FBCON_FONTWIDTH8_ONLY optimizations [jj] o Readd `safe_shift' to protect against negative shift values. [ge] o A set of "politically correct" logos. I'm really fed up and tired from the endless linux-kernel abuse about nothing. [jj] o Fix getfont for font widths > 8. [ge] (slightly modified version of a patch by Petr Vandrovec <VANDROVE@vc.cvut.cz>) o Fixed soft blanking [jj] o Removed SM_LEFT and SM_RIGHT scrolling [jj] o Fix the two places where fontdata is cleared, but refcount is not updated. [jj] o Colormap changes. From now on, {set,get}colreg use 16 bit RGB values instead of values rounded to the hardware's capabilities. This fixes the DIRECTCOLOR problem. [ge] o fb.h: Removed blitter stuff to avoid people from thinking that we have a blitter API. [jj] o Add a driver scrollmode value SCOLL_YNOMOVE, useful for cards with fast bus and slow blit, which causes YREDRAW to be done if YPAN/YWRAP cannot be done. [jj] o Add a dispsw_data field to struct display for dispsw specific data. For cfb{16,24,32}, this is used for the map describing the console color number to pixel data mapping. Frame buffer devices that want to use fbcon_cfb{16,24,32} have to fill in a pointer to a 16 entry map. [ge] o cfb4: Fix the character color and cursor. (by Petr Vandrovec <VANDROVE@vc.cvut.cz>) o cfb24: Fix for little endian ordering: [ge] o iplan2p*: Optimized to use fontheightlog where possible.(by Andreas Schwab <schwab@gnu.org>) o Shared include files moved to include/video, so that stand-alone fb drivers can be developed outside the kernel tree. [mm] o Moved fbmem.c from drivers/char to drivers/video, so that we have the whole video subsystem at one place. [mm] o fbcon should be able to handle palette on multihead systems correctly. [mm] o Moved drawing of logo to fbcon_switch(), so that the logo doesn't get redrawn by the new updating logic. [mm] o fbcon now uses scr_memcpy_from and scr_memcpy_to whereever appropriate. This should make no change as the screen buffer is always in main RAM, but this approach is cleaner. [mm] o cfb*: Added missing symbols for the fbcon_cfb*_clear_margins() functions. (reported by Jeff Rugen <jrugen@primenet.com>)

vgacon: o Fixed screen contents backup/restore when in graphics mode. Thanks to Thomas Bogendoerfer for the idea. [mm]

fb drivers: o Updated vesafb by Gerd Knorr o vesafb: Include palette switching code only if cfb8 support is compiled in. [mm] o Synced other fb drivers with vger tree o Removed vgafb and mdafb -- they are buggy as hell and when Andrew finishes his mdacon (he promised to do it this week), the last reason for using them will vanish. No more confusing bug reports about console not working because of using these drivers :) [mm] o Makefile: Removed all gspcon things since gspcon isn't going to be available in historically short time.

sysrq: o Made sysrq compile without CONFIG_VT. I remember I've already fixed this, but it seems it got lost when Dave removed the serial sysrq stuff. [mm]

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.altern.org/andrebalsa/doc/lkml-faq.html