cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

mtk_vcodec_fw_priv.h (1553B)


      1/* SPDX-License-Identifier: GPL-2.0 */
      2
      3#ifndef _MTK_VCODEC_FW_PRIV_H_
      4#define _MTK_VCODEC_FW_PRIV_H_
      5
      6#include "mtk_vcodec_fw.h"
      7
      8struct mtk_vcodec_dev;
      9
     10struct mtk_vcodec_fw {
     11	enum mtk_vcodec_fw_type type;
     12	const struct mtk_vcodec_fw_ops *ops;
     13	struct platform_device *pdev;
     14	struct mtk_scp *scp;
     15};
     16
     17struct mtk_vcodec_fw_ops {
     18	int (*load_firmware)(struct mtk_vcodec_fw *fw);
     19	unsigned int (*get_vdec_capa)(struct mtk_vcodec_fw *fw);
     20	unsigned int (*get_venc_capa)(struct mtk_vcodec_fw *fw);
     21	void *(*map_dm_addr)(struct mtk_vcodec_fw *fw, u32 dtcm_dmem_addr);
     22	int (*ipi_register)(struct mtk_vcodec_fw *fw, int id,
     23			    mtk_vcodec_ipi_handler handler, const char *name,
     24			    void *priv);
     25	int (*ipi_send)(struct mtk_vcodec_fw *fw, int id, void *buf,
     26			unsigned int len, unsigned int wait);
     27	void (*release)(struct mtk_vcodec_fw *fw);
     28};
     29
     30#if IS_ENABLED(CONFIG_VIDEO_MEDIATEK_VCODEC_VPU)
     31struct mtk_vcodec_fw *mtk_vcodec_fw_vpu_init(struct mtk_vcodec_dev *dev,
     32					     enum mtk_vcodec_fw_use fw_use);
     33#else
     34static inline struct mtk_vcodec_fw *
     35mtk_vcodec_fw_vpu_init(struct mtk_vcodec_dev *dev,
     36		       enum mtk_vcodec_fw_use fw_use)
     37{
     38	return ERR_PTR(-ENODEV);
     39}
     40#endif /* CONFIG_VIDEO_MEDIATEK_VCODEC_VPU */
     41
     42#if IS_ENABLED(CONFIG_VIDEO_MEDIATEK_VCODEC_SCP)
     43struct mtk_vcodec_fw *mtk_vcodec_fw_scp_init(struct mtk_vcodec_dev *dev);
     44#else
     45static inline struct mtk_vcodec_fw *
     46mtk_vcodec_fw_scp_init(struct mtk_vcodec_dev *dev)
     47{
     48	return ERR_PTR(-ENODEV);
     49}
     50#endif /* CONFIG_VIDEO_MEDIATEK_VCODEC_SCP */
     51
     52#endif /* _MTK_VCODEC_FW_PRIV_H_ */