diff options
Diffstat (limited to 'drivers/gpu/drm/nouveau/nv40_mc.c')
-rw-r--r-- | drivers/gpu/drm/nouveau/nv40_mc.c | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/drivers/gpu/drm/nouveau/nv40_mc.c b/drivers/gpu/drm/nouveau/nv40_mc.c new file mode 100644 index 000000000000..2a3495e848e9 --- /dev/null +++ b/drivers/gpu/drm/nouveau/nv40_mc.c | |||
@@ -0,0 +1,38 @@ | |||
1 | #include "drmP.h" | ||
2 | #include "drm.h" | ||
3 | #include "nouveau_drv.h" | ||
4 | #include "nouveau_drm.h" | ||
5 | |||
6 | int | ||
7 | nv40_mc_init(struct drm_device *dev) | ||
8 | { | ||
9 | struct drm_nouveau_private *dev_priv = dev->dev_private; | ||
10 | uint32_t tmp; | ||
11 | |||
12 | /* Power up everything, resetting each individual unit will | ||
13 | * be done later if needed. | ||
14 | */ | ||
15 | nv_wr32(dev, NV03_PMC_ENABLE, 0xFFFFFFFF); | ||
16 | |||
17 | switch (dev_priv->chipset) { | ||
18 | case 0x44: | ||
19 | case 0x46: /* G72 */ | ||
20 | case 0x4e: | ||
21 | case 0x4c: /* C51_G7X */ | ||
22 | tmp = nv_rd32(dev, NV40_PFB_020C); | ||
23 | nv_wr32(dev, NV40_PMC_1700, tmp); | ||
24 | nv_wr32(dev, NV40_PMC_1704, 0); | ||
25 | nv_wr32(dev, NV40_PMC_1708, 0); | ||
26 | nv_wr32(dev, NV40_PMC_170C, tmp); | ||
27 | break; | ||
28 | default: | ||
29 | break; | ||
30 | } | ||
31 | |||
32 | return 0; | ||
33 | } | ||
34 | |||
35 | void | ||
36 | nv40_mc_takedown(struct drm_device *dev) | ||
37 | { | ||
38 | } | ||