diff options
Diffstat (limited to 'src/mga_dga.c')
-rw-r--r-- | src/mga_dga.c | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/src/mga_dga.c b/src/mga_dga.c index e728484..c75ef0c 100644 --- a/src/mga_dga.c +++ b/src/mga_dga.c @@ -154,8 +154,16 @@ SECOND_PASS: mode->imageWidth = pitch; mode->imageHeight = pMga->FbUsableSize / mode->bytesPerScanline; mode->pixmapWidth = pitch; - mode->pixmapHeight = (min(pMga->FbUsableSize, 16*1024*1024)) / - mode->bytesPerScanline; + switch (pMga->Chipset) { + case PCI_CHIP_MGAG200_SE_A_PCI: + case PCI_CHIP_MGAG200_SE_B_PCI: + mode->pixmapHeight = (min(pMga->FbUsableSize, 1*1024*1024)) / + mode->bytesPerScanline; + break; + default: + mode->pixmapHeight = (min(pMga->FbUsableSize, 16*1024*1024)) / + mode->bytesPerScanline; + } mode->maxViewportX = mode->imageWidth - mode->viewportWidth; mode->maxViewportY = (pMga->FbUsableSize / mode->bytesPerScanline) - mode->viewportHeight; |