xref: /rk3399_rockchip-uboot/include/drm_modes.h (revision b9e63a962a36aac486c684be5f240a53cc85d44a)
1*b9e63a96SMark Yao /*
2*b9e63a96SMark Yao  * (C) Copyright 2008-2016 Fuzhou Rockchip Electronics Co., Ltd
3*b9e63a96SMark Yao  *
4*b9e63a96SMark Yao  * SPDX-License-Identifier:	GPL-2.0+
5*b9e63a96SMark Yao  */
6*b9e63a96SMark Yao 
7*b9e63a96SMark Yao #ifndef _DRM_MODES_H
8*b9e63a96SMark Yao #define _DRM_MODES_H
9*b9e63a96SMark Yao 
10*b9e63a96SMark Yao /* Video mode flags */
11*b9e63a96SMark Yao /* bit compatible with the xorg definitions. */
12*b9e63a96SMark Yao #define DRM_MODE_FLAG_PHSYNC			(1 << 0)
13*b9e63a96SMark Yao #define DRM_MODE_FLAG_NHSYNC			(1 << 1)
14*b9e63a96SMark Yao #define DRM_MODE_FLAG_PVSYNC			(1 << 2)
15*b9e63a96SMark Yao #define DRM_MODE_FLAG_NVSYNC			(1 << 3)
16*b9e63a96SMark Yao #define DRM_MODE_FLAG_INTERLACE			(1 << 4)
17*b9e63a96SMark Yao #define DRM_MODE_FLAG_DBLSCAN			(1 << 5)
18*b9e63a96SMark Yao #define DRM_MODE_FLAG_CSYNC			(1 << 6)
19*b9e63a96SMark Yao #define DRM_MODE_FLAG_PCSYNC			(1 << 7)
20*b9e63a96SMark Yao #define DRM_MODE_FLAG_NCSYNC			(1 << 8)
21*b9e63a96SMark Yao #define DRM_MODE_FLAG_HSKEW			(1 << 9) /* hskew provided */
22*b9e63a96SMark Yao #define DRM_MODE_FLAG_BCAST			(1 << 10)
23*b9e63a96SMark Yao #define DRM_MODE_FLAG_PIXMUX			(1 << 11)
24*b9e63a96SMark Yao #define DRM_MODE_FLAG_DBLCLK			(1 << 12)
25*b9e63a96SMark Yao #define DRM_MODE_FLAG_CLKDIV2			(1 << 13)
26*b9e63a96SMark Yao 
27*b9e63a96SMark Yao #define DRM_MODE_CONNECTOR_Unknown	0
28*b9e63a96SMark Yao #define DRM_MODE_CONNECTOR_VGA		1
29*b9e63a96SMark Yao #define DRM_MODE_CONNECTOR_DVII		2
30*b9e63a96SMark Yao #define DRM_MODE_CONNECTOR_DVID		3
31*b9e63a96SMark Yao #define DRM_MODE_CONNECTOR_DVIA		4
32*b9e63a96SMark Yao #define DRM_MODE_CONNECTOR_Composite	5
33*b9e63a96SMark Yao #define DRM_MODE_CONNECTOR_SVIDEO	6
34*b9e63a96SMark Yao #define DRM_MODE_CONNECTOR_LVDS		7
35*b9e63a96SMark Yao #define DRM_MODE_CONNECTOR_Component	8
36*b9e63a96SMark Yao #define DRM_MODE_CONNECTOR_9PinDIN	9
37*b9e63a96SMark Yao #define DRM_MODE_CONNECTOR_DisplayPort	10
38*b9e63a96SMark Yao #define DRM_MODE_CONNECTOR_HDMIA	11
39*b9e63a96SMark Yao #define DRM_MODE_CONNECTOR_HDMIB	12
40*b9e63a96SMark Yao #define DRM_MODE_CONNECTOR_TV		13
41*b9e63a96SMark Yao #define DRM_MODE_CONNECTOR_eDP		14
42*b9e63a96SMark Yao #define DRM_MODE_CONNECTOR_VIRTUAL      15
43*b9e63a96SMark Yao #define DRM_MODE_CONNECTOR_DSI		16
44*b9e63a96SMark Yao 
45*b9e63a96SMark Yao #define DRM_EDID_PT_HSYNC_POSITIVE (1 << 1)
46*b9e63a96SMark Yao #define DRM_EDID_PT_VSYNC_POSITIVE (1 << 2)
47*b9e63a96SMark Yao #define DRM_EDID_PT_SEPARATE_SYNC  (3 << 3)
48*b9e63a96SMark Yao #define DRM_EDID_PT_STEREO         (1 << 5)
49*b9e63a96SMark Yao #define DRM_EDID_PT_INTERLACED     (1 << 7)
50*b9e63a96SMark Yao 
51*b9e63a96SMark Yao struct drm_display_mode {
52*b9e63a96SMark Yao 	/* Proposed mode values */
53*b9e63a96SMark Yao 	int clock;		/* in kHz */
54*b9e63a96SMark Yao 	int hdisplay;
55*b9e63a96SMark Yao 	int hsync_start;
56*b9e63a96SMark Yao 	int hsync_end;
57*b9e63a96SMark Yao 	int htotal;
58*b9e63a96SMark Yao 	int vdisplay;
59*b9e63a96SMark Yao 	int vsync_start;
60*b9e63a96SMark Yao 	int vsync_end;
61*b9e63a96SMark Yao 	int vtotal;
62*b9e63a96SMark Yao 	int vrefresh;
63*b9e63a96SMark Yao 	int vscan;
64*b9e63a96SMark Yao 	unsigned int flags;
65*b9e63a96SMark Yao };
66*b9e63a96SMark Yao 
67*b9e63a96SMark Yao #endif
68