summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKrzysztof Helt <krzysztof.h1@wp.pl>2008-07-24 08:30:58 +0400
committerLinus Torvalds <torvalds@linux-foundation.org>2008-07-24 21:47:35 +0400
commita0d922562d56073f147a4de2983bee499dd2a10e (patch)
tree86fce6fb130a67888c89644416fa4e78c0f1fb7e
parent0e73a47f094a919e2edeaa88e840cd0400adc423 (diff)
downloadlinux-a0d922562d56073f147a4de2983bee499dd2a10e.tar.xz
tridentfb: add TGUI 9440 support
Add support for TGUI 9440 chip. Signed-off-by: Krzysztof Helt <krzysztof.h1@wp.pl> Cc: "Antonino A. Daplas" <adaplas@pol.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--drivers/video/tridentfb.c10
-rw-r--r--include/video/trident.h1
2 files changed, 8 insertions, 3 deletions
diff --git a/drivers/video/tridentfb.c b/drivers/video/tridentfb.c
index 9668be881fe3..9dedc1a5e421 100644
--- a/drivers/video/tridentfb.c
+++ b/drivers/video/tridentfb.c
@@ -87,13 +87,15 @@ MODULE_PARM_DESC(crt, "Define if CRT is connected");
static int is_oldclock(int id)
{
- return (id == TGUI9660) ||
+ return (id == TGUI9440) ||
+ (id == TGUI9660) ||
(id == CYBER9320);
}
static int is_oldprotect(int id)
{
- return (id == TGUI9660) ||
+ return (id == TGUI9440) ||
+ (id == TGUI9660) ||
(id == PROVIDIA9685) ||
(id == CYBER9320) ||
(id == CYBER9382) ||
@@ -1042,7 +1044,8 @@ static int tridentfb_set_par(struct fb_info *info)
if (!is_xp(par->chip_id))
write3X4(par, Performance, read3X4(par, Performance) | 0x10);
/* MMIO & PCI read and write burst enable */
- write3X4(par, PCIReg, read3X4(par, PCIReg) | 0x06);
+ if (par->chip_id != TGUI9440)
+ write3X4(par, PCIReg, read3X4(par, PCIReg) | 0x06);
/* convert from picoseconds to kHz */
vclk = PICOS2KHZ(info->var.pixclock);
@@ -1418,6 +1421,7 @@ static struct pci_device_id trident_devices[] = {
{PCI_VENDOR_ID_TRIDENT, CYBERBLADEAi1, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
{PCI_VENDOR_ID_TRIDENT, CYBERBLADEAi1D, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
{PCI_VENDOR_ID_TRIDENT, CYBERBLADEE4, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
+ {PCI_VENDOR_ID_TRIDENT, TGUI9440, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
{PCI_VENDOR_ID_TRIDENT, TGUI9660, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
{PCI_VENDOR_ID_TRIDENT, IMAGE975, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
{PCI_VENDOR_ID_TRIDENT, IMAGE985, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
diff --git a/include/video/trident.h b/include/video/trident.h
index fa690b9fcc13..76d81b2198dc 100644
--- a/include/video/trident.h
+++ b/include/video/trident.h
@@ -24,6 +24,7 @@
#define CYBER9397DVD 0x939A
#define CYBER9520 0x9520
#define CYBER9525DVD 0x9525
+#define TGUI9440 0x9440
#define TGUI9660 0x9660
#define PROVIDIA9685 0x9685
#define IMAGE975 0x9750