diff options
Diffstat (limited to 'shared-core/nouveau_state.c')
-rw-r--r-- | shared-core/nouveau_state.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/shared-core/nouveau_state.c b/shared-core/nouveau_state.c index fb35ba74..f1f272e7 100644 --- a/shared-core/nouveau_state.c +++ b/shared-core/nouveau_state.c @@ -83,6 +83,12 @@ int nouveau_firstopen(struct drm_device *dev) } else dev_priv->ramin = NULL; + /* Determine exact chipset we're running on */ + if (dev_priv->card_type < NV_10) + dev_priv->chipset = dev_priv->card_type; + else + dev_priv->chipset =(NV_READ(NV03_PMC_BOOT_0) & 0x0ff00000) >> 20; + /* Clear RAMIN * Determine locations for RAMHT/FC/RO * Initialise PFIFO @@ -102,6 +108,8 @@ int nouveau_firstopen(struct drm_device *dev) nv20_graph_init(dev); else if (dev_priv->card_type >= NV_10) nv10_graph_init(dev); + else if (dev_priv->card_type >= NV_04) + nv04_graph_init(dev); return 0; } |