]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/blame - drivers/media/platform/sti/hva/hva-hw.h
Merge tag 'media/v4.11-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab...
[mirror_ubuntu-hirsute-kernel.git] / drivers / media / platform / sti / hva / hva-hw.h
CommitLineData
57b2c062
JCT
1/*
2 * Copyright (C) STMicroelectronics SA 2015
3 * Authors: Yannick Fertre <yannick.fertre@st.com>
4 * Hugues Fruchet <hugues.fruchet@st.com>
5 * License terms: GNU General Public License (GPL), version 2
6 */
7
8#ifndef HVA_HW_H
9#define HVA_HW_H
10
11#include "hva-mem.h"
12
13/* HVA Versions */
14#define HVA_VERSION_UNKNOWN 0x000
15#define HVA_VERSION_V400 0x400
16
17/* HVA command types */
18enum hva_hw_cmd_type {
19 /* RESERVED = 0x00 */
20 /* RESERVED = 0x01 */
21 H264_ENC = 0x02,
22 /* RESERVED = 0x03 */
23 /* RESERVED = 0x04 */
24 /* RESERVED = 0x05 */
25 /* RESERVED = 0x06 */
26 /* RESERVED = 0x07 */
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
35int hva_hw_probe(struct platform_device *pdev, struct hva_dev *hva);
36void hva_hw_remove(struct hva_dev *hva);
37int hva_hw_runtime_suspend(struct device *dev);
38int hva_hw_runtime_resume(struct device *dev);
39int hva_hw_execute_task(struct hva_ctx *ctx, enum hva_hw_cmd_type cmd,
40 struct hva_buffer *task);
c610b5a8
JCT
41#ifdef CONFIG_VIDEO_STI_HVA_DEBUGFS
42void hva_hw_dump_regs(struct hva_dev *hva, struct seq_file *s);
43#endif
57b2c062
JCT
44
45#endif /* HVA_HW_H */