drm/nve0/gr: remove 0x404160 bashing from hub fuc
Triggers PIBUS interrupts due to register not existing anymore, and as a result HUB_SET_CHAN times out. After this commit, our fuc loads and can accelerate at least fbcon, X, glxgears and OA on NVE4. NVE7 not tested as of yet. Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
This commit is contained in:
parent
1978a2f280
commit
ec6566f323
|
@ -468,28 +468,6 @@ ih:
|
|||
bclr $flags $p0
|
||||
iret
|
||||
|
||||
// Not real sure, but, MEM_CMD 7 will hang forever if this isn't done
|
||||
ctx_4160s:
|
||||
mov $r14 0x4160
|
||||
sethi $r14 0x400000
|
||||
mov $r15 1
|
||||
call #nv_wr32
|
||||
ctx_4160s_wait:
|
||||
call #nv_rd32
|
||||
xbit $r15 $r15 4
|
||||
bra e #ctx_4160s_wait
|
||||
ret
|
||||
|
||||
// Without clearing again at end of xfer, some things cause PGRAPH
|
||||
// to hang with STATUS=0x00000007 until it's cleared.. fbcon can
|
||||
// still function with it set however...
|
||||
ctx_4160c:
|
||||
mov $r14 0x4160
|
||||
sethi $r14 0x400000
|
||||
clear b32 $r15
|
||||
call #nv_wr32
|
||||
ret
|
||||
|
||||
// Again, not real sure
|
||||
//
|
||||
// In: $r15 value to set 0x404170 to
|
||||
|
@ -630,7 +608,6 @@ ctx_load:
|
|||
// In: $r2 channel address
|
||||
//
|
||||
ctx_chan:
|
||||
call #ctx_4160s
|
||||
call #ctx_load
|
||||
mov $r10 12 // DONE_UNK12
|
||||
call #wait_donez
|
||||
|
@ -642,7 +619,6 @@ ctx_chan:
|
|||
iord $r2 I[$r1 + 0x000]
|
||||
or $r2 $r2
|
||||
bra ne #ctx_chan_wait
|
||||
call #ctx_4160c
|
||||
ret
|
||||
|
||||
// Execute per-context state overrides list
|
||||
|
@ -709,7 +685,6 @@ ctx_xfer:
|
|||
ctx_xfer_pre:
|
||||
mov $r15 0x10
|
||||
call #ctx_86c
|
||||
call #ctx_4160s
|
||||
bra not $p1 #ctx_xfer_exec
|
||||
|
||||
ctx_xfer_pre_load:
|
||||
|
@ -798,7 +773,6 @@ ctx_xfer:
|
|||
call #ctx_mmio_exec
|
||||
|
||||
ctx_xfer_no_post_mmio:
|
||||
call #ctx_4160c
|
||||
|
||||
ctx_xfer_done:
|
||||
ret
|
||||
|
|
|
@ -553,7 +553,7 @@ uint32_t nve0_grhub_code[] = {
|
|||
0xd00799f0,
|
||||
0x32f40089,
|
||||
0x0231f401,
|
||||
0x082921f5,
|
||||
0x07fb21f5,
|
||||
0x085c87f1,
|
||||
0xbd0684b6,
|
||||
0x0799f094,
|
||||
|
@ -563,7 +563,7 @@ uint32_t nve0_grhub_code[] = {
|
|||
0x99f094bd,
|
||||
0x0089d006,
|
||||
0xf50131f4,
|
||||
0xf1082921,
|
||||
0xf107fb21,
|
||||
0xb6085c87,
|
||||
0x94bd0684,
|
||||
0xd00699f0,
|
||||
|
@ -572,7 +572,7 @@ uint32_t nve0_grhub_code[] = {
|
|||
0xb920f931,
|
||||
0x32f40212,
|
||||
0x0232f401,
|
||||
0x082921f5,
|
||||
0x07fb21f5,
|
||||
0x17f120fc,
|
||||
0x14b60b00,
|
||||
0x0012d006,
|
||||
|
@ -582,7 +582,7 @@ uint32_t nve0_grhub_code[] = {
|
|||
0x0131f40d,
|
||||
0xf50232f4,
|
||||
/* 0x0537: chsw_done */
|
||||
0xf1082921,
|
||||
0xf107fb21,
|
||||
0xb60b0c17,
|
||||
0x27f00614,
|
||||
0x0012d001,
|
||||
|
@ -594,7 +594,7 @@ uint32_t nve0_grhub_code[] = {
|
|||
0xb0ff200e,
|
||||
0x1bf401e4,
|
||||
0x02f2b90d,
|
||||
0x07b521f5,
|
||||
0x078f21f5,
|
||||
/* 0x0567: main_not_ctx_chan */
|
||||
0xb0420ef4,
|
||||
0x1bf402e4,
|
||||
|
@ -604,7 +604,7 @@ uint32_t nve0_grhub_code[] = {
|
|||
0x0089d007,
|
||||
0xf40132f4,
|
||||
0x21f50232,
|
||||
0x87f10829,
|
||||
0x87f107fb,
|
||||
0x84b6085c,
|
||||
0xf094bd06,
|
||||
0x89d00799,
|
||||
|
@ -653,267 +653,200 @@ uint32_t nve0_grhub_code[] = {
|
|||
0xfe80fc90,
|
||||
0x80fc0088,
|
||||
0xf80032f4,
|
||||
/* 0x0631: ctx_4160s */
|
||||
0x60e7f101,
|
||||
/* 0x0631: ctx_4170s */
|
||||
0x70e7f101,
|
||||
0x40e3f041,
|
||||
0xf401f7f0,
|
||||
/* 0x063e: ctx_4160s_wait */
|
||||
0x21f48d21,
|
||||
0x04ffc868,
|
||||
0xf8fa0bf4,
|
||||
/* 0x0649: ctx_4160c */
|
||||
0x60e7f100,
|
||||
0x40e3f041,
|
||||
0x21f4f4bd,
|
||||
/* 0x0657: ctx_4170s */
|
||||
0xf100f88d,
|
||||
0xf04170e7,
|
||||
0xf5f040e3,
|
||||
0x8d21f410,
|
||||
/* 0x0666: ctx_4170w */
|
||||
0xe7f100f8,
|
||||
0xe3f04170,
|
||||
0x6821f440,
|
||||
0xf410f4f0,
|
||||
0x00f8f31b,
|
||||
/* 0x0678: ctx_redswitch */
|
||||
0x0614e7f1,
|
||||
0xf106e4b6,
|
||||
0xd00270f7,
|
||||
0xf7f000ef,
|
||||
/* 0x0689: ctx_redswitch_delay */
|
||||
0x01f2b608,
|
||||
0xf1fd1bf4,
|
||||
0xd00770f7,
|
||||
0x00f800ef,
|
||||
/* 0x0698: ctx_86c */
|
||||
0x086ce7f1,
|
||||
0xd006e4b6,
|
||||
0xe7f100ef,
|
||||
0xe3f08a14,
|
||||
0x8d21f440,
|
||||
0xa86ce7f1,
|
||||
0xf441e3f0,
|
||||
0xf410f5f0,
|
||||
0x00f88d21,
|
||||
/* 0x06b8: ctx_load */
|
||||
0x083c87f1,
|
||||
0xbd0684b6,
|
||||
0x0599f094,
|
||||
0xf00089d0,
|
||||
0x21f40ca7,
|
||||
0x2417f1c9,
|
||||
0x0614b60a,
|
||||
0xf10010d0,
|
||||
0xb60b0037,
|
||||
0x32d00634,
|
||||
0x0c17f140,
|
||||
0x0614b60a,
|
||||
0xd00747f0,
|
||||
0x14d00012,
|
||||
/* 0x06f1: ctx_chan_wait_0 */
|
||||
0x4014cf40,
|
||||
0xf41f44f0,
|
||||
0x32d0fa1b,
|
||||
0x000bfe00,
|
||||
0xb61f2af0,
|
||||
0x20b60424,
|
||||
0x3c87f102,
|
||||
0x0684b608,
|
||||
0x99f094bd,
|
||||
0x0089d008,
|
||||
0x0a0417f1,
|
||||
0xd00614b6,
|
||||
0x17f10012,
|
||||
0x14b60a20,
|
||||
0x0227f006,
|
||||
0x800023f1,
|
||||
0xf00012d0,
|
||||
0x27f11017,
|
||||
0x23f00300,
|
||||
0x0512fa02,
|
||||
0x87f103f8,
|
||||
0x84b6085c,
|
||||
/* 0x0640: ctx_4170w */
|
||||
0x4170e7f1,
|
||||
0xf440e3f0,
|
||||
0xf4f06821,
|
||||
0xf31bf410,
|
||||
/* 0x0652: ctx_redswitch */
|
||||
0xe7f100f8,
|
||||
0xe4b60614,
|
||||
0x70f7f106,
|
||||
0x00efd002,
|
||||
/* 0x0663: ctx_redswitch_delay */
|
||||
0xb608f7f0,
|
||||
0x1bf401f2,
|
||||
0x70f7f1fd,
|
||||
0x00efd007,
|
||||
/* 0x0672: ctx_86c */
|
||||
0xe7f100f8,
|
||||
0xe4b6086c,
|
||||
0x00efd006,
|
||||
0x8a14e7f1,
|
||||
0xf440e3f0,
|
||||
0xe7f18d21,
|
||||
0xe3f0a86c,
|
||||
0x8d21f441,
|
||||
/* 0x0692: ctx_load */
|
||||
0x87f100f8,
|
||||
0x84b6083c,
|
||||
0xf094bd06,
|
||||
0x89d00899,
|
||||
0xc1019800,
|
||||
0x981814b6,
|
||||
0x25b6c002,
|
||||
0x0512fd08,
|
||||
0xf1160180,
|
||||
0x89d00599,
|
||||
0x0ca7f000,
|
||||
0xf1c921f4,
|
||||
0xb60a2417,
|
||||
0x10d00614,
|
||||
0x0037f100,
|
||||
0x0634b60b,
|
||||
0xf14032d0,
|
||||
0xb60a0c17,
|
||||
0x47f00614,
|
||||
0x0012d007,
|
||||
/* 0x06cb: ctx_chan_wait_0 */
|
||||
0xcf4014d0,
|
||||
0x44f04014,
|
||||
0xfa1bf41f,
|
||||
0xfe0032d0,
|
||||
0x2af0000b,
|
||||
0x0424b61f,
|
||||
0xf10220b6,
|
||||
0xb6083c87,
|
||||
0x94bd0684,
|
||||
0xd00999f0,
|
||||
0x27f10089,
|
||||
0x24b60a04,
|
||||
0x0021d006,
|
||||
0xf10127f0,
|
||||
0xb60a2017,
|
||||
0x12d00614,
|
||||
0x0017f100,
|
||||
0x0613f002,
|
||||
0xf80501fa,
|
||||
0x5c87f103,
|
||||
0xd00899f0,
|
||||
0x17f10089,
|
||||
0x14b60a04,
|
||||
0x0012d006,
|
||||
0x0a2017f1,
|
||||
0xf00614b6,
|
||||
0x23f10227,
|
||||
0x12d08000,
|
||||
0x1017f000,
|
||||
0x030027f1,
|
||||
0xfa0223f0,
|
||||
0x03f80512,
|
||||
0x085c87f1,
|
||||
0xbd0684b6,
|
||||
0x0899f094,
|
||||
0x980089d0,
|
||||
0x14b6c101,
|
||||
0xc0029818,
|
||||
0xfd0825b6,
|
||||
0x01800512,
|
||||
0x3c87f116,
|
||||
0x0684b608,
|
||||
0x99f094bd,
|
||||
0x0089d009,
|
||||
0x085c87f1,
|
||||
0xbd0684b6,
|
||||
0x0599f094,
|
||||
0xf80089d0,
|
||||
/* 0x07b5: ctx_chan */
|
||||
0x3121f500,
|
||||
0xb821f506,
|
||||
0x0ca7f006,
|
||||
0xf1c921f4,
|
||||
0xb60a1017,
|
||||
0x27f00614,
|
||||
0x0012d005,
|
||||
/* 0x07d0: ctx_chan_wait */
|
||||
0xfd0012cf,
|
||||
0x1bf40522,
|
||||
0x4921f5fa,
|
||||
/* 0x07df: ctx_mmio_exec */
|
||||
0x9800f806,
|
||||
0x27f18103,
|
||||
0x24b60a04,
|
||||
0x0023d006,
|
||||
/* 0x07ee: ctx_mmio_loop */
|
||||
0x34c434bd,
|
||||
0x0f1bf4ff,
|
||||
0x030057f1,
|
||||
0xfa0653f0,
|
||||
0x03f80535,
|
||||
/* 0x0800: ctx_mmio_pull */
|
||||
0x98c04e98,
|
||||
0x21f4c14f,
|
||||
0x0830b68d,
|
||||
0xf40112b6,
|
||||
/* 0x0812: ctx_mmio_done */
|
||||
0x0398df1b,
|
||||
0x0023d016,
|
||||
0xf1800080,
|
||||
0x0a0427f1,
|
||||
0xd00624b6,
|
||||
0x27f00021,
|
||||
0x2017f101,
|
||||
0x0614b60a,
|
||||
0xf10012d0,
|
||||
0xf0020017,
|
||||
0x01fa0613,
|
||||
0xf803f806,
|
||||
/* 0x0829: ctx_xfer */
|
||||
0x0611f400,
|
||||
/* 0x082f: ctx_xfer_pre */
|
||||
0xf01102f4,
|
||||
0x21f510f7,
|
||||
0x21f50698,
|
||||
0xf103f805,
|
||||
0xb6085c87,
|
||||
0x94bd0684,
|
||||
0xd00999f0,
|
||||
0x87f10089,
|
||||
0x84b6085c,
|
||||
0xf094bd06,
|
||||
0x89d00599,
|
||||
/* 0x078f: ctx_chan */
|
||||
0xf500f800,
|
||||
0xf0069221,
|
||||
0x21f40ca7,
|
||||
0x1017f1c9,
|
||||
0x0614b60a,
|
||||
0xd00527f0,
|
||||
/* 0x07a6: ctx_chan_wait */
|
||||
0x12cf0012,
|
||||
0x0522fd00,
|
||||
0xf8fa1bf4,
|
||||
/* 0x07b1: ctx_mmio_exec */
|
||||
0x81039800,
|
||||
0x0a0427f1,
|
||||
0xd00624b6,
|
||||
0x34bd0023,
|
||||
/* 0x07c0: ctx_mmio_loop */
|
||||
0xf4ff34c4,
|
||||
0x57f10f1b,
|
||||
0x53f00300,
|
||||
0x0535fa06,
|
||||
/* 0x07d2: ctx_mmio_pull */
|
||||
0x4e9803f8,
|
||||
0xc14f98c0,
|
||||
0xb68d21f4,
|
||||
0x12b60830,
|
||||
0xdf1bf401,
|
||||
/* 0x07e4: ctx_mmio_done */
|
||||
0xd0160398,
|
||||
0x00800023,
|
||||
0x0017f180,
|
||||
0x0613f002,
|
||||
0xf80601fa,
|
||||
/* 0x07fb: ctx_xfer */
|
||||
0xf400f803,
|
||||
0x02f40611,
|
||||
/* 0x0801: ctx_xfer_pre */
|
||||
0x10f7f00d,
|
||||
0x067221f5,
|
||||
/* 0x080b: ctx_xfer_pre_load */
|
||||
0xf01c11f4,
|
||||
0x21f502f7,
|
||||
0x21f50631,
|
||||
0x21f50640,
|
||||
0xf4bd0652,
|
||||
0x063121f5,
|
||||
0x069221f5,
|
||||
/* 0x0824: ctx_xfer_exec */
|
||||
0xf1160198,
|
||||
0xb6041427,
|
||||
0x20d00624,
|
||||
0x00e7f100,
|
||||
0x41e3f0a5,
|
||||
0xf4021fb9,
|
||||
0xe0b68d21,
|
||||
0x01fcf004,
|
||||
0xb6022cf0,
|
||||
0xf2fd0124,
|
||||
0x8d21f405,
|
||||
0x4afc17f1,
|
||||
0xf00213f0,
|
||||
0x12d00c27,
|
||||
0x0721f500,
|
||||
0xfc27f102,
|
||||
0x0223f047,
|
||||
0xf00020d0,
|
||||
0x20b6012c,
|
||||
0x0012d003,
|
||||
0xf001acf0,
|
||||
0xb7f006a5,
|
||||
0x140c9800,
|
||||
0xf0150d98,
|
||||
0x21f500e7,
|
||||
0xa7f0015c,
|
||||
0x0321f508,
|
||||
0x0721f501,
|
||||
0x2201f402,
|
||||
0xf40ca7f0,
|
||||
0x17f1c921,
|
||||
0x14b60a10,
|
||||
0x0527f006,
|
||||
/* 0x08ab: ctx_xfer_post_save_wait */
|
||||
0xcf0012d0,
|
||||
0x22fd0012,
|
||||
0xfa1bf405,
|
||||
/* 0x08b7: ctx_xfer_post */
|
||||
0xf02e02f4,
|
||||
0x21f502f7,
|
||||
0xf4bd0631,
|
||||
0x067221f5,
|
||||
0x022621f5,
|
||||
0x064021f5,
|
||||
0x21f5f4bd,
|
||||
0x11f40631,
|
||||
/* 0x083d: ctx_xfer_pre_load */
|
||||
0x02f7f01c,
|
||||
0x065721f5,
|
||||
0x066621f5,
|
||||
0x067821f5,
|
||||
0x21f5f4bd,
|
||||
0x21f50657,
|
||||
/* 0x0856: ctx_xfer_exec */
|
||||
0x019806b8,
|
||||
0x1427f116,
|
||||
0x0624b604,
|
||||
0xf10020d0,
|
||||
0xf0a500e7,
|
||||
0x1fb941e3,
|
||||
0x8d21f402,
|
||||
0xf004e0b6,
|
||||
0x2cf001fc,
|
||||
0x0124b602,
|
||||
0xf405f2fd,
|
||||
0x17f18d21,
|
||||
0x13f04afc,
|
||||
0x0c27f002,
|
||||
0xf50012d0,
|
||||
0xf1020721,
|
||||
0xf047fc27,
|
||||
0x20d00223,
|
||||
0x012cf000,
|
||||
0xd00320b6,
|
||||
0xacf00012,
|
||||
0x06a5f001,
|
||||
0x9800b7f0,
|
||||
0x0d98140c,
|
||||
0x00e7f015,
|
||||
0x015c21f5,
|
||||
0xf508a7f0,
|
||||
0xf5010321,
|
||||
0xf4020721,
|
||||
0xa7f02201,
|
||||
0xc921f40c,
|
||||
0x0a1017f1,
|
||||
0xf00614b6,
|
||||
0x12d00527,
|
||||
/* 0x08dd: ctx_xfer_post_save_wait */
|
||||
0x0012cf00,
|
||||
0xf40522fd,
|
||||
0x02f4fa1b,
|
||||
/* 0x08e9: ctx_xfer_post */
|
||||
0x02f7f032,
|
||||
0x065721f5,
|
||||
0x21f5f4bd,
|
||||
0x21f50698,
|
||||
0x21f50226,
|
||||
0xf4bd0666,
|
||||
0x065721f5,
|
||||
0x981011f4,
|
||||
0x11fd8001,
|
||||
0x070bf405,
|
||||
0x07df21f5,
|
||||
/* 0x0914: ctx_xfer_no_post_mmio */
|
||||
0x064921f5,
|
||||
/* 0x0918: ctx_xfer_done */
|
||||
0x000000f8,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x80019810,
|
||||
0xf40511fd,
|
||||
0x21f5070b,
|
||||
/* 0x08e2: ctx_xfer_no_post_mmio */
|
||||
/* 0x08e2: ctx_xfer_done */
|
||||
0x00f807b1,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
0x00000000,
|
||||
|
|
Loading…
Reference in New Issue