src/via_ums.c |   15 ++++++++-------
 1 file changed, 8 insertions(+), 7 deletions(-)

New commits:
commit 9dbd0359a98f5010e3f8fcf6ad411404b434901b
Author: Kevin Brace <kevinbr...@gmx.com>
Date:   Tue Mar 8 02:15:17 2016 -0800

    Fixing P4M800 chipset detection code compilation error
    
    Likely due to an overlook, the code to detect P4M800 chipset did not
    compile correctly if the code was being compiled against an older
    version of x.org X Server.
    
    Signed-off-by: Kevin Brace <kevinbr...@gmx.com>

diff --git a/src/via_ums.c b/src/via_ums.c
index 95a171e..ae0393e 100644
--- a/src/via_ums.c
+++ b/src/via_ums.c
@@ -707,20 +707,21 @@ UMSPreInit(ScrnInfoPtr pScrn)
             pScrn->videoRam = (1 << ((videoRam & 0x70) >> 4)) << 10;
             break;
         case VIA_KM400:
-            /* P4M800 */
-            if (DEVICE_ID(bridge) == 0x0296) {
 #ifdef HAVE_PCIACCESS
+            /* P4M800 Host Bridge PCI Device ID */
+            if (DEVICE_ID(bridge) == 0x0296) {
                 pci_device_cfg_read_u8(vgaDevice, &videoRam, 0xA1);
-#else
-                videoRam = pciReadByte(pciTag(0, 0, 3), 0xA1) & 0x70;
-#endif
             } else {
-#ifdef HAVE_PCIACCESS
                 pci_device_cfg_read_u8(bridge, &videoRam, 0xE1);
+            }
 #else
+            /* P4M800 Host Bridge PCI Device ID */
+            if (pciReadWord(pciTag(0, 0, 0), 0x02) == 0x0296) {
+                videoRam = pciReadByte(pciTag(0, 0, 3), 0xA1) & 0x70;
+            } else {
                 videoRam = pciReadByte(pciTag(0, 0, 0), 0xE1) & 0x70;
-#endif
             }
+#endif
             pScrn->videoRam = (1 << ((videoRam & 0x70) >> 4)) << 10;
             break;
         case VIA_PM800:
_______________________________________________
Openchrome-devel mailing list
Openchrome-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/openchrome-devel

Reply via email to