adl_defines.h 25 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782
  1. /* The statements-of-fact provided herein are intended to be compatible with
  2. * AMD ADL's library. AMD is the creator and copyright holder of the ADL
  3. * library this interface describes, and therefore also defined this interface
  4. * originally.
  5. * These free interfaces were created by Luke Dashjr <luke+freeadl@dashjr.org>
  6. * As interfaces/APIs cannot be copyrighted, there is no license needed in the
  7. * USA and probably many other jurisdictions.
  8. * If your jurisdiction rules otherwise, the header is offered by Luke Dashjr
  9. * under the MIT license, but you are responsible for determining who your
  10. * jurisdiction considers to be the copyright holder in such a case.
  11. *
  12. * THE INFORMATION IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
  13. * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
  14. * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
  15. * AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN
  16. * ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
  17. * CONNECTION WITH THE INFORMATION OR THE USE OR OTHER DEALINGS IN THE
  18. * INFORMATION.
  19. */
  20. #ifndef ADL_DEFINES_H_
  21. #define ADL_DEFINES_H_
  22. enum {
  23. ADL_FALSE = 0,
  24. ADL_TRUE = 1,
  25. };
  26. #define ADL_MAX_CHAR 4096
  27. #define ADL_MAX_PATH 256
  28. #define ADL_MAX_ADAPTERS 150
  29. #define ADL_MAX_DISPLAYS 150
  30. #define ADL_MAX_DEVICENAME 32
  31. #define ADL_ADAPTER_INDEX_ALL -1
  32. #define ADL_MAIN_API_OPTION_NONE 0
  33. enum {
  34. ADL_DDC_OPTION_SWITCHDDC2 = 1,
  35. ADL_DDC_OPTION_RESTORECOMMAND = 2,
  36. };
  37. enum {
  38. ADL_DL_I2C_ACTIONREAD = 1,
  39. ADL_DL_I2C_ACTIONWRITE = 2,
  40. ADL_DL_I2C_ACTIONREAD_REPEATEDSTART = 3,
  41. };
  42. enum {
  43. ADL_OK_WAIT = 4,
  44. ADL_OK_RESTART = 3,
  45. ADL_OK_MODE_CHANGE = 2,
  46. ADL_OK_WARNING = 1,
  47. ADL_OK = 0,
  48. ADL_ERR = -1,
  49. ADL_ERR_NOT_INIT = -2,
  50. ADL_ERR_INVALID_PARAM = -3,
  51. ADL_ERR_INVALID_PARAM_SIZE = -4,
  52. ADL_ERR_INVALID_ADL_IDX = -5,
  53. ADL_ERR_INVALID_CONTROLLER_IDX = -6,
  54. ADL_ERR_INVALID_DIPLAY_IDX = -7,
  55. ADL_ERR_NOT_SUPPORTED = -8,
  56. ADL_ERR_NULL_POINTER = -9,
  57. ADL_ERR_DISABLED_ADAPTER = -10,
  58. ADL_ERR_INVALID_CALLBACK = -11,
  59. ADL_ERR_RESOURCE_CONFLICT = -12,
  60. };
  61. enum {
  62. ADL_DT_MONITOR = 0,
  63. ADL_DT_TELEVISION = 1,
  64. ADL_DT_LCD_PANEL = 2,
  65. ADL_DT_DIGITAL_FLAT_PANEL = 3,
  66. ADL_DT_COMPONENT_VIDEO = 4,
  67. ADL_DT_PROJECTOR = 5,
  68. };
  69. enum {
  70. ADL_DOT_UNKNOWN = 0,
  71. ADL_DOT_COMPOSITE = 1,
  72. ADL_DOT_SVIDEO = 2,
  73. ADL_DOT_ANALOG = 3,
  74. ADL_DOT_DIGITAL = 4,
  75. };
  76. enum {
  77. ADL_DISPLAY_COLOR_BRIGHTNESS = (1 << 0),
  78. ADL_DISPLAY_COLOR_CONTRAST = (1 << 1),
  79. ADL_DISPLAY_COLOR_SATURATION = (1 << 2),
  80. ADL_DISPLAY_COLOR_HUE = (1 << 3),
  81. ADL_DISPLAY_COLOR_TEMPERATURE = (1 << 4),
  82. ADL_DISPLAY_COLOR_TEMPERATURE_SOURCE_EDID = (1 << 5),
  83. ADL_DISPLAY_COLOR_TEMPERATURE_SOURCE_USER = (1 << 6),
  84. };
  85. enum {
  86. ADL_DISPLAY_ADJUST_OVERSCAN = (1 << 0),
  87. ADL_DISPLAY_ADJUST_VERT_POS = (1 << 1),
  88. ADL_DISPLAY_ADJUST_HOR_POS = (1 << 2),
  89. ADL_DISPLAY_ADJUST_VERT_SIZE = (1 << 3),
  90. ADL_DISPLAY_ADJUST_HOR_SIZE = (1 << 4),
  91. ADL_DISPLAY_ADJUST_SIZEPOS = (ADL_DISPLAY_ADJUST_VERT_POS | ADL_DISPLAY_ADJUST_HOR_POS | ADL_DISPLAY_ADJUST_VERT_SIZE | ADL_DISPLAY_ADJUST_HOR_SIZE),
  92. ADL_DISPLAY_CUSTOMMODES = (1 << 5),
  93. ADL_DISPLAY_ADJUST_UNDERSCAN = (1 << 6),
  94. };
  95. enum {
  96. ADL_DESKTOPCONFIG_UNKNOWN = 0,
  97. ADL_DESKTOPCONFIG_SINGLE = (1 << 0),
  98. ADL_DESKTOPCONFIG_CLONE = (1 << 2),
  99. ADL_DESKTOPCONFIG_BIGDESK_H = (1 << 4),
  100. ADL_DESKTOPCONFIG_BIGDESK_V = (1 << 5),
  101. ADL_DESKTOPCONFIG_BIGDESK_HR = (1 << 6),
  102. ADL_DESKTOPCONFIG_BIGDESK_VR = (1 << 7),
  103. ADL_DESKTOPCONFIG_RANDR12 = (1 << 8),
  104. };
  105. #define ADL_MAX_DISPLAY_NAME 256
  106. enum {
  107. ADL_DISPLAYDDCINFOEX_FLAG_PROJECTORDEVICE = (1 << 0),
  108. ADL_DISPLAYDDCINFOEX_FLAG_EDIDEXTENSION = (1 << 1),
  109. ADL_DISPLAYDDCINFOEX_FLAG_DIGITALDEVICE = (1 << 2),
  110. ADL_DISPLAYDDCINFOEX_FLAG_HDMIAUDIODEVICE = (1 << 3),
  111. ADL_DISPLAYDDCINFOEX_FLAG_SUPPORTS_AI = (1 << 4),
  112. ADL_DISPLAYDDCINFOEX_FLAG_SUPPORT_xvYCC601 = (1 << 5),
  113. ADL_DISPLAYDDCINFOEX_FLAG_SUPPORT_xvYCC709 = (1 << 6),
  114. };
  115. enum {
  116. ADL_DISPLAY_CONTYPE_UNKNOWN = 0,
  117. ADL_DISPLAY_CONTYPE_VGA = 1,
  118. ADL_DISPLAY_CONTYPE_DVI_D = 2,
  119. ADL_DISPLAY_CONTYPE_DVI_I = 3,
  120. ADL_DISPLAY_CONTYPE_ATICVDONGLE_NTSC = 4,
  121. ADL_DISPLAY_CONTYPE_ATICVDONGLE_JPN = 5,
  122. ADL_DISPLAY_CONTYPE_ATICVDONGLE_NONI2C_JPN = 6,
  123. ADL_DISPLAY_CONTYPE_ATICVDONGLE_NONI2C_NTSC = 7,
  124. ADL_DISPLAY_CONTYPE_HDMI_TYPE_A = 10,
  125. ADL_DISPLAY_CONTYPE_HDMI_TYPE_B = 11,
  126. ADL_DISPLAY_CONTYPE_SVIDEO = 12,
  127. ADL_DISPLAY_CONTYPE_COMPOSITE = 13,
  128. ADL_DISPLAY_CONTYPE_RCA_3COMPONENT = 14,
  129. ADL_DISPLAY_CONTYPE_DISPLAYPORT = 15,
  130. };
  131. enum {
  132. ADL_TV_STANDARDS = (1 << 0),
  133. ADL_TV_SCART = (1 << 1),
  134. };
  135. enum {
  136. ADL_STANDARD_NTSC_M = (1 << 0),
  137. ADL_STANDARD_NTSC_JPN = (1 << 1),
  138. ADL_STANDARD_NTSC_N = (1 << 2),
  139. ADL_STANDARD_PAL_B = (1 << 3),
  140. ADL_STANDARD_PAL_COMB_N = (1 << 4),
  141. ADL_STANDARD_PAL_D = (1 << 5),
  142. ADL_STANDARD_PAL_G = (1 << 6),
  143. ADL_STANDARD_PAL_H = (1 << 7),
  144. ADL_STANDARD_PAL_I = (1 << 8),
  145. ADL_STANDARD_PAL_K = (1 << 9),
  146. ADL_STANDARD_PAL_K1 = (1 << 10),
  147. ADL_STANDARD_PAL_L = (1 << 11),
  148. ADL_STANDARD_PAL_M = (1 << 12),
  149. ADL_STANDARD_PAL_N = (1 << 13),
  150. ADL_STANDARD_PAL_SECAM_D = (1 << 14),
  151. ADL_STANDARD_PAL_SECAM_K = (1 << 15),
  152. ADL_STANDARD_PAL_SECAM_K1 = (1 << 16),
  153. ADL_STANDARD_PAL_SECAM_L = (1 << 17),
  154. };
  155. enum {
  156. ADL_CUSTOMIZEDMODEFLAG_MODESUPPORTED = (1 << 0),
  157. ADL_CUSTOMIZEDMODEFLAG_NOTDELETETABLE = (1 << 1),
  158. ADL_CUSTOMIZEDMODEFLAG_INSERTBYDRIVER = (1 << 2),
  159. ADL_CUSTOMIZEDMODEFLAG_INTERLACED = (1 << 3),
  160. ADL_CUSTOMIZEDMODEFLAG_BASEMODE = (1 << 4),
  161. };
  162. enum {
  163. ADL_DISPLAY_CV_DONGLE_D1 = (1 << 0),
  164. ADL_DISPLAY_CV_DONGLE_D2 = (1 << 1),
  165. ADL_DISPLAY_CV_DONGLE_D3 = (1 << 2),
  166. ADL_DISPLAY_CV_DONGLE_D4 = (1 << 3),
  167. ADL_DISPLAY_CV_DONGLE_D5 = (1 << 4),
  168. };
  169. enum {
  170. ADL_DISPLAY_CV_DONGLE_480I = (1 << 0),
  171. ADL_DISPLAY_CV_DONGLE_480P = (1 << 1),
  172. ADL_DISPLAY_CV_DONGLE_540P = (1 << 2),
  173. ADL_DISPLAY_CV_DONGLE_720P = (1 << 3),
  174. ADL_DISPLAY_CV_DONGLE_1080I = (1 << 4),
  175. ADL_DISPLAY_CV_DONGLE_1080P = (1 << 5),
  176. ADL_DISPLAY_CV_DONGLE_16_9 = (1 << 6),
  177. ADL_DISPLAY_CV_DONGLE_720P50 = (1 << 7),
  178. ADL_DISPLAY_CV_DONGLE_1080I25 = (1 << 8),
  179. ADL_DISPLAY_CV_DONGLE_576I25 = (1 << 9),
  180. ADL_DISPLAY_CV_DONGLE_576P50 = (1 << 10),
  181. ADL_DISPLAY_CV_DONGLE_1080P24 = (1 << 11),
  182. ADL_DISPLAY_CV_DONGLE_1080P25 = (1 << 12),
  183. ADL_DISPLAY_CV_DONGLE_1080P30 = (1 << 13),
  184. ADL_DISPLAY_CV_DONGLE_1080P50 = (1 << 14),
  185. };
  186. enum {
  187. ADL_DISPLAY_FORMAT_FORCE_720P = (1 << 0),
  188. ADL_DISPLAY_FORMAT_FORCE_1080I = (1 << 1),
  189. ADL_DISPLAY_FORMAT_FORCE_1080P = (1 << 2),
  190. ADL_DISPLAY_FORMAT_FORCE_720P50 = (1 << 3),
  191. ADL_DISPLAY_FORMAT_FORCE_1080I25 = (1 << 4),
  192. ADL_DISPLAY_FORMAT_FORCE_576I25 = (1 << 5),
  193. ADL_DISPLAY_FORMAT_FORCE_576P50 = (1 << 6),
  194. ADL_DISPLAY_FORMAT_FORCE_1080P24 = (1 << 7),
  195. ADL_DISPLAY_FORMAT_FORCE_1080P25 = (1 << 8),
  196. ADL_DISPLAY_FORMAT_FORCE_1080P30 = (1 << 9),
  197. ADL_DISPLAY_FORMAT_FORCE_1080P50 = (1 << 10),
  198. };
  199. enum {
  200. ADL_DISPLAY_FORMAT_CVDONGLEOVERIDE = (1 << 0),
  201. ADL_DISPLAY_FORMAT_CVMODEUNDERSCAN = (1 << 1),
  202. ADL_DISPLAY_FORMAT_FORCECONNECT_SUPPORTED = (1 << 2),
  203. ADL_DISPLAY_FORMAT_RESTRICT_FORMAT_SELECTION = (1 << 3),
  204. ADL_DISPLAY_FORMAT_SETASPECRATIO = (1 << 4),
  205. ADL_DISPLAY_FORMAT_FORCEMODES = (1 << 5),
  206. ADL_DISPLAY_FORMAT_LCDRTCCOEFF = (1 << 6),
  207. };
  208. enum {
  209. ADL_PM_PARAM_DONT_CHANGE = 0,
  210. };
  211. enum {
  212. ADL_BUSTYPE_PCI = 0,
  213. ADL_BUSTYPE_AGP = 1,
  214. ADL_BUSTYPE_PCIE = 2,
  215. ADL_BUSTYPE_PCIE_GEN2 = 3,
  216. };
  217. enum {
  218. ADL_STEREO_OFF = 0,
  219. ADL_STEREO_ACTIVE = (1 << 1),
  220. ADL_STEREO_SUPPORTED = (1 << 2),
  221. ADL_STEREO_BLUE_LINE = (1 << 3),
  222. ADL_STEREO_PASSIVE = (1 << 6),
  223. ADL_STEREO_PASSIVE_HORIZ = (1 << 7),
  224. ADL_STEREO_PASSIVE_VERT = (1 << 8),
  225. ADL_STEREO_AUTO_HORIZONTAL = (1 << 30),
  226. ADL_STEREO_AUTO_VERTICAL = (1 << 31),
  227. };
  228. enum {
  229. ADL_WORKSTATION_LOADBALANCING_SUPPORTED = 1,
  230. ADL_WORKSTATION_LOADBALANCING_AVAILABLE = 2,
  231. };
  232. enum {
  233. ADL_WORKSTATION_LOADBALANCING_DISABLED = 0,
  234. ADL_WORKSTATION_LOADBALANCING_ENABLED = 1,
  235. };
  236. enum {
  237. ADL_CONTEXT_SPEED_UNFORCED = 0,
  238. ADL_CONTEXT_SPEED_FORCEHIGH = 1,
  239. ADL_CONTEXT_SPEED_FORCELOW = 2,
  240. };
  241. enum {
  242. ADL_ADAPTER_SPEEDCAPS_SUPPORTED = (1 << 0),
  243. };
  244. enum {
  245. ADL_GLSYNC_PORT_UNKNOWN = 0,
  246. ADL_GLSYNC_PORT_BNC = 1,
  247. ADL_GLSYNC_PORT_RJ45PORT1 = 2,
  248. ADL_GLSYNC_PORT_RJ45PORT2 = 3,
  249. };
  250. enum {
  251. ADL_GLSYNC_CONFIGMASK_NONE = 0,
  252. ADL_GLSYNC_CONFIGMASK_SIGNALSOURCE = (1 << 0),
  253. ADL_GLSYNC_CONFIGMASK_SYNCFIELD = (1 << 1),
  254. ADL_GLSYNC_CONFIGMASK_SAMPLERATE = (1 << 2),
  255. ADL_GLSYNC_CONFIGMASK_SYNCDELAY = (1 << 3),
  256. ADL_GLSYNC_CONFIGMASK_TRIGGEREDGE = (1 << 4),
  257. ADL_GLSYNC_CONFIGMASK_SCANRATECOEFF = (1 << 5),
  258. ADL_GLSYNC_CONFIGMASK_FRAMELOCKCNTL = (1 << 6),
  259. };
  260. enum {
  261. ADL_GLSYNC_FRAMELOCKCNTL_NONE = 0,
  262. ADL_GLSYNC_FRAMELOCKCNTL_ENABLE = (1 << 0),
  263. ADL_GLSYNC_FRAMELOCKCNTL_DISABLE = (1 << 1),
  264. ADL_GLSYNC_FRAMELOCKCNTL_SWAP_COUNTER_RESET = (1 << 2),
  265. ADL_GLSYNC_FRAMELOCKCNTL_SWAP_COUNTER_ACK = (1 << 3),
  266. ADL_GLSYNC_FRAMELOCKCNTL_STATE_ENABLE = (1 << 0),
  267. };
  268. enum {
  269. ADL_GLSYNC_COUNTER_SWAP = (1 << 0),
  270. };
  271. enum {
  272. ADL_GLSYNC_SIGNALSOURCE_UNDEFINED = 0x0100,
  273. ADL_GLSYNC_SIGNALSOURCE_FREERUN = 0x0101,
  274. ADL_GLSYNC_SIGNALSOURCE_BNCPORT = 0x0102,
  275. ADL_GLSYNC_SIGNALSOURCE_RJ45PORT1 = 0x0103,
  276. ADL_GLSYNC_SIGNALSOURCE_RJ45PORT2 = 0x0104,
  277. };
  278. enum {
  279. ADL_GLSYNC_SIGNALTYPE_UNDEFINED = 0,
  280. ADL_GLSYNC_SIGNALTYPE_480I = 1,
  281. ADL_GLSYNC_SIGNALTYPE_576I = 2,
  282. ADL_GLSYNC_SIGNALTYPE_480P = 3,
  283. ADL_GLSYNC_SIGNALTYPE_576P = 4,
  284. ADL_GLSYNC_SIGNALTYPE_720P = 5,
  285. ADL_GLSYNC_SIGNALTYPE_1080P = 6,
  286. ADL_GLSYNC_SIGNALTYPE_1080I = 7,
  287. ADL_GLSYNC_SIGNALTYPE_SDI = 8,
  288. ADL_GLSYNC_SIGNALTYPE_TTL = 9,
  289. ADL_GLSYNC_SIGNALTYPE_ANALOG = 10,
  290. };
  291. enum {
  292. ADL_GLSYNC_SYNCFIELD_UNDEFINED = 0,
  293. ADL_GLSYNC_SYNCFIELD_BOTH = 1,
  294. ADL_GLSYNC_SYNCFIELD_1 = 2,
  295. };
  296. enum {
  297. ADL_GLSYNC_TRIGGEREDGE_UNDEFINED = 0,
  298. ADL_GLSYNC_TRIGGEREDGE_RISING = 1,
  299. ADL_GLSYNC_TRIGGEREDGE_FALLING = 2,
  300. ADL_GLSYNC_TRIGGEREDGE_BOTH = 3,
  301. };
  302. enum {
  303. ADL_GLSYNC_SCANRATECOEFF_UNDEFINED = 0,
  304. ADL_GLSYNC_SCANRATECOEFF_x5 = 1,
  305. ADL_GLSYNC_SCANRATECOEFF_x4 = 2,
  306. ADL_GLSYNC_SCANRATECOEFF_x3 = 3,
  307. ADL_GLSYNC_SCANRATECOEFF_x5_DIV_2 = 4,
  308. ADL_GLSYNC_SCANRATECOEFF_x2 = 5,
  309. ADL_GLSYNC_SCANRATECOEFF_x3_DIV_2 = 6,
  310. ADL_GLSYNC_SCANRATECOEFF_x5_DIV_4 = 7,
  311. ADL_GLSYNC_SCANRATECOEFF_x1 = 8,
  312. ADL_GLSYNC_SCANRATECOEFF_x4_DIV_5 = 9,
  313. ADL_GLSYNC_SCANRATECOEFF_x2_DIV_3 = 10,
  314. ADL_GLSYNC_SCANRATECOEFF_x1_DIV_2 = 11,
  315. ADL_GLSYNC_SCANRATECOEFF_x2_DIV_5 = 12,
  316. ADL_GLSYNC_SCANRATECOEFF_x1_DIV_3 = 13,
  317. ADL_GLSYNC_SCANRATECOEFF_x1_DIV_4 = 14,
  318. ADL_GLSYNC_SCANRATECOEFF_x1_DIV_5 = 15,
  319. };
  320. enum {
  321. ADL_GLSYNC_PORTSTATE_UNDEFINED = 0,
  322. ADL_GLSYNC_PORTSTATE_NOCABLE = 1,
  323. ADL_GLSYNC_PORTSTATE_IDLE = 2,
  324. ADL_GLSYNC_PORTSTATE_INPUT = 3,
  325. ADL_GLSYNC_PORTSTATE_OUTPUT = 4,
  326. };
  327. enum {
  328. ADL_GLSYNC_LEDTYPE_BNC = 0,
  329. ADL_GLSYNC_LEDTYPE_RJ45_LEFT = 0,
  330. ADL_GLSYNC_LEDTYPE_RJ45_RIGHT = 1,
  331. };
  332. enum {
  333. ADL_GLSYNC_LEDCOLOR_UNDEFINED = 0,
  334. ADL_GLSYNC_LEDCOLOR_NOLIGHT = 1,
  335. ADL_GLSYNC_LEDCOLOR_YELLOW = 2,
  336. ADL_GLSYNC_LEDCOLOR_RED = 3,
  337. ADL_GLSYNC_LEDCOLOR_GREEN = 4,
  338. ADL_GLSYNC_LEDCOLOR_FLASH_GREEN = 5,
  339. };
  340. enum {
  341. ADL_GLSYNC_PORTCNTL_NONE = 0,
  342. ADL_GLSYNC_PORTCNTL_OUTPUT = 1,
  343. };
  344. enum {
  345. ADL_GLSYNC_MODECNTL_NONE = 0,
  346. ADL_GLSYNC_MODECNTL_GENLOCK = 1,
  347. ADL_GLSYNC_MODECNTL_TIMINGSERVER = 2,
  348. };
  349. enum {
  350. ADL_GLSYNC_MODECNTL_STATUS_NONE = 0,
  351. ADL_GLSYNC_MODECNTL_STATUS_GENLOCK = (1 << 0),
  352. ADL_GLSYNC_MODECNTL_STATUS_SETMODE_REQUIRED = (1 << 1),
  353. ADL_GLSYNC_MODECNTL_STATUS_GENLOCK_ALLOWED = (1 << 2),
  354. };
  355. #define ADL_MAX_GLSYNC_PORTS 8
  356. #define ADL_MAX_GLSYNC_PORT_LEDS 8
  357. enum {
  358. ADL_XFIREX_STATE_NOINTERCONNECT = (1 << 0),
  359. ADL_XFIREX_STATE_DOWNGRADEPIPES = (1 << 1),
  360. ADL_XFIREX_STATE_DOWNGRADEMEM = (1 << 2),
  361. ADL_XFIREX_STATE_REVERSERECOMMENDED = (1 << 3),
  362. ADL_XFIREX_STATE_3DACTIVE = (1 << 4),
  363. ADL_XFIREX_STATE_MASTERONSLAVE = (1 << 5),
  364. ADL_XFIREX_STATE_NODISPLAYCONNECT = (1 << 6),
  365. ADL_XFIREX_STATE_NOPRIMARYVIEW = (1 << 7),
  366. ADL_XFIREX_STATE_DOWNGRADEVISMEM = (1 << 8),
  367. ADL_XFIREX_STATE_LESSTHAN8LANE_MASTER = (1 << 9),
  368. ADL_XFIREX_STATE_LESSTHAN8LANE_SLAVE = (1 << 10),
  369. ADL_XFIREX_STATE_PEERTOPEERFAILED = (1 << 11),
  370. ADL_XFIREX_STATE_MEMISDOWNGRADED = (1 << 16),
  371. ADL_XFIREX_STATE_PIPESDOWNGRADED = (1 << 17),
  372. ADL_XFIREX_STATE_XFIREXACTIVE = (1 << 18),
  373. ADL_XFIREX_STATE_VISMEMISDOWNGRADED = (1 << 19),
  374. ADL_XFIREX_STATE_INVALIDINTERCONNECTION = (1 << 20),
  375. ADL_XFIREX_STATE_NONP2PMODE = (1 << 21),
  376. ADL_XFIREX_STATE_DOWNGRADEMEMBANKS = (1 << 22),
  377. ADL_XFIREX_STATE_MEMBANKSDOWNGRADED = (1 << 23),
  378. ADL_XFIREX_STATE_DUALDISPLAYSALLOWED = (1 << 24),
  379. ADL_XFIREX_STATE_P2P_APERTURE_MAPPING = (1 << 25),
  380. ADL_XFIREX_STATE_P2PFLUSH_REQUIRED = ADL_XFIREX_STATE_P2P_APERTURE_MAPPING,
  381. ADL_XFIREX_STATE_XSP_CONNECTED = (1 << 26),
  382. ADL_XFIREX_STATE_ENABLE_CF_REBOOT_REQUIRED = (1 << 27),
  383. ADL_XFIREX_STATE_DISABLE_CF_REBOOT_REQUIRED = (1 << 28),
  384. ADL_XFIREX_STATE_DRV_HANDLE_DOWNGRADE_KEY = (1 << 29),
  385. ADL_XFIREX_STATE_CF_RECONFIG_REQUIRED = (1 << 30),
  386. ADL_XFIREX_STATE_ERRORGETTINGSTATUS = (1 << 31),
  387. };
  388. enum {
  389. ADL_DISPLAY_PIXELFORMAT_UNKNOWN = 0,
  390. ADL_DISPLAY_PIXELFORMAT_RGB = (1 << 0),
  391. ADL_DISPLAY_PIXELFORMAT_YCRCB444 = (1 << 1),
  392. ADL_DISPLAY_PIXELFORMAT_YCRCB422 = (1 << 2),
  393. ADL_DISPLAY_PIXELFORMAT_RGB_LIMITED_RANGE = (1 << 3),
  394. ADL_DISPLAY_PIXELFORMAT_RGB_FULL_RANGE = ADL_DISPLAY_PIXELFORMAT_RGB
  395. };
  396. enum {
  397. ADL_DL_DISPLAYCONFIG_CONTYPE_UNKNOWN = 0,
  398. ADL_DL_DISPLAYCONFIG_CONTYPE_CV_NONI2C_JP = 1,
  399. ADL_DL_DISPLAYCONFIG_CONTYPE_CV_JPN = 2,
  400. ADL_DL_DISPLAYCONFIG_CONTYPE_CV_NA = 3,
  401. ADL_DL_DISPLAYCONFIG_CONTYPE_CV_NONI2C_NA = 4,
  402. ADL_DL_DISPLAYCONFIG_CONTYPE_VGA = 5,
  403. ADL_DL_DISPLAYCONFIG_CONTYPE_DVI_D = 6,
  404. ADL_DL_DISPLAYCONFIG_CONTYPE_DVI_I = 7,
  405. ADL_DL_DISPLAYCONFIG_CONTYPE_HDMI_TYPE_A = 8,
  406. ADL_DL_DISPLAYCONFIG_CONTYPE_HDMI_TYPE_B = 9,
  407. ADL_DL_DISPLAYCONFIG_CONTYPE_DISPLAYPORT = 10,
  408. };
  409. enum {
  410. ADL_DISPLAY_DISPLAYINFO_DISPLAYCONNECTED = (1 << 0),
  411. ADL_DISPLAY_DISPLAYINFO_DISPLAYMAPPED = (1 << 1),
  412. ADL_DISPLAY_DISPLAYINFO_NONLOCAL = (1 << 2),
  413. ADL_DISPLAY_DISPLAYINFO_FORCIBLESUPPORTED = (1 << 3),
  414. ADL_DISPLAY_DISPLAYINFO_GENLOCKSUPPORTED = (1 << 4),
  415. ADL_DISPLAY_DISPLAYINFO_MULTIVPU_SUPPORTED = (1 << 5),
  416. ADL_DISPLAY_DISPLAYINFO_MANNER_SUPPORTED_SINGLE = (1 << 8),
  417. ADL_DISPLAY_DISPLAYINFO_MANNER_SUPPORTED_CLONE = (1 << 9),
  418. ADL_DISPLAY_DISPLAYINFO_MANNER_SUPPORTED_2VSTRETCH = (1 << 10),
  419. ADL_DISPLAY_DISPLAYINFO_MANNER_SUPPORTED_2HSTRETCH = (1 << 11),
  420. ADL_DISPLAY_DISPLAYINFO_MANNER_SUPPORTED_EXTENDED = (1 << 12),
  421. ADL_DISPLAY_DISPLAYINFO_MANNER_SUPPORTED_NSTRETCH1GPU = (1 << 16),
  422. ADL_DISPLAY_DISPLAYINFO_MANNER_SUPPORTED_NSTRETCHNGPU = (1 << 17),
  423. ADL_DISPLAY_DISPLAYINFO_MANNER_SUPPORTED_RESERVED2 = (1 << 18),
  424. ADL_DISPLAY_DISPLAYINFO_MANNER_SUPPORTED_RESERVED3 = (1 << 19),
  425. };
  426. enum {
  427. ADL_ADAPTER_DISPLAYCAP_MANNER_SUPPORTED_NOTACTIVE = (1 << 0),
  428. ADL_ADAPTER_DISPLAYCAP_MANNER_SUPPORTED_SINGLE = (1 << 1),
  429. ADL_ADAPTER_DISPLAYCAP_MANNER_SUPPORTED_CLONE = (1 << 2),
  430. ADL_ADAPTER_DISPLAYCAP_MANNER_SUPPORTED_NSTRETCH1GPU = (1 << 3),
  431. ADL_ADAPTER_DISPLAYCAP_MANNER_SUPPORTED_NSTRETCHNGPU = (1 << 4),
  432. ADL_ADAPTER_DISPLAYCAP_MANNER_SUPPORTED_2VSTRETCH = (1 << 5),
  433. ADL_ADAPTER_DISPLAYCAP_MANNER_SUPPORTED_2HSTRETCH = (1 << 6),
  434. ADL_ADAPTER_DISPLAYCAP_MANNER_SUPPORTED_EXTENDED = (1 << 7),
  435. ADL_ADAPTER_DISPLAYCAP_PREFERDISPLAY_SUPPORTED = (1 << 8),
  436. ADL_ADAPTER_DISPLAYCAP_BEZEL_SUPPORTED = (1 << 9),
  437. };
  438. enum {
  439. ADL_DISPLAY_DISPLAYMAP_MANNER_RESERVED = (1 << 0),
  440. ADL_DISPLAY_DISPLAYMAP_MANNER_NOTACTIVE = (1 << 1),
  441. ADL_DISPLAY_DISPLAYMAP_MANNER_SINGLE = (1 << 2),
  442. ADL_DISPLAY_DISPLAYMAP_MANNER_CLONE = (1 << 3),
  443. ADL_DISPLAY_DISPLAYMAP_MANNER_RESERVED1 = (1 << 4),
  444. ADL_DISPLAY_DISPLAYMAP_MANNER_HSTRETCH = (1 << 5),
  445. ADL_DISPLAY_DISPLAYMAP_MANNER_VSTRETCH = (1 << 6),
  446. ADL_DISPLAY_DISPLAYMAP_MANNER_VLD = (1 << 7),
  447. };
  448. enum {
  449. ADL_DISPLAY_DISPLAYMAP_OPTION_GPUINFO = 1,
  450. };
  451. enum {
  452. ADL_DISPLAY_DISPLAYTARGET_PREFERRED = 1,
  453. };
  454. enum {
  455. ADL_DISPLAY_POSSIBLEMAPRESULT_VALID = 1,
  456. ADL_DISPLAY_POSSIBLEMAPRESULT_BEZELSUPPORTED = 2,
  457. };
  458. enum {
  459. ADL_DISPLAY_MODE_COLOURFORMAT_565 = (1 << 0),
  460. ADL_DISPLAY_MODE_COLOURFORMAT_8888 = (1 << 1),
  461. ADL_DISPLAY_MODE_ORIENTATION_SUPPORTED_000 = (1 << 2),
  462. ADL_DISPLAY_MODE_ORIENTATION_SUPPORTED_090 = (1 << 3),
  463. ADL_DISPLAY_MODE_ORIENTATION_SUPPORTED_180 = (1 << 4),
  464. ADL_DISPLAY_MODE_ORIENTATION_SUPPORTED_270 = (1 << 5),
  465. ADL_DISPLAY_MODE_REFRESHRATE_ROUNDED = (1 << 6),
  466. ADL_DISPLAY_MODE_REFRESHRATE_ONLY = (1 << 7),
  467. };
  468. enum {
  469. ADL_DISPLAY_MODE_PROGRESSIVE_FLAG = 0,
  470. ADL_DISPLAY_MODE_INTERLACED_FLAG = 2,
  471. };
  472. #define ADL_OSMODEINFOXPOS_DEFAULT -640
  473. #define ADL_OSMODEINFOYPOS_DEFAULT 0
  474. #define ADL_OSMODEINFOXRES_DEFAULT 640
  475. #define ADL_OSMODEINFOYRES_DEFAULT 480
  476. #define ADL_OSMODEINFOXRES_DEFAULT800 800
  477. #define ADL_OSMODEINFOYRES_DEFAULT600 600
  478. #define ADL_OSMODEINFOREFRESHRATE_DEFAULT 60
  479. #define ADL_OSMODEINFOCOLOURDEPTH_DEFAULT 8
  480. #define ADL_OSMODEINFOCOLOURDEPTH_DEFAULT16 16
  481. #define ADL_OSMODEINFOCOLOURDEPTH_DEFAULT24 24
  482. #define ADL_OSMODEINFOCOLOURDEPTH_DEFAULT32 32
  483. #define ADL_OSMODEINFOORIENTATION_DEFAULT 0
  484. #define ADL_OSMODEINFOORIENTATION_DEFAULT_WIN7 DISPLAYCONFIG_ROTATION_FORCE_UINT32
  485. #define ADL_OSMODEFLAG_DEFAULT 0
  486. enum ADLPurposeCode {
  487. ADL_PURPOSECODE_NORMAL = 0,
  488. ADL_PURPOSECODE_HIDE_MODE_SWITCH,
  489. ADL_PURPOSECODE_MODE_SWITCH,
  490. ADL_PURPOSECODE_ATTATCH_DEVICE,
  491. ADL_PURPOSECODE_DETACH_DEVICE,
  492. ADL_PURPOSECODE_SETPRIMARY_DEVICE,
  493. ADL_PURPOSECODE_GDI_ROTATION,
  494. ADL_PURPOSECODE_ATI_ROTATION,
  495. };
  496. enum ADLAngle {
  497. ADL_ANGLE_LANDSCAPE = 0,
  498. ADL_ANGLE_ROTATERIGHT = 90,
  499. ADL_ANGLE_ROTATE180 = 180,
  500. ADL_ANGLE_ROTATELEFT = 270,
  501. };
  502. enum ADLOrientationDataType {
  503. ADL_ORIENTATIONTYPE_OSDATATYPE,
  504. ADL_ORIENTATIONTYPE_NONOSDATATYPE
  505. };
  506. enum ADLPanningMode {
  507. ADL_PANNINGMODE_NO_PANNING = 0,
  508. ADL_PANNINGMODE_AT_LEAST_ONE_NO_PANNING = 1,
  509. ADL_PANNINGMODE_ALLOW_PANNING = 2,
  510. };
  511. enum ADLLARGEDESKTOPTYPE {
  512. ADL_LARGEDESKTOPTYPE_NORMALDESKTOP = 0,
  513. ADL_LARGEDESKTOPTYPE_PSEUDOLARGEDESKTOP = 1,
  514. ADL_LARGEDESKTOPTYPE_VERYLARGEDESKTOP = 2,
  515. };
  516. #define ADL_I2C_MAJOR_API_REV 1
  517. #define ADL_I2C_MINOR_DEFAULT_API_REV 0
  518. #define ADL_I2C_MINOR_OEM_API_REV 1
  519. enum {
  520. ADL_DL_I2C_LINE_OEM = 1,
  521. ADL_DL_I2C_LINE_OD_CONTROL = 2,
  522. ADL_DL_I2C_LINE_OEM2 = 3,
  523. };
  524. #define ADL_DL_I2C_MAXDATASIZE 0x00000040
  525. #define ADL_DL_I2C_MAXWRITEDATASIZE 0x0000000C
  526. #define ADL_DL_I2C_MAXADDRESSLENGTH 0x00000006
  527. #define ADL_DL_I2C_MAXOFFSETLENGTH 0x00000004
  528. enum {
  529. ADL_DL_DISPLAYPROPERTY_TYPE_UNKNOWN = 0,
  530. ADL_DL_DISPLAYPROPERTY_TYPE_EXPANSIONMODE = 1,
  531. ADL_DL_DISPLAYPROPERTY_TYPE_USEUNDERSCANSCALING = 2,
  532. };
  533. enum {
  534. ADL_DL_DISPLAYPROPERTY_EXPANSIONMODE_CENTER = 0,
  535. ADL_DL_DISPLAYPROPERTY_EXPANSIONMODE_FULLSCREEN = 1,
  536. ADL_DL_DISPLAYPROPERTY_EXPANSIONMODE_ASPECTRATIO = 2,
  537. };
  538. enum {
  539. ADL_DL_DISPLAY_DITHER_UNKNOWN = 0,
  540. ADL_DL_DISPLAY_DITHER_DISABLED = 1,
  541. ADL_DL_DISPLAY_DITHER_ENABLED = 2,
  542. };
  543. #define ADL_MAX_EDIDDATA_SIZE 256
  544. #define ADL_MAX_EDID_EXTENSION_BLOCKS 3
  545. enum {
  546. ADL_DL_CONTROLLER_OVERLAY_ALPHA = 0,
  547. ADL_DL_CONTROLLER_OVERLAY_ALPHAPERPIX = 1,
  548. };
  549. enum {
  550. ADL_DL_DISPLAY_DATA_PACKET__INFO_PACKET_RESET = 0,
  551. ADL_DL_DISPLAY_DATA_PACKET__INFO_PACKET_SET = 1,
  552. };
  553. enum {
  554. ADL_DL_DISPLAY_DATA_PACKET__TYPE__AVI = (1 << 0),
  555. ADL_DL_DISPLAY_DATA_PACKET__TYPE__RESERVED = (1 << 1),
  556. ADL_DL_DISPLAY_DATA_PACKET__TYPE__VENDORINFO = (1 << 2),
  557. };
  558. enum {
  559. ADL_GAMUT_MATRIX_SD = 1,
  560. ADL_GAMUT_MATRIX_HD = 2,
  561. };
  562. enum {
  563. ADL_DL_CLOCKINFO_FLAG_FULLSCREEN3DONLY = (1 << 0),
  564. ADL_DL_CLOCKINFO_FLAG_ALWAYSFULLSCREEN3D = (1 << 1),
  565. ADL_DL_CLOCKINFO_FLAG_VPURECOVERYREDUCED = (1 << 2),
  566. ADL_DL_CLOCKINFO_FLAG_THERMALPROTECTION = (1 << 3),
  567. };
  568. enum {
  569. ADL_DL_POWERXPRESS_GPU_INTEGRATED = 1,
  570. ADL_DL_POWERXPRESS_GPU_DISCRETE = 2,
  571. };
  572. enum {
  573. ADL_DL_POWERXPRESS_SWITCH_RESULT_STARTED = 1,
  574. ADL_DL_POWERXPRESS_SWITCH_RESULT_DECLINED = 2,
  575. ADL_DL_POWERXPRESS_SWITCH_RESULT_ALREADY = 3,
  576. };
  577. #define ADL_DL_POWERXPRESS_VERSION_MAJOR 2
  578. #define ADL_DL_POWERXPRESS_VERSION_MINOR 0
  579. #define ADL_DL_POWERXPRESS_VERSION (((ADL_DL_POWERXPRESS_VERSION_MAJOR) << 16) | ADL_DL_POWERXPRESS_VERSION_MINOR)
  580. enum {
  581. ADL_DL_THERMAL_DOMAIN_OTHER = 0,
  582. ADL_DL_THERMAL_DOMAIN_GPU = 1,
  583. };
  584. enum {
  585. ADL_DL_THERMAL_FLAG_INTERRUPT = 1,
  586. ADL_DL_THERMAL_FLAG_FANCONTROL = 2,
  587. };
  588. enum {
  589. ADL_DL_FANCTRL_SUPPORTS_PERCENT_READ = (1 << 0),
  590. ADL_DL_FANCTRL_SUPPORTS_PERCENT_WRITE = (1 << 1),
  591. ADL_DL_FANCTRL_SUPPORTS_RPM_READ = (1 << 2),
  592. ADL_DL_FANCTRL_SUPPORTS_RPM_WRITE = (1 << 3),
  593. };
  594. enum {
  595. ADL_DL_FANCTRL_SPEED_TYPE_PERCENT = 1,
  596. ADL_DL_FANCTRL_SPEED_TYPE_RPM = 2,
  597. };
  598. enum {
  599. ADL_DL_FANCTRL_FLAG_USER_DEFINED_SPEED = 1,
  600. };
  601. #define ADL_DL_MAX_MVPU_ADAPTERS 4
  602. enum {
  603. MVPU_ADAPTER_0 = (1 << 0),
  604. MVPU_ADAPTER_1 = (1 << 1),
  605. MVPU_ADAPTER_2 = (1 << 2),
  606. MVPU_ADAPTER_3 = (1 << 3),
  607. };
  608. #define ADL_DL_MAX_REGISTRY_PATH 256
  609. enum {
  610. ADL_DL_MVPU_STATUS_OFF = 0,
  611. ADL_DL_MVPU_STATUS_ON = 1,
  612. };
  613. enum {
  614. ADL_ASIC_UNDEFINED = 0,
  615. ADL_ASIC_DISCRETE = (1 << 0),
  616. ADL_ASIC_INTEGRATED = (1 << 1),
  617. ADL_ASIC_FIREGL = (1 << 2),
  618. ADL_ASIC_FIREMV = (1 << 3),
  619. ADL_ASIC_XGP = (1 << 4),
  620. ADL_ASIC_FUSION = (1 << 5),
  621. };
  622. enum {
  623. ADL_DL_TIMINGFLAG_DOUBLE_SCAN = (1 << 0),
  624. ADL_DL_TIMINGFLAG_INTERLACED = (1 << 1),
  625. ADL_DL_TIMINGFLAG_H_SYNC_POLARITY = (1 << 2),
  626. ADL_DL_TIMINGFLAG_V_SYNC_POLARITY = (1 << 3),
  627. };
  628. enum {
  629. ADL_DL_MODETIMING_STANDARD_CVT = (1 << 0),
  630. ADL_DL_MODETIMING_STANDARD_GTF = (1 << 1),
  631. ADL_DL_MODETIMING_STANDARD_DMT = (1 << 2),
  632. ADL_DL_MODETIMING_STANDARD_CUSTOM = (1 << 3),
  633. ADL_DL_MODETIMING_STANDARD_DRIVER_DEFAULT = (1 << 4),
  634. };
  635. enum {
  636. ADL_XSERVERINFO_XINERAMAACTIVE = (1 << 0),
  637. ADL_XSERVERINFO_RANDR12SUPPORTED = (1 << 1),
  638. };
  639. enum {
  640. ADL_CONTROLLERVECTOR_0 = 1,
  641. ADL_CONTROLLERVECTOR_1 = 2,
  642. };
  643. enum {
  644. ADL_DISPLAY_SLSGRID_ORIENTATION_000 = (1 << 0),
  645. ADL_DISPLAY_SLSGRID_ORIENTATION_090 = (1 << 1),
  646. ADL_DISPLAY_SLSGRID_ORIENTATION_180 = (1 << 2),
  647. ADL_DISPLAY_SLSGRID_ORIENTATION_270 = (1 << 3),
  648. };
  649. enum {
  650. ADL_DISPLAY_SLSGRID_CAP_OPTION_RELATIVETO_LANDSCAPE = (1 << 0),
  651. ADL_DISPLAY_SLSGRID_CAP_OPTION_RELATIVETO_CURRENTANGLE = (1 << 1),
  652. ADL_DISPLAY_SLSGRID_PORTAIT_MODE = (1 << 2),
  653. };
  654. enum {
  655. ADL_DISPLAY_SLSMAPCONFIG_GET_OPTION_RELATIVETO_LANDSCAPE = 1,
  656. ADL_DISPLAY_SLSMAPCONFIG_GET_OPTION_RELATIVETO_CURRENTANGLE = 2,
  657. };
  658. enum {
  659. ADL_DISPLAY_SLSMAPCONFIG_CREATE_OPTION_RELATIVETO_LANDSCAPE = 1,
  660. ADL_DISPLAY_SLSMAPCONFIG_CREATE_OPTION_RELATIVETO_CURRENTANGLE = 2,
  661. };
  662. enum {
  663. ADL_DISPLAY_SLSMAPCONFIG_REARRANGE_OPTION_RELATIVETO_LANDSCAPE = 1,
  664. ADL_DISPLAY_SLSMAPCONFIG_REARRANGE_OPTION_RELATIVETO_CURRENTANGLE = 2,
  665. };
  666. enum {
  667. ADL_DISPLAY_SLSGRID_RELATIVETO_LANDSCAPE = 0x10,
  668. ADL_DISPLAY_SLSGRID_RELATIVETO_CURRENTANGLE = 0x20,
  669. };
  670. enum {
  671. ADL_DISPLAY_SLSMAP_BEZELMODE = (1 << 4),
  672. ADL_DISPLAY_SLSMAP_DISPLAYARRANGED = (1 << 1),
  673. ADL_DISPLAY_SLSMAP_CURRENTCONFIG = (1 << 2),
  674. };
  675. enum {
  676. ADL_DISPLAY_SLSMAPINDEXLIST_OPTION_ACTIVE = 1,
  677. };
  678. enum {
  679. ADL_DISPLAY_BEZELOFFSET_STEPBYSTEPSET = (1 << 2),
  680. ADL_DISPLAY_BEZELOFFSET_COMMIT = (1 << 3),
  681. };
  682. #endif /* ADL_DEFINES_H_ */