drm/nouveau: memory type detection for the really old chipsets
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
This commit is contained in:
parent
7ad2d31cb6
commit
ddfd2da484
|
@ -29,6 +29,11 @@ nv04_fb_vram_init(struct drm_device *dev)
|
|||
}
|
||||
}
|
||||
|
||||
if ((boot0 & 0x00000038) <= 0x10)
|
||||
dev_priv->vram_type = NV_MEM_TYPE_SGRAM;
|
||||
else
|
||||
dev_priv->vram_type = NV_MEM_TYPE_SDRAM;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
|
@ -35,6 +35,14 @@ nv10_fb_vram_init(struct drm_device *dev)
|
|||
u32 fifo_data = nv_rd32(dev, NV04_PFB_FIFO_DATA);
|
||||
|
||||
dev_priv->vram_size = fifo_data & NV10_PFB_FIFO_DATA_RAM_AMOUNT_MB_MASK;
|
||||
if (dev_priv->card_type < NV_20) {
|
||||
u32 cfg0 = nv_rd32(dev, 0x100200);
|
||||
if (cfg0 & 0x00000001)
|
||||
dev_priv->vram_type = NV_MEM_TYPE_DDR1;
|
||||
else
|
||||
dev_priv->vram_type = NV_MEM_TYPE_SDRAM;
|
||||
}
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue