diff options
author | Ingo Molnar <mingo@elte.hu> | 2009-04-06 01:41:22 +0200 |
---|---|---|
committer | Ingo Molnar <mingo@elte.hu> | 2009-04-06 01:41:22 +0200 |
commit | 9efe21cb82b5dbe3b0b2ae4de4eccc64ecb94e95 (patch) | |
tree | 7ff8833745d2f268f897f6fa4a27263b4a572245 /drivers/video/tridentfb.c | |
parent | de18836e447c2dc30120c0919b8db8ddc0401cc4 (diff) | |
parent | 0221c81b1b8eb0cbb6b30a0ced52ead32d2b4e4c (diff) |
Merge branch 'linus' into irq/threaded
Conflicts:
include/linux/irq.h
kernel/irq/handle.c
Diffstat (limited to 'drivers/video/tridentfb.c')
-rw-r--r-- | drivers/video/tridentfb.c | 19 |
1 files changed, 6 insertions, 13 deletions
diff --git a/drivers/video/tridentfb.c b/drivers/video/tridentfb.c index 479b2e79ad68..03a9c35e9f55 100644 --- a/drivers/video/tridentfb.c +++ b/drivers/video/tridentfb.c @@ -2,7 +2,7 @@ * Frame buffer driver for Trident TGUI, Blade and Image series * * Copyright 2001, 2002 - Jani Monoses <jani@iv.ro> - * + * Copyright 2009 Krzysztof Helt <krzysztof.h1@wp.pl> * * CREDITS:(in order of appearance) * skeletonfb.c by Geert Uytterhoeven and other fb code in drivers/video @@ -490,7 +490,6 @@ static void tgui_copy_rect(struct tridentfb_par *par, /* * Accel functions called by the upper layers */ -#ifdef CONFIG_FB_TRIDENT_ACCEL static void tridentfb_fillrect(struct fb_info *info, const struct fb_fillrect *fr) { @@ -565,11 +564,6 @@ static int tridentfb_sync(struct fb_info *info) par->wait_engine(par); return 0; } -#else -#define tridentfb_fillrect cfb_fillrect -#define tridentfb_copyarea cfb_copyarea -#define tridentfb_imageblit cfb_imageblit -#endif /* CONFIG_FB_TRIDENT_ACCEL */ /* * Hardware access functions @@ -1333,9 +1327,7 @@ static struct fb_ops tridentfb_ops = { .fb_fillrect = tridentfb_fillrect, .fb_copyarea = tridentfb_copyarea, .fb_imageblit = tridentfb_imageblit, -#ifdef CONFIG_FB_TRIDENT_ACCEL .fb_sync = tridentfb_sync, -#endif }; static int __devinit trident_pci_probe(struct pci_dev *dev, @@ -1359,10 +1351,6 @@ static int __devinit trident_pci_probe(struct pci_dev *dev, chip_id = id->device; -#ifndef CONFIG_FB_TRIDENT_ACCEL - noaccel = 1; -#endif - /* If PCI id is 0x9660 then further detect chip type */ if (chip_id == TGUI9660) { @@ -1490,6 +1478,9 @@ static int __devinit trident_pci_probe(struct pci_dev *dev, } else info->flags |= FBINFO_HWACCEL_DISABLED; + if (is_blade(chip_id) && chip_id != BLADE3D) + info->flags |= FBINFO_READS_FAST; + info->pixmap.addr = kmalloc(4096, GFP_KERNEL); if (!info->pixmap.addr) { err = -ENOMEM; @@ -1563,6 +1554,7 @@ static void __devexit trident_pci_remove(struct pci_dev *dev) release_mem_region(tridentfb_fix.mmio_start, tridentfb_fix.mmio_len); pci_set_drvdata(dev, NULL); kfree(info->pixmap.addr); + fb_dealloc_cmap(&info->cmap); framebuffer_release(info); } @@ -1663,4 +1655,5 @@ module_exit(tridentfb_exit); MODULE_AUTHOR("Jani Monoses <jani@iv.ro>"); MODULE_DESCRIPTION("Framebuffer driver for Trident cards"); MODULE_LICENSE("GPL"); +MODULE_ALIAS("cyblafb"); |