Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net
[sfrench/cifs-2.6.git] / drivers / media / platform / xilinx / xilinx-vtc.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * Xilinx Video Timing Controller
4  *
5  * Copyright (C) 2013-2015 Ideas on Board
6  * Copyright (C) 2013-2015 Xilinx, Inc.
7  *
8  * Contacts: Hyun Kwon <hyun.kwon@xilinx.com>
9  *           Laurent Pinchart <laurent.pinchart@ideasonboard.com>
10  */
11
12 #ifndef __XILINX_VTC_H__
13 #define __XILINX_VTC_H__
14
15 struct device_node;
16 struct xvtc_device;
17
18 #define XVTC_MAX_HSIZE                  8191
19 #define XVTC_MAX_VSIZE                  8191
20
21 struct xvtc_config {
22         unsigned int hblank_start;
23         unsigned int hsync_start;
24         unsigned int hsync_end;
25         unsigned int hsize;
26         unsigned int vblank_start;
27         unsigned int vsync_start;
28         unsigned int vsync_end;
29         unsigned int vsize;
30 };
31
32 struct xvtc_device *xvtc_of_get(struct device_node *np);
33 void xvtc_put(struct xvtc_device *xvtc);
34
35 int xvtc_generator_start(struct xvtc_device *xvtc,
36                          const struct xvtc_config *config);
37 int xvtc_generator_stop(struct xvtc_device *xvtc);
38
39 #endif /* __XILINX_VTC_H__ */