1
2
3
4
5
6
7
8 #ifndef HVA_HW_H
9 #define HVA_HW_H
10
11 #include "hva-mem.h"
12
13
14 #define HVA_VERSION_UNKNOWN 0x000
15 #define HVA_VERSION_V400 0x400
16
17
18 enum hva_hw_cmd_type {
19
20
21 H264_ENC = 0x02,
22
23
24
25
26
27 REMOVE_CLIENT = 0x08,
28 FREEZE_CLIENT = 0x09,
29 START_CLIENT = 0x0A,
30 FREEZE_ALL = 0x0B,
31 START_ALL = 0x0C,
32 REMOVE_ALL = 0x0D
33 };
34
35 int hva_hw_probe(struct platform_device *pdev, struct hva_dev *hva);
36 void hva_hw_remove(struct hva_dev *hva);
37 int hva_hw_runtime_suspend(struct device *dev);
38 int hva_hw_runtime_resume(struct device *dev);
39 int hva_hw_execute_task(struct hva_ctx *ctx, enum hva_hw_cmd_type cmd,
40 struct hva_buffer *task);
41 #ifdef CONFIG_VIDEO_STI_HVA_DEBUGFS
42 void hva_hw_dump_regs(struct hva_dev *hva, struct seq_file *s);
43 #endif
44
45 #endif