drm/nouveau/bios/ga10[024]: initial support
authorBen Skeggs <bskeggs@redhat.com>
Wed, 13 Jan 2021 07:12:52 +0000 (17:12 +1000)
committerBen Skeggs <bskeggs@redhat.com>
Fri, 15 Jan 2021 00:25:19 +0000 (10:25 +1000)
Forcing PRAMIN-shadowing off for GA100, as it requires display, and we don't
know if/where the fuse register for detecting its presence is.

Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
drivers/gpu/drm/nouveau/nvkm/engine/device/base.c
drivers/gpu/drm/nouveau/nvkm/subdev/bios/shadowramin.c

index 95c470d..7c35c32 100644 (file)
@@ -2655,18 +2655,21 @@ nv168_chipset = {
 static const struct nvkm_device_chip
 nv170_chipset = {
        .name = "GA100",
+       .bios = nvkm_bios_new,
        .pci = gp100_pci_new,
 };
 
 static const struct nvkm_device_chip
 nv172_chipset = {
        .name = "GA102",
+       .bios = nvkm_bios_new,
        .pci = gp100_pci_new,
 };
 
 static const struct nvkm_device_chip
 nv174_chipset = {
        .name = "GA104",
+       .bios = nvkm_bios_new,
        .pci = gp100_pci_new,
 };
 
index 3634cd0..023ddc7 100644 (file)
@@ -64,6 +64,9 @@ pramin_init(struct nvkm_bios *bios, const char *name)
                return NULL;
 
        /* we can't get the bios image pointer without PDISP */
+       if (device->card_type >= GA100)
+               addr = device->chipset == 0x170; /*XXX: find the fuse reg for this */
+       else
        if (device->card_type >= GM100)
                addr = nvkm_rd32(device, 0x021c04);
        else