1 /* SPDX-License-Identifier: MIT */ 2 #ifndef __NVKM_NVDEC_PRIV_H__ 3 #define __NVKM_NVDEC_PRIV_H__ 4 #include <engine/nvdec.h> 5 6 struct nvkm_nvdec_func { 7 const struct nvkm_falcon_func *flcn; 8 9 struct nvkm_sclass sclass[]; 10 }; 11 12 struct nvkm_nvdec_fwif { 13 int version; 14 int (*load)(struct nvkm_nvdec *, int ver, 15 const struct nvkm_nvdec_fwif *); 16 const struct nvkm_nvdec_func *func; 17 }; 18 19 extern const struct nvkm_nvdec_fwif gm107_nvdec_fwif[]; 20 21 int nvkm_nvdec_new_(const struct nvkm_nvdec_fwif *fwif, struct nvkm_device *, 22 enum nvkm_subdev_type, int, u32 addr, struct nvkm_nvdec **); 23 24 int r535_nvdec_new(const struct nvkm_engine_func *, struct nvkm_device *, 25 enum nvkm_subdev_type, int, struct nvkm_nvdec **); 26 #endif 27