mirror of
git://nv-tegra.nvidia.com/linux-nvgpu.git
synced 2025-12-22 17:36:20 +03:00
Add software scheduler and domain data structures for a general scheduler and bookkeeping code to create, remove and list them and to keep logs for debugging and development; as a first step, this will only serve as the heart of nvgpu-internal domain scheduler. Long term, this code is intended to work in arbitrary configurations - running on GSP, CPU, or elsewhere, and controlling the GPU or something else. Jira NVGPU-6427 Change-Id: I2a1577fa9120bb8ae6b9552dd2a187cb2cdfe504 Signed-off-by: Alex Waterman <alexw@nvidia.com> Signed-off-by: Konsta Hölttä <kholtta@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2632286 Reviewed-by: Vijayakumar Subbu <vsubbu@nvidia.com> Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
29 lines
819 B
C
29 lines
819 B
C
/*
|
|
* Copyright (c) 2021 NVIDIA Corporation. All rights reserved.
|
|
*
|
|
* NVIDIA Corporation and its licensors retain all intellectual property
|
|
* and proprietary rights in and to this software, related documentation
|
|
* and any modifications thereto. Any use, reproduction, disclosure or
|
|
* distribution of this software and related documentation without an express
|
|
* license agreement from NVIDIA Corporation is strictly prohibited.
|
|
*/
|
|
|
|
#ifndef NVS_CONTEXT_H
|
|
#define NVS_CONTEXT_H
|
|
|
|
#include <nvs/types-internal.h>
|
|
|
|
struct nvs_context;
|
|
|
|
/**
|
|
* Similar to a nvs_domain_list this is a singly linked list of contexts.
|
|
* If sub-scheduler algorithms ever want something more sophisticated they'll
|
|
* likely have the build it themselves.
|
|
*/
|
|
struct nvs_context_list {
|
|
u32 nr;
|
|
struct nvs_context *contexts;
|
|
};
|
|
|
|
#endif
|