int mgag200_mm_init(struct mga_device *mdev)
 {
        struct drm_device *dev = &mdev->base;
+       u8 misc;
        resource_size_t start, len;
        int ret;
 
+       misc = RREG8(MGA_MISC_IN);
+       misc |= MGAREG_MISC_RAMMAPEN |
+               MGAREG_MISC_HIGH_PG_SEL;
+       WREG8(MGA_MISC_OUT, misc);
+
        /* BAR 0 is VRAM */
        start = pci_resource_start(dev->pdev, 0);
        len = pci_resource_len(dev->pdev, 0);
 
                WREG_ECRT(0x34, 0x5);
 
        misc = RREG8(MGA_MISC_IN);
-       misc |= MGAREG_MISC_IOADSEL |
-               MGAREG_MISC_RAMMAPEN |
-               MGAREG_MISC_HIGH_PG_SEL;
+       misc |= MGAREG_MISC_IOADSEL;
        WREG8(MGA_MISC_OUT, misc);
 }