On Wed, Jan 24, 2001 at 11:17:45PM +0100, f5ibh wrote:
> > It looks like that there is some problem with screen offset computation then.
> > Can you try 'video=matrox:cross4MB' instead of '...:nopan'? I did not
> 
> video=matrox:cross4MB  works too !
> 

Hi Linus,
  can you apply following patch to 2.4.1-pre10? It does touch matroxfb only:
(1) copyright update for 2001 (hunks 1 & 6)
(2) removing few unused DEVF_* constants (hunks 2 & 3)
(3) changed PPC compatibility code - old code was checking wrong
    conditional defines (hunk 5)
(4) most important - get it to work on 8MB Mystique (hunk 4)

                                        Thanks,
                                                Petr Vandrovec
                                                [EMAIL PROTECTED]



diff -urdN linux/drivers/video/matrox/matroxfb_base.c 
linux/drivers/video/matrox/matroxfb_base.c
--- linux/drivers/video/matrox/matroxfb_base.c  Fri Dec 29 22:07:23 2000
+++ linux/drivers/video/matrox/matroxfb_base.c  Thu Jan 25 17:31:50 2001
@@ -2,9 +2,9 @@
  *
  * Hardware accelerated Matrox Millennium I, II, Mystique, G100, G200 and G400
  *
- * (c) 1998,1999,2000 Petr Vandrovec <[EMAIL PROTECTED]>
+ * (c) 1998-2001 Petr Vandrovec <[EMAIL PROTECTED]>
  *
- * Version: 1.50 2000/08/10
+ * Version: 1.51 2001/01/25
  *
  * MTRR stuff: 1998 Tom Rini <[EMAIL PROTECTED]>
  *
@@ -1409,12 +1409,12 @@
 
 #define DEVF_VIDEO64BIT                0x0001
 #define        DEVF_SWAPS              0x0002
-#define DEVF_MILLENNIUM                0x0004
-#define        DEVF_MILLENNIUM2        0x0008
+/* #define DEVF_recycled       0x0004 */
+/* #define DEVF_recycled       0x0008 */
 #define DEVF_CROSS4MB          0x0010
 #define DEVF_TEXT4B            0x0020
 #define DEVF_DDC_8_2           0x0040
-#define DEVF_DMA               0x0080
+/* #define DEVF_recycled       0x0080 */
 #define DEVF_SUPPORT32MB       0x0100
 #define DEVF_ANY_VXRES         0x0200
 #define DEVF_TEXT16B           0x0400
@@ -1441,19 +1441,19 @@
 #ifdef CONFIG_FB_MATROX_MILLENIUM
        {PCI_VENDOR_ID_MATROX,  PCI_DEVICE_ID_MATROX_MIL,       0xFF,
                0,                      0,
-               DEVF_MILLENNIUM | DEVF_TEXT4B,
+               DEVF_TEXT4B,
                230000,
                &vbMillennium,
                "Millennium (PCI)"},
        {PCI_VENDOR_ID_MATROX,  PCI_DEVICE_ID_MATROX_MIL_2,     0xFF,
                0,                      0,
-               DEVF_MILLENNIUM | DEVF_MILLENNIUM2 | DEVF_SWAPS,
+               DEVF_SWAPS,
                220000,
                &vbMillennium2,
                "Millennium II (PCI)"},
        {PCI_VENDOR_ID_MATROX,  PCI_DEVICE_ID_MATROX_MIL_2_AGP, 0xFF,
                0,                      0,
-               DEVF_MILLENNIUM | DEVF_MILLENNIUM2 | DEVF_SWAPS,
+               DEVF_SWAPS,
                250000,
                &vbMillennium2A,
                "Millennium II (AGP)"},
@@ -1461,13 +1461,13 @@
 #ifdef CONFIG_FB_MATROX_MYSTIQUE
        {PCI_VENDOR_ID_MATROX,  PCI_DEVICE_ID_MATROX_MYS,       0x02,
                0,                      0,
-               DEVF_VIDEO64BIT,
+               DEVF_VIDEO64BIT | DEVF_CROSS4MB,
                180000,
                &vbMystique,
                "Mystique (PCI)"},
        {PCI_VENDOR_ID_MATROX,  PCI_DEVICE_ID_MATROX_MYS,       0xFF,
                0,                      0,
-               DEVF_VIDEO64BIT | DEVF_SWAPS,
+               DEVF_VIDEO64BIT | DEVF_SWAPS | DEVF_CROSS4MB,
                220000,
                &vbMystique,
                "Mystique 220 (PCI)"},
@@ -1842,33 +1842,33 @@
        }
 
        /* FIXME: Where to move this?! */
-#if defined(CONFIG_PPC)
+#if defined(CONFIG_ALL_PPC)
 #if defined(CONFIG_FB_COMPAT_XPMAC)
        strcpy(ACCESS_FBINFO(matrox_name), "MTRX,");    /* OpenFirmware naming 
convension */
        strncat(ACCESS_FBINFO(matrox_name), b->name, 26);
        if (!console_fb_info)
                console_fb_info = &ACCESS_FBINFO(fbcon);
 #endif
-       if ((xres <= 640) && (yres <= 480)) {
+#ifndef MODULE
+       if (_machine == _MACH_Pmac) {
                struct fb_var_screeninfo var;
-               if (default_vmode == VMODE_NVRAM) {
-                       default_vmode = nvram_read_byte(NV_VMODE);
-                       if (default_vmode <= 0 || default_vmode > VMODE_MAX)
-                               default_vmode = VMODE_CHOOSE;
-               }
                if (default_vmode <= 0 || default_vmode > VMODE_MAX)
                        default_vmode = VMODE_640_480_60;
+#ifdef CONFIG_NVRAM
                if (default_cmode == CMODE_NVRAM)
                        default_cmode = nvram_read_byte(NV_CMODE);
+#endif
                if (default_cmode < CMODE_8 || default_cmode > CMODE_32)
                        default_cmode = CMODE_8;
                if (!mac_vmode_to_var(default_vmode, default_cmode, &var)) {
                        var.accel_flags = vesafb_defined.accel_flags;
                        var.xoffset = var.yoffset = 0;
-                       vesafb_defined = var; /* Note: mac_vmode_to_var() doesnot set 
all parameters */
+                       /* Note: mac_vmode_to_var() does not set all parameters */
+                       vesafb_defined = var;
                }
        }
-#endif /* CONFIG_PPC */
+#endif /* !MODULE */
+#endif /* CONFIG_ALL_PPC */
        vesafb_defined.xres_virtual = vesafb_defined.xres;
        if (nopan) {
                vesafb_defined.yres_virtual = vesafb_defined.yres;
@@ -2502,8 +2502,8 @@
 
 /* *************************** init module code **************************** */
 
-MODULE_AUTHOR("(c) 1998,1999 Petr Vandrovec <[EMAIL PROTECTED]>");
-MODULE_DESCRIPTION("Accelerated FBDev driver for Matrox 
Millennium/Mystique/G100/G200/G400");
+MODULE_AUTHOR("(c) 1998-2001 Petr Vandrovec <[EMAIL PROTECTED]>");
+MODULE_DESCRIPTION("Accelerated FBDev driver for Matrox 
+Millennium/Mystique/G100/G200/G400/G450");
 MODULE_PARM(mem, "i");
 MODULE_PARM_DESC(mem, "Size of available memory in MB, KB or B (2,4,8,12,16MB, 
default=autodetect)");
 MODULE_PARM(disabled, "i");
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [EMAIL PROTECTED]
Please read the FAQ at http://www.tux.org/lkml/

Reply via email to