hc
2024-05-11 04dd17822334871b23ea2862f7798fb0e0007777
kernel/include/uapi/gpu/arm/bifrost/mali_kbase_ioctl.h
....@@ -1,7 +1,7 @@
11 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
22 /*
33 *
4
- * (C) COPYRIGHT 2017-2021 ARM Limited. All rights reserved.
4
+ * (C) COPYRIGHT 2017-2022 ARM Limited. All rights reserved.
55 *
66 * This program is free software and is provided to you under the terms of the
77 * GNU General Public License version 2 as published by the Free Software
....@@ -46,8 +46,7 @@
4646 __u32 create_flags;
4747 };
4848
49
-#define KBASE_IOCTL_SET_FLAGS \
50
- _IOW(KBASE_IOCTL_TYPE, 1, struct kbase_ioctl_set_flags)
49
+#define KBASE_IOCTL_SET_FLAGS _IOW(KBASE_IOCTL_TYPE, 1, struct kbase_ioctl_set_flags)
5150
5251 /**
5352 * struct kbase_ioctl_get_gpuprops - Read GPU properties from the kernel
....@@ -81,8 +80,7 @@
8180 __u32 flags;
8281 };
8382
84
-#define KBASE_IOCTL_GET_GPUPROPS \
85
- _IOW(KBASE_IOCTL_TYPE, 3, struct kbase_ioctl_get_gpuprops)
83
+#define KBASE_IOCTL_GET_GPUPROPS _IOW(KBASE_IOCTL_TYPE, 3, struct kbase_ioctl_get_gpuprops)
8684
8785 /**
8886 * union kbase_ioctl_mem_alloc - Allocate memory on the GPU
....@@ -108,8 +106,7 @@
108106 } out;
109107 };
110108
111
-#define KBASE_IOCTL_MEM_ALLOC \
112
- _IOWR(KBASE_IOCTL_TYPE, 5, union kbase_ioctl_mem_alloc)
109
+#define KBASE_IOCTL_MEM_ALLOC _IOWR(KBASE_IOCTL_TYPE, 5, union kbase_ioctl_mem_alloc)
113110
114111 /**
115112 * struct kbase_ioctl_mem_query - Query properties of a GPU memory region
....@@ -131,12 +128,11 @@
131128 } out;
132129 };
133130
134
-#define KBASE_IOCTL_MEM_QUERY \
135
- _IOWR(KBASE_IOCTL_TYPE, 6, union kbase_ioctl_mem_query)
131
+#define KBASE_IOCTL_MEM_QUERY _IOWR(KBASE_IOCTL_TYPE, 6, union kbase_ioctl_mem_query)
136132
137
-#define KBASE_MEM_QUERY_COMMIT_SIZE ((__u64)1)
138
-#define KBASE_MEM_QUERY_VA_SIZE ((__u64)2)
139
-#define KBASE_MEM_QUERY_FLAGS ((__u64)3)
133
+#define KBASE_MEM_QUERY_COMMIT_SIZE ((__u64)1)
134
+#define KBASE_MEM_QUERY_VA_SIZE ((__u64)2)
135
+#define KBASE_MEM_QUERY_FLAGS ((__u64)3)
140136
141137 /**
142138 * struct kbase_ioctl_mem_free - Free a memory region
....@@ -146,8 +142,7 @@
146142 __u64 gpu_addr;
147143 };
148144
149
-#define KBASE_IOCTL_MEM_FREE \
150
- _IOW(KBASE_IOCTL_TYPE, 7, struct kbase_ioctl_mem_free)
145
+#define KBASE_IOCTL_MEM_FREE _IOW(KBASE_IOCTL_TYPE, 7, struct kbase_ioctl_mem_free)
151146
152147 /**
153148 * struct kbase_ioctl_hwcnt_reader_setup - Setup HWC dumper/reader
....@@ -167,33 +162,8 @@
167162 __u32 mmu_l2_bm;
168163 };
169164
170
-#define KBASE_IOCTL_HWCNT_READER_SETUP \
165
+#define KBASE_IOCTL_HWCNT_READER_SETUP \
171166 _IOW(KBASE_IOCTL_TYPE, 8, struct kbase_ioctl_hwcnt_reader_setup)
172
-
173
-/**
174
- * struct kbase_ioctl_hwcnt_enable - Enable hardware counter collection
175
- * @dump_buffer: GPU address to write counters to
176
- * @fe_bm: counters selection bitmask (Front end)
177
- * @shader_bm: counters selection bitmask (Shader)
178
- * @tiler_bm: counters selection bitmask (Tiler)
179
- * @mmu_l2_bm: counters selection bitmask (MMU_L2)
180
- */
181
-struct kbase_ioctl_hwcnt_enable {
182
- __u64 dump_buffer;
183
- __u32 fe_bm;
184
- __u32 shader_bm;
185
- __u32 tiler_bm;
186
- __u32 mmu_l2_bm;
187
-};
188
-
189
-#define KBASE_IOCTL_HWCNT_ENABLE \
190
- _IOW(KBASE_IOCTL_TYPE, 9, struct kbase_ioctl_hwcnt_enable)
191
-
192
-#define KBASE_IOCTL_HWCNT_DUMP \
193
- _IO(KBASE_IOCTL_TYPE, 10)
194
-
195
-#define KBASE_IOCTL_HWCNT_CLEAR \
196
- _IO(KBASE_IOCTL_TYPE, 11)
197167
198168 /**
199169 * struct kbase_ioctl_hwcnt_values - Values to set dummy the dummy counters to.
....@@ -207,8 +177,7 @@
207177 __u32 padding;
208178 };
209179
210
-#define KBASE_IOCTL_HWCNT_SET \
211
- _IOW(KBASE_IOCTL_TYPE, 32, struct kbase_ioctl_hwcnt_values)
180
+#define KBASE_IOCTL_HWCNT_SET _IOW(KBASE_IOCTL_TYPE, 32, struct kbase_ioctl_hwcnt_values)
212181
213182 /**
214183 * struct kbase_ioctl_disjoint_query - Query the disjoint counter
....@@ -218,8 +187,7 @@
218187 __u32 counter;
219188 };
220189
221
-#define KBASE_IOCTL_DISJOINT_QUERY \
222
- _IOR(KBASE_IOCTL_TYPE, 12, struct kbase_ioctl_disjoint_query)
190
+#define KBASE_IOCTL_DISJOINT_QUERY _IOR(KBASE_IOCTL_TYPE, 12, struct kbase_ioctl_disjoint_query)
223191
224192 /**
225193 * struct kbase_ioctl_get_ddk_version - Query the kernel version
....@@ -240,54 +208,7 @@
240208 __u32 padding;
241209 };
242210
243
-#define KBASE_IOCTL_GET_DDK_VERSION \
244
- _IOW(KBASE_IOCTL_TYPE, 13, struct kbase_ioctl_get_ddk_version)
245
-
246
-/**
247
- * struct kbase_ioctl_mem_jit_init_10_2 - Initialize the just-in-time memory
248
- * allocator (between kernel driver
249
- * version 10.2--11.4)
250
- * @va_pages: Number of VA pages to reserve for JIT
251
- *
252
- * Note that depending on the VA size of the application and GPU, the value
253
- * specified in @va_pages may be ignored.
254
- *
255
- * New code should use KBASE_IOCTL_MEM_JIT_INIT instead, this is kept for
256
- * backwards compatibility.
257
- */
258
-struct kbase_ioctl_mem_jit_init_10_2 {
259
- __u64 va_pages;
260
-};
261
-
262
-#define KBASE_IOCTL_MEM_JIT_INIT_10_2 \
263
- _IOW(KBASE_IOCTL_TYPE, 14, struct kbase_ioctl_mem_jit_init_10_2)
264
-
265
-/**
266
- * struct kbase_ioctl_mem_jit_init_11_5 - Initialize the just-in-time memory
267
- * allocator (between kernel driver
268
- * version 11.5--11.19)
269
- * @va_pages: Number of VA pages to reserve for JIT
270
- * @max_allocations: Maximum number of concurrent allocations
271
- * @trim_level: Level of JIT allocation trimming to perform on free (0 - 100%)
272
- * @group_id: Group ID to be used for physical allocations
273
- * @padding: Currently unused, must be zero
274
- *
275
- * Note that depending on the VA size of the application and GPU, the value
276
- * specified in @va_pages may be ignored.
277
- *
278
- * New code should use KBASE_IOCTL_MEM_JIT_INIT instead, this is kept for
279
- * backwards compatibility.
280
- */
281
-struct kbase_ioctl_mem_jit_init_11_5 {
282
- __u64 va_pages;
283
- __u8 max_allocations;
284
- __u8 trim_level;
285
- __u8 group_id;
286
- __u8 padding[5];
287
-};
288
-
289
-#define KBASE_IOCTL_MEM_JIT_INIT_11_5 \
290
- _IOW(KBASE_IOCTL_TYPE, 14, struct kbase_ioctl_mem_jit_init_11_5)
211
+#define KBASE_IOCTL_GET_DDK_VERSION _IOW(KBASE_IOCTL_TYPE, 13, struct kbase_ioctl_get_ddk_version)
291212
292213 /**
293214 * struct kbase_ioctl_mem_jit_init - Initialize the just-in-time memory
....@@ -312,8 +233,7 @@
312233 __u64 phys_pages;
313234 };
314235
315
-#define KBASE_IOCTL_MEM_JIT_INIT \
316
- _IOW(KBASE_IOCTL_TYPE, 14, struct kbase_ioctl_mem_jit_init)
236
+#define KBASE_IOCTL_MEM_JIT_INIT _IOW(KBASE_IOCTL_TYPE, 14, struct kbase_ioctl_mem_jit_init)
317237
318238 /**
319239 * struct kbase_ioctl_mem_sync - Perform cache maintenance on memory
....@@ -333,8 +253,7 @@
333253 __u8 padding[7];
334254 };
335255
336
-#define KBASE_IOCTL_MEM_SYNC \
337
- _IOW(KBASE_IOCTL_TYPE, 15, struct kbase_ioctl_mem_sync)
256
+#define KBASE_IOCTL_MEM_SYNC _IOW(KBASE_IOCTL_TYPE, 15, struct kbase_ioctl_mem_sync)
338257
339258 /**
340259 * union kbase_ioctl_mem_find_cpu_offset - Find the offset of a CPU pointer
....@@ -357,7 +276,7 @@
357276 } out;
358277 };
359278
360
-#define KBASE_IOCTL_MEM_FIND_CPU_OFFSET \
279
+#define KBASE_IOCTL_MEM_FIND_CPU_OFFSET \
361280 _IOWR(KBASE_IOCTL_TYPE, 16, union kbase_ioctl_mem_find_cpu_offset)
362281
363282 /**
....@@ -369,8 +288,7 @@
369288 __u32 id;
370289 };
371290
372
-#define KBASE_IOCTL_GET_CONTEXT_ID \
373
- _IOR(KBASE_IOCTL_TYPE, 17, struct kbase_ioctl_get_context_id)
291
+#define KBASE_IOCTL_GET_CONTEXT_ID _IOR(KBASE_IOCTL_TYPE, 17, struct kbase_ioctl_get_context_id)
374292
375293 /**
376294 * struct kbase_ioctl_tlstream_acquire - Acquire a tlstream fd
....@@ -383,11 +301,9 @@
383301 __u32 flags;
384302 };
385303
386
-#define KBASE_IOCTL_TLSTREAM_ACQUIRE \
387
- _IOW(KBASE_IOCTL_TYPE, 18, struct kbase_ioctl_tlstream_acquire)
304
+#define KBASE_IOCTL_TLSTREAM_ACQUIRE _IOW(KBASE_IOCTL_TYPE, 18, struct kbase_ioctl_tlstream_acquire)
388305
389
-#define KBASE_IOCTL_TLSTREAM_FLUSH \
390
- _IO(KBASE_IOCTL_TYPE, 19)
306
+#define KBASE_IOCTL_TLSTREAM_FLUSH _IO(KBASE_IOCTL_TYPE, 19)
391307
392308 /**
393309 * struct kbase_ioctl_mem_commit - Change the amount of memory backing a region
....@@ -404,8 +320,7 @@
404320 __u64 pages;
405321 };
406322
407
-#define KBASE_IOCTL_MEM_COMMIT \
408
- _IOW(KBASE_IOCTL_TYPE, 20, struct kbase_ioctl_mem_commit)
323
+#define KBASE_IOCTL_MEM_COMMIT _IOW(KBASE_IOCTL_TYPE, 20, struct kbase_ioctl_mem_commit)
409324
410325 /**
411326 * union kbase_ioctl_mem_alias - Create an alias of memory regions
....@@ -433,8 +348,7 @@
433348 } out;
434349 };
435350
436
-#define KBASE_IOCTL_MEM_ALIAS \
437
- _IOWR(KBASE_IOCTL_TYPE, 21, union kbase_ioctl_mem_alias)
351
+#define KBASE_IOCTL_MEM_ALIAS _IOWR(KBASE_IOCTL_TYPE, 21, union kbase_ioctl_mem_alias)
438352
439353 /**
440354 * union kbase_ioctl_mem_import - Import memory for use by the GPU
....@@ -462,8 +376,7 @@
462376 } out;
463377 };
464378
465
-#define KBASE_IOCTL_MEM_IMPORT \
466
- _IOWR(KBASE_IOCTL_TYPE, 22, union kbase_ioctl_mem_import)
379
+#define KBASE_IOCTL_MEM_IMPORT _IOWR(KBASE_IOCTL_TYPE, 22, union kbase_ioctl_mem_import)
467380
468381 /**
469382 * struct kbase_ioctl_mem_flags_change - Change the flags for a memory region
....@@ -477,8 +390,7 @@
477390 __u64 mask;
478391 };
479392
480
-#define KBASE_IOCTL_MEM_FLAGS_CHANGE \
481
- _IOW(KBASE_IOCTL_TYPE, 23, struct kbase_ioctl_mem_flags_change)
393
+#define KBASE_IOCTL_MEM_FLAGS_CHANGE _IOW(KBASE_IOCTL_TYPE, 23, struct kbase_ioctl_mem_flags_change)
482394
483395 /**
484396 * struct kbase_ioctl_stream_create - Create a synchronisation stream
....@@ -495,8 +407,7 @@
495407 char name[32];
496408 };
497409
498
-#define KBASE_IOCTL_STREAM_CREATE \
499
- _IOW(KBASE_IOCTL_TYPE, 24, struct kbase_ioctl_stream_create)
410
+#define KBASE_IOCTL_STREAM_CREATE _IOW(KBASE_IOCTL_TYPE, 24, struct kbase_ioctl_stream_create)
500411
501412 /**
502413 * struct kbase_ioctl_fence_validate - Validate a fd refers to a fence
....@@ -506,8 +417,7 @@
506417 int fd;
507418 };
508419
509
-#define KBASE_IOCTL_FENCE_VALIDATE \
510
- _IOW(KBASE_IOCTL_TYPE, 25, struct kbase_ioctl_fence_validate)
420
+#define KBASE_IOCTL_FENCE_VALIDATE _IOW(KBASE_IOCTL_TYPE, 25, struct kbase_ioctl_fence_validate)
511421
512422 /**
513423 * struct kbase_ioctl_mem_profile_add - Provide profiling information to kernel
....@@ -523,8 +433,7 @@
523433 __u32 padding;
524434 };
525435
526
-#define KBASE_IOCTL_MEM_PROFILE_ADD \
527
- _IOW(KBASE_IOCTL_TYPE, 27, struct kbase_ioctl_mem_profile_add)
436
+#define KBASE_IOCTL_MEM_PROFILE_ADD _IOW(KBASE_IOCTL_TYPE, 27, struct kbase_ioctl_mem_profile_add)
528437
529438 /**
530439 * struct kbase_ioctl_sticky_resource_map - Permanently map an external resource
....@@ -536,11 +445,11 @@
536445 __u64 address;
537446 };
538447
539
-#define KBASE_IOCTL_STICKY_RESOURCE_MAP \
448
+#define KBASE_IOCTL_STICKY_RESOURCE_MAP \
540449 _IOW(KBASE_IOCTL_TYPE, 29, struct kbase_ioctl_sticky_resource_map)
541450
542451 /**
543
- * struct kbase_ioctl_sticky_resource_map - Unmap a resource mapped which was
452
+ * struct kbase_ioctl_sticky_resource_unmap - Unmap a resource mapped which was
544453 * previously permanently mapped
545454 * @count: Number of resources
546455 * @address: Array of __u64 GPU addresses of the external resources to unmap
....@@ -550,7 +459,7 @@
550459 __u64 address;
551460 };
552461
553
-#define KBASE_IOCTL_STICKY_RESOURCE_UNMAP \
462
+#define KBASE_IOCTL_STICKY_RESOURCE_UNMAP \
554463 _IOW(KBASE_IOCTL_TYPE, 30, struct kbase_ioctl_sticky_resource_unmap)
555464
556465 /**
....@@ -578,17 +487,16 @@
578487 } out;
579488 };
580489
581
-#define KBASE_IOCTL_MEM_FIND_GPU_START_AND_OFFSET \
490
+#define KBASE_IOCTL_MEM_FIND_GPU_START_AND_OFFSET \
582491 _IOWR(KBASE_IOCTL_TYPE, 31, union kbase_ioctl_mem_find_gpu_start_and_offset)
583492
584
-#define KBASE_IOCTL_CINSTR_GWT_START \
585
- _IO(KBASE_IOCTL_TYPE, 33)
493
+#define KBASE_IOCTL_CINSTR_GWT_START _IO(KBASE_IOCTL_TYPE, 33)
586494
587
-#define KBASE_IOCTL_CINSTR_GWT_STOP \
588
- _IO(KBASE_IOCTL_TYPE, 34)
495
+#define KBASE_IOCTL_CINSTR_GWT_STOP _IO(KBASE_IOCTL_TYPE, 34)
589496
590497 /**
591
- * union kbase_ioctl_gwt_dump - Used to collect all GPU write fault addresses.
498
+ * union kbase_ioctl_cinstr_gwt_dump - Used to collect all GPU write fault
499
+ * addresses.
592500 * @in: Input parameters
593501 * @in.addr_buffer: Address of buffer to hold addresses of gpu modified areas.
594502 * @in.size_buffer: Address of buffer to hold size of modified areas (in pages)
....@@ -617,8 +525,7 @@
617525 } out;
618526 };
619527
620
-#define KBASE_IOCTL_CINSTR_GWT_DUMP \
621
- _IOWR(KBASE_IOCTL_TYPE, 35, union kbase_ioctl_cinstr_gwt_dump)
528
+#define KBASE_IOCTL_CINSTR_GWT_DUMP _IOWR(KBASE_IOCTL_TYPE, 35, union kbase_ioctl_cinstr_gwt_dump)
622529
623530 /**
624531 * struct kbase_ioctl_mem_exec_init - Initialise the EXEC_VA memory zone
....@@ -629,8 +536,7 @@
629536 __u64 va_pages;
630537 };
631538
632
-#define KBASE_IOCTL_MEM_EXEC_INIT \
633
- _IOW(KBASE_IOCTL_TYPE, 38, struct kbase_ioctl_mem_exec_init)
539
+#define KBASE_IOCTL_MEM_EXEC_INIT _IOW(KBASE_IOCTL_TYPE, 38, struct kbase_ioctl_mem_exec_init)
634540
635541 /**
636542 * union kbase_ioctl_get_cpu_gpu_timeinfo - Request zero or more types of
....@@ -659,7 +565,7 @@
659565 } out;
660566 };
661567
662
-#define KBASE_IOCTL_GET_CPU_GPU_TIMEINFO \
568
+#define KBASE_IOCTL_GET_CPU_GPU_TIMEINFO \
663569 _IOWR(KBASE_IOCTL_TYPE, 50, union kbase_ioctl_get_cpu_gpu_timeinfo)
664570
665571 /**
....@@ -671,7 +577,7 @@
671577 __u8 priority;
672578 };
673579
674
-#define KBASE_IOCTL_CONTEXT_PRIORITY_CHECK \
580
+#define KBASE_IOCTL_CONTEXT_PRIORITY_CHECK \
675581 _IOWR(KBASE_IOCTL_TYPE, 54, struct kbase_ioctl_context_priority_check)
676582
677583 /**
....@@ -683,9 +589,58 @@
683589 __u8 max_core_count;
684590 };
685591
686
-#define KBASE_IOCTL_SET_LIMITED_CORE_COUNT \
592
+#define KBASE_IOCTL_SET_LIMITED_CORE_COUNT \
687593 _IOW(KBASE_IOCTL_TYPE, 55, struct kbase_ioctl_set_limited_core_count)
688594
595
+/**
596
+ * struct kbase_ioctl_kinstr_prfcnt_enum_info - Enum Performance counter
597
+ * information
598
+ * @info_item_size: Performance counter item size in bytes.
599
+ * @info_item_count: Performance counter item count in the info_list_ptr.
600
+ * @info_list_ptr: Performance counter item list pointer which points to a
601
+ * list with info_item_count of items.
602
+ *
603
+ * On success: returns info_item_size and info_item_count if info_list_ptr is
604
+ * NULL, returns performance counter information if info_list_ptr is not NULL.
605
+ * On error: returns a negative error code.
606
+ */
607
+struct kbase_ioctl_kinstr_prfcnt_enum_info {
608
+ __u32 info_item_size;
609
+ __u32 info_item_count;
610
+ __u64 info_list_ptr;
611
+};
612
+
613
+#define KBASE_IOCTL_KINSTR_PRFCNT_ENUM_INFO \
614
+ _IOWR(KBASE_IOCTL_TYPE, 56, struct kbase_ioctl_kinstr_prfcnt_enum_info)
615
+
616
+/**
617
+ * struct kbase_ioctl_kinstr_prfcnt_setup - Setup HWC dumper/reader
618
+ * @in: input parameters.
619
+ * @in.request_item_count: Number of requests in the requests array.
620
+ * @in.request_item_size: Size in bytes of each request in the requests array.
621
+ * @in.requests_ptr: Pointer to the requests array.
622
+ * @out: output parameters.
623
+ * @out.prfcnt_metadata_item_size: Size of each item in the metadata array for
624
+ * each sample.
625
+ * @out.prfcnt_mmap_size_bytes: Size in bytes that user-space should mmap
626
+ * for reading performance counter samples.
627
+ *
628
+ * A fd is returned from the ioctl if successful, or a negative value on error.
629
+ */
630
+union kbase_ioctl_kinstr_prfcnt_setup {
631
+ struct {
632
+ __u32 request_item_count;
633
+ __u32 request_item_size;
634
+ __u64 requests_ptr;
635
+ } in;
636
+ struct {
637
+ __u32 prfcnt_metadata_item_size;
638
+ __u32 prfcnt_mmap_size_bytes;
639
+ } out;
640
+};
641
+
642
+#define KBASE_IOCTL_KINSTR_PRFCNT_SETUP \
643
+ _IOWR(KBASE_IOCTL_TYPE, 57, union kbase_ioctl_kinstr_prfcnt_setup)
689644
690645 /***************
691646 * test ioctls *
....@@ -708,8 +663,7 @@
708663 __u32 bytes_generated;
709664 };
710665
711
-#define KBASE_IOCTL_TLSTREAM_STATS \
712
- _IOR(KBASE_IOCTL_TEST_TYPE, 2, struct kbase_ioctl_tlstream_stats)
666
+#define KBASE_IOCTL_TLSTREAM_STATS _IOR(KBASE_IOCTL_TEST_TYPE, 2, struct kbase_ioctl_tlstream_stats)
713667
714668 #endif /* MALI_UNIT_TEST */
715669
....@@ -727,108 +681,107 @@
727681 * _IOWR(KBASE_IOCTL_EXTRA_TYPE, 0, struct my_ioctl_args)
728682 */
729683
730
-
731684 /**********************************
732685 * Definitions for GPU properties *
733686 **********************************/
734
-#define KBASE_GPUPROP_VALUE_SIZE_U8 (0x0)
735
-#define KBASE_GPUPROP_VALUE_SIZE_U16 (0x1)
736
-#define KBASE_GPUPROP_VALUE_SIZE_U32 (0x2)
737
-#define KBASE_GPUPROP_VALUE_SIZE_U64 (0x3)
687
+#define KBASE_GPUPROP_VALUE_SIZE_U8 (0x0)
688
+#define KBASE_GPUPROP_VALUE_SIZE_U16 (0x1)
689
+#define KBASE_GPUPROP_VALUE_SIZE_U32 (0x2)
690
+#define KBASE_GPUPROP_VALUE_SIZE_U64 (0x3)
738691
739
-#define KBASE_GPUPROP_PRODUCT_ID 1
740
-#define KBASE_GPUPROP_VERSION_STATUS 2
741
-#define KBASE_GPUPROP_MINOR_REVISION 3
742
-#define KBASE_GPUPROP_MAJOR_REVISION 4
692
+#define KBASE_GPUPROP_PRODUCT_ID 1
693
+#define KBASE_GPUPROP_VERSION_STATUS 2
694
+#define KBASE_GPUPROP_MINOR_REVISION 3
695
+#define KBASE_GPUPROP_MAJOR_REVISION 4
743696 /* 5 previously used for GPU speed */
744
-#define KBASE_GPUPROP_GPU_FREQ_KHZ_MAX 6
697
+#define KBASE_GPUPROP_GPU_FREQ_KHZ_MAX 6
745698 /* 7 previously used for minimum GPU speed */
746
-#define KBASE_GPUPROP_LOG2_PROGRAM_COUNTER_SIZE 8
747
-#define KBASE_GPUPROP_TEXTURE_FEATURES_0 9
748
-#define KBASE_GPUPROP_TEXTURE_FEATURES_1 10
749
-#define KBASE_GPUPROP_TEXTURE_FEATURES_2 11
750
-#define KBASE_GPUPROP_GPU_AVAILABLE_MEMORY_SIZE 12
699
+#define KBASE_GPUPROP_LOG2_PROGRAM_COUNTER_SIZE 8
700
+#define KBASE_GPUPROP_TEXTURE_FEATURES_0 9
701
+#define KBASE_GPUPROP_TEXTURE_FEATURES_1 10
702
+#define KBASE_GPUPROP_TEXTURE_FEATURES_2 11
703
+#define KBASE_GPUPROP_GPU_AVAILABLE_MEMORY_SIZE 12
751704
752
-#define KBASE_GPUPROP_L2_LOG2_LINE_SIZE 13
753
-#define KBASE_GPUPROP_L2_LOG2_CACHE_SIZE 14
754
-#define KBASE_GPUPROP_L2_NUM_L2_SLICES 15
705
+#define KBASE_GPUPROP_L2_LOG2_LINE_SIZE 13
706
+#define KBASE_GPUPROP_L2_LOG2_CACHE_SIZE 14
707
+#define KBASE_GPUPROP_L2_NUM_L2_SLICES 15
755708
756
-#define KBASE_GPUPROP_TILER_BIN_SIZE_BYTES 16
757
-#define KBASE_GPUPROP_TILER_MAX_ACTIVE_LEVELS 17
709
+#define KBASE_GPUPROP_TILER_BIN_SIZE_BYTES 16
710
+#define KBASE_GPUPROP_TILER_MAX_ACTIVE_LEVELS 17
758711
759
-#define KBASE_GPUPROP_MAX_THREADS 18
760
-#define KBASE_GPUPROP_MAX_WORKGROUP_SIZE 19
761
-#define KBASE_GPUPROP_MAX_BARRIER_SIZE 20
762
-#define KBASE_GPUPROP_MAX_REGISTERS 21
763
-#define KBASE_GPUPROP_MAX_TASK_QUEUE 22
764
-#define KBASE_GPUPROP_MAX_THREAD_GROUP_SPLIT 23
765
-#define KBASE_GPUPROP_IMPL_TECH 24
712
+#define KBASE_GPUPROP_MAX_THREADS 18
713
+#define KBASE_GPUPROP_MAX_WORKGROUP_SIZE 19
714
+#define KBASE_GPUPROP_MAX_BARRIER_SIZE 20
715
+#define KBASE_GPUPROP_MAX_REGISTERS 21
716
+#define KBASE_GPUPROP_MAX_TASK_QUEUE 22
717
+#define KBASE_GPUPROP_MAX_THREAD_GROUP_SPLIT 23
718
+#define KBASE_GPUPROP_IMPL_TECH 24
766719
767
-#define KBASE_GPUPROP_RAW_SHADER_PRESENT 25
768
-#define KBASE_GPUPROP_RAW_TILER_PRESENT 26
769
-#define KBASE_GPUPROP_RAW_L2_PRESENT 27
770
-#define KBASE_GPUPROP_RAW_STACK_PRESENT 28
771
-#define KBASE_GPUPROP_RAW_L2_FEATURES 29
772
-#define KBASE_GPUPROP_RAW_CORE_FEATURES 30
773
-#define KBASE_GPUPROP_RAW_MEM_FEATURES 31
774
-#define KBASE_GPUPROP_RAW_MMU_FEATURES 32
775
-#define KBASE_GPUPROP_RAW_AS_PRESENT 33
776
-#define KBASE_GPUPROP_RAW_JS_PRESENT 34
777
-#define KBASE_GPUPROP_RAW_JS_FEATURES_0 35
778
-#define KBASE_GPUPROP_RAW_JS_FEATURES_1 36
779
-#define KBASE_GPUPROP_RAW_JS_FEATURES_2 37
780
-#define KBASE_GPUPROP_RAW_JS_FEATURES_3 38
781
-#define KBASE_GPUPROP_RAW_JS_FEATURES_4 39
782
-#define KBASE_GPUPROP_RAW_JS_FEATURES_5 40
783
-#define KBASE_GPUPROP_RAW_JS_FEATURES_6 41
784
-#define KBASE_GPUPROP_RAW_JS_FEATURES_7 42
785
-#define KBASE_GPUPROP_RAW_JS_FEATURES_8 43
786
-#define KBASE_GPUPROP_RAW_JS_FEATURES_9 44
787
-#define KBASE_GPUPROP_RAW_JS_FEATURES_10 45
788
-#define KBASE_GPUPROP_RAW_JS_FEATURES_11 46
789
-#define KBASE_GPUPROP_RAW_JS_FEATURES_12 47
790
-#define KBASE_GPUPROP_RAW_JS_FEATURES_13 48
791
-#define KBASE_GPUPROP_RAW_JS_FEATURES_14 49
792
-#define KBASE_GPUPROP_RAW_JS_FEATURES_15 50
793
-#define KBASE_GPUPROP_RAW_TILER_FEATURES 51
794
-#define KBASE_GPUPROP_RAW_TEXTURE_FEATURES_0 52
795
-#define KBASE_GPUPROP_RAW_TEXTURE_FEATURES_1 53
796
-#define KBASE_GPUPROP_RAW_TEXTURE_FEATURES_2 54
797
-#define KBASE_GPUPROP_RAW_GPU_ID 55
798
-#define KBASE_GPUPROP_RAW_THREAD_MAX_THREADS 56
799
-#define KBASE_GPUPROP_RAW_THREAD_MAX_WORKGROUP_SIZE 57
800
-#define KBASE_GPUPROP_RAW_THREAD_MAX_BARRIER_SIZE 58
801
-#define KBASE_GPUPROP_RAW_THREAD_FEATURES 59
802
-#define KBASE_GPUPROP_RAW_COHERENCY_MODE 60
720
+#define KBASE_GPUPROP_RAW_SHADER_PRESENT 25
721
+#define KBASE_GPUPROP_RAW_TILER_PRESENT 26
722
+#define KBASE_GPUPROP_RAW_L2_PRESENT 27
723
+#define KBASE_GPUPROP_RAW_STACK_PRESENT 28
724
+#define KBASE_GPUPROP_RAW_L2_FEATURES 29
725
+#define KBASE_GPUPROP_RAW_CORE_FEATURES 30
726
+#define KBASE_GPUPROP_RAW_MEM_FEATURES 31
727
+#define KBASE_GPUPROP_RAW_MMU_FEATURES 32
728
+#define KBASE_GPUPROP_RAW_AS_PRESENT 33
729
+#define KBASE_GPUPROP_RAW_JS_PRESENT 34
730
+#define KBASE_GPUPROP_RAW_JS_FEATURES_0 35
731
+#define KBASE_GPUPROP_RAW_JS_FEATURES_1 36
732
+#define KBASE_GPUPROP_RAW_JS_FEATURES_2 37
733
+#define KBASE_GPUPROP_RAW_JS_FEATURES_3 38
734
+#define KBASE_GPUPROP_RAW_JS_FEATURES_4 39
735
+#define KBASE_GPUPROP_RAW_JS_FEATURES_5 40
736
+#define KBASE_GPUPROP_RAW_JS_FEATURES_6 41
737
+#define KBASE_GPUPROP_RAW_JS_FEATURES_7 42
738
+#define KBASE_GPUPROP_RAW_JS_FEATURES_8 43
739
+#define KBASE_GPUPROP_RAW_JS_FEATURES_9 44
740
+#define KBASE_GPUPROP_RAW_JS_FEATURES_10 45
741
+#define KBASE_GPUPROP_RAW_JS_FEATURES_11 46
742
+#define KBASE_GPUPROP_RAW_JS_FEATURES_12 47
743
+#define KBASE_GPUPROP_RAW_JS_FEATURES_13 48
744
+#define KBASE_GPUPROP_RAW_JS_FEATURES_14 49
745
+#define KBASE_GPUPROP_RAW_JS_FEATURES_15 50
746
+#define KBASE_GPUPROP_RAW_TILER_FEATURES 51
747
+#define KBASE_GPUPROP_RAW_TEXTURE_FEATURES_0 52
748
+#define KBASE_GPUPROP_RAW_TEXTURE_FEATURES_1 53
749
+#define KBASE_GPUPROP_RAW_TEXTURE_FEATURES_2 54
750
+#define KBASE_GPUPROP_RAW_GPU_ID 55
751
+#define KBASE_GPUPROP_RAW_THREAD_MAX_THREADS 56
752
+#define KBASE_GPUPROP_RAW_THREAD_MAX_WORKGROUP_SIZE 57
753
+#define KBASE_GPUPROP_RAW_THREAD_MAX_BARRIER_SIZE 58
754
+#define KBASE_GPUPROP_RAW_THREAD_FEATURES 59
755
+#define KBASE_GPUPROP_RAW_COHERENCY_MODE 60
803756
804
-#define KBASE_GPUPROP_COHERENCY_NUM_GROUPS 61
805
-#define KBASE_GPUPROP_COHERENCY_NUM_CORE_GROUPS 62
806
-#define KBASE_GPUPROP_COHERENCY_COHERENCY 63
807
-#define KBASE_GPUPROP_COHERENCY_GROUP_0 64
808
-#define KBASE_GPUPROP_COHERENCY_GROUP_1 65
809
-#define KBASE_GPUPROP_COHERENCY_GROUP_2 66
810
-#define KBASE_GPUPROP_COHERENCY_GROUP_3 67
811
-#define KBASE_GPUPROP_COHERENCY_GROUP_4 68
812
-#define KBASE_GPUPROP_COHERENCY_GROUP_5 69
813
-#define KBASE_GPUPROP_COHERENCY_GROUP_6 70
814
-#define KBASE_GPUPROP_COHERENCY_GROUP_7 71
815
-#define KBASE_GPUPROP_COHERENCY_GROUP_8 72
816
-#define KBASE_GPUPROP_COHERENCY_GROUP_9 73
817
-#define KBASE_GPUPROP_COHERENCY_GROUP_10 74
818
-#define KBASE_GPUPROP_COHERENCY_GROUP_11 75
819
-#define KBASE_GPUPROP_COHERENCY_GROUP_12 76
820
-#define KBASE_GPUPROP_COHERENCY_GROUP_13 77
821
-#define KBASE_GPUPROP_COHERENCY_GROUP_14 78
822
-#define KBASE_GPUPROP_COHERENCY_GROUP_15 79
757
+#define KBASE_GPUPROP_COHERENCY_NUM_GROUPS 61
758
+#define KBASE_GPUPROP_COHERENCY_NUM_CORE_GROUPS 62
759
+#define KBASE_GPUPROP_COHERENCY_COHERENCY 63
760
+#define KBASE_GPUPROP_COHERENCY_GROUP_0 64
761
+#define KBASE_GPUPROP_COHERENCY_GROUP_1 65
762
+#define KBASE_GPUPROP_COHERENCY_GROUP_2 66
763
+#define KBASE_GPUPROP_COHERENCY_GROUP_3 67
764
+#define KBASE_GPUPROP_COHERENCY_GROUP_4 68
765
+#define KBASE_GPUPROP_COHERENCY_GROUP_5 69
766
+#define KBASE_GPUPROP_COHERENCY_GROUP_6 70
767
+#define KBASE_GPUPROP_COHERENCY_GROUP_7 71
768
+#define KBASE_GPUPROP_COHERENCY_GROUP_8 72
769
+#define KBASE_GPUPROP_COHERENCY_GROUP_9 73
770
+#define KBASE_GPUPROP_COHERENCY_GROUP_10 74
771
+#define KBASE_GPUPROP_COHERENCY_GROUP_11 75
772
+#define KBASE_GPUPROP_COHERENCY_GROUP_12 76
773
+#define KBASE_GPUPROP_COHERENCY_GROUP_13 77
774
+#define KBASE_GPUPROP_COHERENCY_GROUP_14 78
775
+#define KBASE_GPUPROP_COHERENCY_GROUP_15 79
823776
824
-#define KBASE_GPUPROP_TEXTURE_FEATURES_3 80
825
-#define KBASE_GPUPROP_RAW_TEXTURE_FEATURES_3 81
777
+#define KBASE_GPUPROP_TEXTURE_FEATURES_3 80
778
+#define KBASE_GPUPROP_RAW_TEXTURE_FEATURES_3 81
826779
827
-#define KBASE_GPUPROP_NUM_EXEC_ENGINES 82
780
+#define KBASE_GPUPROP_NUM_EXEC_ENGINES 82
828781
829
-#define KBASE_GPUPROP_RAW_THREAD_TLS_ALLOC 83
830
-#define KBASE_GPUPROP_TLS_ALLOC 84
831
-#define KBASE_GPUPROP_RAW_GPU_FEATURES 85
782
+#define KBASE_GPUPROP_RAW_THREAD_TLS_ALLOC 83
783
+#define KBASE_GPUPROP_TLS_ALLOC 84
784
+#define KBASE_GPUPROP_RAW_GPU_FEATURES 85
832785 #ifdef __cpluscplus
833786 }
834787 #endif