23.06.2020 15:09, Mikko Perttunen пишет:
struct drm_tegra_channel_submit { __u32 channel_id; __u32 flags;
/** * [in] Timeout in microseconds after which the kernel may * consider the job to have hung and may reap it and * fast-forward its syncpoint increments. * * The value may be capped by the kernel. */ __u32 timeout;
__u32 num_syncpt_incrs; __u32 num_relocations; __u32 num_commands;
__u64 syncpt_incrs; __u64 relocations; __u64 commands;
Do we really need to retain the multi-gather support? The code-bloat (both userspace and kernel driver) is very significant just for preparing and patching of the multi-buffer cmdstreams.
If userspace runs out of a free space within the pushbuffer, then it should simply reallocate a larger pushbuffer.
I'm suggesting that we should have a single gather per-job, any objections?