nvc0: disable linked tsc mode in compute launch descriptor
authorIlia Mirkin <imirkin@alum.mit.edu>
Mon, 13 Feb 2017 16:14:51 +0000 (11:14 -0500)
committerIlia Mirkin <imirkin@alum.mit.edu>
Tue, 14 Feb 2017 01:10:53 +0000 (20:10 -0500)
Empirically, this makes things work. Presumably this was originally
copied from the blob, which does make use of linked tsc mode.

Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99532
Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
Reviewed-by: Samuel Pitoiset <samuel.pitoiset@gmail.com>
Cc: mesa-stable@lists.freedesktop.org
src/gallium/drivers/nouveau/nvc0/nve4_compute.c
src/gallium/drivers/nouveau/nvc0/nve4_compute.h

index d661c000b32a6734cb25da19072ae209af45fedf..15b4750d3ad35970b0c009df8029700f50a6af1c 100644 (file)
@@ -816,6 +816,7 @@ nve4_compute_dump_launch_desc(const struct nve4_cp_launch_desc *desc)
    debug_printf("barrier count: %u\n", desc->bar_alloc);
    debug_printf("$r count: %u\n", desc->gpr_alloc);
    debug_printf("cache split: %s\n", nve4_cache_split_name(desc->cache_split));
+   debug_printf("linked tsc: %d\n", desc->linked_tsc);
 
    for (i = 0; i < 8; ++i) {
       uint64_t address;
index b98c65d4a0918007b96b97797af93f6edb10ffa2..5fe58b96718f290e405a729e3527dc219c1ff5e0 100644 (file)
@@ -8,7 +8,10 @@ struct nve4_cp_launch_desc
 {
    u32 unk0[8];
    u32 entry;
-   u32 unk9[3];
+   u32 unk9[2];
+   u32 unk11_0      : 30;
+   u32 linked_tsc   : 1;
+   u32 unk11_31     : 1;
    u32 griddim_x    : 31;
    u32 unk12        : 1;
    u16 griddim_y;
@@ -48,7 +51,7 @@ nve4_cp_launch_desc_init_default(struct nve4_cp_launch_desc *desc)
    memset(desc, 0, sizeof(*desc));
 
    desc->unk0[7]  = 0xbc000000;
-   desc->unk9[2]  = 0x44014000;
+   desc->unk11_0  = 0x04014000;
    desc->unk47_20 = 0x300;
 }