-
Notifications
You must be signed in to change notification settings - Fork 95
Closed
Description
We have compared MOCS table which programs gmmlib and i915 driver. They don't match. Some key details:
i915 driver taken from drm-tip: https://cgit.freedesktop.org/drm/drm-tip/tree/drivers/gpu/drm/i915/intel_mocs.c?id=b3c316b0b869252481acc8d88138aae7619de582#n136. It introduced ICL specific MOCS table starting from this commit: https://cgit.freedesktop.org/drm/drm-tip/commit/drivers/gpu/drm/i915/intel_mocs.c?id=b3c316b0b869252481acc8d88138aae7619de582
i915 programs table as (that's printout of our custom debug printk):
[ 3.326058] [drm] MOCS table->table[0] control_value 0x5, l3cc_value 0x10
[ 3.326060] [drm] MOCS table->table[1] control_value 0x4, l3cc_value 0x30
[ 3.326061] [drm] MOCS table->table[2] control_value 0x37, l3cc_value 0x30
[ 3.326063] [drm] MOCS table->table[3] control_value 0x5, l3cc_value 0x10
[ 3.326065] [drm] MOCS table->table[4] control_value 0x5, l3cc_value 0x30
[ 3.326066] [drm] MOCS table->table[5] control_value 0x37, l3cc_value 0x10
[ 3.326068] [drm] MOCS table->table[6] control_value 0x17, l3cc_value 0x10
[ 3.326069] [drm] MOCS table->table[7] control_value 0x17, l3cc_value 0x30
[ 3.326071] [drm] MOCS table->table[8] control_value 0x27, l3cc_value 0x10
[ 3.326073] [drm] MOCS table->table[9] control_value 0x27, l3cc_value 0x30
[ 3.326074] [drm] MOCS table->table[10] control_value 0x77, l3cc_value 0x10
[ 3.326076] [drm] MOCS table->table[11] control_value 0x77, l3cc_value 0x30
[ 3.326077] [drm] MOCS table->table[12] control_value 0x57, l3cc_value 0x10
[ 3.326079] [drm] MOCS table->table[13] control_value 0x57, l3cc_value 0x30
[ 3.326081] [drm] MOCS table->table[14] control_value 0x67, l3cc_value 0x10
[ 3.326082] [drm] MOCS table->table[15] control_value 0x67, l3cc_value 0x30
[ 3.326084] [drm] MOCS table->table[16] control_value 0x4005, l3cc_value 0x10
[ 3.326085] [drm] MOCS table->table[17] control_value 0x4005, l3cc_value 0x30
[ 3.326087] [drm] MOCS table->table[18] control_value 0x60037, l3cc_value 0x30
[ 3.326089] [drm] MOCS table->table[19] control_value 0x737, l3cc_value 0x30
[ 3.326090] [drm] MOCS table->table[20] control_value 0x337, l3cc_value 0x30
[ 3.326092] [drm] MOCS table->table[21] control_value 0x137, l3cc_value 0x30
[ 3.326094] [drm] MOCS table->table[22] control_value 0x3b7, l3cc_value 0x30
[ 3.326095] [drm] MOCS table->table[23] control_value 0x7b7, l3cc_value 0x30
[ 3.326097] [drm] MOCS table->table[24] control_value 0x0, l3cc_value 0x0
[ 3.326098] [drm] MOCS table->table[25] control_value 0x0, l3cc_value 0x0
[ 3.326100] [drm] MOCS table->table[26] control_value 0x0, l3cc_value 0x0
[ 3.326102] [drm] MOCS table->table[27] control_value 0x0, l3cc_value 0x0
[ 3.326103] [drm] MOCS table->table[28] control_value 0x0, l3cc_value 0x0
[ 3.326105] [drm] MOCS table->table[29] control_value 0x0, l3cc_value 0x0
[ 3.326106] [drm] MOCS table->table[30] control_value 0x0, l3cc_value 0x0
[ 3.326108] [drm] MOCS table->table[31] control_value 0x0, l3cc_value 0x0
[ 3.326110] [drm] MOCS table->table[32] control_value 0x0, l3cc_value 0x0
[ 3.326111] [drm] MOCS table->table[33] control_value 0x0, l3cc_value 0x0
[ 3.326113] [drm] MOCS table->table[34] control_value 0x0, l3cc_value 0x0
[ 3.326114] [drm] MOCS table->table[35] control_value 0x0, l3cc_value 0x0
[ 3.326116] [drm] MOCS table->table[36] control_value 0x0, l3cc_value 0x0
[ 3.326118] [drm] MOCS table->table[37] control_value 0x0, l3cc_value 0x0
[ 3.326119] [drm] MOCS table->table[38] control_value 0x0, l3cc_value 0x0
[ 3.326121] [drm] MOCS table->table[39] control_value 0x0, l3cc_value 0x0
[ 3.326122] [drm] MOCS table->table[40] control_value 0x0, l3cc_value 0x0
[ 3.326124] [drm] MOCS table->table[41] control_value 0x0, l3cc_value 0x0
[ 3.326126] [drm] MOCS table->table[42] control_value 0x0, l3cc_value 0x0
[ 3.326127] [drm] MOCS table->table[43] control_value 0x0, l3cc_value 0x0
[ 3.326129] [drm] MOCS table->table[44] control_value 0x0, l3cc_value 0x0
[ 3.326130] [drm] MOCS table->table[45] control_value 0x0, l3cc_value 0x0
[ 3.326132] [drm] MOCS table->table[46] control_value 0x0, l3cc_value 0x0
[ 3.326133] [drm] MOCS table->table[47] control_value 0x0, l3cc_value 0x0
[ 3.326135] [drm] MOCS table->table[48] control_value 0x0, l3cc_value 0x0
[ 3.326137] [drm] MOCS table->table[49] control_value 0x0, l3cc_value 0x0
[ 3.326138] [drm] MOCS table->table[50] control_value 0x0, l3cc_value 0x0
[ 3.326140] [drm] MOCS table->table[51] control_value 0x0, l3cc_value 0x0
[ 3.326141] [drm] MOCS table->table[52] control_value 0x0, l3cc_value 0x0
[ 3.326143] [drm] MOCS table->table[53] control_value 0x0, l3cc_value 0x0
[ 3.326144] [drm] MOCS table->table[54] control_value 0x0, l3cc_value 0x0
[ 3.326146] [drm] MOCS table->table[55] control_value 0x0, l3cc_value 0x0
[ 3.326147] [drm] MOCS table->table[56] control_value 0x0, l3cc_value 0x0
[ 3.326149] [drm] MOCS table->table[57] control_value 0x0, l3cc_value 0x0
[ 3.326150] [drm] MOCS table->table[58] control_value 0x0, l3cc_value 0x0
[ 3.326152] [drm] MOCS table->table[59] control_value 0x0, l3cc_value 0x0
[ 3.326154] [drm] MOCS table->table[60] control_value 0x0, l3cc_value 0x0
[ 3.326155] [drm] MOCS table->table[61] control_value 0x0, l3cc_value 0x0
[ 3.326157] [drm] MOCS table->table[62] control_value 0x37, l3cc_value 0x10
[ 3.326158] [drm] MOCS table->table[63] control_value 0x37, l3cc_value 0x10
[ 3.326160] [drm] MOCS n_entries 64
And gmmlib at ac68e2c as:
[idx 0] L3 0x10, LeCC 0x9
[idx 1] L3 0x30, LeCC 0x3b
[idx 2] L3 0x10, LeCC 0x39
[idx 3] L3 0x30, LeCC 0x33
[idx 4] L3 0x10, LeCC 0x3b
[idx 5] L3 0x30, LeCC 0x39
[idx 6] L3 0x30, LeCC 0x37
[idx 7] L3 0x10, LeCC 0x33
[idx 8] L3 0x10, LeCC 0x37
[idx 9] L3 0x30, LeCC 0x17
[idx 10] L3 0x30, LeCC 0x6003b
[idx 11] L3 0x0, LeCC 0x0
[idx 12] L3 0x0, LeCC 0x0
[idx 13] L3 0x0, LeCC 0x0
[idx 14] L3 0x0, LeCC 0x0
[idx 15] L3 0x0, LeCC 0x0
[idx 16] L3 0x0, LeCC 0x0
[idx 17] L3 0x0, LeCC 0x0
[idx 18] L3 0x0, LeCC 0x0
[idx 19] L3 0x0, LeCC 0x0
[idx 20] L3 0x0, LeCC 0x0
[idx 21] L3 0x0, LeCC 0x0
[idx 22] L3 0x0, LeCC 0x0
[idx 23] L3 0x0, LeCC 0x0
[idx 24] L3 0x0, LeCC 0x0
[idx 25] L3 0x0, LeCC 0x0
[idx 26] L3 0x0, LeCC 0x0
[idx 27] L3 0x0, LeCC 0x0
[idx 28] L3 0x0, LeCC 0x0
[idx 29] L3 0x0, LeCC 0x0
[idx 30] L3 0x0, LeCC 0x0
[idx 31] L3 0x0, LeCC 0x0
[idx 32] L3 0x0, LeCC 0x0
[idx 33] L3 0x0, LeCC 0x0
[idx 34] L3 0x0, LeCC 0x0
[idx 35] L3 0x0, LeCC 0x0
[idx 36] L3 0x0, LeCC 0x0
[idx 37] L3 0x0, LeCC 0x0
[idx 38] L3 0x0, LeCC 0x0
[idx 39] L3 0x0, LeCC 0x0
[idx 40] L3 0x0, LeCC 0x0
[idx 41] L3 0x0, LeCC 0x0
[idx 42] L3 0x0, LeCC 0x0
[idx 43] L3 0x0, LeCC 0x0
[idx 44] L3 0x0, LeCC 0x0
[idx 45] L3 0x0, LeCC 0x0
[idx 46] L3 0x0, LeCC 0x0
[idx 47] L3 0x0, LeCC 0x0
[idx 48] L3 0x30, LeCC 0x3b
[idx 49] L3 0x0, LeCC 0x0
[idx 50] L3 0x0, LeCC 0x0
[idx 51] L3 0x0, LeCC 0x0
[idx 52] L3 0x0, LeCC 0x0
[idx 53] L3 0x0, LeCC 0x0
[idx 54] L3 0x0, LeCC 0x0
[idx 55] L3 0x0, LeCC 0x0
[idx 56] L3 0x0, LeCC 0x0
[idx 57] L3 0x0, LeCC 0x0
[idx 58] L3 0x0, LeCC 0x0
[idx 59] L3 0x0, LeCC 0x0
[idx 60] L3 0x0, LeCC 0x0
[idx 61] L3 0x0, LeCC 0x0
[idx 62] L3 0x0, LeCC 0x0
[idx 63] L3 0x0, LeCC 0x0
Metadata
Metadata
Assignees
Labels
No labels