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