2002-12-09 23:22:41

by James Simmons

[permalink] [raw]
Subject: [BK fbdev] Yet again more fbdev updates.


Hi Linus!!!

Here are the fbdev updates people have so been waiting for. Several
drivers have been ported. Many fixes have been implemented and many nice
features have been added as well. Please pull the changes. They have been
tested by people on this list. Thank you.

bk://fbdev.bkbits.net/fbdev-2.5

MS: (n) 1. A debilitating and surprisingly widespread affliction that
renders the sufferer barely able to perform the simplest task. 2. A disease.

James Simmons [[email protected]] ____/|
fbdev/console/gfx developer \ o.O|
http://www.linux-fbdev.org =(_)=
http://linuxgfx.sourceforge.net U
http://linuxconsole.sourceforge.net


2002-12-09 23:30:08

by Christoph Hellwig

[permalink] [raw]
Subject: Re: [BK fbdev] Yet again more fbdev updates.

On Mon, Dec 09, 2002 at 04:23:08PM -0800, James Simmons wrote:
>
> Hi Linus!!!
>
> Here are the fbdev updates people have so been waiting for. Several
> drivers have been ported. Many fixes have been implemented and many nice
> features have been added as well. Please pull the changes. They have been
> tested by people on this list. Thank you.
>
> bk://fbdev.bkbits.net/fbdev-2.5

Linus,

any chance you could pull James' updates? He has been sending fbdev updates
that fix known issues with many drivers for a long time but I can't even
remember when you merged it the last time. Most fbdev drivers are pretty
unusable in mainline without his fixes.

James,

could you please provide diffstat output, bk changes -L output and a
unified diff for review of the actual changes?

2002-12-10 00:04:11

by James Simmons

[permalink] [raw]
Subject: Re: [BK fbdev] Yet again more fbdev updates.


> Linus,
>
> any chance you could pull James' updates? He has been sending fbdev updates
> that fix known issues with many drivers for a long time but I can't even
> remember when you merged it the last time. Most fbdev drivers are pretty
> unusable in mainline without his fixes.
>
> James,
>
> could you please provide diffstat output, bk changes -L output and a
> unified diff for review of the actual changes?

Diff against latest BK 2.5.50 tree is at

http://phoenix.infradead.org/~jsimmons/fbdev.diff.gz

bk changes output is:

[email protected], 2002-12-09 16:03:32-08:00, [email protected]
Merge maxwell.earthlink.net:/usr/src/linus-2.5
into maxwell.earthlink.net:/usr/src/fbdev-2.5

[email protected], 2002-12-09 15:47:42-08:00, [email protected]
New NVIDIA and Radeon cards pci ids. Soon I will add support for these :-) Also a needed fix for fbcon.c.

[email protected], 2002-12-09 08:37:31-08:00, [email protected]
Merge maxwell.earthlink.net:/usr/src/linus-2.5
into maxwell.earthlink.net:/usr/src/fbdev-2.5

[email protected], 2002-12-07 19:24:53-08:00, [email protected]
Merge maxwell.earthlink.net:/usr/src/linus-2.5
into maxwell.earthlink.net:/usr/src/fbdev-2.5

[email protected], 2002-12-07 10:23:33-08:00, [email protected]
Merge maxwell.earthlink.net:/usr/src/linus-2.5
into maxwell.earthlink.net:/usr/src/fbdev-2.5

[email protected], 2002-12-06 16:17:04-08:00, jsimmons@kozmo.(none)
Fits the other accel protocols. Fix for blanking.

[email protected], 2002-12-06 12:36:53-08:00, jsimmons@kozmo.(none)
VGA text mode handling cleanup. Rusty's janitoral cleanups.

[email protected], 2002-12-06 10:18:16-08:00, jsimmons@kozmo.(none)
Merge kozmo.(none):/usr/src/linus-2.5
into kozmo.(none):/usr/src/fbdev-2.5

[email protected], 2002-12-06 07:32:36-08:00, [email protected]
Merge maxwell.earthlink.net:/usr/src/linus-2.5
into maxwell.earthlink.net:/usr/src/fbdev-2.5

[email protected], 2002-12-04 20:37:21-08:00, [email protected]
POrted iga fbdev driver to new api. Untested.

[email protected], 2002-12-04 18:09:35-08:00, [email protected]
Synced to Linus BK tree.

[email protected], 2002-12-04 17:43:55-08:00, [email protected]
Merge

[email protected], 2002-12-04 17:10:40-08:00, [email protected]
Supprt for switching hardware from/to vga text mode.

[email protected], 2002-12-02 11:48:57-08:00, jsimmons@kozmo.(none)
Ported riva and vga16fb over to new api. Thanks Antonia Daplas!!! More optimizations in fbcon.c

[email protected], 2002-12-02 09:49:02-08:00, jsimmons@kozmo.(none)
Merge kozmo.(none):/usr/src/linus-2.5
into kozmo.(none):/usr/src/fbdev-2.5

[email protected], 2002-12-02 07:38:54-08:00, jsimmons@kozmo.(none)
Made fbcon modular.

[email protected], 2002-11-29 09:38:38-08:00, jsimmons@kozmo.(none)
Made it modular.

[email protected], 2002-11-27 16:08:48-08:00, jsimmons@kozmo.(none)
Merge

[email protected], 2002-11-27 14:40:32-08:00, jsimmons@kozmo.(none)
Accel wrapper is now intergarted into fbcon.c. VESA fb fixes

[email protected], 2002-11-27 07:50:13-08:00, [email protected]
Diver updates.

[email protected], 2002-11-26 16:04:19-08:00, jsimmons@kozmo.(none)
C99 fixes. Framebuffer console fix.

[email protected], 2002-11-26 09:59:16-08:00, jsimmons@kozmo.(none)
Moved over fbcon to use the accel api only. This will shrink the code considerably.

[email protected], 2002-11-23 12:45:55-08:00, [email protected]
Use the new name of the software cursor function.

[email protected], 2002-11-23 12:36:29-08:00, [email protected]
Use remote for now to make sync of trees work.

[email protected], 2002-11-23 11:50:08-08:00, [email protected]
Ported Mach64 and NVIDIA driver to final api. A bunch of improvements and bug fixes.

[email protected], 2002-11-23 09:50:57-08:00, [email protected]
Merge maxwell.earthlink.net:/usr/src/linus-2.5
into maxwell.earthlink.net:/usr/src/fbdev-2.5

[email protected], 2002-11-22 14:40:17-08:00, jsimmons@kozmo.(none)
Merge kozmo.(none):/usr/src/linus-2.5
into kozmo.(none):/usr/src/fbdev-2.5

[email protected], 2002-11-22 13:47:35-08:00, jsimmons@kozmo.(none)
The software cursor works for any pixel arrangement

[email protected], 2002-11-22 10:02:30-08:00, jsimmons@kozmo.(none)
Merge kozmo.(none):/usr/src/linus-2.5
into kozmo.(none):/usr/src/fbdev-2.5

[email protected], 2002-11-21 07:58:29-08:00, [email protected]
Merge bk://fbdev.bkbits.net/fbdev-2.5
into maxwell.earthlink.net:/usr/src/fbdev-2.5

[email protected], 2002-11-20 15:50:09-08:00, jsimmons@kozmo.(none)
Merge kozmo.(none):/usr/src/linus-2.5
into kozmo.(none):/usr/src/fbdev-2.5

[email protected], 2002-11-19 12:53:44-08:00, jsimmons@kozmo.(none)
Nuked font related info in struct display. Almost gone now.

[email protected], 2002-11-19 11:36:22-08:00, jsimmons@kozmo.(none)
Creation of default mode. We create and set the hardware once then clone the data each VC. This is much sanier.

[email protected], 2002-11-19 09:49:40-08:00, jsimmons@kozmo.(none)
Merge kozmo.(none):/usr/src/linus-2.5
into kozmo.(none):/usr/src/fbdev-2.5

[email protected], 2002-11-19 07:30:34-08:00, [email protected]
Merge bk://fbdev.bkbits.net/fbdev-2.5
into maxwell.earthlink.net:/usr/src/fbdev-2.5

[email protected], 2002-11-18 10:27:55-08:00, jsimmons@kozmo.(none)
Merge kozmo.(none):/usr/src/linus-2.5
into kozmo.(none):/usr/src/fbdev-2.5

[email protected], 2002-11-18 09:31:34-08:00, jsimmons@kozmo.(none)
Start of intergartion of fbcon-accel into the core fbcon code.

[email protected], 2002-11-16 17:36:03-08:00, [email protected]
Merge

[email protected], 2002-11-16 17:21:19-08:00, [email protected]
Merge maxwell.earthlink.net:/usr/src/linus-2.5
into maxwell.earthlink.net:/usr/src/fbdev-2.5

[email protected], 2002-11-15 17:37:46-08:00, jsimmons@kozmo.(none)
Massive cleanup of struct display. It will be going away.

[email protected], 2002-11-15 14:01:40-08:00, jsimmons@kozmo.(none)
Moving over to console_font_op to get ride of struct display.

[email protected], 2002-11-15 09:48:21-08:00, jsimmons@kozmo.(none)
Cleaned up the cursor api. Now it uses fb_imaeg which makes sense since a cursor is a image.More code cleanup for fbcon.c. Removal of excess elements passed into functions.

[email protected], 2002-11-15 09:36:23-08:00, jsimmons@kozmo.(none)
Merge kozmo.(none):/usr/src/linus-2.5
into kozmo.(none):/usr/src/fbdev-2.5

[email protected], 2002-11-14 16:55:10-08:00, jsimmons@kozmo.(none)
Start of hardware rotation. PDA devices have often rotated screens with respect to the keyboard.'

[email protected], 2002-11-14 14:08:32-08:00, jsimmons@kozmo.(none)
Major fixes for the software accel functions. We have the penguin back.

[email protected], 2002-11-14 11:16:22-08:00, jsimmons@kozmo.(none)
fbgen is gone and now we have cfbcursor.c

[email protected], 2002-11-13 16:13:32-08:00, jsimmons@kozmo.(none)
Grabbed the PPC drivers and in the process of porting to the latest api. Can now use driver specific read and write functions

[email protected], 2002-11-12 08:04:25-08:00, [email protected]
Simplification of the code.

[email protected], 2002-11-11 11:37:22-08:00, jsimmons@kozmo.(none)
Merge bk://[email protected]/fbdev-2.5
into kozmo.(none):/usr/src/fbdev-2.5

[email protected], 2002-11-10 13:03:09-08:00, [email protected]
Fixed the anakin and noemagic framebuffer driver. Made font selection depeneded on framebuffer consoel instead of just framebuffer support. Fixed return to be int for tx3912 framebuffer.

[email protected], 2002-11-09 13:10:43-08:00, [email protected]
Auto merged except for parisc Kconfig. I have to sync by hand.

[email protected], 2002-11-08 00:03:44-08:00, [email protected]
Several fixes relating to modules. Ported over the vga16fb driver to the new api.

[email protected], 2002-11-07 13:47:46-08:00, [email protected]
Moved stuff into drivers/video/console.

[email protected], 2002-11-07 13:33:20-08:00, [email protected]
Merge

[email protected], 2002-11-07 09:07:28-08:00, [email protected]
Bug fixes!!

[email protected], 2002-11-02 18:04:34-08:00, [email protected]
Merge maxwell.earthlink.net:/usr/src/linus-2.5
into maxwell.earthlink.net:/usr/src/fbdev-2.5

[email protected], 2002-11-01 17:07:16-08:00, [email protected]
Neomagic and HGA updates. MAde the software accel code modular. So code cleanup in fbcon. More to go.

[email protected], 2002-11-01 15:37:07-08:00, [email protected]
Merge maxwell.earthlink.net:/usr/src/linus-2.5
into maxwell.earthlink.net:/usr/src/fbdev-2.5

[email protected], 2002-10-31 12:06:21-08:00, [email protected]
Moved all console configuration out of arch directories into drivers/video/console. Allow resize of a single VC via the tty layer. Nuked GET_FB_IDX.

[email protected], 2002-10-30 20:57:19-08:00, [email protected]
Ug. Synced up.

[email protected], 2002-10-30 09:57:16-08:00, [email protected]
Merge maxwell.earthlink.net:/usr/src/linus-2.5
into maxwell.earthlink.net:/usr/src/fbdev-2.5

[email protected], 2002-10-29 20:29:15-08:00, [email protected]
Merge maxwell.earthlink.net:/usr/src/linus-2.5
into maxwell.earthlink.net:/usr/src/fbdev-2.5

[email protected], 2002-10-29 14:42:41-08:00, [email protected]
Moved AGP and DRM code back to drivers/char until a proper solution is done for handling AGP/DMA based framebuffer devices.

[email protected], 2002-10-29 12:06:00-08:00, [email protected]
Updates to STI framebuffer and STI console. Cleanup of include/video and a few minor fixes.

[email protected], 2002-10-29 11:18:47-08:00, [email protected]
Merge maxwell.earthlink.net:/usr/src/linus-2.5
into maxwell.earthlink.net:/usr/src/fbdev-2.5

[email protected], 2002-10-28 16:08:25-08:00, [email protected]
Merge maxwell.earthlink.net:/usr/src/linus-2.5
into maxwell.earthlink.net:/usr/src/fbdev-2.5

[email protected], 2002-10-24 10:59:49-07:00, [email protected]
Moved over fbcon related files to the video/console directory. I also updated a few more drivers to the new api.

[email protected], 2002-10-21 10:28:49-07:00, [email protected]
Cleaned up the console blank handling.

[email protected], 2002-10-21 10:15:32-07:00, [email protected]
Merge maxwell.earthlink.net:/usr/src/linus-2.5
into maxwell.earthlink.net:/usr/src/fbdev-2.5

[email protected], 2002-10-18 13:48:05-07:00, [email protected]
Added a cursor api.

[email protected], 2002-10-18 11:48:32-07:00, [email protected]
Merge maxwell.earthlink.net:/usr/src/linus-2.5
into maxwell.earthlink.net:/usr/src/fbdev-2.5

[email protected], 2002-10-16 21:27:33-07:00, [email protected]
Synced up to Linus tree. Fixed the conflict.

[email protected], 2002-10-16 21:12:20-07:00, [email protected]
Synced up.

[email protected], 2002-10-16 21:06:36-07:00, [email protected]
The last of the console code inside the frmaebuffer layer. I also moved all the graphics related code into the drivers/video directory.

[email protected], 2002-10-16 11:18:08-07:00, [email protected]
Merge maxwell.earthlink.net:/usr/src/linus-2.5
into maxwell.earthlink.net:/usr/src/fbdev-2.5

[email protected], 2002-10-16 11:08:50-07:00, [email protected]
Oops. Forgot to include sis_accel.o

[email protected], 2002-10-16 10:46:14-07:00, [email protected]
Cleaned up and moved all the graphics related code inf drivers/video and move the console display related stuff into lower directory called console.

[email protected], 2002-10-14 09:38:39-07:00, [email protected]
Replace with Russell's driver.

[email protected], 2002-10-14 09:34:28-07:00, [email protected]
Uses Russell's latest driver.

[email protected], 2002-10-12 12:53:47-07:00, [email protected]
Removed last console and old api related things. Removed experimental flags.

[email protected], 2002-10-12 11:16:44-07:00, [email protected]
Merge maxwell.earthlink.net:/usr/src/linus-2.5
into maxwell.earthlink.net:/usr/src/fbdev-2.5

[email protected], 2002-10-11 11:49:40-07:00, [email protected]
Merge maxwell.earthlink.net:/usr/src/linus-2.5
into maxwell.earthlink.net:/usr/src/fbdev-2.5

[email protected], 2002-10-09 13:54:17-07:00, [email protected]
Merge maxwell.earthlink.net:/usr/src/linus-2.5
into maxwell.earthlink.net:/usr/src/fbdev-2.5

[email protected], 2002-10-09 08:34:30-07:00, [email protected]
Removed currcon and other console related code. Very little is now left.

[email protected], 2002-10-08 11:22:38-07:00, [email protected]
Merge maxwell.earthlink.net:/usr/src/linus-2.5
into maxwell.earthlink.net:/usr/src/fbdev-2.5

[email protected], 2002-09-12 15:27:08-07:00, [email protected]
Cleanup to match closely Linus tree.

[email protected], 2002-09-12 15:16:51-07:00, [email protected]
Auto merged

[email protected], 2002-09-12 12:06:08-07:00, [email protected]
Remove old fbcon-cfb files.

[email protected], 2002-08-28 22:56:02-07:00, [email protected]
Merge maxwell.earthlink.net:/usr/src/linus-2.5
into maxwell.earthlink.net:/usr/src/fbdev-2.5

[email protected], 2002-08-27 22:05:49-07:00, [email protected]
Merge http://fbdev.bkbits.net/fbdev-2.5
into maxwell.earthlink.net:/usr/src/fbdev-2.5

[email protected], 2002-08-27 12:29:03-07:00, [email protected]
Added support for logo displaying for new api. Now new code supports 24 bpp.

[email protected], 2002-08-27 12:14:59-07:00, [email protected]
More fbdev api cleanups. Removed modename from struct fb_info. Incorporated Paul's fixes. The cfb stuff is finally going away.

[email protected], 2002-08-20 22:15:23-07:00, [email protected]
Further api porting. Almost done. Here we eliminate get[set]_cmap from struct fb_ops. Also set_disp has ben moved into fbcon.c instead of the drivers.

[email protected], 2002-08-19 08:30:12-07:00, [email protected]
Merge maxwell.earthlink.net:/usr/src/linus-2.5
into maxwell.earthlink.net:/usr/src/fbdev-2.5

[email protected], 2002-08-15 21:23:55-07:00, [email protected]
Ooops. Fix from Paul Mackerras

[email protected], 2002-08-15 21:05:45-07:00, [email protected]
Synced up.

[email protected], 2002-08-14 21:27:21-07:00, [email protected]
Petr fix to make old api driver to work.

Diffstat output is:

CREDITS | 10
Documentation/DocBook/kernel-api.tmpl | 4
Documentation/fb/README-sstfb.txt | 173
Documentation/fb/internals.txt | 5
Documentation/fb/sstfb.txt | 174
MAINTAINERS | 7
arch/alpha/Kconfig | 31
arch/arm/Kconfig | 21
arch/i386/Kconfig | 55
arch/i386/vmlinux.lds.s | 114
arch/ia64/Kconfig | 25
arch/m68k/Kconfig | 7
arch/m68knommu/Kconfig | 35
arch/mips/Kconfig | 62
arch/mips64/Kconfig | 23
arch/parisc/Kconfig | 30
arch/ppc/Kconfig | 22
arch/ppc64/Kconfig | 7
arch/sh/Kconfig | 55
arch/sparc/Kconfig | 16
arch/sparc64/Kconfig | 11
arch/v850/Kconfig | 35
arch/x86_64/Kconfig | 55
drivers/Makefile | 3
drivers/char/Makefile | 2
drivers/char/consolemap.c | 5
drivers/char/keyboard.c | 1
drivers/char/mem.c | 12
drivers/char/selection.c | 1
drivers/char/toshiba.c | 2
drivers/char/tty_io.c | 7
drivers/char/vc_screen.c | 1
drivers/char/vt.c | 200 -
drivers/char/vt_ioctl.c | 58
drivers/video/68328fb.c | 967 +----
drivers/video/Kconfig | 411 --
drivers/video/Makefile | 58
drivers/video/S3triofb.c | 2
drivers/video/amifb.c | 2
drivers/video/anakinfb.c | 62
drivers/video/atafb.c | 2
drivers/video/aty/atyfb.h | 18
drivers/video/aty/atyfb_base.c | 99
drivers/video/aty/mach64_ct.c | 2
drivers/video/aty/mach64_cursor.c | 157
drivers/video/aty/mach64_gx.c | 2
drivers/video/aty128fb.c | 3257 +++++++----------
drivers/video/cfbcopyarea.c | 511 +-
drivers/video/cfbfillrect.c | 536 ++
drivers/video/cfbimgblt.c | 360 +
drivers/video/chipsfb.c | 2
drivers/video/clps711xfb.c | 16
drivers/video/console/Kconfig | 221 +
drivers/video/console/Makefile | 61
drivers/video/console/dummycon.c | 73
drivers/video/console/fbcon-sti.c | 289 +
drivers/video/console/fbcon.c | 2846 +++++++++++++++
drivers/video/console/fbcon.h | 142
drivers/video/console/font.h | 53
drivers/video/console/font_6x11.c | 3351 +++++++++++++++++
drivers/video/console/font_8x16.c | 4631 ++++++++++++++++++++++++
drivers/video/console/font_8x8.c | 2583 +++++++++++++
drivers/video/console/font_acorn_8x8.c | 277 +
drivers/video/console/font_mini_4x6.c | 2158 +++++++++++
drivers/video/console/font_pearl_8x8.c | 2587 +++++++++++++
drivers/video/console/font_sun12x22.c | 6220 +++++++++++++++++++++++++++++++++
drivers/video/console/font_sun8x16.c | 275 +
drivers/video/console/fonts.c | 142
drivers/video/console/mdacon.c | 631 +++
drivers/video/console/newport_con.c | 745 +++
drivers/video/console/prom.uni | 11
drivers/video/console/promcon.c | 605 +++
drivers/video/console/sti.h | 289 +
drivers/video/console/sticon.c | 214 +
drivers/video/console/sticore.c | 601 +++
drivers/video/console/vgacon.c | 1066 +++++
drivers/video/controlfb.c | 499 --
drivers/video/cyberfb.c | 2
drivers/video/dnfb.c | 18
drivers/video/dummycon.c | 74
drivers/video/epson1355fb.c | 2
drivers/video/fbcmap.c | 92
drivers/video/fbcon-accel.c | 188
drivers/video/fbcon-accel.h | 34
drivers/video/fbcon-afb.c | 448 --
drivers/video/fbcon-cfb16.c | 319 -
drivers/video/fbcon-cfb2.c | 225 -
drivers/video/fbcon-cfb24.c | 333 -
drivers/video/fbcon-cfb32.c | 305 -
drivers/video/fbcon-cfb4.c | 229 -
drivers/video/fbcon-cfb8.c | 294 -
drivers/video/fbcon-hga.c | 253 -
drivers/video/fbcon-ilbm.c | 296 -
drivers/video/fbcon-iplan2p2.c | 476 --
drivers/video/fbcon-iplan2p4.c | 497 --
drivers/video/fbcon-iplan2p8.c | 534 --
drivers/video/fbcon-mfb.c | 217 -
drivers/video/fbcon-sti.c | 337 -
drivers/video/fbcon-vga-planes.c | 387 --
drivers/video/fbcon.c | 2508 -------------
drivers/video/fbgen.c | 286 -
drivers/video/fbmem.c | 252 -
drivers/video/fm2fb.c | 17
drivers/video/font_6x11.c | 3351 -----------------
drivers/video/font_8x16.c | 4631 ------------------------
drivers/video/font_8x8.c | 2583 -------------
drivers/video/font_acorn_8x8.c | 277 -
drivers/video/font_mini_4x6.c | 2158 -----------
drivers/video/font_pearl_8x8.c | 2587 -------------
drivers/video/font_sun12x22.c | 6220 ---------------------------------
drivers/video/font_sun8x16.c | 275 -
drivers/video/fonts.c | 135
drivers/video/g364fb.c | 74
drivers/video/hgafb.c | 424 --
drivers/video/hitfb.c | 17
drivers/video/hpfb.c | 16
drivers/video/iga.h | 29
drivers/video/igafb.c | 581 +--
drivers/video/imsttfb.c | 41
drivers/video/macfb.c | 22
drivers/video/macmodes.c | 3
drivers/video/macmodes.h | 70
drivers/video/matrox/i2c-matroxfb.c | 2
drivers/video/matrox/matroxfb_base.c | 4
drivers/video/matrox/matroxfb_crtc2.c | 4
drivers/video/maxinefb.c | 48
drivers/video/mdacon.c | 632 ---
drivers/video/modedb.c | 7
drivers/video/neofb.c | 389 +-
drivers/video/newport_con.c | 746 ---
drivers/video/offb.c | 23
drivers/video/platinumfb.c | 451 --
drivers/video/pm2fb.c | 7
drivers/video/pm3fb.c | 7
drivers/video/pmag-ba-fb.c | 59
drivers/video/pmagb-b-fb.c | 53
drivers/video/prom.uni | 11
drivers/video/promcon.c | 606 ---
drivers/video/pvr2fb.c | 4
drivers/video/q40fb.c | 16
drivers/video/radeon.h | 766 ----
drivers/video/radeonfb.c | 3734 +++++++++++--------
drivers/video/retz3fb.c | 2
drivers/video/riva/Makefile | 2
drivers/video/riva/accel.c | 427 --
drivers/video/riva/fbdev.c | 2251 +++++------
drivers/video/riva/fbdev.c.new | 2036 ++++++++++
drivers/video/riva/nv_driver.c | 212 +
drivers/video/riva/nv_type.h | 58
drivers/video/riva/riva_hw.c.new | 2205 +++++++++++
drivers/video/riva/riva_hw.h | 1
drivers/video/riva/riva_hw.h.new | 547 ++
drivers/video/riva/riva_tbl.h.new | 1008 +++++
drivers/video/riva/rivafb.h | 52
drivers/video/riva/rivafb.h.new | 54
drivers/video/sa1100fb.c | 2
drivers/video/sbusfb.c | 2
drivers/video/sgivwfb.c | 62
drivers/video/sis/Makefile | 2
drivers/video/sis/sis_accel.c | 495 ++
drivers/video/sis/sis_main.c | 2
drivers/video/skeletonfb.c | 28
drivers/video/softcursor.c | 62
drivers/video/sstfb.c | 2
drivers/video/sti-bmode.h | 287 -
drivers/video/sti.h | 289 -
drivers/video/sticon-bmode.c | 895 ----
drivers/video/sticon.c | 215 -
drivers/video/sticore.c | 601 ---
drivers/video/sticore.h | 407 ++
drivers/video/stifb.c | 1403 ++++++-
drivers/video/sun3fb.c | 2
drivers/video/tdfxfb.c | 531 +-
drivers/video/tgafb.c | 7
drivers/video/tridentfb.c | 2
drivers/video/tx3912fb.c | 19
drivers/video/valkyriefb.c | 27
drivers/video/vesafb.c | 24
drivers/video/vfb.c | 36
drivers/video/vga.h | 457 --
drivers/video/vga16fb.c | 1403 +++++--
drivers/video/vgacon.c | 1055 -----
drivers/video/vgastate.c | 503 ++
drivers/video/virgefb.c | 2
include/linux/console.h | 1
include/linux/console_struct.h | 1
include/linux/fb.h | 207 -
include/linux/pci_ids.h | 18
include/linux/radeonfb.h | 15
include/linux/sisfb.h | 58
include/linux/vt_kern.h | 8
include/video/fbcon-afb.h | 32
include/video/fbcon-cfb16.h | 34
include/video/fbcon-cfb2.h | 32
include/video/fbcon-cfb24.h | 34
include/video/fbcon-cfb32.h | 34
include/video/fbcon-cfb4.h | 32
include/video/fbcon-cfb8.h | 34
include/video/fbcon-hga.h | 32
include/video/fbcon-ilbm.h | 32
include/video/fbcon-iplan2p2.h | 32
include/video/fbcon-iplan2p4.h | 32
include/video/fbcon-iplan2p8.h | 32
include/video/fbcon-mac.h | 32
include/video/fbcon-mfb.h | 32
include/video/fbcon-vga-planes.h | 37
include/video/fbcon-vga.h | 32
include/video/fbcon.h | 795 ----
include/video/font.h | 53
include/video/iga.h | 24
include/video/macmodes.h | 70
include/video/neomagic.h | 1
include/video/radeon.h | 766 ++++
include/video/vga.h | 480 ++
kernel/printk.c | 1
215 files changed, 49572 insertions(+), 49117 deletions(-)




2002-12-10 09:04:25

by Sven Luther

[permalink] [raw]
Subject: Re: [Linux-fbdev-devel] Re: [BK fbdev] Yet again more fbdev updates.

On Mon, Dec 09, 2002 at 05:04:27PM -0800, James Simmons wrote:
>
> > Linus,
> >
> > any chance you could pull James' updates? He has been sending fbdev updates
> > that fix known issues with many drivers for a long time but I can't even
> > remember when you merged it the last time. Most fbdev drivers are pretty
> > unusable in mainline without his fixes.
> >
> > James,
> >
> > could you please provide diffstat output, bk changes -L output and a
> > unified diff for review of the actual changes?
>
> Diff against latest BK 2.5.50 tree is at
>
> http://phoenix.infradead.org/~jsimmons/fbdev.diff.gz

Err, could you send also a diff against the 2.5.50 on kernel.org ?

Friendly,

Sven Luther

2002-12-13 21:41:37

by Linus Torvalds

[permalink] [raw]
Subject: Re: [BK fbdev] Yet again more fbdev updates.


James,
the fbcon update seems to have broken the plain VGA console. I get a page
fault at vgacon_scroll+0x144, the call sequence seems to be:

vt_console_print+0x203
set_cursor+0x78
vgacon_cursor+x0xb5
scrup+0x122
vgacon_scroll+0x144

I don't know what triggers it, since it seems to happen pretty randomly.

Linus

2002-12-13 23:33:43

by James Simmons

[permalink] [raw]
Subject: Re: [BK fbdev] Yet again more fbdev updates.


> James,
> the fbcon update seems to have broken the plain VGA console. I get a page
> fault at vgacon_scroll+0x144, the call sequence seems to be:
>
> vt_console_print+0x203
> set_cursor+0x78
> vgacon_cursor+x0xb5
> scrup+0x122
> vgacon_scroll+0x144
>
> I don't know what triggers it, since it seems to happen pretty randomly.

Strange. I avoided touching that driver as much as possible. The other
strange error I have seen is vesa mode 791 for some reason stopped woking
on some boards. I just did a diff between 2.5.49 vgacon.c and the current
vgacon.c. The result is

--- /usr/src/linux-2.5.49/drivers/video/vgacon.c Fri Sep 13 14:17:14 2002
+++ vgacon.c Fri Dec 13 15:22:02 2002
@@ -41,7 +41,6 @@
#include <linux/kernel.h>
#include <linux/tty.h>
#include <linux/console.h>
-#include <linux/console_struct.h>
#include <linux/string.h>
#include <linux/kd.h>
#include <linux/slab.h>
@@ -180,6 +179,13 @@
#endif
}

+ /* VGA16 modes are not handled by VGACON */
+ if ((ORIG_VIDEO_MODE == 0x0D) || /* 320x200/4 */
+ (ORIG_VIDEO_MODE == 0x0E) || /* 640x200/4 */
+ (ORIG_VIDEO_MODE == 0x10) || /* 640x350/4 */
+ (ORIG_VIDEO_MODE == 0x12) || /* 640x480/4 */
+ (ORIG_VIDEO_MODE == 0x6A)) /* 800x600/4, 0x6A is very common */
+ goto no_vga;

vga_video_num_lines = ORIG_VIDEO_LINES;
vga_video_num_columns = ORIG_VIDEO_COLS;
@@ -838,8 +844,8 @@
static int
vgacon_adjust_height(unsigned fontheight)
{
- int rows, maxscan;
unsigned char ovr, vde, fsr;
+ int rows, maxscan, i;

if (fontheight == vga_video_font_height)
return 0;
@@ -881,7 +887,12 @@
outb_p( vde, vga_video_port_val );
spin_unlock_irq(&vga_lock);

- vc_resize_all(rows, 0); /* Adjust console size */
+ for (i = 0; i < MAX_NR_CONSOLES; i++) {
+ struct vc_data *c = vc_cons[i].d;
+
+ if (c && c->vc_sw == &vga_con)
+ vc_resize(c->vc_num, 0, rows); /* Adjust console size */
+ }
return 0;
}

Now the first chuck of code was from a vga16fb patch. Originally you
could set a vga graphical mode that was standard but not apart of the VESA
number range (100+) and vgacon would still start. This prevented it.
To the people having trouble setting VESA fb mode 791 remove this code and
tell me if your problem goes away.
The second possible source is in vga_adjust_height. This is called when
you change your font set from userland. I attempted to change my font and
didn't have a problem.
The err you are talking about that is having issues in vgacon_scroll is

c->vc_origin = vga_vram_end - c->vc_screenbuf_size;

Which is when dir equals SM_DOWN and the old origin minus the amount we
scroll is less than A000 (vga_vram_base). Its just strange. I'm going to
stress test vgacon to see what is going on.



2002-12-13 23:53:54

by James Simmons

[permalink] [raw]
Subject: Re: [BK fbdev] Yet again more fbdev updates.


> James,
> the fbcon update seems to have broken the plain VGA console. I get a page
> fault at vgacon_scroll+0x144, the call sequence seems to be:
>
> vt_console_print+0x203
> set_cursor+0x78
> vgacon_cursor+x0xb5

> scrup+0x122

Calling scrup is out of place. It is only called by lf() and csi_M() in
the vt.c. lf() is used in vt_console_print but it is called before
set_cursor(). Also vgacon_cursor doesn't call vgacon_scroll. It can call
vgacon_scrolldelta. Now scrup does call vgacon_scroll. It looks like The
code jumped from the middle of vt_console_print to scrup. Do you get the
same error all the time? Also do you have Preemptible Kernel turned on?

> vgacon_scroll+0x144
>
> I don't know what triggers it, since it seems to happen pretty randomly.
>
> Linus
>
>

2002-12-14 00:05:42

by Linus Torvalds

[permalink] [raw]
Subject: Re: [BK fbdev] Yet again more fbdev updates.



On Sat, 14 Dec 2002, James Simmons wrote:
>
> Calling scrup is out of place. It is only called by lf() and csi_M() in
> the vt.c. lf() is used in vt_console_print but it is called before
> set_cursor(). Also vgacon_cursor doesn't call vgacon_scroll. It can call
> vgacon_scrolldelta. Now scrup does call vgacon_scroll. It looks like The
> code jumped from the middle of vt_console_print to scrup. Do you get the
> same error all the time? Also do you have Preemptible Kernel turned on?

This is UP, and not preemptible. And the backtrace may be corrupt, because
when the page fault happens, it will actually page fault _again_ as part
of trying to print out the oops, so the whole thing scrolls largely off
the screen..

I only see this on one of my laptops, and even there it seems to be
timing-dependent or something (I think it only happens when I press a key,
and because the backtrace isn't trustworthy ..)

Linus

2002-12-14 00:49:08

by James Simmons

[permalink] [raw]
Subject: Re: [BK fbdev] Yet again more fbdev updates.


> This is UP, and not preemptible. And the backtrace may be corrupt, because
> when the page fault happens, it will actually page fault _again_ as part
> of trying to print out the oops, so the whole thing scrolls largely off
> the screen..

Thats right. If the low level console driver is broken it will call
printk which could be using the broken driver :-(

> I only see this on one of my laptops, and even there it seems to be
> timing-dependent or something (I think it only happens when I press a key,
> and because the backtrace isn't trustworthy ..)

If it happens only when you press a key which is always true:

1) Its the same place on the screen or a different place every time?

2) Always the last line of the screen?

3) Always the last column?


If you don't mind me asking what is model of your laptop to see if someone
else is having the same exact problem.

2002-12-14 01:02:18

by Linus Torvalds

[permalink] [raw]
Subject: Re: [BK fbdev] Yet again more fbdev updates.



On Fri, 13 Dec 2002, James Simmons wrote:
>
> If it happens only when you press a key which is always true:
>
> 1) Its the same place on the screen or a different place every time?

I think it's at the last line of the screen every time.

> 3) Always the last column?

Nope, I don't think so.

> If you don't mind me asking what is model of your laptop to see if
> someone else is having the same exact problem.

This is a HP ze5155 (big, heavy and horrible, but cheap). But I seriously
doubt that is the real issue: I suspect that the reason I see it on that
machine is (a) I was travelling the last three days and that was the only
machine I had and (b) because X is flaky at starting up on it, I wasn't in
X all the time like I normally am.

Linus

2002-12-14 22:07:26

by James Simmons

[permalink] [raw]
Subject: Re: [BK fbdev] Yet again more fbdev updates.


> > 1) Its the same place on the screen or a different place every time?
>
> I think it's at the last line of the screen every time.

I think I might now what the problem is. scrup is using memcpy even when
the memory areas src, dest overlap. The key is to use memmove which
handles overlapping memory gracefully. Tell me if the following patch
works for you.

--- vt.c.orig Sat Dec 14 13:32:42 2002
+++ vt.c Sat Dec 14 13:34:46 2002
@@ -262,7 +262,7 @@
return;
d = (unsigned short *) (origin+video_size_row*t);
s = (unsigned short *) (origin+video_size_row*(t+nr));
- scr_memcpyw(d, s, (b-t-nr) * video_size_row);
+ scr_memmovew(d, s, (b-t-nr) * video_size_row);
scr_memsetw(d + (b-t-nr) * video_num_columns, video_erase_char, video_size_row*nr);
}