mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-28 10:41:38 -04:00
[PATCH] framebuffer: new driver for cyberblade/i1 graphics core
This is a framebuffer driver for the Cyberblade/i1 graphics core. Currently tridenfb claims to support the cyberblade/i1 graphics core. This is of very limited truth. Even vesafb is faster and provides more working modes and a much better quality of the video signal. There is a great number of bugs in tridentfb ... but most often it is impossible to decide if these bugs are real bugs or if fixing them for the cyberblade/i1 core would break support for one of the other supported chips. Tridentfb seems to be unmaintained,and documentation for most of the supported chips is not available. So "fixing" cyberblade/i1 support inside of tridentfb was not an option, it would have caused numerous if(CYBERBLADEi1) else ... cases and would have rendered the code to be almost unmaintainable. A first version of this driver was published on 2005-07-31. A fix for a bug reported by Jochen Hein was integrated as well as some changes requested by Antonino A. Daplas. A message has been added to tridentfb to inform current users of tridentfb to switch to cyblafb if the cyberblade/i1 graphics core is detected. This patch is one logical change, but because of the included documentation it is bigger than 70kb. Therefore it is not sent to lkml and linux-fbdev-devel, Signed-off-by: Knut Petersen <[email protected]> Cc: Muli Ben-Yehuda <[email protected]> Acked-by: Antonino Daplas <[email protected]> Signed-off-by: Andrew Morton <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
This commit is contained in:
parent
6062bfa164
commit
9fa68eae9f
14 changed files with 2266 additions and 2 deletions
|
|
@ -1177,6 +1177,32 @@ config FB_VOODOO1
|
|||
Please read the <file:Documentation/fb/README-sstfb.txt> for supported
|
||||
options and other important info support.
|
||||
|
||||
config FB_CYBLA
|
||||
tristate "Cyberblade/i1 support"
|
||||
depends on FB && PCI
|
||||
select FB_CFB_IMAGEBLIT
|
||||
select FB_SOFT_CURSOR
|
||||
select VIDEO_SELECT
|
||||
---help---
|
||||
This driver is supposed to support the Trident Cyberblade/i1
|
||||
graphics core integrated in the VIA VT8601A North Bridge,
|
||||
also known as VIA Apollo PLE133.
|
||||
|
||||
Status:
|
||||
- Developed, tested and working on EPIA 5000 and EPIA 800.
|
||||
- Does work reliable on all systems with CRT/LCD connected to
|
||||
normal VGA ports.
|
||||
- Should work on systems that do use the internal LCD port, but
|
||||
this is absolutely not tested.
|
||||
|
||||
Character imageblit, copyarea and rectangle fill are hw accelerated,
|
||||
ypan scrolling is used by default.
|
||||
|
||||
Please do read <file:Documentation/fb/cyblafb/*>.
|
||||
|
||||
To compile this driver as a module, choose M here: the
|
||||
module will be called cyblafb.
|
||||
|
||||
config FB_TRIDENT
|
||||
tristate "Trident support"
|
||||
depends on FB && PCI
|
||||
|
|
@ -1190,8 +1216,12 @@ config FB_TRIDENT
|
|||
but also on some motherboards. For more information, read
|
||||
<file:Documentation/fb/tridentfb.txt>
|
||||
|
||||
Cyberblade/i1 support will be removed soon, use the cyblafb driver
|
||||
instead.
|
||||
|
||||
Say Y if you have such a graphics board.
|
||||
|
||||
|
||||
To compile this driver as a module, choose M here: the
|
||||
module will be called tridentfb.
|
||||
|
||||
|
|
@ -1202,7 +1232,6 @@ config FB_TRIDENT_ACCEL
|
|||
This will compile the Trident frame buffer device with
|
||||
acceleration functions.
|
||||
|
||||
|
||||
config FB_PM3
|
||||
tristate "Permedia3 support"
|
||||
depends on FB && PCI && BROKEN
|
||||
|
|
|
|||
|
|
@ -50,7 +50,8 @@ obj-$(CONFIG_FB_CT65550) += chipsfb.o
|
|||
obj-$(CONFIG_FB_IMSTT) += imsttfb.o
|
||||
obj-$(CONFIG_FB_S3TRIO) += S3triofb.o
|
||||
obj-$(CONFIG_FB_FM2) += fm2fb.o
|
||||
obj-$(CONFIG_FB_TRIDENT) += tridentfb.o
|
||||
obj-$(CONFIG_FB_CYBLA) += cyblafb.o
|
||||
obj-$(CONFIG_FB_TRIDENT) += tridentfb.o
|
||||
obj-$(CONFIG_FB_STI) += stifb.o
|
||||
obj-$(CONFIG_FB_FFB) += ffb.o sbuslib.o
|
||||
obj-$(CONFIG_FB_CG6) += cg6.o sbuslib.o
|
||||
|
|
|
|||
1456
drivers/video/cyblafb.c
Normal file
1456
drivers/video/cyblafb.c
Normal file
File diff suppressed because it is too large
Load diff
|
|
@ -1061,6 +1061,11 @@ static int __devinit trident_pci_probe(struct pci_dev * dev, const struct pci_de
|
|||
|
||||
chip_id = id->device;
|
||||
|
||||
if(chip_id == CYBERBLADEi1)
|
||||
output("*** Please do use cyblafb, Cyberblade/i1 support "
|
||||
"will soon be removed from tridentfb!\n");
|
||||
|
||||
|
||||
/* If PCI id is 0x9660 then further detect chip type */
|
||||
|
||||
if (chip_id == TGUI9660) {
|
||||
|
|
|
|||
Loading…
Reference in a new issue