diff options
| author | Shridhar Rasal <srasal@nvidia.com> | 2019-03-22 07:59:24 -0400 |
|---|---|---|
| committer | mobile promotions <svcmobile_promotions@nvidia.com> | 2019-07-12 07:13:47 -0400 |
| commit | fafa521eb25f2d7fef7c7da34a5ca1d9d08899b5 (patch) | |
| tree | 0772000d1052fe28aec1920a078065919c8e5fee /include/uapi/linux | |
| parent | 77bc11b771c0645d8789da620a289a16a185da8c (diff) | |
video: tegra: host: nvdla: "Fast-forward" from dev-main
a11353e video: tegra: host: restores sof/eof, TS feature
30ad926 Revert "video: tegra: host: dla: refactor and cleanup code"
90728d1 Revert "video: tegra: host: add prefence signal support"
3a3cb49 Revert "video: tegra: host: add sof/eof taskstatus support"
ba8175d Revert "video: tegra: host: increase fw minor version"
641c3dd Revert "video: tegra: host: add sof/eof timestamp support"
dcdb0d6 video: tegra: host: increase fw minor version
a9cb0c9 video: tegra: host: add sof/eof timestamp support
6f683c8 video: tegra: host: add sof/eof taskstatus support
109f8e8 video: tegra: host: add prefence signal support
890be46 video: tegra: host: dla: refactor and cleanup code
fca91ed video: tegra: host: dla: use nvdla_queue
e428726 video: tegra: host: dla: switch to nvdla_buffer
b438bc7 video: tegra: host: dla: factor out nvhost queue
a6c24d8 video: tegra: host: dla: factor out nvhost buffer
0f2f0cc video: tegra: host: dla: addresslist alignment to 256
c0f2c0a video: tegra: host: update fw version interface
2aec9c3 video: tegra: host: update os and fw version interface
Bug 2635977
Change-Id: Ia66198c644032fffd8d12e7ba19ebdc785ce9aa2
Signed-off-by: Mitch Harwell <mharwell@nvidia.com>
Reviewed-on: https://git-master.nvidia.com/r/2145521
Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Tested-by: Bharat Nihalani <bnihalani@nvidia.com>
GVS: Gerrit_Virtual_Submit
Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com>
Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
Diffstat (limited to 'include/uapi/linux')
| -rw-r--r-- | include/uapi/linux/nvdev_fence.h | 6 | ||||
| -rw-r--r-- | include/uapi/linux/nvhost_nvdla_ioctl.h | 33 |
2 files changed, 29 insertions, 10 deletions
diff --git a/include/uapi/linux/nvdev_fence.h b/include/uapi/linux/nvdev_fence.h index 37d81be43..5877a3887 100644 --- a/include/uapi/linux/nvdev_fence.h +++ b/include/uapi/linux/nvdev_fence.h | |||
| @@ -3,7 +3,7 @@ | |||
| 3 | * | 3 | * |
| 4 | * Tegra PVA/DLA fence support | 4 | * Tegra PVA/DLA fence support |
| 5 | * | 5 | * |
| 6 | * Copyright (c) 2018, NVIDIA Corporation. All rights reserved. | 6 | * Copyright (c) 2018-2019, NVIDIA Corporation. All rights reserved. |
| 7 | * | 7 | * |
| 8 | * This program is free software; you can redistribute it and/or modify | 8 | * This program is free software; you can redistribute it and/or modify |
| 9 | * it under the terms of the GNU General Public License as published by | 9 | * it under the terms of the GNU General Public License as published by |
| @@ -34,6 +34,7 @@ enum nvdev_fence_kind { | |||
| 34 | * struct nvdev_fence structure for passing fence information | 34 | * struct nvdev_fence structure for passing fence information |
| 35 | * | 35 | * |
| 36 | * @type: Type of the fence (syncpoint, sync fd or semaphore) | 36 | * @type: Type of the fence (syncpoint, sync fd or semaphore) |
| 37 | * @type: fence action (wait or signal) | ||
| 37 | * @syncpoint_index: Syncpoint id | 38 | * @syncpoint_index: Syncpoint id |
| 38 | * @syncpoint_value: Value of syncpoint id | 39 | * @syncpoint_value: Value of syncpoint id |
| 39 | * @sync_fd: Linux sync FD handle | 40 | * @sync_fd: Linux sync FD handle |
| @@ -47,6 +48,9 @@ struct nvdev_fence { | |||
| 47 | #define NVDEV_FENCE_TYPE_SYNC_FD 1 | 48 | #define NVDEV_FENCE_TYPE_SYNC_FD 1 |
| 48 | #define NVDEV_FENCE_TYPE_SEMAPHORE 2 | 49 | #define NVDEV_FENCE_TYPE_SEMAPHORE 2 |
| 49 | #define NVDEV_FENCE_TYPE_SEMAPHORE_TS 3 | 50 | #define NVDEV_FENCE_TYPE_SEMAPHORE_TS 3 |
| 51 | __u32 action; | ||
| 52 | #define NVDEV_FENCE_WAIT 0 | ||
| 53 | #define NVDEV_FENCE_SIGNAL 1 | ||
| 50 | __u32 syncpoint_index; | 54 | __u32 syncpoint_index; |
| 51 | __u32 syncpoint_value; | 55 | __u32 syncpoint_value; |
| 52 | __u32 sync_fd; | 56 | __u32 sync_fd; |
diff --git a/include/uapi/linux/nvhost_nvdla_ioctl.h b/include/uapi/linux/nvhost_nvdla_ioctl.h index d17cf7e15..ca3ab3762 100644 --- a/include/uapi/linux/nvhost_nvdla_ioctl.h +++ b/include/uapi/linux/nvhost_nvdla_ioctl.h | |||
| @@ -79,7 +79,7 @@ struct nvdla_pin_unpin_args { | |||
| 79 | struct nvdla_submit_args { | 79 | struct nvdla_submit_args { |
| 80 | __u64 tasks; | 80 | __u64 tasks; |
| 81 | __u16 num_tasks; | 81 | __u16 num_tasks; |
| 82 | #define MAX_TASKS_PER_SUBMIT 24 | 82 | #define MAX_TASKS_PER_SUBMIT 16 |
| 83 | #define NVDLA_SUBMIT_FLAGS_ATOMIC (1 << 0) | 83 | #define NVDLA_SUBMIT_FLAGS_ATOMIC (1 << 0) |
| 84 | __u16 flags; | 84 | __u16 flags; |
| 85 | __u32 version; | 85 | __u32 version; |
| @@ -125,13 +125,19 @@ struct nvdla_mem_handle { | |||
| 125 | * @num_prefences number of pre-fences in task | 125 | * @num_prefences number of pre-fences in task |
| 126 | * @num_postfences number of post-fences in task | 126 | * @num_postfences number of post-fences in task |
| 127 | * @num_input_task_status number of input task status | 127 | * @num_input_task_status number of input task status |
| 128 | * @num_output_task_status number of output task status | 128 | * @num_sof_task_status number of sof task status |
| 129 | * @num_eof_task_status number of eof task status | ||
| 130 | * @num_sof_timestamps number of sof timestamp | ||
| 131 | * @num_eof_timestamps number of eof timestamp | ||
| 129 | * @flags flags for bitwise task info embeddeing | 132 | * @flags flags for bitwise task info embeddeing |
| 130 | * @reserved reserved for future use | 133 | * @reserved reserved for future use |
| 131 | * @prefences pointer to pre-fence struct table | 134 | * @prefences pointer to pre-fence struct table |
| 132 | * @postfences pointer to post-fence struct table | 135 | * @postfences pointer to post-fence struct table |
| 133 | * @input_task_status pointer to input task status struct table | 136 | * @input_task_status pointer to input task status struct table |
| 134 | * @output_task_status pointer to output task status struct table | 137 | * @sof_task_status pointer to sof task status struct table |
| 138 | * @eof_task_status pointer to eof task status struct table | ||
| 139 | * @sof_timestamps pointer to sof timestamp handle list | ||
| 140 | * @eof_timestamps pointer to eof timestamp handle list | ||
| 135 | * @num_addresses total number of addressed passed in structure | 141 | * @num_addresses total number of addressed passed in structure |
| 136 | * @address_list pointer to address list | 142 | * @address_list pointer to address list |
| 137 | * @timeout task timeout | 143 | * @timeout task timeout |
| @@ -141,17 +147,24 @@ struct nvdla_ioctl_submit_task { | |||
| 141 | __u8 num_prefences; | 147 | __u8 num_prefences; |
| 142 | __u8 num_postfences; | 148 | __u8 num_postfences; |
| 143 | __u8 num_input_task_status; | 149 | __u8 num_input_task_status; |
| 144 | __u8 num_output_task_status; | 150 | __u8 num_sof_task_status; |
| 151 | __u8 num_eof_task_status; | ||
| 152 | __u8 num_sof_timestamps; | ||
| 153 | __u8 num_eof_timestamps; | ||
| 154 | __u8 reserved0[1]; | ||
| 145 | #define NVDLA_MAX_BUFFERS_PER_TASK (6144) | 155 | #define NVDLA_MAX_BUFFERS_PER_TASK (6144) |
| 146 | __u32 num_addresses; | 156 | __u32 num_addresses; |
| 147 | __u16 flags; | 157 | __u16 flags; |
| 148 | __u16 reserved; | 158 | __u16 reserved1; |
| 149 | 159 | ||
| 150 | __u64 prefences; | 160 | __u64 prefences; |
| 151 | __u64 postfences; | 161 | __u64 postfences; |
| 152 | 162 | ||
| 153 | __u64 input_task_status; | 163 | __u64 input_task_status; |
| 154 | __u64 output_task_status; | 164 | __u64 sof_task_status; |
| 165 | __u64 eof_task_status; | ||
| 166 | __u64 sof_timestamps; | ||
| 167 | __u64 eof_timestamps; | ||
| 155 | __u64 address_list; | 168 | __u64 address_list; |
| 156 | __u64 timeout; | 169 | __u64 timeout; |
| 157 | }; | 170 | }; |
| @@ -160,15 +173,17 @@ struct nvdla_ioctl_submit_task { | |||
| 160 | * struct nvdla_ioctl_emu_submit_task structure for single emulator task | 173 | * struct nvdla_ioctl_emu_submit_task structure for single emulator task |
| 161 | * information | 174 | * information |
| 162 | * | 175 | * |
| 176 | * @num_prefences number of pre-fences in task | ||
| 163 | * @num_postfences number of post-fences in task | 177 | * @num_postfences number of post-fences in task |
| 164 | * @reserved reserved for padding and future use | 178 | * @prefences pointer to pre-fence struct table |
| 165 | * @postfences pointer to post-fence struct table | 179 | * @postfences pointer to post-fence struct table |
| 166 | * | 180 | * |
| 167 | */ | 181 | */ |
| 168 | struct nvdla_ioctl_emu_submit_task { | 182 | struct nvdla_ioctl_emu_submit_task { |
| 183 | __u32 num_prefences; | ||
| 169 | __u32 num_postfences; | 184 | __u32 num_postfences; |
| 170 | __u32 reserved; | ||
| 171 | 185 | ||
| 186 | __u64 prefences; | ||
| 172 | __u64 postfences; | 187 | __u64 postfences; |
| 173 | }; | 188 | }; |
| 174 | 189 | ||
