drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r535/nvdec.c

Source file repositories/reference/linux-study-clean/drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r535/nvdec.c

File Facts

System
Linux kernel
Corpus path
drivers/gpu/drm/nouveau/nvkm/subdev/gsp/rm/r535/nvdec.c
Extension
.c
Size
1643 bytes
Lines
46
Domain
Driver Families
Bucket
drivers/gpu
Inferred role
Driver Families: implementation source
Status
source implementation candidate

Why This File Exists

Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.

Dependency Surface

Detected Declarations

Annotated Snippet

#include <rm/engine.h>

#include "nvrm/nvdec.h"

static int
r535_nvdec_alloc(struct nvkm_gsp_object *chan, u32 handle, u32 class, int inst,
		 struct nvkm_gsp_object *nvdec)
{
	NV_BSP_ALLOCATION_PARAMETERS *args;

	args = nvkm_gsp_rm_alloc_get(chan, handle, class, sizeof(*args), nvdec);
	if (WARN_ON(IS_ERR(args)))
		return PTR_ERR(args);

	args->size = sizeof(*args);
	args->engineInstance = inst;

	return nvkm_gsp_rm_alloc_wr(nvdec, args);
}

const struct nvkm_rm_api_engine
r535_nvdec = {
	.alloc = r535_nvdec_alloc,
};

Annotation

Implementation Notes