xref: /openbmc/linux/drivers/gpu/drm/nouveau/nvkm/engine/nvdec/priv.h (revision 7ae9fb1b7ecbb5d85d07857943f677fd1a559b18)
1b7019ac5SIlia Mirkin /* SPDX-License-Identifier: MIT */
216307b5dSAlexandre Courbot #ifndef __NVKM_NVDEC_PRIV_H__
316307b5dSAlexandre Courbot #define __NVKM_NVDEC_PRIV_H__
416307b5dSAlexandre Courbot #include <engine/nvdec.h>
516307b5dSAlexandre Courbot 
698a34d99SBen Skeggs struct nvkm_nvdec_func {
73a900a5dSBen Skeggs 	const struct nvkm_falcon_func *flcn;
898a34d99SBen Skeggs };
998a34d99SBen Skeggs 
1098a34d99SBen Skeggs struct nvkm_nvdec_fwif {
1198a34d99SBen Skeggs 	int version;
1298a34d99SBen Skeggs 	int (*load)(struct nvkm_nvdec *, int ver,
1398a34d99SBen Skeggs 		    const struct nvkm_nvdec_fwif *);
1498a34d99SBen Skeggs 	const struct nvkm_nvdec_func *func;
1598a34d99SBen Skeggs };
1698a34d99SBen Skeggs 
17f8aeb133SBen Skeggs int nvkm_nvdec_new_(const struct nvkm_nvdec_fwif *fwif, struct nvkm_device *,
18*a51c69eeSBen Skeggs 		    enum nvkm_subdev_type, int, u32 addr, struct nvkm_nvdec **);
1916307b5dSAlexandre Courbot #endif
20