xref: /linux/drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/ga1xx.c (revision ab93e0dd72c37d378dd936f031ffb83ff2bd87ce)
1befe75aeSBen Skeggs /* SPDX-License-Identifier: MIT
2befe75aeSBen Skeggs  *
3befe75aeSBen Skeggs  * Copyright (c) 2025, NVIDIA CORPORATION. All rights reserved.
4befe75aeSBen Skeggs  */
5befe75aeSBen Skeggs #include "gpu.h"
6befe75aeSBen Skeggs 
7*56c36f59SBen Skeggs #include <engine/fifo/priv.h>
8*56c36f59SBen Skeggs 
90fac5141SBen Skeggs #include <nvif/class.h>
100fac5141SBen Skeggs 
11befe75aeSBen Skeggs const struct nvkm_rm_gpu
12befe75aeSBen Skeggs ga1xx_gpu = {
130fac5141SBen Skeggs 	.disp.class = {
140fac5141SBen Skeggs 		.root = GA102_DISP,
150fac5141SBen Skeggs 		.caps = GV100_DISP_CAPS,
160fac5141SBen Skeggs 		.core = GA102_DISP_CORE_CHANNEL_DMA,
170fac5141SBen Skeggs 		.wndw = GA102_DISP_WINDOW_CHANNEL_DMA,
180fac5141SBen Skeggs 		.wimm = GA102_DISP_WINDOW_IMM_CHANNEL_DMA,
190fac5141SBen Skeggs 		.curs = GA102_DISP_CURSOR,
200fac5141SBen Skeggs 	},
21cd3c6228SBen Skeggs 
22cd3c6228SBen Skeggs 	.usermode.class = AMPERE_USERMODE_A,
23678bb27eSBen Skeggs 
24678bb27eSBen Skeggs 	.fifo.chan = {
25678bb27eSBen Skeggs 		.class = AMPERE_CHANNEL_GPFIFO_A,
26*56c36f59SBen Skeggs 		.doorbell_handle = tu102_chan_doorbell_handle,
27678bb27eSBen Skeggs 	},
287c2d25f1SBen Skeggs 
297c2d25f1SBen Skeggs 	.ce.class = AMPERE_DMA_COPY_B,
307c2d25f1SBen Skeggs 	.gr.class = {
317c2d25f1SBen Skeggs 		.i2m = KEPLER_INLINE_TO_MEMORY_B,
327c2d25f1SBen Skeggs 		.twod = FERMI_TWOD_A,
337c2d25f1SBen Skeggs 		.threed = AMPERE_B,
347c2d25f1SBen Skeggs 		.compute = AMPERE_COMPUTE_B,
357c2d25f1SBen Skeggs 	},
367c2d25f1SBen Skeggs 	.nvdec.class = NVC7B0_VIDEO_DECODER,
377c2d25f1SBen Skeggs 	.nvenc.class = NVC7B7_VIDEO_ENCODER,
387c2d25f1SBen Skeggs 	.ofa.class = NVC7FA_VIDEO_OFA,
39befe75aeSBen Skeggs };
40