|
XenevaOS
|
#include <v3d_drm.h>
struct drm_v3d_submit_cl - ioctl argument for submitting commands to the 3D engine.
This asks the kernel to have the GPU execute an optional binner command list, and a render command list.
The L1T, slice, L2C, L2T, and GCA caches will be flushed before each CL executes. The VCD cache should be flushed (if necessary) by the submitted CLs. The TLB writes are guaranteed to have been flushed by the time the render done IRQ happens, which is the trigger for out_sync. Any dirtying of cachelines by the job (only possible using TMU writes) must be flushed by the caller using the DRM_V3D_SUBMIT_CL_FLUSH_CACHE_FLAG flag.
| __u32 drm_v3d_submit_cl::bcl_end |
End address of the BCL (first byte after the BCL)
| __u32 drm_v3d_submit_cl::bcl_start |
| __u32 drm_v3d_submit_cl::bo_handle_count |
| __u64 drm_v3d_submit_cl::bo_handles |
| __u64 drm_v3d_submit_cl::extensions |
| __u32 drm_v3d_submit_cl::flags |
| __u32 drm_v3d_submit_cl::in_sync_bcl |
An optional sync object to wait on before starting the BCL.
| __u32 drm_v3d_submit_cl::in_sync_rcl |
An optional sync object to wait on before starting the RCL.
| __u32 drm_v3d_submit_cl::out_sync |
An optional sync object to place the completion fence in.
| __u32 drm_v3d_submit_cl::pad |
| __u32 drm_v3d_submit_cl::perfmon_id |
| __u32 drm_v3d_submit_cl::qma |
| __u32 drm_v3d_submit_cl::qms |
Size of the tile alloc memory.
| __u32 drm_v3d_submit_cl::qts |
Offset of the tile state data array.
| __u32 drm_v3d_submit_cl::rcl_end |
End address of the RCL (first byte after the RCL)
| __u32 drm_v3d_submit_cl::rcl_start |