It is currently Sat, 24 Oct 2020 08:49:21 GMT



 
Author Message
 Support for matroxfb on HP Vectra
Hi Marcelo,
  please apply this patch...

Matrox chips soldered to the HP Vectra's mainboard do not have EEPROM connected to
them, instead of that system BIOS contains VGA BIOS image which is extracted only
to the legacy VGA BIOS region at 0xC0000, and nowhere else. And in addition to this
they decided to use 14.318MHz XTAL instead of recommended 27.000MHz. These two events
together made matroxfb a bit unhappy on such motherboard, as all frequencies were
only 53% of expected value :-(

With this patch matroxfb tries to use legacy BIOS if there is no EEPROM and it
is ia32 architecture (and it was confirmed to fix a problem).

Patch applies to both 2.4 and 2.5, but in 2.5 it is a bit useless...

                                                Thanks,
                                                        Petr Vandrovec
                                                        vandr...@vc.cvut.cz

--- a/drivers/video/matrox/matroxfb_misc.c      2003-02-13 03:57:39.000000000 +0100
+++ b/drivers/video/matrox/matroxfb_misc.c      2003-03-14 14:33:01.000000000 +0100
@@ -994,6 +994,27 @@
        parse_bios(vaddr_va(ACCESS_FBINFO(video).vbase), &ACCESS_FBINFO(bios));
        pci_write_config_dword(pdev, PCI_ROM_ADDRESS, biosbase);
        pci_write_config_dword(pdev, PCI_OPTION_REG, opt);
+#ifdef CONFIG_X86
+       if (!ACCESS_FBINFO(bios).bios_valid) {
+               unsigned char* b;
+              
+               b = ioremap(0x000C0000, 65536);
+               if (!b) {
+                       printk(KERN_INFO "matroxfb: Unable to map legacy BIOS\n");
+               } else {
+                       unsigned int ven = readb(b+0x64+0) | (readb(b+0x64+1) << 8);
+                       unsigned int dev = readb(b+0x64+2) | (readb(b+0x64+3) << 8);
+                      
+                       if (ven != pdev->vendor || dev != pdev->device) {
+                               printk(KERN_INFO "matroxfb: Legacy BIOS is for %04X:%04X, while this device is %04X:%04X\n",
+                                       ven, dev, pdev->vendor, pdev->device);
+                       } else {
+                               parse_bios(b, &ACCESS_FBINFO(bios));
+                       }
+                       iounmap(b);
+               }
+       }
+#endif
        matroxfb_set_limits(PMINFO &ACCESS_FBINFO(bios));
 }

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at   http://www.**-**.com/
Please read the FAQ at   http://www.**-**.com/



 Tue, 30 Aug 2005 21:40:09 GMT   
 
   [ 1 post ] 

Similar Threads

1. sound support with HP Vectra VLi8

2. Sound support for HP Vectra

3. HP Vectra 5/90 support?

4. HP NC/16 TP and HP Vectra 386

5. HP J2405A ethernet & HP Vectra VE

6. HP Vectra QS20 with HP Mouse

7. Linux on HP Vectra VE 4/100

8. Install Help on HP Vectra

9. HP Vectra VL5 and LINUX


 
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group.
Designed by ST Software