hc
2024-05-10 61598093bbdd283a7edc367d900f223070ead8d2
kernel/drivers/gpu/drm/amd/amdkfd/kfd_pm4_headers_ai.h
....@@ -83,10 +83,10 @@
8383
8484 union {
8585 struct {
86
- uint32_t gds_heap_base:6;
87
- uint32_t reserved3:5;
88
- uint32_t gds_heap_size:6;
89
- uint32_t reserved4:15;
86
+ uint32_t gds_heap_base:10;
87
+ uint32_t reserved3:1;
88
+ uint32_t gds_heap_size:10;
89
+ uint32_t reserved4:11;
9090 } bitfields8;
9191 uint32_t ordinal8;
9292 };
....@@ -120,7 +120,7 @@
120120 uint32_t ib_size:20;
121121 uint32_t chain:1;
122122 uint32_t offload_polling:1;
123
- uint32_t reserved2:1;
123
+ uint32_t chained_runlist_idle_disable:1;
124124 uint32_t valid:1;
125125 uint32_t process_cnt:4;
126126 uint32_t reserved3:4;
....@@ -176,11 +176,10 @@
176176
177177 union {
178178 struct {
179
- uint32_t num_gws:6;
180
- uint32_t reserved7:1;
179
+ uint32_t num_gws:7;
181180 uint32_t sdma_enable:1;
182181 uint32_t num_oac:4;
183
- uint32_t reserved8:4;
182
+ uint32_t gds_size_hi:4;
184183 uint32_t gds_size:6;
185184 uint32_t num_queues:10;
186185 } bitfields14;
....@@ -255,17 +254,16 @@
255254 queue_type__mes_map_queues__low_latency_static_queue_vi = 3
256255 };
257256
258
-enum mes_map_queues_alloc_format_enum {
259
- alloc_format__mes_map_queues__one_per_pipe_vi = 0,
260
-alloc_format__mes_map_queues__all_on_one_pipe_vi = 1
261
-};
262
-
263257 enum mes_map_queues_engine_sel_enum {
264258 engine_sel__mes_map_queues__compute_vi = 0,
265259 engine_sel__mes_map_queues__sdma0_vi = 2,
266260 engine_sel__mes_map_queues__sdma1_vi = 3
267261 };
268262
263
+enum mes_map_queues_extended_engine_sel_enum {
264
+ extended_engine_sel__mes_map_queues__legacy_engine_sel = 0,
265
+ extended_engine_sel__mes_map_queues__sdma0_to_7_sel = 1
266
+};
269267
270268 struct pm4_mes_map_queues {
271269 union {
....@@ -275,11 +273,14 @@
275273
276274 union {
277275 struct {
278
- uint32_t reserved1:4;
276
+ uint32_t reserved1:2;
277
+ enum mes_map_queues_extended_engine_sel_enum extended_engine_sel:2;
279278 enum mes_map_queues_queue_sel_enum queue_sel:2;
280
- uint32_t reserved2:15;
279
+ uint32_t reserved5:6;
280
+ uint32_t gws_control_queue:1;
281
+ uint32_t reserved2:8;
281282 enum mes_map_queues_queue_type_enum queue_type:3;
282
- enum mes_map_queues_alloc_format_enum alloc_format:2;
283
+ uint32_t reserved3:2;
283284 enum mes_map_queues_engine_sel_enum engine_sel:3;
284285 uint32_t num_queues:3;
285286 } bitfields2;
....@@ -386,6 +387,11 @@
386387 engine_sel__mes_unmap_queues__sdmal = 3
387388 };
388389
390
+enum mes_unmap_queues_extended_engine_sel_enum {
391
+ extended_engine_sel__mes_unmap_queues__legacy_engine_sel = 0,
392
+ extended_engine_sel__mes_unmap_queues__sdma0_to_7_sel = 1
393
+};
394
+
389395 struct pm4_mes_unmap_queues {
390396 union {
391397 union PM4_MES_TYPE_3_HEADER header; /* header */
....@@ -395,7 +401,7 @@
395401 union {
396402 struct {
397403 enum mes_unmap_queues_action_enum action:2;
398
- uint32_t reserved1:2;
404
+ enum mes_unmap_queues_extended_engine_sel_enum extended_engine_sel:2;
399405 enum mes_unmap_queues_queue_sel_enum queue_sel:2;
400406 uint32_t reserved2:20;
401407 enum mes_unmap_queues_engine_sel_enum engine_sel:3;