--- 400_bootsplash-3.1.3-2.6.3-r4.patch 2004-02-18 22:51:23.000000000 +0100 +++ 400_bootsplash-3.1.3-2.6.3-r5.patch 2004-02-18 21:00:02.000000000 +0100 @@ -1,6 +1,6 @@ -diff -Naur linux-2.6.3-rc3-orig/drivers/char/keyboard.c linux-2.6.3-rc3/drivers/char/keyboard.c ---- linux-2.6.3-rc3-orig/drivers/char/keyboard.c 2004-02-16 13:17:50.000000000 +0100 -+++ linux-2.6.3-rc3/drivers/char/keyboard.c 2004-02-16 13:21:34.000000000 +0100 +diff -Naur linux-2.6.3-orig/drivers/char/keyboard.c linux-2.6.3/drivers/char/keyboard.c +--- linux-2.6.3-orig/drivers/char/keyboard.c 2004-02-18 17:21:29.000000000 +0100 ++++ linux-2.6.3/drivers/char/keyboard.c 2004-02-18 20:54:53.000000000 +0100 @@ -1059,6 +1059,14 @@ if (keycode < BTN_MISC) printk(KERN_WARNING "keyboard.c: can't emulate rawmode for keycode %d\n", keycode); @@ -16,9 +16,9 @@ #ifdef CONFIG_MAGIC_SYSRQ /* Handle the SysRq Hack */ if (keycode == KEY_SYSRQ && (sysrq_down || (down == 1 && sysrq_alt))) { sysrq_down = down; -diff -Naur linux-2.6.3-rc3-orig/drivers/char/n_tty.c linux-2.6.3-rc3/drivers/char/n_tty.c ---- linux-2.6.3-rc3-orig/drivers/char/n_tty.c 2004-02-16 13:17:50.000000000 +0100 -+++ linux-2.6.3-rc3/drivers/char/n_tty.c 2004-02-16 13:21:34.000000000 +0100 +diff -Naur linux-2.6.3-orig/drivers/char/n_tty.c linux-2.6.3/drivers/char/n_tty.c +--- linux-2.6.3-orig/drivers/char/n_tty.c 2004-02-18 17:21:29.000000000 +0100 ++++ linux-2.6.3/drivers/char/n_tty.c 2004-02-18 20:54:53.000000000 +0100 @@ -969,6 +969,16 @@ return -EIO; } @@ -36,9 +36,9 @@ /* Job control check -- must be done at start and after every sleep (POSIX.1 7.1.1.4). */ /* NOTE: not yet done after every sleep pending a thorough -diff -Naur linux-2.6.3-rc3-orig/drivers/char/vt.c linux-2.6.3-rc3/drivers/char/vt.c ---- linux-2.6.3-rc3-orig/drivers/char/vt.c 2004-02-16 13:17:50.000000000 +0100 -+++ linux-2.6.3-rc3/drivers/char/vt.c 2004-02-16 13:21:34.000000000 +0100 +diff -Naur linux-2.6.3-orig/drivers/char/vt.c linux-2.6.3/drivers/char/vt.c +--- linux-2.6.3-orig/drivers/char/vt.c 2004-02-18 17:21:29.000000000 +0100 ++++ linux-2.6.3/drivers/char/vt.c 2004-02-18 20:54:53.000000000 +0100 @@ -3108,6 +3108,31 @@ return 0; } @@ -71,9 +71,9 @@ /* * Visible symbols for modules */ -diff -Naur linux-2.6.3-rc3-orig/drivers/video/bootsplash/bootsplash.c linux-2.6.3-rc3/drivers/video/bootsplash/bootsplash.c ---- linux-2.6.3-rc3-orig/drivers/video/bootsplash/bootsplash.c 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.6.3-rc3/drivers/video/bootsplash/bootsplash.c 2004-02-16 12:56:25.000000000 +0100 +diff -Naur linux-2.6.3-orig/drivers/video/bootsplash/bootsplash.c linux-2.6.3/drivers/video/bootsplash/bootsplash.c +--- linux-2.6.3-orig/drivers/video/bootsplash/bootsplash.c 1970-01-01 01:00:00.000000000 +0100 ++++ linux-2.6.3/drivers/video/bootsplash/bootsplash.c 2004-02-18 20:54:53.000000000 +0100 @@ -0,0 +1,916 @@ +/* + * linux/drivers/video/bootsplash/bootsplash.c - @@ -991,9 +991,9 @@ + return; +} + -diff -Naur linux-2.6.3-rc3-orig/drivers/video/bootsplash/bootsplash.h linux-2.6.3-rc3/drivers/video/bootsplash/bootsplash.h ---- linux-2.6.3-rc3-orig/drivers/video/bootsplash/bootsplash.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.6.3-rc3/drivers/video/bootsplash/bootsplash.h 2004-02-16 12:19:28.000000000 +0100 +diff -Naur linux-2.6.3-orig/drivers/video/bootsplash/bootsplash.h linux-2.6.3/drivers/video/bootsplash/bootsplash.h +--- linux-2.6.3-orig/drivers/video/bootsplash/bootsplash.h 1970-01-01 01:00:00.000000000 +0100 ++++ linux-2.6.3/drivers/video/bootsplash/bootsplash.h 2004-02-18 20:54:53.000000000 +0100 @@ -0,0 +1,44 @@ +/* + * linux/drivers/video/bootsplash/bootsplash.h - splash screen definition. @@ -1039,9 +1039,9 @@ +extern void release_console_sem(void); + +#endif -diff -Naur linux-2.6.3-rc3-orig/drivers/video/bootsplash/decode-jpg.c linux-2.6.3-rc3/drivers/video/bootsplash/decode-jpg.c ---- linux-2.6.3-rc3-orig/drivers/video/bootsplash/decode-jpg.c 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.6.3-rc3/drivers/video/bootsplash/decode-jpg.c 2004-02-16 13:21:34.000000000 +0100 +diff -Naur linux-2.6.3-orig/drivers/video/bootsplash/decode-jpg.c linux-2.6.3/drivers/video/bootsplash/decode-jpg.c +--- linux-2.6.3-orig/drivers/video/bootsplash/decode-jpg.c 1970-01-01 01:00:00.000000000 +0100 ++++ linux-2.6.3/drivers/video/bootsplash/decode-jpg.c 2004-02-18 20:54:53.000000000 +0100 @@ -0,0 +1,958 @@ +/* + * linux/drivers/video/bootsplash/decode-jpg.c - a tiny jpeg decoder. @@ -2001,9 +2001,9 @@ + outy += 64 * 2 - 16 * 4; + } +} -diff -Naur linux-2.6.3-rc3-orig/drivers/video/bootsplash/decode-jpg.h linux-2.6.3-rc3/drivers/video/bootsplash/decode-jpg.h ---- linux-2.6.3-rc3-orig/drivers/video/bootsplash/decode-jpg.h 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.6.3-rc3/drivers/video/bootsplash/decode-jpg.h 2004-02-16 13:21:34.000000000 +0100 +diff -Naur linux-2.6.3-orig/drivers/video/bootsplash/decode-jpg.h linux-2.6.3/drivers/video/bootsplash/decode-jpg.h +--- linux-2.6.3-orig/drivers/video/bootsplash/decode-jpg.h 1970-01-01 01:00:00.000000000 +0100 ++++ linux-2.6.3/drivers/video/bootsplash/decode-jpg.h 2004-02-18 20:54:53.000000000 +0100 @@ -0,0 +1,35 @@ +/* + * linux/drivers/video/bootsplash/decode-jpg.h - a tiny jpeg decoder. @@ -2040,9 +2040,9 @@ +extern int jpeg_check_size(unsigned char *, int, int); + +#endif -diff -Naur linux-2.6.3-rc3-orig/drivers/video/bootsplash/Kconfig linux-2.6.3-rc3/drivers/video/bootsplash/Kconfig ---- linux-2.6.3-rc3-orig/drivers/video/bootsplash/Kconfig 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.6.3-rc3/drivers/video/bootsplash/Kconfig 2004-02-16 13:21:34.000000000 +0100 +diff -Naur linux-2.6.3-orig/drivers/video/bootsplash/Kconfig linux-2.6.3/drivers/video/bootsplash/Kconfig +--- linux-2.6.3-orig/drivers/video/bootsplash/Kconfig 1970-01-01 01:00:00.000000000 +0100 ++++ linux-2.6.3/drivers/video/bootsplash/Kconfig 2004-02-18 20:54:53.000000000 +0100 @@ -0,0 +1,17 @@ +# +# Bootsplash configuration @@ -2061,18 +2061,18 @@ + If you are unsure, say N +endmenu + -diff -Naur linux-2.6.3-rc3-orig/drivers/video/bootsplash/Makefile linux-2.6.3-rc3/drivers/video/bootsplash/Makefile ---- linux-2.6.3-rc3-orig/drivers/video/bootsplash/Makefile 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.6.3-rc3/drivers/video/bootsplash/Makefile 2004-02-16 13:21:34.000000000 +0100 +diff -Naur linux-2.6.3-orig/drivers/video/bootsplash/Makefile linux-2.6.3/drivers/video/bootsplash/Makefile +--- linux-2.6.3-orig/drivers/video/bootsplash/Makefile 1970-01-01 01:00:00.000000000 +0100 ++++ linux-2.6.3/drivers/video/bootsplash/Makefile 2004-02-18 20:54:53.000000000 +0100 @@ -0,0 +1,5 @@ +# Makefile for the Linux bootsplash + +obj-$(CONFIG_BOOTSPLASH) += bootsplash.o +obj-$(CONFIG_BOOTSPLASH) += decode-jpg.o +obj-$(CONFIG_BOOTSPLASH) += render.o -diff -Naur linux-2.6.3-rc3-orig/drivers/video/bootsplash/render.c linux-2.6.3-rc3/drivers/video/bootsplash/render.c ---- linux-2.6.3-rc3-orig/drivers/video/bootsplash/render.c 1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.6.3-rc3/drivers/video/bootsplash/render.c 2004-02-16 13:21:34.000000000 +0100 +diff -Naur linux-2.6.3-orig/drivers/video/bootsplash/render.c linux-2.6.3/drivers/video/bootsplash/render.c +--- linux-2.6.3-orig/drivers/video/bootsplash/render.c 1970-01-01 01:00:00.000000000 +0100 ++++ linux-2.6.3/drivers/video/bootsplash/render.c 2004-02-18 20:54:53.000000000 +0100 @@ -0,0 +1,330 @@ +/* + * linux/drivers/video/bootsplash/render.c - splash screen render functions. @@ -2404,9 +2404,9 @@ + splash_clear_margins(vc->vc_splash_data, vc, info, 0); + } +} -diff -Naur linux-2.6.3-rc3-orig/drivers/video/console/fbcon.c linux-2.6.3-rc3/drivers/video/console/fbcon.c ---- linux-2.6.3-rc3-orig/drivers/video/console/fbcon.c 2004-02-16 13:17:50.000000000 +0100 -+++ linux-2.6.3-rc3/drivers/video/console/fbcon.c 2004-02-16 13:21:34.000000000 +0100 +diff -Naur linux-2.6.3-orig/drivers/video/console/fbcon.c linux-2.6.3/drivers/video/console/fbcon.c +--- linux-2.6.3-orig/drivers/video/console/fbcon.c 2004-02-18 17:21:29.000000000 +0100 ++++ linux-2.6.3/drivers/video/console/fbcon.c 2004-02-18 20:56:18.000000000 +0100 @@ -93,6 +93,9 @@ #endif @@ -2417,9 +2417,11 @@ #ifdef FBCONDEBUG # define DPRINTK(fmt, args...) printk(KERN_DEBUG "%s: " fmt, __FUNCTION__ , ## args) -@@ -199,6 +202,12 @@ - if (!info || (info->cursor.rop == ROP_COPY)) +@@ -198,8 +201,14 @@ + if (!info || info->state != FBINFO_STATE_RUNNING || + info->cursor.rop == ROP_COPY) return; +- acquire_console_sem(); info->cursor.enable ^= 1; +#ifdef CONFIG_BOOTSPLASH + if (info->splash_data) { @@ -2427,10 +2429,11 @@ + return; + } +#endif ++ acquire_console_sem(); info->fbops->fb_cursor(info, &info->cursor); + release_console_sem(); } - -@@ -406,6 +415,14 @@ +@@ -403,6 +412,14 @@ { struct fb_copyarea area; @@ -2445,7 +2448,7 @@ area.sx = sx * vc->vc_font.width; area.sy = sy * vc->vc_font.height; area.dx = dx * vc->vc_font.width; -@@ -422,6 +439,13 @@ +@@ -419,6 +436,13 @@ int bgshift = (vc->vc_hi_font_mask) ? 13 : 12; struct fb_fillrect region; @@ -2459,7 +2462,7 @@ region.color = attr_bgcol_ec(bgshift, vc); region.dx = sx * vc->vc_font.width; region.dy = sy * vc->vc_font.height; -@@ -445,6 +469,12 @@ +@@ -442,6 +466,12 @@ struct fb_image image; u8 *src, *dst; @@ -2472,7 +2475,7 @@ image.dx = xpos * vc->vc_font.width; image.dy = ypos * vc->vc_font.height; image.width = vc->vc_font.width; -@@ -477,6 +507,13 @@ +@@ -472,6 +502,13 @@ struct fb_image image; u16 c = scr_readw(s); @@ -2486,7 +2489,7 @@ image.fg_color = attr_fgcol(fgshift, c); image.bg_color = attr_bgcol(bgshift, c); image.dx = xx * vc->vc_font.width; -@@ -502,6 +539,13 @@ +@@ -497,6 +534,13 @@ unsigned int bs = info->var.yres - bh; struct fb_fillrect region; @@ -2500,7 +2503,7 @@ region.color = attr_bgcol_ec(bgshift, vc); region.rop = ROP_COPY; -@@ -782,6 +826,14 @@ +@@ -777,6 +821,14 @@ nr_cols = info->var.xres / vc->vc_font.width; nr_rows = info->var.yres / vc->vc_font.height; @@ -2515,7 +2518,7 @@ if (logo) { /* Need to make room for the logo */ int cnt; -@@ -857,6 +909,12 @@ +@@ -852,6 +904,12 @@ vc->vc_complement_mask <<= 1; } @@ -2528,7 +2531,7 @@ if (!init) { if (vc->vc_cols != nr_cols || vc->vc_rows != nr_rows) vc_resize(vc->vc_num, nr_cols, nr_rows); -@@ -1023,6 +1081,12 @@ +@@ -1024,6 +1082,12 @@ if (info->cursor.rop == ROP_XOR) { info->cursor.enable = 0; info->cursor.rop = ROP_COPY; @@ -2541,7 +2544,7 @@ info->fbops->fb_cursor(info, &cursor); } break; -@@ -1098,6 +1162,13 @@ +@@ -1099,6 +1163,13 @@ mask[i++] = 0xff; } info->cursor.rop = ROP_XOR; @@ -2555,7 +2558,7 @@ info->fbops->fb_cursor(info, &cursor); vbl_cursor_cnt = CURSOR_DRAW_DELAY; break; -@@ -1401,6 +1472,10 @@ +@@ -1402,6 +1473,10 @@ fbcon_softback_note(vc, t, count); if (logo_shown >= 0) goto redraw_up; @@ -2566,7 +2569,7 @@ switch (p->scrollmode & __SCROLL_YMASK) { case __SCROLL_YMOVE: accel_bmove(vc, info, t + count, 0, t, 0, -@@ -1468,6 +1543,10 @@ +@@ -1469,6 +1544,10 @@ case SM_DOWN: if (count > vc->vc_rows) /* Maximum realistic size */ count = vc->vc_rows; @@ -2577,7 +2580,7 @@ switch (p->scrollmode & __SCROLL_YMASK) { case __SCROLL_YMOVE: accel_bmove(vc, info, t, 0, t + count, 0, -@@ -1593,6 +1672,13 @@ +@@ -1594,6 +1673,13 @@ } return; } @@ -2591,7 +2594,7 @@ accel_bmove(vc, info, real_y(p, sy), sx, real_y(p, dy), dx, height, width); } -@@ -1633,6 +1719,10 @@ +@@ -1634,6 +1720,10 @@ struct fb_info *info = registered_fb[(int) con2fb_map[vc->vc_num]]; struct display *p = &fb_display[vc->vc_num]; @@ -2602,7 +2605,7 @@ if (softback_top) { int l = fbcon_softback_size / vc->vc_size_row; if (softback_lines) -@@ -1707,6 +1797,12 @@ +@@ -1708,6 +1798,12 @@ fbcon_cursor(vc, blank ? CM_ERASE : CM_DRAW); if (!info->fbops->fb_blank) { @@ -2615,7 +2618,7 @@ if (blank) { unsigned short oldc; u_int height; -@@ -1883,19 +1979,26 @@ +@@ -1884,19 +1980,26 @@ } if (resize) { @@ -2646,7 +2649,7 @@ if (CON_IS_VISIBLE(vc) && softback_buf) { int l = fbcon_softback_size / vc->vc_size_row; if (l > 5) -@@ -2295,6 +2398,9 @@ +@@ -2335,6 +2438,9 @@ { if (!num_registered_fb) return -ENODEV; @@ -2654,11 +2657,11 @@ + splash_init(); +#endif take_over_console(&fb_con, first_fb_vc, last_fb_vc, fbcon_is_default); - return 0; - } -diff -Naur linux-2.6.3-rc3-orig/drivers/video/console/fbcon.h linux-2.6.3-rc3/drivers/video/console/fbcon.h ---- linux-2.6.3-rc3-orig/drivers/video/console/fbcon.h 2004-02-16 13:17:50.000000000 +0100 -+++ linux-2.6.3-rc3/drivers/video/console/fbcon.h 2004-02-16 13:21:34.000000000 +0100 + acquire_console_sem(); + if (!fbcon_event_notifier_registered) { +diff -Naur linux-2.6.3-orig/drivers/video/console/fbcon.h linux-2.6.3/drivers/video/console/fbcon.h +--- linux-2.6.3-orig/drivers/video/console/fbcon.h 2004-02-18 17:21:29.000000000 +0100 ++++ linux-2.6.3/drivers/video/console/fbcon.h 2004-02-18 20:54:53.000000000 +0100 @@ -23,6 +23,34 @@ * low-level frame buffer device */ @@ -2694,10 +2697,10 @@ struct display { /* Filled in by the frame buffer device */ u_short inverse; /* != 0 text black on white as default */ -diff -Naur linux-2.6.3-rc3-orig/drivers/video/Kconfig linux-2.6.3-rc3/drivers/video/Kconfig ---- linux-2.6.3-rc3-orig/drivers/video/Kconfig 2004-02-16 13:17:50.000000000 +0100 -+++ linux-2.6.3-rc3/drivers/video/Kconfig 2004-02-16 13:21:34.000000000 +0100 -@@ -913,5 +913,9 @@ +diff -Naur linux-2.6.3-orig/drivers/video/Kconfig linux-2.6.3/drivers/video/Kconfig +--- linux-2.6.3-orig/drivers/video/Kconfig 2004-02-18 17:21:29.000000000 +0100 ++++ linux-2.6.3/drivers/video/Kconfig 2004-02-18 20:54:53.000000000 +0100 +@@ -922,5 +922,9 @@ source "drivers/video/logo/Kconfig" endif @@ -2707,9 +2710,9 @@ + endmenu -diff -Naur linux-2.6.3-rc3-orig/drivers/video/Makefile linux-2.6.3-rc3/drivers/video/Makefile ---- linux-2.6.3-rc3-orig/drivers/video/Makefile 2004-02-16 13:17:50.000000000 +0100 -+++ linux-2.6.3-rc3/drivers/video/Makefile 2004-02-16 13:21:34.000000000 +0100 +diff -Naur linux-2.6.3-orig/drivers/video/Makefile linux-2.6.3/drivers/video/Makefile +--- linux-2.6.3-orig/drivers/video/Makefile 2004-02-18 17:21:29.000000000 +0100 ++++ linux-2.6.3/drivers/video/Makefile 2004-02-18 20:54:53.000000000 +0100 @@ -6,6 +6,7 @@ obj-$(CONFIG_VT) += console/ @@ -2718,9 +2721,9 @@ obj-$(CONFIG_FB) += fbmem.o fbmon.o fbcmap.o fbsysfs.o modedb.o softcursor.o # Only include macmodes.o if we have FB support and are PPC -diff -Naur linux-2.6.3-rc3-orig/drivers/video/vesafb.c linux-2.6.3-rc3/drivers/video/vesafb.c ---- linux-2.6.3-rc3-orig/drivers/video/vesafb.c 2004-02-16 13:17:50.000000000 +0100 -+++ linux-2.6.3-rc3/drivers/video/vesafb.c 2004-02-16 13:21:34.000000000 +0100 +diff -Naur linux-2.6.3-orig/drivers/video/vesafb.c linux-2.6.3/drivers/video/vesafb.c +--- linux-2.6.3-orig/drivers/video/vesafb.c 2004-02-18 17:21:29.000000000 +0100 ++++ linux-2.6.3/drivers/video/vesafb.c 2004-02-18 20:54:53.000000000 +0100 @@ -174,7 +174,10 @@ return 0; } @@ -2733,9 +2736,9 @@ .owner = THIS_MODULE, .fb_setcolreg = vesafb_setcolreg, .fb_pan_display = vesafb_pan_display, -diff -Naur linux-2.6.3-rc3-orig/include/linux/console_struct.h linux-2.6.3-rc3/include/linux/console_struct.h ---- linux-2.6.3-rc3-orig/include/linux/console_struct.h 2004-02-16 13:17:50.000000000 +0100 -+++ linux-2.6.3-rc3/include/linux/console_struct.h 2004-02-16 13:21:34.000000000 +0100 +diff -Naur linux-2.6.3-orig/include/linux/console_struct.h linux-2.6.3/include/linux/console_struct.h +--- linux-2.6.3-orig/include/linux/console_struct.h 2004-02-18 17:21:29.000000000 +0100 ++++ linux-2.6.3/include/linux/console_struct.h 2004-02-18 20:54:53.000000000 +0100 @@ -87,6 +87,9 @@ struct vc_data **vc_display_fg; /* [!] Ptr to var holding fg console for this display */ unsigned long vc_uni_pagedir; @@ -2746,26 +2749,28 @@ /* additional information is in vt_kern.h */ }; ---- a/include/linux/fb.h 2004-02-17 17:27:07.092153536 +0000 -+++ b/include/linux/fb.h.new 2004-02-17 17:30:05.198077320 +0000 -@@ -465,6 +465,14 @@ struct fb_info { - struct vc_data *display_fg; /* Console visible on this display */ - int currcon; /* Current VC. */ - void *pseudo_palette; /* Fake palette of 16 colors */ +diff -Naur linux-2.6.3-orig/include/linux/fb.h linux-2.6.3/include/linux/fb.h +--- linux-2.6.3-orig/include/linux/fb.h 2004-02-18 17:21:29.000000000 +0100 ++++ linux-2.6.3/include/linux/fb.h 2004-02-18 20:55:40.000000000 +0100 +@@ -470,6 +470,15 @@ + u32 state; /* Hardware state i.e suspend */ + /* From here on everything is device dependent */ + void *par; +#ifdef CONFIG_BOOTSPLASH + struct splash_data *splash_data; + unsigned char *splash_pic; + int splash_pic_size; + int splash_bytes; -+ char *silent_screen_base; /* real screen base */ ++ char *silent_screen_base; /* real screen base */ + char fb_cursordata[64]; +#endif - #define FBINFO_STATE_RUNNING 0 - #define FBINFO_STATE_SUSPENDED 1 - u32 state; /* Hardware state i.e suspend */ -diff -Naur linux-2.6.3-rc3-orig/kernel/panic.c linux-2.6.3-rc3/kernel/panic.c ---- linux-2.6.3-rc3-orig/kernel/panic.c 2004-02-16 13:17:50.000000000 +0100 -+++ linux-2.6.3-rc3/kernel/panic.c 2004-02-16 13:21:34.000000000 +0100 ++ + }; + + #ifdef MODULE +diff -Naur linux-2.6.3-orig/kernel/panic.c linux-2.6.3/kernel/panic.c +--- linux-2.6.3-orig/kernel/panic.c 2004-02-18 17:21:29.000000000 +0100 ++++ linux-2.6.3/kernel/panic.c 2004-02-18 20:54:53.000000000 +0100 @@ -83,6 +83,12 @@ * We can't use the "normal" timers since we just panicked.. */