dev:X    - bind driver to device X. Driver numbers device from 0 up to N,
            where device 0 is first `known' device found, 1 second and so on.
           lspci lists devices in this order.
-          Default is `every' known device for driver with multihead support
-          and first working device (usually dev:0) for driver without
-          multihead support.
+          Default is `every' known device.
 nohwcursor - disables hardware cursor (use software cursor instead).
 hwcursor - enables hardware cursor. It is default. If you are using
            non-accelerated mode (`noaccel' or `fbset -accel false'), software
 
          painting procedures (the secondary head does not use acceleration
          engine).
 
-config FB_MATROX_MULTIHEAD
-       bool "Multihead support"
-       depends on FB_MATROX
-       ---help---
-         Say Y here if you have more than one (supported) Matrox device in
-         your computer and you want to use all of them for different monitors
-         ("multihead"). If you have only one device, you should say N because
-         the driver compiled with Y is larger and a bit slower, especially on
-         ia32 (ix86).
-
-         If you said M to "Matrox unified accelerated driver" and N here, you
-         will still be able to use several Matrox devices simultaneously:
-         insert several instances of the module matroxfb into the kernel
-         with insmod, supplying the parameter "dev=N" where N is 0, 1, etc.
-         for the different Matrox devices. This method is slightly faster but
-         uses 40 KB of kernel memory per Matrox card.
-
-         There is no need for enabling 'Matrox multihead support' if you have
-         only one Matrox card in the box.
-
 config FB_RADEON
        tristate "ATI Radeon display support"
        depends on FB && PCI
 
        mga_iounmap(ACCESS_FBINFO(video.vbase));
        release_mem_region(ACCESS_FBINFO(video.base), ACCESS_FBINFO(video.len_maximum));
        release_mem_region(ACCESS_FBINFO(mmio.base), 16384);
-#ifdef CONFIG_FB_MATROX_MULTIHEAD
        kfree(minfo);
-#endif
 }
 
        /*
                              unsigned blue, unsigned transp,
                              struct fb_info *fb_info)
 {
-#ifdef CONFIG_FB_MATROX_MULTIHEAD
        struct matrox_fb_info* minfo = container_of(fb_info, struct matrox_fb_info, fbcon);
-#endif
 
        DBG(__func__)
 
        struct matrox_fb_info* minfo;
        int err;
        u_int32_t cmd;
-#ifndef CONFIG_FB_MATROX_MULTIHEAD
-       static int registered = 0;
-#endif
        DBG(__func__)
 
        svid = pdev->subsystem_vendor;
                return -1;
        }
 
-#ifdef CONFIG_FB_MATROX_MULTIHEAD
        minfo = kmalloc(sizeof(*minfo), GFP_KERNEL);
        if (!minfo)
                return -1;
-#else
-       if (registered) /* singlehead driver... */
-               return -1;
-       minfo = &matroxfb_global_mxinfo;
-#endif
        memset(MINFO, 0, sizeof(*MINFO));
 
        ACCESS_FBINFO(pcidev) = pdev;
 
        err = initMatrox2(PMINFO b);
        if (!err) {
-#ifndef CONFIG_FB_MATROX_MULTIHEAD
-               registered = 1;
-#endif
                matroxfb_register_device(MINFO);
                return 0;
        }
-#ifdef CONFIG_FB_MATROX_MULTIHEAD
        kfree(minfo);
-#endif
        return -1;
 }
 
 MODULE_PARM_DESC(inv24, "Inverts clock polarity for 24bpp and loop frequency > 100MHz (default=do not invert polarity)");
 module_param(inverse, int, 0);
 MODULE_PARM_DESC(inverse, "Inverse (0 or 1) (default=0)");
-#ifdef CONFIG_FB_MATROX_MULTIHEAD
 module_param(dev, int, 0);
 MODULE_PARM_DESC(dev, "Multihead support, attach to device ID (0..N) (default=all working)");
-#else
-module_param(dev, int, 0);
-MODULE_PARM_DESC(dev, "Multihead support, attach to device ID (0..N) (default=first working)");
-#endif
 module_param(vesa, int, 0);
 MODULE_PARM_DESC(vesa, "Startup videomode (0x000-0x1FF) (default=0x101)");
 module_param(xres, int, 0);
 
 
 #define info2minfo(info) container_of(info, struct matrox_fb_info, fbcon)
 
-#ifdef CONFIG_FB_MATROX_MULTIHEAD
 #define ACCESS_FBINFO2(info, x) (info->x)
 #define ACCESS_FBINFO(x) ACCESS_FBINFO2(minfo,x)
 
 #define PMINFO   PMINFO2 ,
 
 #define MINFO_FROM(x)     struct matrox_fb_info* minfo = x
-#else
-
-extern struct matrox_fb_info matroxfb_global_mxinfo;
-
-#define ACCESS_FBINFO(x) (matroxfb_global_mxinfo.x)
-#define ACCESS_FBINFO2(info, x) (matroxfb_global_mxinfo.x)
-
-#define MINFO (&matroxfb_global_mxinfo)
-
-#define WPMINFO2 void
-#define WPMINFO
-#define CPMINFO2 void
-#define CPMINFO
-#define PMINFO2
-#define PMINFO
-
-#define MINFO_FROM(x)
-
-#endif
 
 #define MINFO_FROM_INFO(x) MINFO_FROM(info2minfo(x))
 
 
 EXPORT_SYMBOL(matroxfb_DAC_out);
 EXPORT_SYMBOL(matroxfb_var2my);
 EXPORT_SYMBOL(matroxfb_PLL_calcclock);
-#ifndef CONFIG_FB_MATROX_MULTIHEAD
-struct matrox_fb_info matroxfb_global_mxinfo;
-EXPORT_SYMBOL(matroxfb_global_mxinfo);
-#endif
 EXPORT_SYMBOL(matroxfb_vgaHWinit);             /* DAC1064, Ti3026 */
 EXPORT_SYMBOL(matroxfb_vgaHWrestore);          /* DAC1064, Ti3026 */
 EXPORT_SYMBOL(matroxfb_read_pins);