GNU Linux-libre 6.7.9-gnu
[releases.git] / drivers / media / platform / samsung / s5p-mfc / s5p_mfc_cmd.h
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                                 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_ */