1 /* SPDX-License-Identifier: GPL-2.0-or-later */ 2 /* 3 * linux/drivers/media/platform/samsung/s5p-mfc/s5p_mfc_cmd.h 4 * 5 * Copyright (C) 2012 Samsung Electronics Co., Ltd. 6 * http://www.samsung.com/ 7 */ 8 9 #ifndef S5P_MFC_CMD_H_ 10 #define S5P_MFC_CMD_H_ 11 12 #include "s5p_mfc_common.h" 13 14 #define MAX_H2R_ARG 4 15 16 struct s5p_mfc_cmd_args { 17 unsigned int arg[MAX_H2R_ARG]; 18 }; 19 20 struct s5p_mfc_hw_cmds { 21 int (*cmd_host2risc)(struct s5p_mfc_dev *dev, int cmd, 22 const struct s5p_mfc_cmd_args *args); 23 int (*sys_init_cmd)(struct s5p_mfc_dev *dev); 24 int (*sleep_cmd)(struct s5p_mfc_dev *dev); 25 int (*wakeup_cmd)(struct s5p_mfc_dev *dev); 26 int (*open_inst_cmd)(struct s5p_mfc_ctx *ctx); 27 int (*close_inst_cmd)(struct s5p_mfc_ctx *ctx); 28 }; 29 30 void s5p_mfc_init_hw_cmds(struct s5p_mfc_dev *dev); 31 #endif /* S5P_MFC_CMD_H_ */ 32