Skip to content

Commit 0ea0f0a

Browse files
committed
sys/linux: add descriptions for Mali Driver
sys/linux: run make extract sys/linux: add Descriptions for Mali GPU Driver sys/linux: add Descriptions for Mali GPU Driver sys/linux: add descriptions for Mali Driver
1 parent 7d3b55d commit 0ea0f0a

File tree

2 files changed

+26
-2
lines changed

2 files changed

+26
-2
lines changed

sys/linux/dev_mali.txt

Lines changed: 18 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,7 @@ include <uapi/linux/fcntl.h>
1414

1515
define max_supported_streams (MAX_SUPPORTED_CSGS * MAX_SUPPORTED_STREAMS_PER_GROUP)
1616

17+
resource fd_kinstr[fd]
1718
resource gpu_heap_va[int64]
1819
resource kcpu_queue_id[int8]
1920
resource cs_queue_group_handle[int8]
@@ -39,13 +40,16 @@ ioctl$KBASE_IOCTL_CS_QUEUE_KICK(fd fd_bifrost, cmd const[KBASE_IOCTL_CS_QUEUE_KI
3940
ioctl$KBASE_IOCTL_CS_QUEUE_REGISTER(fd fd_bifrost, cmd const[KBASE_IOCTL_CS_QUEUE_REGISTER], arg ptr[in, base_ioctl_cs_queue_register])
4041
ioctl$KBASE_IOCTL_VERSION_CHECK_RESERVED(fd fd_bifrost, cmd const[KBASE_IOCTL_VERSION_CHECK_RESERVED], arg ptr[inout, kbase_ioctl_version_check])
4142
ioctl$KBASE_IOCTL_BUFFER_LIVENESS_UPDATE(fd fd_bifrost, cmd const[KBASE_IOCTL_BUFFER_LIVENESS_UPDATE], arg ptr[in, kbase_ioctl_buffer_liveness_update])
42-
ioctl$KBASE_IOCTL_KINSTR_PRFCNT_SETUP(fd fd_bifrost, cmd const[KBASE_IOCTL_KINSTR_PRFCNT_SETUP], arg ptr[inout, kbase_ioctl_kinstr_prfcnt_setup])
43+
ioctl$KBASE_IOCTL_KINSTR_PRFCNT_SETUP(fd fd_bifrost, cmd const[KBASE_IOCTL_KINSTR_PRFCNT_SETUP], arg ptr[inout, kbase_ioctl_kinstr_prfcnt_setup]) fd_kinstr
4344
ioctl$KBASE_IOCTL_KINSTR_PRFCNT_ENUM_INFO(fd fd_bifrost, cmd const[KBASE_IOCTL_KINSTR_PRFCNT_ENUM_INFO], arg ptr[inout, kbase_ioctl_kinstr_prfcnt_enum_info])
4445
ioctl$KBASE_IOCTL_SET_LIMITED_CORE_COUNT(fd fd_bifrost, cmd const[KBASE_IOCTL_SET_LIMITED_CORE_COUNT], arg ptr[in, kbase_ioctl_set_limited_core_count])
4546
ioctl$KBASE_IOCTL_CONTEXT_PRIORITY_CHECK(fd fd_bifrost, cmd const[KBASE_IOCTL_CONTEXT_PRIORITY_CHECK], arg ptr[inout, kbase_ioctl_context_priority_check])
4647
ioctl$KBASE_HWCNT_READER_GET_BUFFER_WITH_CYCLES(fd fd_hwcnt, cmd const[KBASE_HWCNT_READER_GET_BUFFER_WITH_CYCLES], arg ptr[out, kbase_hwcnt_reader_metadata_with_cycles])
4748
ioctl$KBASE_HWCNT_READER_PUT_BUFFER_WITH_CYCLES(fd fd_hwcnt, cmd const[KBASE_HWCNT_READER_PUT_BUFFER_WITH_CYCLES], arg ptr[in, kbase_hwcnt_reader_metadata_with_cycles])
4849
ioctl$KBASE_HWCNT_READER_GET_API_VERSION_WITH_FEATURES(fd fd_hwcnt, cmd const[KBASE_HWCNT_READER_GET_API_VERSION], arg ptr[out, kbase_hwcnt_reader_api_version])
50+
ioctl$KBASE_IOCTL_KINSTR_PRFCNT_CMD(fd fd_kinstr, cmd const[KBASE_IOCTL_KINSTR_PRFCNT_CMD], arg ptr[in, prfcnt_control_cmd])
51+
ioctl$KBASE_IOCTL_KINSTR_PRFCNT_GET_SAMPLE(fd fd_kinstr, cmd const[KBASE_IOCTL_KINSTR_PRFCNT_GET_SAMPLE], arg ptr[out, prfcnt_sample_access])
52+
ioctl$KBASE_IOCTL_KINSTR_PRFCNT_PUT_SAMPLE(fd fd_kinstr, cmd const[KBASE_IOCTL_KINSTR_PRFCNT_PUT_SAMPLE], arg ptr[in, prfcnt_sample_access])
4953

5054
kbase_hwcnt_reader_metadata_cycles {
5155
top int64
@@ -331,6 +335,17 @@ kbase_ioctl_context_priority_check {
331335
priority flags[queue_group_priority, int8]
332336
}
333337

338+
prfcnt_control_cmd {
339+
cmd flags[control_cmd, int16]
340+
padding array[const[0, int16], 3]
341+
user_data ptr64[in, array[int64]]
342+
}
343+
344+
prfcnt_sample_access {
345+
sequence int64
346+
sample_offset_bytes int64
347+
}
348+
334349
csf_csi_flags = BASE_CSF_TILER_OOM_EXCEPTION_FLAG
335350
user_offsets = LATEST_FLUSH
336351
prfcnt_request_enum_type = PRFCNT_ENUM_TYPE_BLOCK, PRFCNT_ENUM_TYPE_REQUEST, PRFCNT_ENUM_TYPE_SAMPLE_INFO
@@ -341,3 +356,5 @@ prfcnt_block_type = PRFCNT_BLOCK_TYPE_FE, PRFCNT_BLOCK_TYPE_TILER, PRFCNT_BLOCK_
341356
prfcnt_mode = PRFCNT_MODE_MANUAL, PRFCNT_MODE_PERIODIC, PRFCNT_MODE_RESERVED
342357
tiler_heap_chunk_sizes = 2048, 4096
343358
queue_group_priority = KBASE_QUEUE_GROUP_PRIORITY_REALTIME, KBASE_QUEUE_GROUP_PRIORITY_HIGH, KBASE_QUEUE_GROUP_PRIORITY_MEDIUM, KBASE_QUEUE_GROUP_PRIORITY_LOW, KBASE_QUEUE_GROUP_PRIORITY_COUNT
359+
# PRFCNT_CONTROL_CMD_RESERVED is no longer supported
360+
control_cmd = PRFCNT_CONTROL_CMD_START, PRFCNT_CONTROL_CMD_STOP, PRFCNT_CONTROL_CMD_SAMPLE_SYNC, PRFCNT_CONTROL_CMD_DISCARD

sys/linux/dev_mali.txt.const

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,9 @@ KBASE_IOCTL_KCPU_QUEUE_DELETE = 1074298926
2727
KBASE_IOCTL_KCPU_QUEUE_ENQUEUE = 1074823215
2828
KBASE_IOCTL_KINSTR_PRFCNT_ENUM_INFO = 3222306872
2929
KBASE_IOCTL_KINSTR_PRFCNT_SETUP = 3222306873
30+
KBASE_IOCTL_KINSTR_PRFCNT_CMD = 1074839296
31+
KBASE_IOCTL_KINSTR_PRFCNT_GET_SAMPLE = 2148581121
32+
KBASE_IOCTL_KINSTR_PRFCNT_PUT_SAMPLE = 1074839312
3033
KBASE_IOCTL_MEM_ALLOC_EX = 3225452603
3134
KBASE_IOCTL_READ_USER_PAGE = 3221782588
3235
KBASE_IOCTL_SET_LIMITED_CORE_COUNT = 1073840183
@@ -38,6 +41,10 @@ KBASE_QUEUE_GROUP_PRIORITY_MEDIUM = 2
3841
KBASE_QUEUE_GROUP_PRIORITY_REALTIME = 0
3942
LATEST_FLUSH = 0
4043
MAX_SUPPORTED_CSGS = 31
44+
PRFCNT_CONTROL_CMD_DISCARD = 5
45+
PRFCNT_CONTROL_CMD_SAMPLE_SYNC = 3
46+
PRFCNT_CONTROL_CMD_START = 1
47+
PRFCNT_CONTROL_CMD_STOP = 2
4148
PRFCNT_BLOCK_TYPE_FE = 0
4249
PRFCNT_BLOCK_TYPE_MEMORY = 2
4350
PRFCNT_BLOCK_TYPE_RESERVED = 255
@@ -59,4 +66,4 @@ PRFCNT_SET_RESERVED = 255
5966
PRFCNT_SET_SECONDARY = 1
6067
PRFCNT_SET_TERTIARY = 2
6168
__NR_ioctl = amd64:16, arm64:29
62-
max_supported_streams = 992
69+
max_supported_streams = 992

0 commit comments

Comments
 (0)