mirror of
git://nv-tegra.nvidia.com/linux-nvgpu.git
synced 2025-12-23 18:16:01 +03:00
gk20a_fifo_update_runlist_locked() and the vgpu counterpart do three things: 1. find out whether there's a channel to add or remove (if not, the whole runlist is just reconstructed or cleared), 2. reconstruct the runlist format for hardware (or the vgpu message), 3. actually update the runlist to hw and maybe wait for finish. Split out the two first operations to separate functions to make the code easier to understand. Now it's also clearer that the "add" parameter behaves completely differently depending on whether the channel pointer is NULL or not. Also ignore (with a warning) channels not bound to a tsg. We shouldn't get runlist updates on such channels. This simplifies the control flow a bit. Jira NVGPU-1309 Jira NVGPU-1922 Change-Id: I478c33eb2bd154c05a6c8c4148e4fea528a39a3e Signed-off-by: Konsta Holtta <kholtta@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/2007473 Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>