In preparation for Fermi

Signed-off-by: Roy Spliet <nouv...@spliet.org>
---
 drivers/gpu/drm/nouveau/include/nvkm/subdev/bios/ramcfg.h |  9 ++++++---
 drivers/gpu/drm/nouveau/nvkm/subdev/bios/rammap.c         |  9 ++++++---
 drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgt215.c         | 12 ++++++++----
 3 files changed, 20 insertions(+), 10 deletions(-)

diff --git a/drivers/gpu/drm/nouveau/include/nvkm/subdev/bios/ramcfg.h 
b/drivers/gpu/drm/nouveau/include/nvkm/subdev/bios/ramcfg.h
index d8a7c04..4560a52 100644
--- a/drivers/gpu/drm/nouveau/include/nvkm/subdev/bios/ramcfg.h
+++ b/drivers/gpu/drm/nouveau/include/nvkm/subdev/bios/ramcfg.h
@@ -66,9 +66,12 @@ struct nvbios_ramcfg {
                        unsigned ramcfg_10_02_20:1;
                        unsigned ramcfg_10_03_0f:4;
                        unsigned ramcfg_10_04_01:1;
-                       unsigned ramcfg_10_05:8;
-                       unsigned ramcfg_10_06:8;
-                       unsigned ramcfg_10_07:8;
+                       unsigned ramcfg_10_05_0f:4;
+                       unsigned ramcfg_10_05_f0:8;
+                       unsigned ramcfg_10_06_0f:4;
+                       unsigned ramcfg_10_06_f0:4;
+                       unsigned ramcfg_10_07_0f:4;
+                       unsigned ramcfg_10_07_f0:4;
                        unsigned ramcfg_10_08:8;
                        unsigned ramcfg_10_09_0f:4;
                        unsigned ramcfg_10_09_f0:4;
diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/bios/rammap.c 
b/drivers/gpu/drm/nouveau/nvkm/subdev/bios/rammap.c
index b57c370..131d967 100644
--- a/drivers/gpu/drm/nouveau/nvkm/subdev/bios/rammap.c
+++ b/drivers/gpu/drm/nouveau/nvkm/subdev/bios/rammap.c
@@ -207,9 +207,12 @@ nvbios_rammapSp(struct nvkm_bios *bios, u32 data,
                p->ramcfg_10_03_0f = (nvbios_rd08(bios, data + 0x03) & 0x0f) >> 
0;
                p->ramcfg_10_04_01 = (nvbios_rd08(bios, data + 0x04) & 0x01) >> 
0;
                p->ramcfg_FBVDDQ   = (nvbios_rd08(bios, data + 0x04) & 0x08) >> 
3;
-               p->ramcfg_10_05    = (nvbios_rd08(bios, data + 0x05) & 0xff) >> 
0;
-               p->ramcfg_10_06    = (nvbios_rd08(bios, data + 0x06) & 0xff) >> 
0;
-               p->ramcfg_10_07    = (nvbios_rd08(bios, data + 0x07) & 0xff) >> 
0;
+               p->ramcfg_10_05_0f = (nvbios_rd08(bios, data + 0x05) & 0x0f) >> 
0;
+               p->ramcfg_10_05_f0 = (nvbios_rd08(bios, data + 0x05) & 0xf0) >> 
4;
+               p->ramcfg_10_06_0f = (nvbios_rd08(bios, data + 0x06) & 0x0f) >> 
0;
+               p->ramcfg_10_06_f0 = (nvbios_rd08(bios, data + 0x06) & 0xf0) >> 
4;
+               p->ramcfg_10_07_0f = (nvbios_rd08(bios, data + 0x07) & 0x0f) >> 
0;
+               p->ramcfg_10_07_f0 = (nvbios_rd08(bios, data + 0x07) & 0xf0) >> 
4;
                p->ramcfg_10_08    = (nvbios_rd08(bios, data + 0x08) & 0xff) >> 
0;
                p->ramcfg_10_09_0f = (nvbios_rd08(bios, data + 0x09) & 0x0f) >> 
0;
                p->ramcfg_10_09_f0 = (nvbios_rd08(bios, data + 0x09) & 0xf0) >> 
4;
diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgt215.c 
b/drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgt215.c
index dd80de1..8454899 100644
--- a/drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgt215.c
+++ b/drivers/gpu/drm/nouveau/nvkm/subdev/fb/ramgt215.c
@@ -705,11 +705,15 @@ gt215_ram_calc(struct nvkm_ram *base, u32 freq)
        ram_nsec(fuc, 20000);
 
        if (next->bios.rammap_10_04_08) {
-               ram_wr32(fuc, 0x1005a0, next->bios.ramcfg_10_06 << 16 |
-                                       next->bios.ramcfg_10_05 << 8 |
-                                       next->bios.ramcfg_10_05);
+               ram_wr32(fuc, 0x1005a0, next->bios.ramcfg_10_06_f0 << 20 |
+                                       next->bios.ramcfg_10_06_0f << 16 |
+                                       next->bios.ramcfg_10_05_f0 << 12 |
+                                       next->bios.ramcfg_10_05_0f << 8 |
+                                       next->bios.ramcfg_10_05_f0 << 4 |
+                                       next->bios.ramcfg_10_05_0f);
                ram_wr32(fuc, 0x1005a4, next->bios.ramcfg_10_08 << 8 |
-                                       next->bios.ramcfg_10_07);
+                                       next->bios.ramcfg_10_07_f0 << 4 |
+                                       next->bios.ramcfg_10_07_0f);
                ram_wr32(fuc, 0x10f804, next->bios.ramcfg_10_09_f0 << 20 |
                                        next->bios.ramcfg_10_03_0f << 16 |
                                        next->bios.ramcfg_10_09_0f |
-- 
2.9.3

_______________________________________________
Nouveau mailing list
Nouveau@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/nouveau

Reply via email to