aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBen Skeggs <bskeggs@redhat.com>2011-07-05 20:29:49 -0400
committerBen Skeggs <bskeggs@redhat.com>2011-09-20 02:06:37 -0400
commit1d6e7a59f70b3107a75672f365be2fec2ee43a36 (patch)
tree27d85b62d4b3103513792a28f08a583d39e80340
parent2fad3d5e2bc8776a2963399a936db13814107646 (diff)
drm/nvd0/disp: some magic to make evo happeir
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
-rw-r--r--drivers/gpu/drm/nouveau/nvd0_display.c12
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/gpu/drm/nouveau/nvd0_display.c b/drivers/gpu/drm/nouveau/nvd0_display.c
index cf294886a696..0afc5e1ad845 100644
--- a/drivers/gpu/drm/nouveau/nvd0_display.c
+++ b/drivers/gpu/drm/nouveau/nvd0_display.c
@@ -850,6 +850,18 @@ nvd0_display_init(struct drm_device *dev)
850 u32 *push; 850 u32 *push;
851 int i; 851 int i;
852 852
853 /*XXX: wrong, and wtf is it for? */
854 for (i = 0; i < 3; i++) {
855 u32 dac = nv_rd32(dev, 0x61a000 + (i * 0x800));
856 nv_wr32(dev, 0x6101c0 + (i * 0x800), dac);
857 }
858
859 /*XXX: wrong, and wtf is it for? SOR_MODE_CTRL is an error without.. */
860 for (i = 0; i < 4; i++) {
861 u32 sor = nv_rd32(dev, 0x61c000 + (i * 0x800));
862 nv_wr32(dev, 0x6301c4 + (i * 0x800), sor);
863 }
864
853 if (nv_rd32(dev, 0x6100ac) & 0x00000100) { 865 if (nv_rd32(dev, 0x6100ac) & 0x00000100) {
854 nv_wr32(dev, 0x6100ac, 0x00000100); 866 nv_wr32(dev, 0x6100ac, 0x00000100);
855 nv_mask(dev, 0x6194e8, 0x00000001, 0x00000000); 867 nv_mask(dev, 0x6194e8, 0x00000001, 0x00000000);