]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/gpu/drm/nouveau/nvkm/engine/device/base.c
drm/nouveau/pci/gp104: initial support
[karo-tx-linux.git] / drivers / gpu / drm / nouveau / nvkm / engine / device / base.c
index 6b7c8d093d2ca5636a6cddb85edcf450e8926673..d9173cb42eeedd3f1ddd8c9786c446f657441d5b 100644 (file)
@@ -2157,12 +2157,36 @@ nv130_chipset = {
        .devinit = gm200_devinit_new,
        .fb = gp100_fb_new,
        .fuse = gm107_fuse_new,
+       .gpio = gk104_gpio_new,
+       .i2c = gm200_i2c_new,
+       .ibus = gm200_ibus_new,
        .imem = nv50_instmem_new,
+       .ltc = gp100_ltc_new,
        .mc = gp100_mc_new,
        .mmu = gf100_mmu_new,
+       .secboot = gm200_secboot_new,
        .pci = gp100_pci_new,
        .timer = gk20a_timer_new,
        .top = gk104_top_new,
+       .ce[0] = gp100_ce_new,
+       .ce[1] = gp100_ce_new,
+       .ce[2] = gp100_ce_new,
+       .ce[3] = gp100_ce_new,
+       .ce[4] = gp100_ce_new,
+       .ce[5] = gp100_ce_new,
+       .dma = gf119_dma_new,
+       .disp = gp100_disp_new,
+       .fifo = gp100_fifo_new,
+       .gr = gp100_gr_new,
+       .sw = gf100_sw_new,
+};
+
+static const struct nvkm_device_chip
+nv134_chipset = {
+       .name = "GP104",
+       .mc = gp100_mc_new,
+       .pci = gp100_pci_new,
+       .top = gk104_top_new,
 };
 
 static int
@@ -2599,6 +2623,7 @@ nvkm_device_ctor(const struct nvkm_device_func *func,
                case 0x126: device->chip = &nv126_chipset; break;
                case 0x12b: device->chip = &nv12b_chipset; break;
                case 0x130: device->chip = &nv130_chipset; break;
+               case 0x134: device->chip = &nv134_chipset; break;
                default:
                        nvdev_error(device, "unknown chipset (%08x)\n", boot0);
                        goto done;