1*8975f5c5SAndroid Build Coastguard Worker /* 2*8975f5c5SAndroid Build Coastguard Worker * Copyright (c) 2010 NVIDIA, Corporation 3*8975f5c5SAndroid Build Coastguard Worker * 4*8975f5c5SAndroid Build Coastguard Worker * Permission is hereby granted, free of charge, to any person obtaining a copy 5*8975f5c5SAndroid Build Coastguard Worker * of this software and associated documentation files (the "Software"), to deal 6*8975f5c5SAndroid Build Coastguard Worker * in the Software without restriction, including without limitation the rights 7*8975f5c5SAndroid Build Coastguard Worker * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 8*8975f5c5SAndroid Build Coastguard Worker * copies of the Software, and to permit persons to whom the Software is 9*8975f5c5SAndroid Build Coastguard Worker * furnished to do so, subject to the following conditions: 10*8975f5c5SAndroid Build Coastguard Worker * 11*8975f5c5SAndroid Build Coastguard Worker * The above copyright notice and this permission notice (including the next 12*8975f5c5SAndroid Build Coastguard Worker * paragraph) shall be included in all copies or substantial portions of the 13*8975f5c5SAndroid Build Coastguard Worker * Software. 14*8975f5c5SAndroid Build Coastguard Worker * 15*8975f5c5SAndroid Build Coastguard Worker * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16*8975f5c5SAndroid Build Coastguard Worker * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17*8975f5c5SAndroid Build Coastguard Worker * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18*8975f5c5SAndroid Build Coastguard Worker * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19*8975f5c5SAndroid Build Coastguard Worker * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20*8975f5c5SAndroid Build Coastguard Worker * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21*8975f5c5SAndroid Build Coastguard Worker * SOFTWARE. 22*8975f5c5SAndroid Build Coastguard Worker */ 23*8975f5c5SAndroid Build Coastguard Worker 24*8975f5c5SAndroid Build Coastguard Worker #ifndef __NVCTRL_H 25*8975f5c5SAndroid Build Coastguard Worker #define __NVCTRL_H 26*8975f5c5SAndroid Build Coastguard Worker 27*8975f5c5SAndroid Build Coastguard Worker #include <stdint.h> 28*8975f5c5SAndroid Build Coastguard Worker 29*8975f5c5SAndroid Build Coastguard Worker /**************************************************************************/ 30*8975f5c5SAndroid Build Coastguard Worker 31*8975f5c5SAndroid Build Coastguard Worker /* 32*8975f5c5SAndroid Build Coastguard Worker * Attribute Targets 33*8975f5c5SAndroid Build Coastguard Worker * 34*8975f5c5SAndroid Build Coastguard Worker * Targets define attribute groups. For example, some attributes are only 35*8975f5c5SAndroid Build Coastguard Worker * valid to set on a GPU, others are only valid when talking about an 36*8975f5c5SAndroid Build Coastguard Worker * X Screen. Target types are then what is used to identify the target 37*8975f5c5SAndroid Build Coastguard Worker * group of the attribute you wish to set/query. 38*8975f5c5SAndroid Build Coastguard Worker * 39*8975f5c5SAndroid Build Coastguard Worker * Here are the supported target types: 40*8975f5c5SAndroid Build Coastguard Worker */ 41*8975f5c5SAndroid Build Coastguard Worker 42*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_TARGET_TYPE_X_SCREEN 0 43*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_TARGET_TYPE_GPU 1 44*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_TARGET_TYPE_FRAMELOCK 2 45*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_TARGET_TYPE_VCSC 3 /* Visual Computing System */ 46*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_TARGET_TYPE_GVI 4 47*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_TARGET_TYPE_COOLER 5 /* e.g., fan */ 48*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_TARGET_TYPE_THERMAL_SENSOR 6 49*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_TARGET_TYPE_3D_VISION_PRO_TRANSCEIVER 7 50*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_TARGET_TYPE_DISPLAY 8 51*8975f5c5SAndroid Build Coastguard Worker 52*8975f5c5SAndroid Build Coastguard Worker /**************************************************************************/ 53*8975f5c5SAndroid Build Coastguard Worker 54*8975f5c5SAndroid Build Coastguard Worker /* 55*8975f5c5SAndroid Build Coastguard Worker * Attributes 56*8975f5c5SAndroid Build Coastguard Worker * 57*8975f5c5SAndroid Build Coastguard Worker * Some attributes may only be read; some may require a display_mask 58*8975f5c5SAndroid Build Coastguard Worker * argument and others may be valid only for specific target types. 59*8975f5c5SAndroid Build Coastguard Worker * This information is encoded in the "permission" comment after each 60*8975f5c5SAndroid Build Coastguard Worker * attribute #define, and can be queried at run time with 61*8975f5c5SAndroid Build Coastguard Worker * XNVCTRLQueryValidAttributeValues() and/or 62*8975f5c5SAndroid Build Coastguard Worker * XNVCTRLQueryValidTargetAttributeValues() 63*8975f5c5SAndroid Build Coastguard Worker * 64*8975f5c5SAndroid Build Coastguard Worker * Key to Integer Attribute "Permissions": 65*8975f5c5SAndroid Build Coastguard Worker * 66*8975f5c5SAndroid Build Coastguard Worker * R: The attribute is readable (in general, all attributes will be 67*8975f5c5SAndroid Build Coastguard Worker * readable) 68*8975f5c5SAndroid Build Coastguard Worker * 69*8975f5c5SAndroid Build Coastguard Worker * W: The attribute is writable (attributes may not be writable for 70*8975f5c5SAndroid Build Coastguard Worker * various reasons: they represent static system information, they 71*8975f5c5SAndroid Build Coastguard Worker * can only be changed by changing an XF86Config option, etc). 72*8975f5c5SAndroid Build Coastguard Worker * 73*8975f5c5SAndroid Build Coastguard Worker * D: The attribute requires the display mask argument. The 74*8975f5c5SAndroid Build Coastguard Worker * attributes NV_CTRL_CONNECTED_DISPLAYS and NV_CTRL_ENABLED_DISPLAYS 75*8975f5c5SAndroid Build Coastguard Worker * will be a bitmask of what display devices are connected and what 76*8975f5c5SAndroid Build Coastguard Worker * display devices are enabled for use in X, respectively. Each bit 77*8975f5c5SAndroid Build Coastguard Worker * in the bitmask represents a display device; it is these bits which 78*8975f5c5SAndroid Build Coastguard Worker * should be used as the display_mask when dealing with attributes 79*8975f5c5SAndroid Build Coastguard Worker * designated with "D" below. For attributes that do not require the 80*8975f5c5SAndroid Build Coastguard Worker * display mask, the argument is ignored. 81*8975f5c5SAndroid Build Coastguard Worker * 82*8975f5c5SAndroid Build Coastguard Worker * Alternatively, NV-CONTROL versions 1.27 and greater allow these 83*8975f5c5SAndroid Build Coastguard Worker * attributes to be accessed via display target types, in which case 84*8975f5c5SAndroid Build Coastguard Worker * the display_mask is ignored. 85*8975f5c5SAndroid Build Coastguard Worker * 86*8975f5c5SAndroid Build Coastguard Worker * G: The attribute may be queried using an NV_CTRL_TARGET_TYPE_GPU 87*8975f5c5SAndroid Build Coastguard Worker * target type via XNVCTRLQueryTargetAttribute(). 88*8975f5c5SAndroid Build Coastguard Worker * 89*8975f5c5SAndroid Build Coastguard Worker * F: The attribute may be queried using an NV_CTRL_TARGET_TYPE_FRAMELOCK 90*8975f5c5SAndroid Build Coastguard Worker * target type via XNVCTRLQueryTargetAttribute(). 91*8975f5c5SAndroid Build Coastguard Worker * 92*8975f5c5SAndroid Build Coastguard Worker * X: When Xinerama is enabled, this attribute is kept consistent across 93*8975f5c5SAndroid Build Coastguard Worker * all Physical X Screens; assignment of this attribute will be 94*8975f5c5SAndroid Build Coastguard Worker * broadcast by the NVIDIA X Driver to all X Screens. 95*8975f5c5SAndroid Build Coastguard Worker * 96*8975f5c5SAndroid Build Coastguard Worker * V: The attribute may be queried using an NV_CTRL_TARGET_TYPE_VCSC 97*8975f5c5SAndroid Build Coastguard Worker * target type via XNVCTRLQueryTargetAttribute(). 98*8975f5c5SAndroid Build Coastguard Worker * 99*8975f5c5SAndroid Build Coastguard Worker * I: The attribute may be queried using an NV_CTRL_TARGET_TYPE_GVI target type 100*8975f5c5SAndroid Build Coastguard Worker * via XNVCTRLQueryTargetAttribute(). 101*8975f5c5SAndroid Build Coastguard Worker * 102*8975f5c5SAndroid Build Coastguard Worker * Q: The attribute is a 64-bit integer attribute; use the 64-bit versions 103*8975f5c5SAndroid Build Coastguard Worker * of the appropriate query interfaces. 104*8975f5c5SAndroid Build Coastguard Worker * 105*8975f5c5SAndroid Build Coastguard Worker * C: The attribute may be queried using an NV_CTRL_TARGET_TYPE_COOLER target 106*8975f5c5SAndroid Build Coastguard Worker * type via XNVCTRLQueryTargetAttribute(). 107*8975f5c5SAndroid Build Coastguard Worker * 108*8975f5c5SAndroid Build Coastguard Worker * S: The attribute may be queried using an NV_CTRL_TARGET_TYPE_THERMAL_SENSOR 109*8975f5c5SAndroid Build Coastguard Worker * target type via XNVCTRLQueryTargetAttribute(). 110*8975f5c5SAndroid Build Coastguard Worker * 111*8975f5c5SAndroid Build Coastguard Worker * T: The attribute may be queried using an 112*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_TARGET_TYPE_3D_VISION_PRO_TRANSCEIVER target type 113*8975f5c5SAndroid Build Coastguard Worker * via XNVCTRLQueryTargetAttribute(). 114*8975f5c5SAndroid Build Coastguard Worker * 115*8975f5c5SAndroid Build Coastguard Worker * NOTE: Unless mentioned otherwise, all attributes may be queried using 116*8975f5c5SAndroid Build Coastguard Worker * an NV_CTRL_TARGET_TYPE_X_SCREEN target type via 117*8975f5c5SAndroid Build Coastguard Worker * XNVCTRLQueryTargetAttribute(). 118*8975f5c5SAndroid Build Coastguard Worker */ 119*8975f5c5SAndroid Build Coastguard Worker 120*8975f5c5SAndroid Build Coastguard Worker /**************************************************************************/ 121*8975f5c5SAndroid Build Coastguard Worker 122*8975f5c5SAndroid Build Coastguard Worker /* 123*8975f5c5SAndroid Build Coastguard Worker * Integer attributes: 124*8975f5c5SAndroid Build Coastguard Worker * 125*8975f5c5SAndroid Build Coastguard Worker * Integer attributes can be queried through the XNVCTRLQueryAttribute() and 126*8975f5c5SAndroid Build Coastguard Worker * XNVCTRLQueryTargetAttribute() function calls. 127*8975f5c5SAndroid Build Coastguard Worker * 128*8975f5c5SAndroid Build Coastguard Worker * Integer attributes can be set through the XNVCTRLSetAttribute() and 129*8975f5c5SAndroid Build Coastguard Worker * XNVCTRLSetTargetAttribute() function calls. 130*8975f5c5SAndroid Build Coastguard Worker * 131*8975f5c5SAndroid Build Coastguard Worker * Unless otherwise noted, all integer attributes can be queried/set 132*8975f5c5SAndroid Build Coastguard Worker * using an NV_CTRL_TARGET_TYPE_X_SCREEN target. Attributes that cannot 133*8975f5c5SAndroid Build Coastguard Worker * take an NV_CTRL_TARGET_TYPE_X_SCREEN also cannot be queried/set through 134*8975f5c5SAndroid Build Coastguard Worker * XNVCTRLQueryAttribute()/XNVCTRLSetAttribute() (Since these assume 135*8975f5c5SAndroid Build Coastguard Worker * an X Screen target). 136*8975f5c5SAndroid Build Coastguard Worker */ 137*8975f5c5SAndroid Build Coastguard Worker 138*8975f5c5SAndroid Build Coastguard Worker /* 139*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FLATPANEL_SCALING - not supported 140*8975f5c5SAndroid Build Coastguard Worker */ 141*8975f5c5SAndroid Build Coastguard Worker 142*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FLATPANEL_SCALING 2 /* RWDG */ 143*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FLATPANEL_SCALING_DEFAULT 0 144*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FLATPANEL_SCALING_NATIVE 1 145*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FLATPANEL_SCALING_SCALED 2 146*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FLATPANEL_SCALING_CENTERED 3 147*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FLATPANEL_SCALING_ASPECT_SCALED 4 148*8975f5c5SAndroid Build Coastguard Worker 149*8975f5c5SAndroid Build Coastguard Worker /* 150*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FLATPANEL_DITHERING is deprecated; NV_CTRL_DITHERING should 151*8975f5c5SAndroid Build Coastguard Worker * be used instead. 152*8975f5c5SAndroid Build Coastguard Worker */ 153*8975f5c5SAndroid Build Coastguard Worker 154*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FLATPANEL_DITHERING 3 /* RWDG */ 155*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FLATPANEL_DITHERING_DEFAULT 0 156*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FLATPANEL_DITHERING_ENABLED 1 157*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FLATPANEL_DITHERING_DISABLED 2 158*8975f5c5SAndroid Build Coastguard Worker 159*8975f5c5SAndroid Build Coastguard Worker /* 160*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_DITHERING - the requested dithering configuration; 161*8975f5c5SAndroid Build Coastguard Worker * possible values are: 162*8975f5c5SAndroid Build Coastguard Worker * 163*8975f5c5SAndroid Build Coastguard Worker * 0: auto (the driver will decide when to dither) 164*8975f5c5SAndroid Build Coastguard Worker * 1: enabled (the driver will always dither when possible) 165*8975f5c5SAndroid Build Coastguard Worker * 2: disabled (the driver will never dither) 166*8975f5c5SAndroid Build Coastguard Worker */ 167*8975f5c5SAndroid Build Coastguard Worker 168*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_DITHERING 3 /* RWDG */ 169*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_DITHERING_AUTO 0 170*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_DITHERING_ENABLED 1 171*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_DITHERING_DISABLED 2 172*8975f5c5SAndroid Build Coastguard Worker 173*8975f5c5SAndroid Build Coastguard Worker /* 174*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_DIGITAL_VIBRANCE - sets the digital vibrance level for the 175*8975f5c5SAndroid Build Coastguard Worker * specified display device. 176*8975f5c5SAndroid Build Coastguard Worker */ 177*8975f5c5SAndroid Build Coastguard Worker 178*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_DIGITAL_VIBRANCE 4 /* RWDG */ 179*8975f5c5SAndroid Build Coastguard Worker 180*8975f5c5SAndroid Build Coastguard Worker /* 181*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_BUS_TYPE - returns the bus type through which the specified device 182*8975f5c5SAndroid Build Coastguard Worker * is connected to the computer. 183*8975f5c5SAndroid Build Coastguard Worker * When this attribute is queried on an X screen target, the bus type of the 184*8975f5c5SAndroid Build Coastguard Worker * GPU driving the X screen is returned. 185*8975f5c5SAndroid Build Coastguard Worker */ 186*8975f5c5SAndroid Build Coastguard Worker 187*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_BUS_TYPE 5 /* R--GI */ 188*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_BUS_TYPE_AGP 0 189*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_BUS_TYPE_PCI 1 190*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_BUS_TYPE_PCI_EXPRESS 2 191*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_BUS_TYPE_INTEGRATED 3 192*8975f5c5SAndroid Build Coastguard Worker 193*8975f5c5SAndroid Build Coastguard Worker /* 194*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_VIDEO_RAM - returns the total amount of memory available 195*8975f5c5SAndroid Build Coastguard Worker * to the specified GPU (or the GPU driving the specified X 196*8975f5c5SAndroid Build Coastguard Worker * screen). Note: if the GPU supports TurboCache(TM), the value 197*8975f5c5SAndroid Build Coastguard Worker * reported may exceed the amount of video memory installed on the 198*8975f5c5SAndroid Build Coastguard Worker * GPU. The value reported for integrated GPUs may likewise exceed 199*8975f5c5SAndroid Build Coastguard Worker * the amount of dedicated system memory set aside by the system 200*8975f5c5SAndroid Build Coastguard Worker * BIOS for use by the integrated GPU. 201*8975f5c5SAndroid Build Coastguard Worker */ 202*8975f5c5SAndroid Build Coastguard Worker 203*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_VIDEO_RAM 6 /* R--G */ 204*8975f5c5SAndroid Build Coastguard Worker 205*8975f5c5SAndroid Build Coastguard Worker /* 206*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_IRQ - returns the interrupt request line used by the specified 207*8975f5c5SAndroid Build Coastguard Worker * device. 208*8975f5c5SAndroid Build Coastguard Worker * When this attribute is queried on an X screen target, the IRQ of the GPU 209*8975f5c5SAndroid Build Coastguard Worker * driving the X screen is returned. 210*8975f5c5SAndroid Build Coastguard Worker */ 211*8975f5c5SAndroid Build Coastguard Worker 212*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_IRQ 7 /* R--GI */ 213*8975f5c5SAndroid Build Coastguard Worker 214*8975f5c5SAndroid Build Coastguard Worker /* 215*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_OPERATING_SYSTEM - returns the operating system on which 216*8975f5c5SAndroid Build Coastguard Worker * the X server is running. 217*8975f5c5SAndroid Build Coastguard Worker */ 218*8975f5c5SAndroid Build Coastguard Worker 219*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_OPERATING_SYSTEM 8 /* R--G */ 220*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_OPERATING_SYSTEM_LINUX 0 221*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_OPERATING_SYSTEM_FREEBSD 1 222*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_OPERATING_SYSTEM_SUNOS 2 223*8975f5c5SAndroid Build Coastguard Worker 224*8975f5c5SAndroid Build Coastguard Worker /* 225*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_SYNC_TO_VBLANK - enables sync to vblank for OpenGL clients. 226*8975f5c5SAndroid Build Coastguard Worker * This setting is only applied to OpenGL clients that are started 227*8975f5c5SAndroid Build Coastguard Worker * after this setting is applied. 228*8975f5c5SAndroid Build Coastguard Worker */ 229*8975f5c5SAndroid Build Coastguard Worker 230*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_SYNC_TO_VBLANK 9 /* RW-X */ 231*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_SYNC_TO_VBLANK_OFF 0 232*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_SYNC_TO_VBLANK_ON 1 233*8975f5c5SAndroid Build Coastguard Worker 234*8975f5c5SAndroid Build Coastguard Worker /* 235*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_LOG_ANISO - enables anisotropic filtering for OpenGL 236*8975f5c5SAndroid Build Coastguard Worker * clients; on some NVIDIA hardware, this can only be enabled or 237*8975f5c5SAndroid Build Coastguard Worker * disabled; on other hardware different levels of anisotropic 238*8975f5c5SAndroid Build Coastguard Worker * filtering can be specified. This setting is only applied to OpenGL 239*8975f5c5SAndroid Build Coastguard Worker * clients that are started after this setting is applied. 240*8975f5c5SAndroid Build Coastguard Worker */ 241*8975f5c5SAndroid Build Coastguard Worker 242*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_LOG_ANISO 10 /* RW-X */ 243*8975f5c5SAndroid Build Coastguard Worker 244*8975f5c5SAndroid Build Coastguard Worker /* 245*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FSAA_MODE - the FSAA setting for OpenGL clients; possible 246*8975f5c5SAndroid Build Coastguard Worker * FSAA modes: 247*8975f5c5SAndroid Build Coastguard Worker * 248*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FSAA_MODE_2x "2x Bilinear Multisampling" 249*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FSAA_MODE_2x_5t "2x Quincunx Multisampling" 250*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FSAA_MODE_15x15 "1.5 x 1.5 Supersampling" 251*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FSAA_MODE_2x2 "2 x 2 Supersampling" 252*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FSAA_MODE_4x "4x Bilinear Multisampling" 253*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FSAA_MODE_4x_9t "4x Gaussian Multisampling" 254*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FSAA_MODE_8x "2x Bilinear Multisampling by 4x Supersampling" 255*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FSAA_MODE_16x "4x Bilinear Multisampling by 4x Supersampling" 256*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FSAA_MODE_8xS "4x Multisampling by 2x Supersampling" 257*8975f5c5SAndroid Build Coastguard Worker * 258*8975f5c5SAndroid Build Coastguard Worker * This setting is only applied to OpenGL clients that are started 259*8975f5c5SAndroid Build Coastguard Worker * after this setting is applied. 260*8975f5c5SAndroid Build Coastguard Worker */ 261*8975f5c5SAndroid Build Coastguard Worker 262*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FSAA_MODE 11 /* RW-X */ 263*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FSAA_MODE_NONE 0 264*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FSAA_MODE_2x 1 265*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FSAA_MODE_2x_5t 2 266*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FSAA_MODE_15x15 3 267*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FSAA_MODE_2x2 4 268*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FSAA_MODE_4x 5 269*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FSAA_MODE_4x_9t 6 270*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FSAA_MODE_8x 7 271*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FSAA_MODE_16x 8 272*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FSAA_MODE_8xS 9 273*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FSAA_MODE_8xQ 10 274*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FSAA_MODE_16xS 11 275*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FSAA_MODE_16xQ 12 276*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FSAA_MODE_32xS 13 277*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FSAA_MODE_32x 14 278*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FSAA_MODE_64xS 15 279*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FSAA_MODE_MAX NV_CTRL_FSAA_MODE_64xS 280*8975f5c5SAndroid Build Coastguard Worker 281*8975f5c5SAndroid Build Coastguard Worker /* 282*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_TEXTURE_SHARPEN - enables texture sharpening for OpenGL 283*8975f5c5SAndroid Build Coastguard Worker * clients. This setting is only applied to OpenGL clients that are 284*8975f5c5SAndroid Build Coastguard Worker * started after this setting is applied. 285*8975f5c5SAndroid Build Coastguard Worker */ 286*8975f5c5SAndroid Build Coastguard Worker 287*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_TEXTURE_SHARPEN 12 /* RW-X */ 288*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_TEXTURE_SHARPEN_OFF 0 289*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_TEXTURE_SHARPEN_ON 1 290*8975f5c5SAndroid Build Coastguard Worker 291*8975f5c5SAndroid Build Coastguard Worker /* 292*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_UBB - returns whether UBB is enabled for the specified X 293*8975f5c5SAndroid Build Coastguard Worker * screen. 294*8975f5c5SAndroid Build Coastguard Worker */ 295*8975f5c5SAndroid Build Coastguard Worker 296*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_UBB 13 /* R-- */ 297*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_UBB_OFF 0 298*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_UBB_ON 1 299*8975f5c5SAndroid Build Coastguard Worker 300*8975f5c5SAndroid Build Coastguard Worker /* 301*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_OVERLAY - returns whether the RGB overlay is enabled for 302*8975f5c5SAndroid Build Coastguard Worker * the specified X screen. 303*8975f5c5SAndroid Build Coastguard Worker */ 304*8975f5c5SAndroid Build Coastguard Worker 305*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_OVERLAY 14 /* R-- */ 306*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_OVERLAY_OFF 0 307*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_OVERLAY_ON 1 308*8975f5c5SAndroid Build Coastguard Worker 309*8975f5c5SAndroid Build Coastguard Worker /* 310*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STEREO - returns whether stereo (and what type) is enabled 311*8975f5c5SAndroid Build Coastguard Worker * for the specified X screen. 312*8975f5c5SAndroid Build Coastguard Worker */ 313*8975f5c5SAndroid Build Coastguard Worker 314*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STEREO 16 /* R-- */ 315*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STEREO_OFF 0 316*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STEREO_DDC 1 317*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STEREO_BLUELINE 2 318*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STEREO_DIN 3 319*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STEREO_PASSIVE_EYE_PER_DPY 4 320*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STEREO_VERTICAL_INTERLACED 5 321*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STEREO_COLOR_INTERLACED 6 322*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STEREO_HORIZONTAL_INTERLACED 7 323*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STEREO_CHECKERBOARD_PATTERN 8 324*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STEREO_INVERSE_CHECKERBOARD_PATTERN 9 325*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STEREO_3D_VISION 10 326*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STEREO_3D_VISION_PRO 11 327*8975f5c5SAndroid Build Coastguard Worker 328*8975f5c5SAndroid Build Coastguard Worker /* 329*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_EMULATE - controls OpenGL software emulation of future 330*8975f5c5SAndroid Build Coastguard Worker * NVIDIA GPUs. 331*8975f5c5SAndroid Build Coastguard Worker */ 332*8975f5c5SAndroid Build Coastguard Worker 333*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_EMULATE 17 /* RW- */ 334*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_EMULATE_NONE 0 335*8975f5c5SAndroid Build Coastguard Worker 336*8975f5c5SAndroid Build Coastguard Worker /* 337*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_TWINVIEW - returns whether TwinView is enabled for the 338*8975f5c5SAndroid Build Coastguard Worker * specified X screen. 339*8975f5c5SAndroid Build Coastguard Worker */ 340*8975f5c5SAndroid Build Coastguard Worker 341*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_TWINVIEW 18 /* R-- */ 342*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_TWINVIEW_NOT_ENABLED 0 343*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_TWINVIEW_ENABLED 1 344*8975f5c5SAndroid Build Coastguard Worker 345*8975f5c5SAndroid Build Coastguard Worker /* 346*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_CONNECTED_DISPLAYS - returns a display mask indicating the last 347*8975f5c5SAndroid Build Coastguard Worker * cached state of the display devices connected to the GPU or GPU driving 348*8975f5c5SAndroid Build Coastguard Worker * the specified X screen. 349*8975f5c5SAndroid Build Coastguard Worker * 350*8975f5c5SAndroid Build Coastguard Worker * This attribute may be queried through XNVCTRLQueryTargetAttribute() 351*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_GPU or NV_CTRL_TARGET_TYPE_X_SCREEN target. 352*8975f5c5SAndroid Build Coastguard Worker */ 353*8975f5c5SAndroid Build Coastguard Worker 354*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_CONNECTED_DISPLAYS 19 /* R--G */ 355*8975f5c5SAndroid Build Coastguard Worker 356*8975f5c5SAndroid Build Coastguard Worker /* 357*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_ENABLED_DISPLAYS - returns a display mask indicating what 358*8975f5c5SAndroid Build Coastguard Worker * display devices are enabled for use on the specified X screen or 359*8975f5c5SAndroid Build Coastguard Worker * GPU. 360*8975f5c5SAndroid Build Coastguard Worker * 361*8975f5c5SAndroid Build Coastguard Worker * This attribute may be queried through XNVCTRLQueryTargetAttribute() 362*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_GPU or NV_CTRL_TARGET_TYPE_X_SCREEN target. 363*8975f5c5SAndroid Build Coastguard Worker */ 364*8975f5c5SAndroid Build Coastguard Worker 365*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_ENABLED_DISPLAYS 20 /* R--G */ 366*8975f5c5SAndroid Build Coastguard Worker 367*8975f5c5SAndroid Build Coastguard Worker /**************************************************************************/ 368*8975f5c5SAndroid Build Coastguard Worker /* 369*8975f5c5SAndroid Build Coastguard Worker * Integer attributes specific to configuring Frame Lock on boards that 370*8975f5c5SAndroid Build Coastguard Worker * support it. 371*8975f5c5SAndroid Build Coastguard Worker */ 372*8975f5c5SAndroid Build Coastguard Worker 373*8975f5c5SAndroid Build Coastguard Worker /* 374*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FRAMELOCK - returns whether the underlying GPU supports 375*8975f5c5SAndroid Build Coastguard Worker * Frame Lock. All of the other frame lock attributes are only 376*8975f5c5SAndroid Build Coastguard Worker * applicable if NV_CTRL_FRAMELOCK is _SUPPORTED. 377*8975f5c5SAndroid Build Coastguard Worker * 378*8975f5c5SAndroid Build Coastguard Worker * This attribute may be queried through XNVCTRLQueryTargetAttribute() 379*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_GPU or NV_CTRL_TARGET_TYPE_X_SCREEN target. 380*8975f5c5SAndroid Build Coastguard Worker */ 381*8975f5c5SAndroid Build Coastguard Worker 382*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK 21 /* R--G */ 383*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_NOT_SUPPORTED 0 384*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_SUPPORTED 1 385*8975f5c5SAndroid Build Coastguard Worker 386*8975f5c5SAndroid Build Coastguard Worker /* 387*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FRAMELOCK_MASTER - get/set which display device to use 388*8975f5c5SAndroid Build Coastguard Worker * as the frame lock master for the entire sync group. Note that only 389*8975f5c5SAndroid Build Coastguard Worker * one node in the sync group should be configured as the master. 390*8975f5c5SAndroid Build Coastguard Worker * 391*8975f5c5SAndroid Build Coastguard Worker * This attribute can only be queried through XNVCTRLQueryTargetAttribute() 392*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_GPU target. This attribute cannot be 393*8975f5c5SAndroid Build Coastguard Worker * queried using a NV_CTRL_TARGET_TYPE_X_SCREEN. 394*8975f5c5SAndroid Build Coastguard Worker */ 395*8975f5c5SAndroid Build Coastguard Worker 396*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_MASTER 22 /* RW-G */ 397*8975f5c5SAndroid Build Coastguard Worker 398*8975f5c5SAndroid Build Coastguard Worker /* These are deprecated. NV_CTRL_FRAMELOCK_MASTER now takes and 399*8975f5c5SAndroid Build Coastguard Worker returns a display mask as value. */ 400*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_MASTER_FALSE 0 401*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_MASTER_TRUE 1 402*8975f5c5SAndroid Build Coastguard Worker 403*8975f5c5SAndroid Build Coastguard Worker /* 404*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FRAMELOCK_POLARITY - sync either to the rising edge of the 405*8975f5c5SAndroid Build Coastguard Worker * frame lock pulse, the falling edge of the frame lock pulse or both. 406*8975f5c5SAndroid Build Coastguard Worker * 407*8975f5c5SAndroid Build Coastguard Worker * This attribute may be queried through XNVCTRLQueryTargetAttribute() 408*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_FRAMELOCK or NV_CTRL_TARGET_TYPE_X_SCREEN 409*8975f5c5SAndroid Build Coastguard Worker * target. 410*8975f5c5SAndroid Build Coastguard Worker */ 411*8975f5c5SAndroid Build Coastguard Worker 412*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_POLARITY 23 /* RW-F */ 413*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_POLARITY_RISING_EDGE 0x1 414*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_POLARITY_FALLING_EDGE 0x2 415*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_POLARITY_BOTH_EDGES 0x3 416*8975f5c5SAndroid Build Coastguard Worker 417*8975f5c5SAndroid Build Coastguard Worker /* 418*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FRAMELOCK_SYNC_DELAY - delay between the frame lock pulse 419*8975f5c5SAndroid Build Coastguard Worker * and the GPU sync. This value must be multiplied by 420*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FRAMELOCK_SYNC_DELAY_RESOLUTION to determine the sync delay in 421*8975f5c5SAndroid Build Coastguard Worker * nanoseconds. 422*8975f5c5SAndroid Build Coastguard Worker * 423*8975f5c5SAndroid Build Coastguard Worker * This attribute may be queried through XNVCTRLQueryTargetAttribute() 424*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_FRAMELOCK or NV_CTRL_TARGET_TYPE_X_SCREEN 425*8975f5c5SAndroid Build Coastguard Worker * target. 426*8975f5c5SAndroid Build Coastguard Worker * 427*8975f5c5SAndroid Build Coastguard Worker * USAGE NODE: NV_CTRL_FRAMELOCK_SYNC_DELAY_MAX and 428*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FRAMELOCK_SYNC_DELAY_FACTOR are deprecated. 429*8975f5c5SAndroid Build Coastguard Worker * The Sync Delay _MAX and _FACTOR are different for different 430*8975f5c5SAndroid Build Coastguard Worker * GSync products and so, to be correct, the valid values for 431*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FRAMELOCK_SYNC_DELAY must be queried to get the range 432*8975f5c5SAndroid Build Coastguard Worker * of acceptable sync delay values, and 433*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FRAMELOCK_SYNC_DELAY_RESOLUTION must be queried to 434*8975f5c5SAndroid Build Coastguard Worker * obtain the correct factor. 435*8975f5c5SAndroid Build Coastguard Worker */ 436*8975f5c5SAndroid Build Coastguard Worker 437*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_SYNC_DELAY 24 /* RW-F */ 438*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_SYNC_DELAY_MAX 2047 // deprecated 439*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_SYNC_DELAY_FACTOR 7.81 // deprecated 440*8975f5c5SAndroid Build Coastguard Worker 441*8975f5c5SAndroid Build Coastguard Worker /* 442*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FRAMELOCK_SYNC_INTERVAL - how many house sync pulses 443*8975f5c5SAndroid Build Coastguard Worker * between the frame lock sync generation (0 == sync every house sync); 444*8975f5c5SAndroid Build Coastguard Worker * this only applies to the master when receiving house sync. 445*8975f5c5SAndroid Build Coastguard Worker * 446*8975f5c5SAndroid Build Coastguard Worker * This attribute may be queried through XNVCTRLQueryTargetAttribute() 447*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_FRAMELOCK or NV_CTRL_TARGET_TYPE_X_SCREEN 448*8975f5c5SAndroid Build Coastguard Worker * target. 449*8975f5c5SAndroid Build Coastguard Worker */ 450*8975f5c5SAndroid Build Coastguard Worker 451*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_SYNC_INTERVAL 25 /* RW-F */ 452*8975f5c5SAndroid Build Coastguard Worker 453*8975f5c5SAndroid Build Coastguard Worker /* 454*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FRAMELOCK_PORT0_STATUS - status of the rj45 port0. 455*8975f5c5SAndroid Build Coastguard Worker * 456*8975f5c5SAndroid Build Coastguard Worker * This attribute may be queried through XNVCTRLQueryTargetAttribute() 457*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_FRAMELOCK or NV_CTRL_TARGET_TYPE_X_SCREEN 458*8975f5c5SAndroid Build Coastguard Worker * target. 459*8975f5c5SAndroid Build Coastguard Worker */ 460*8975f5c5SAndroid Build Coastguard Worker 461*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_PORT0_STATUS 26 /* R--F */ 462*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_PORT0_STATUS_INPUT 0 463*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_PORT0_STATUS_OUTPUT 1 464*8975f5c5SAndroid Build Coastguard Worker 465*8975f5c5SAndroid Build Coastguard Worker /* 466*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FRAMELOCK_PORT1_STATUS - status of the rj45 port1. 467*8975f5c5SAndroid Build Coastguard Worker * 468*8975f5c5SAndroid Build Coastguard Worker * This attribute may be queried through XNVCTRLQueryTargetAttribute() 469*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_FRAMELOCK or NV_CTRL_TARGET_TYPE_X_SCREEN 470*8975f5c5SAndroid Build Coastguard Worker * target. 471*8975f5c5SAndroid Build Coastguard Worker */ 472*8975f5c5SAndroid Build Coastguard Worker 473*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_PORT1_STATUS 27 /* R--F */ 474*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_PORT1_STATUS_INPUT 0 475*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_PORT1_STATUS_OUTPUT 1 476*8975f5c5SAndroid Build Coastguard Worker 477*8975f5c5SAndroid Build Coastguard Worker /* 478*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FRAMELOCK_HOUSE_STATUS - returns whether or not the house 479*8975f5c5SAndroid Build Coastguard Worker * sync signal was detected on the BNC connector of the frame lock 480*8975f5c5SAndroid Build Coastguard Worker * board. 481*8975f5c5SAndroid Build Coastguard Worker * 482*8975f5c5SAndroid Build Coastguard Worker * This attribute may be queried through XNVCTRLQueryTargetAttribute() 483*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_FRAMELOCK or NV_CTRL_TARGET_TYPE_X_SCREEN 484*8975f5c5SAndroid Build Coastguard Worker * target. 485*8975f5c5SAndroid Build Coastguard Worker */ 486*8975f5c5SAndroid Build Coastguard Worker 487*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_HOUSE_STATUS 28 /* R--F */ 488*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_HOUSE_STATUS_NOT_DETECTED 0 489*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_HOUSE_STATUS_DETECTED 1 490*8975f5c5SAndroid Build Coastguard Worker 491*8975f5c5SAndroid Build Coastguard Worker /* 492*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FRAMELOCK_SYNC - enable/disable the syncing of display 493*8975f5c5SAndroid Build Coastguard Worker * devices to the frame lock pulse as specified by previous calls to 494*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FRAMELOCK_MASTER and NV_CTRL_FRAMELOCK_SLAVES. 495*8975f5c5SAndroid Build Coastguard Worker * 496*8975f5c5SAndroid Build Coastguard Worker * This attribute can only be queried through XNVCTRLQueryTargetAttribute() 497*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_GPU target. This attribute cannot be 498*8975f5c5SAndroid Build Coastguard Worker * queried using a NV_CTRL_TARGET_TYPE_X_SCREEN. 499*8975f5c5SAndroid Build Coastguard Worker */ 500*8975f5c5SAndroid Build Coastguard Worker 501*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_SYNC 29 /* RW-G */ 502*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_SYNC_DISABLE 0 503*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_SYNC_ENABLE 1 504*8975f5c5SAndroid Build Coastguard Worker 505*8975f5c5SAndroid Build Coastguard Worker /* 506*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FRAMELOCK_SYNC_READY - reports whether a frame lock 507*8975f5c5SAndroid Build Coastguard Worker * board is receiving sync (regardless of whether or not any display 508*8975f5c5SAndroid Build Coastguard Worker * devices are using the sync). 509*8975f5c5SAndroid Build Coastguard Worker * 510*8975f5c5SAndroid Build Coastguard Worker * This attribute may be queried through XNVCTRLQueryTargetAttribute() 511*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_FRAMELOCK or NV_CTRL_TARGET_TYPE_X_SCREEN 512*8975f5c5SAndroid Build Coastguard Worker * target. 513*8975f5c5SAndroid Build Coastguard Worker */ 514*8975f5c5SAndroid Build Coastguard Worker 515*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_SYNC_READY 30 /* R--F */ 516*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_SYNC_READY_FALSE 0 517*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_SYNC_READY_TRUE 1 518*8975f5c5SAndroid Build Coastguard Worker 519*8975f5c5SAndroid Build Coastguard Worker /* 520*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FRAMELOCK_STEREO_SYNC - this indicates that the GPU stereo 521*8975f5c5SAndroid Build Coastguard Worker * signal is in sync with the frame lock stereo signal. 522*8975f5c5SAndroid Build Coastguard Worker * 523*8975f5c5SAndroid Build Coastguard Worker * This attribute may be queried through XNVCTRLQueryTargetAttribute() 524*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_GPU or NV_CTRL_TARGET_TYPE_X_SCREEN 525*8975f5c5SAndroid Build Coastguard Worker * target. 526*8975f5c5SAndroid Build Coastguard Worker */ 527*8975f5c5SAndroid Build Coastguard Worker 528*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_STEREO_SYNC 31 /* R--G */ 529*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_STEREO_SYNC_FALSE 0 530*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_STEREO_SYNC_TRUE 1 531*8975f5c5SAndroid Build Coastguard Worker 532*8975f5c5SAndroid Build Coastguard Worker /* 533*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FRAMELOCK_TEST_SIGNAL - to test the connections in the sync 534*8975f5c5SAndroid Build Coastguard Worker * group, tell the master to enable a test signal, then query port[01] 535*8975f5c5SAndroid Build Coastguard Worker * status and sync_ready on all slaves. When done, tell the master to 536*8975f5c5SAndroid Build Coastguard Worker * disable the test signal. Test signal should only be manipulated 537*8975f5c5SAndroid Build Coastguard Worker * while NV_CTRL_FRAMELOCK_SYNC is enabled. 538*8975f5c5SAndroid Build Coastguard Worker * 539*8975f5c5SAndroid Build Coastguard Worker * The TEST_SIGNAL is also used to reset the Universal Frame Count (as 540*8975f5c5SAndroid Build Coastguard Worker * returned by the glXQueryFrameCountNV() function in the 541*8975f5c5SAndroid Build Coastguard Worker * GLX_NV_swap_group extension). Note: for best accuracy of the 542*8975f5c5SAndroid Build Coastguard Worker * Universal Frame Count, it is recommended to toggle the TEST_SIGNAL 543*8975f5c5SAndroid Build Coastguard Worker * on and off after enabling frame lock. 544*8975f5c5SAndroid Build Coastguard Worker * 545*8975f5c5SAndroid Build Coastguard Worker * This attribute may be queried through XNVCTRLQueryTargetAttribute() 546*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_GPU or NV_CTRL_TARGET_TYPE_X_SCREEN target. 547*8975f5c5SAndroid Build Coastguard Worker */ 548*8975f5c5SAndroid Build Coastguard Worker 549*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_TEST_SIGNAL 32 /* RW-G */ 550*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_TEST_SIGNAL_DISABLE 0 551*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_TEST_SIGNAL_ENABLE 1 552*8975f5c5SAndroid Build Coastguard Worker 553*8975f5c5SAndroid Build Coastguard Worker /* 554*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FRAMELOCK_ETHERNET_DETECTED - The frame lock boards are 555*8975f5c5SAndroid Build Coastguard Worker * cabled together using regular cat5 cable, connecting to rj45 ports 556*8975f5c5SAndroid Build Coastguard Worker * on the backplane of the card. There is some concern that users may 557*8975f5c5SAndroid Build Coastguard Worker * think these are ethernet ports and connect them to a 558*8975f5c5SAndroid Build Coastguard Worker * router/hub/etc. The hardware can detect this and will shut off to 559*8975f5c5SAndroid Build Coastguard Worker * prevent damage (either to itself or to the router). 560*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FRAMELOCK_ETHERNET_DETECTED may be called to find out if 561*8975f5c5SAndroid Build Coastguard Worker * ethernet is connected to one of the rj45 ports. An appropriate 562*8975f5c5SAndroid Build Coastguard Worker * error message should then be displayed. The _PORT0 and _PORT1 563*8975f5c5SAndroid Build Coastguard Worker * values may be or'ed together. 564*8975f5c5SAndroid Build Coastguard Worker * 565*8975f5c5SAndroid Build Coastguard Worker * This attribute may be queried through XNVCTRLQueryTargetAttribute() 566*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_FRAMELOCK or NV_CTRL_TARGET_TYPE_X_SCREEN 567*8975f5c5SAndroid Build Coastguard Worker * target. 568*8975f5c5SAndroid Build Coastguard Worker */ 569*8975f5c5SAndroid Build Coastguard Worker 570*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_ETHERNET_DETECTED 33 /* R--F */ 571*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_ETHERNET_DETECTED_NONE 0 572*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_ETHERNET_DETECTED_PORT0 0x1 573*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_ETHERNET_DETECTED_PORT1 0x2 574*8975f5c5SAndroid Build Coastguard Worker 575*8975f5c5SAndroid Build Coastguard Worker /* 576*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FRAMELOCK_VIDEO_MODE - get/set what video mode is used 577*8975f5c5SAndroid Build Coastguard Worker * to interperate the house sync signal. This should only be set 578*8975f5c5SAndroid Build Coastguard Worker * on the master. 579*8975f5c5SAndroid Build Coastguard Worker * 580*8975f5c5SAndroid Build Coastguard Worker * This attribute may be queried through XNVCTRLQueryTargetAttribute() 581*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_FRAMELOCK or NV_CTRL_TARGET_TYPE_X_SCREEN 582*8975f5c5SAndroid Build Coastguard Worker * target. 583*8975f5c5SAndroid Build Coastguard Worker */ 584*8975f5c5SAndroid Build Coastguard Worker 585*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_VIDEO_MODE 34 /* RW-F */ 586*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_VIDEO_MODE_NONE 0 587*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_VIDEO_MODE_TTL 1 588*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_VIDEO_MODE_NTSCPALSECAM 2 589*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_VIDEO_MODE_HDTV 3 590*8975f5c5SAndroid Build Coastguard Worker 591*8975f5c5SAndroid Build Coastguard Worker /* 592*8975f5c5SAndroid Build Coastguard Worker * During FRAMELOCK bring-up, the above values were redefined to 593*8975f5c5SAndroid Build Coastguard Worker * these: 594*8975f5c5SAndroid Build Coastguard Worker */ 595*8975f5c5SAndroid Build Coastguard Worker 596*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_VIDEO_MODE_COMPOSITE_AUTO 0 597*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_VIDEO_MODE_TTL 1 598*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_VIDEO_MODE_COMPOSITE_BI_LEVEL 2 599*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_VIDEO_MODE_COMPOSITE_TRI_LEVEL 3 600*8975f5c5SAndroid Build Coastguard Worker 601*8975f5c5SAndroid Build Coastguard Worker /* 602*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FRAMELOCK_SYNC_RATE - this is the refresh rate that the 603*8975f5c5SAndroid Build Coastguard Worker * frame lock board is sending to the GPU, in milliHz. 604*8975f5c5SAndroid Build Coastguard Worker * 605*8975f5c5SAndroid Build Coastguard Worker * This attribute may be queried through XNVCTRLQueryTargetAttribute() 606*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_FRAMELOCK or NV_CTRL_TARGET_TYPE_X_SCREEN 607*8975f5c5SAndroid Build Coastguard Worker * target. 608*8975f5c5SAndroid Build Coastguard Worker */ 609*8975f5c5SAndroid Build Coastguard Worker 610*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_SYNC_RATE 35 /* R--F */ 611*8975f5c5SAndroid Build Coastguard Worker 612*8975f5c5SAndroid Build Coastguard Worker /**************************************************************************/ 613*8975f5c5SAndroid Build Coastguard Worker 614*8975f5c5SAndroid Build Coastguard Worker /* 615*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FORCE_GENERIC_CPU - inhibit the use of CPU specific 616*8975f5c5SAndroid Build Coastguard Worker * features such as MMX, SSE, or 3DNOW! for OpenGL clients; this 617*8975f5c5SAndroid Build Coastguard Worker * option may result in performance loss, but may be useful in 618*8975f5c5SAndroid Build Coastguard Worker * conjunction with software such as the Valgrind memory debugger. 619*8975f5c5SAndroid Build Coastguard Worker * This setting is only applied to OpenGL clients that are started 620*8975f5c5SAndroid Build Coastguard Worker * after this setting is applied. 621*8975f5c5SAndroid Build Coastguard Worker * 622*8975f5c5SAndroid Build Coastguard Worker * USAGE NOTE: This attribute is deprecated. CPU compatibility is now 623*8975f5c5SAndroid Build Coastguard Worker * checked each time during initialization. 624*8975f5c5SAndroid Build Coastguard Worker */ 625*8975f5c5SAndroid Build Coastguard Worker 626*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FORCE_GENERIC_CPU 37 /* RW-X */ 627*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FORCE_GENERIC_CPU_DISABLE 0 628*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FORCE_GENERIC_CPU_ENABLE 1 629*8975f5c5SAndroid Build Coastguard Worker 630*8975f5c5SAndroid Build Coastguard Worker /* 631*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_OPENGL_AA_LINE_GAMMA - for OpenGL clients, allow 632*8975f5c5SAndroid Build Coastguard Worker * Gamma-corrected antialiased lines to consider variances in the 633*8975f5c5SAndroid Build Coastguard Worker * color display capabilities of output devices when rendering smooth 634*8975f5c5SAndroid Build Coastguard Worker * lines. Only available on recent Quadro GPUs. This setting is only 635*8975f5c5SAndroid Build Coastguard Worker * applied to OpenGL clients that are started after this setting is 636*8975f5c5SAndroid Build Coastguard Worker * applied. 637*8975f5c5SAndroid Build Coastguard Worker */ 638*8975f5c5SAndroid Build Coastguard Worker 639*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_OPENGL_AA_LINE_GAMMA 38 /* RW-X */ 640*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_OPENGL_AA_LINE_GAMMA_DISABLE 0 641*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_OPENGL_AA_LINE_GAMMA_ENABLE 1 642*8975f5c5SAndroid Build Coastguard Worker 643*8975f5c5SAndroid Build Coastguard Worker /* 644*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FRAMELOCK_TIMING - this is TRUE when the gpu is both receiving 645*8975f5c5SAndroid Build Coastguard Worker * and locked to an input timing signal. Timing information may come from 646*8975f5c5SAndroid Build Coastguard Worker * the following places: Another frame lock device that is set to master, 647*8975f5c5SAndroid Build Coastguard Worker * the house sync signal, or the GPU's internal timing from a display 648*8975f5c5SAndroid Build Coastguard Worker * device. 649*8975f5c5SAndroid Build Coastguard Worker * 650*8975f5c5SAndroid Build Coastguard Worker * This attribute may be queried through XNVCTRLQueryTargetAttribute() 651*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_GPU or NV_CTRL_TARGET_TYPE_X_SCREEN target. 652*8975f5c5SAndroid Build Coastguard Worker */ 653*8975f5c5SAndroid Build Coastguard Worker 654*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_TIMING 39 /* R--G */ 655*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_TIMING_FALSE 0 656*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_TIMING_TRUE 1 657*8975f5c5SAndroid Build Coastguard Worker 658*8975f5c5SAndroid Build Coastguard Worker /* 659*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FLIPPING_ALLOWED - when TRUE, OpenGL will swap by flipping 660*8975f5c5SAndroid Build Coastguard Worker * when possible; when FALSE, OpenGL will alway swap by blitting. 661*8975f5c5SAndroid Build Coastguard Worker */ 662*8975f5c5SAndroid Build Coastguard Worker 663*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FLIPPING_ALLOWED 40 /* RW-X */ 664*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FLIPPING_ALLOWED_FALSE 0 665*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FLIPPING_ALLOWED_TRUE 1 666*8975f5c5SAndroid Build Coastguard Worker 667*8975f5c5SAndroid Build Coastguard Worker /* 668*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_ARCHITECTURE - returns the architecture on which the X server is 669*8975f5c5SAndroid Build Coastguard Worker * running. 670*8975f5c5SAndroid Build Coastguard Worker */ 671*8975f5c5SAndroid Build Coastguard Worker 672*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_ARCHITECTURE 41 /* R-- */ 673*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_ARCHITECTURE_X86 0 674*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_ARCHITECTURE_X86_64 1 675*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_ARCHITECTURE_IA64 2 676*8975f5c5SAndroid Build Coastguard Worker 677*8975f5c5SAndroid Build Coastguard Worker /* 678*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_TEXTURE_CLAMPING - texture clamping mode in OpenGL. By 679*8975f5c5SAndroid Build Coastguard Worker * default, _SPEC is used, which forces OpenGL texture clamping to 680*8975f5c5SAndroid Build Coastguard Worker * conform with the OpenGL specification. _EDGE forces NVIDIA's 681*8975f5c5SAndroid Build Coastguard Worker * OpenGL implementation to remap GL_CLAMP to GL_CLAMP_TO_EDGE, 682*8975f5c5SAndroid Build Coastguard Worker * which is not strictly conformant, but some applications rely on 683*8975f5c5SAndroid Build Coastguard Worker * the non-conformant behavior. 684*8975f5c5SAndroid Build Coastguard Worker */ 685*8975f5c5SAndroid Build Coastguard Worker 686*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_TEXTURE_CLAMPING 42 /* RW-X */ 687*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_TEXTURE_CLAMPING_EDGE 0 688*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_TEXTURE_CLAMPING_SPEC 1 689*8975f5c5SAndroid Build Coastguard Worker 690*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_CURSOR_SHADOW 43 /* RW- */ 691*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_CURSOR_SHADOW_DISABLE 0 692*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_CURSOR_SHADOW_ENABLE 1 693*8975f5c5SAndroid Build Coastguard Worker 694*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_CURSOR_SHADOW_ALPHA 44 /* RW- */ 695*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_CURSOR_SHADOW_RED 45 /* RW- */ 696*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_CURSOR_SHADOW_GREEN 46 /* RW- */ 697*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_CURSOR_SHADOW_BLUE 47 /* RW- */ 698*8975f5c5SAndroid Build Coastguard Worker 699*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_CURSOR_SHADOW_X_OFFSET 48 /* RW- */ 700*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_CURSOR_SHADOW_Y_OFFSET 49 /* RW- */ 701*8975f5c5SAndroid Build Coastguard Worker 702*8975f5c5SAndroid Build Coastguard Worker /* 703*8975f5c5SAndroid Build Coastguard Worker * When Application Control for FSAA is enabled, then what the 704*8975f5c5SAndroid Build Coastguard Worker * application requests is used, and NV_CTRL_FSAA_MODE is ignored. If 705*8975f5c5SAndroid Build Coastguard Worker * this is disabled, then any application setting is overridden with 706*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FSAA_MODE 707*8975f5c5SAndroid Build Coastguard Worker */ 708*8975f5c5SAndroid Build Coastguard Worker 709*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FSAA_APPLICATION_CONTROLLED 50 /* RW-X */ 710*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FSAA_APPLICATION_CONTROLLED_ENABLED 1 711*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FSAA_APPLICATION_CONTROLLED_DISABLED 0 712*8975f5c5SAndroid Build Coastguard Worker 713*8975f5c5SAndroid Build Coastguard Worker /* 714*8975f5c5SAndroid Build Coastguard Worker * When Application Control for LogAniso is enabled, then what the 715*8975f5c5SAndroid Build Coastguard Worker * application requests is used, and NV_CTRL_LOG_ANISO is ignored. If 716*8975f5c5SAndroid Build Coastguard Worker * this is disabled, then any application setting is overridden with 717*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_LOG_ANISO 718*8975f5c5SAndroid Build Coastguard Worker */ 719*8975f5c5SAndroid Build Coastguard Worker 720*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_LOG_ANISO_APPLICATION_CONTROLLED 51 /* RW-X */ 721*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_LOG_ANISO_APPLICATION_CONTROLLED_ENABLED 1 722*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_LOG_ANISO_APPLICATION_CONTROLLED_DISABLED 0 723*8975f5c5SAndroid Build Coastguard Worker 724*8975f5c5SAndroid Build Coastguard Worker /* 725*8975f5c5SAndroid Build Coastguard Worker * IMAGE_SHARPENING adjusts the sharpness of the display's image 726*8975f5c5SAndroid Build Coastguard Worker * quality by amplifying high frequency content. Valid values will 727*8975f5c5SAndroid Build Coastguard Worker * normally be in the range [0,32). Only available on GeForceFX or 728*8975f5c5SAndroid Build Coastguard Worker * newer. 729*8975f5c5SAndroid Build Coastguard Worker */ 730*8975f5c5SAndroid Build Coastguard Worker 731*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_IMAGE_SHARPENING 52 /* RWDG */ 732*8975f5c5SAndroid Build Coastguard Worker 733*8975f5c5SAndroid Build Coastguard Worker /* 734*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_TV_OVERSCAN adjusts the amount of overscan on the specified 735*8975f5c5SAndroid Build Coastguard Worker * display device. 736*8975f5c5SAndroid Build Coastguard Worker */ 737*8975f5c5SAndroid Build Coastguard Worker 738*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_TV_OVERSCAN 53 /* RWDG */ 739*8975f5c5SAndroid Build Coastguard Worker 740*8975f5c5SAndroid Build Coastguard Worker /* 741*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_TV_FLICKER_FILTER adjusts the amount of flicker filter on 742*8975f5c5SAndroid Build Coastguard Worker * the specified display device. 743*8975f5c5SAndroid Build Coastguard Worker */ 744*8975f5c5SAndroid Build Coastguard Worker 745*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_TV_FLICKER_FILTER 54 /* RWDG */ 746*8975f5c5SAndroid Build Coastguard Worker 747*8975f5c5SAndroid Build Coastguard Worker /* 748*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_TV_BRIGHTNESS adjusts the amount of brightness on the 749*8975f5c5SAndroid Build Coastguard Worker * specified display device. 750*8975f5c5SAndroid Build Coastguard Worker */ 751*8975f5c5SAndroid Build Coastguard Worker 752*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_TV_BRIGHTNESS 55 /* RWDG */ 753*8975f5c5SAndroid Build Coastguard Worker 754*8975f5c5SAndroid Build Coastguard Worker /* 755*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_TV_HUE adjusts the amount of hue on the specified display 756*8975f5c5SAndroid Build Coastguard Worker * device. 757*8975f5c5SAndroid Build Coastguard Worker */ 758*8975f5c5SAndroid Build Coastguard Worker 759*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_TV_HUE 56 /* RWDG */ 760*8975f5c5SAndroid Build Coastguard Worker 761*8975f5c5SAndroid Build Coastguard Worker /* 762*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_TV_CONTRAST adjusts the amount of contrast on the specified 763*8975f5c5SAndroid Build Coastguard Worker * display device. 764*8975f5c5SAndroid Build Coastguard Worker */ 765*8975f5c5SAndroid Build Coastguard Worker 766*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_TV_CONTRAST 57 /* RWDG */ 767*8975f5c5SAndroid Build Coastguard Worker 768*8975f5c5SAndroid Build Coastguard Worker /* 769*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_TV_SATURATION adjusts the amount of saturation on the 770*8975f5c5SAndroid Build Coastguard Worker * specified display device. 771*8975f5c5SAndroid Build Coastguard Worker */ 772*8975f5c5SAndroid Build Coastguard Worker 773*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_TV_SATURATION 58 /* RWDG */ 774*8975f5c5SAndroid Build Coastguard Worker 775*8975f5c5SAndroid Build Coastguard Worker /* 776*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_TV_RESET_SETTINGS - this write-only attribute can be used 777*8975f5c5SAndroid Build Coastguard Worker * to request that all TV Settings be reset to their default values; 778*8975f5c5SAndroid Build Coastguard Worker * typical usage would be that this attribute be sent, and then all 779*8975f5c5SAndroid Build Coastguard Worker * the TV attributes be queried to retrieve their new values. 780*8975f5c5SAndroid Build Coastguard Worker */ 781*8975f5c5SAndroid Build Coastguard Worker 782*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_TV_RESET_SETTINGS 59 /* -WDG */ 783*8975f5c5SAndroid Build Coastguard Worker 784*8975f5c5SAndroid Build Coastguard Worker /* 785*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_CORE_TEMPERATURE reports the current core temperature 786*8975f5c5SAndroid Build Coastguard Worker * of the GPU driving the X screen. 787*8975f5c5SAndroid Build Coastguard Worker */ 788*8975f5c5SAndroid Build Coastguard Worker 789*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_CORE_TEMPERATURE 60 /* R--G */ 790*8975f5c5SAndroid Build Coastguard Worker 791*8975f5c5SAndroid Build Coastguard Worker /* 792*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_CORE_THRESHOLD reports the current GPU core slowdown 793*8975f5c5SAndroid Build Coastguard Worker * threshold temperature, NV_CTRL_GPU_DEFAULT_CORE_THRESHOLD and 794*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_MAX_CORE_THRESHOLD report the default and MAX core 795*8975f5c5SAndroid Build Coastguard Worker * slowdown threshold temperatures. 796*8975f5c5SAndroid Build Coastguard Worker * 797*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_CORE_THRESHOLD reflects the temperature at which the 798*8975f5c5SAndroid Build Coastguard Worker * GPU is throttled to prevent overheating. 799*8975f5c5SAndroid Build Coastguard Worker */ 800*8975f5c5SAndroid Build Coastguard Worker 801*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_CORE_THRESHOLD 61 /* R--G */ 802*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_DEFAULT_CORE_THRESHOLD 62 /* R--G */ 803*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_MAX_CORE_THRESHOLD 63 /* R--G */ 804*8975f5c5SAndroid Build Coastguard Worker 805*8975f5c5SAndroid Build Coastguard Worker /* 806*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_AMBIENT_TEMPERATURE reports the current temperature in the 807*8975f5c5SAndroid Build Coastguard Worker * immediate neighbourhood of the GPU driving the X screen. 808*8975f5c5SAndroid Build Coastguard Worker */ 809*8975f5c5SAndroid Build Coastguard Worker 810*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_AMBIENT_TEMPERATURE 64 /* R--G */ 811*8975f5c5SAndroid Build Coastguard Worker 812*8975f5c5SAndroid Build Coastguard Worker /* 813*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_PBUFFER_SCANOUT_SUPPORTED - returns whether this X screen 814*8975f5c5SAndroid Build Coastguard Worker * supports scanout of FP pbuffers; 815*8975f5c5SAndroid Build Coastguard Worker * 816*8975f5c5SAndroid Build Coastguard Worker * if this screen does not support PBUFFER_SCANOUT, then all other 817*8975f5c5SAndroid Build Coastguard Worker * PBUFFER_SCANOUT attributes are unavailable. 818*8975f5c5SAndroid Build Coastguard Worker * 819*8975f5c5SAndroid Build Coastguard Worker * PBUFFER_SCANOUT is supported if and only if: 820*8975f5c5SAndroid Build Coastguard Worker * - Twinview is configured with clone mode. The secondary screen is used to 821*8975f5c5SAndroid Build Coastguard Worker * scanout the pbuffer. 822*8975f5c5SAndroid Build Coastguard Worker * - The desktop is running in with 16 bits per pixel. 823*8975f5c5SAndroid Build Coastguard Worker */ 824*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_PBUFFER_SCANOUT_SUPPORTED 65 /* R-- */ 825*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_PBUFFER_SCANOUT_FALSE 0 826*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_PBUFFER_SCANOUT_TRUE 1 827*8975f5c5SAndroid Build Coastguard Worker 828*8975f5c5SAndroid Build Coastguard Worker /* 829*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_PBUFFER_SCANOUT_XID indicates the XID of the pbuffer used for 830*8975f5c5SAndroid Build Coastguard Worker * scanout. 831*8975f5c5SAndroid Build Coastguard Worker */ 832*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_PBUFFER_SCANOUT_XID 66 /* RW- */ 833*8975f5c5SAndroid Build Coastguard Worker 834*8975f5c5SAndroid Build Coastguard Worker /**************************************************************************/ 835*8975f5c5SAndroid Build Coastguard Worker /* 836*8975f5c5SAndroid Build Coastguard Worker * The NV_CTRL_GVO_* integer attributes are used to configure GVO 837*8975f5c5SAndroid Build Coastguard Worker * (Graphics to Video Out). This functionality is available, for 838*8975f5c5SAndroid Build Coastguard Worker * example, on the Quadro FX 4000 SDI graphics board. 839*8975f5c5SAndroid Build Coastguard Worker * 840*8975f5c5SAndroid Build Coastguard Worker * The following is a typical usage pattern for the GVO attributes: 841*8975f5c5SAndroid Build Coastguard Worker * 842*8975f5c5SAndroid Build Coastguard Worker * - query NV_CTRL_GVO_SUPPORTED to determine if the X screen supports GV0. 843*8975f5c5SAndroid Build Coastguard Worker * 844*8975f5c5SAndroid Build Coastguard Worker * - specify NV_CTRL_GVO_SYNC_MODE (one of FREE_RUNNING, GENLOCK, or 845*8975f5c5SAndroid Build Coastguard Worker * FRAMELOCK); if you specify GENLOCK or FRAMELOCK, you should also 846*8975f5c5SAndroid Build Coastguard Worker * specify NV_CTRL_GVO_SYNC_SOURCE. 847*8975f5c5SAndroid Build Coastguard Worker * 848*8975f5c5SAndroid Build Coastguard Worker * - Use NV_CTRL_GVO_COMPOSITE_SYNC_INPUT_DETECTED and 849*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_SDI_SYNC_INPUT_DETECTED to detect what input syncs are 850*8975f5c5SAndroid Build Coastguard Worker * present. 851*8975f5c5SAndroid Build Coastguard Worker * 852*8975f5c5SAndroid Build Coastguard Worker * (If no analog sync is detected but it is known that a valid 853*8975f5c5SAndroid Build Coastguard Worker * bi-level or tri-level sync is connected set 854*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_COMPOSITE_SYNC_INPUT_DETECT_MODE appropriately and 855*8975f5c5SAndroid Build Coastguard Worker * retest with NV_CTRL_GVO_COMPOSITE_SYNC_INPUT_DETECTED). 856*8975f5c5SAndroid Build Coastguard Worker * 857*8975f5c5SAndroid Build Coastguard Worker * - if syncing to input sync, query the 858*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVIO_DETECTED_VIDEO_FORMAT attribute; note that Input video 859*8975f5c5SAndroid Build Coastguard Worker * format can only be queried after SYNC_SOURCE is specified. 860*8975f5c5SAndroid Build Coastguard Worker * 861*8975f5c5SAndroid Build Coastguard Worker * - specify the NV_CTRL_GVIO_REQUESTED_VIDEO_FORMAT 862*8975f5c5SAndroid Build Coastguard Worker * 863*8975f5c5SAndroid Build Coastguard Worker * - specify the NV_CTRL_GVO_DATA_FORMAT 864*8975f5c5SAndroid Build Coastguard Worker * 865*8975f5c5SAndroid Build Coastguard Worker * - specify any custom Color Space Conversion (CSC) matrix, offset, 866*8975f5c5SAndroid Build Coastguard Worker * and scale with XNVCTRLSetGvoColorConversion(). 867*8975f5c5SAndroid Build Coastguard Worker * 868*8975f5c5SAndroid Build Coastguard Worker * - if using the GLX_NV_video_out extension to display one or more 869*8975f5c5SAndroid Build Coastguard Worker * pbuffers, call glXGetVideoDeviceNV() to lock the GVO output for use 870*8975f5c5SAndroid Build Coastguard Worker * by the GLX client; then bind the pbuffer(s) to the GVO output with 871*8975f5c5SAndroid Build Coastguard Worker * glXBindVideoImageNV() and send pbuffers to the GVO output with 872*8975f5c5SAndroid Build Coastguard Worker * glXSendPbufferToVideoNV(); see the GLX_NV_video_out spec for more 873*8975f5c5SAndroid Build Coastguard Worker * details. 874*8975f5c5SAndroid Build Coastguard Worker * 875*8975f5c5SAndroid Build Coastguard Worker * - if using the GLX_NV_present_video extension, call 876*8975f5c5SAndroid Build Coastguard Worker * glXBindVideoDeviceNV() to bind the GVO video device to current 877*8975f5c5SAndroid Build Coastguard Worker * OpenGL context. 878*8975f5c5SAndroid Build Coastguard Worker * 879*8975f5c5SAndroid Build Coastguard Worker * Note that setting most GVO attributes only causes the value to be 880*8975f5c5SAndroid Build Coastguard Worker * cached in the X server. The values will be flushed to the hardware 881*8975f5c5SAndroid Build Coastguard Worker * either when the next MetaMode is set that uses the GVO display 882*8975f5c5SAndroid Build Coastguard Worker * device, or when a GLX pbuffer is bound to the GVO output (with 883*8975f5c5SAndroid Build Coastguard Worker * glXBindVideoImageNV()). 884*8975f5c5SAndroid Build Coastguard Worker * 885*8975f5c5SAndroid Build Coastguard Worker * Note that GLX_NV_video_out/GLX_NV_present_video and X screen use 886*8975f5c5SAndroid Build Coastguard Worker * are mutually exclusive. If a MetaMode is currently using the GVO 887*8975f5c5SAndroid Build Coastguard Worker * device, then glXGetVideoDeviceNV and glXBindVideoImageNV() will 888*8975f5c5SAndroid Build Coastguard Worker * fail. Similarly, if a GLX client has locked the GVO output (via 889*8975f5c5SAndroid Build Coastguard Worker * glXGetVideoDeviceNV or glXBindVideoImageNV), then setting a 890*8975f5c5SAndroid Build Coastguard Worker * MetaMode that uses the GVO device will fail. The 891*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_GLX_LOCKED event will be sent when a GLX client locks 892*8975f5c5SAndroid Build Coastguard Worker * the GVO output. 893*8975f5c5SAndroid Build Coastguard Worker * 894*8975f5c5SAndroid Build Coastguard Worker */ 895*8975f5c5SAndroid Build Coastguard Worker 896*8975f5c5SAndroid Build Coastguard Worker /* 897*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_SUPPORTED - returns whether this X screen supports GVO; 898*8975f5c5SAndroid Build Coastguard Worker * if this screen does not support GVO output, then all other GVO 899*8975f5c5SAndroid Build Coastguard Worker * attributes are unavailable. 900*8975f5c5SAndroid Build Coastguard Worker */ 901*8975f5c5SAndroid Build Coastguard Worker 902*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_SUPPORTED 67 /* R-- */ 903*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_SUPPORTED_FALSE 0 904*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_SUPPORTED_TRUE 1 905*8975f5c5SAndroid Build Coastguard Worker 906*8975f5c5SAndroid Build Coastguard Worker /* 907*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_SYNC_MODE - selects the GVO sync mode; possible values 908*8975f5c5SAndroid Build Coastguard Worker * are: 909*8975f5c5SAndroid Build Coastguard Worker * 910*8975f5c5SAndroid Build Coastguard Worker * FREE_RUNNING - GVO does not sync to any external signal 911*8975f5c5SAndroid Build Coastguard Worker * 912*8975f5c5SAndroid Build Coastguard Worker * GENLOCK - the GVO output is genlocked to an incoming sync signal; 913*8975f5c5SAndroid Build Coastguard Worker * genlocking locks at hsync. This requires that the output video 914*8975f5c5SAndroid Build Coastguard Worker * format exactly match the incoming sync video format. 915*8975f5c5SAndroid Build Coastguard Worker * 916*8975f5c5SAndroid Build Coastguard Worker * FRAMELOCK - the GVO output is frame locked to an incoming sync 917*8975f5c5SAndroid Build Coastguard Worker * signal; frame locking locks at vsync. This requires that the output 918*8975f5c5SAndroid Build Coastguard Worker * video format have the same refresh rate as the incoming sync video 919*8975f5c5SAndroid Build Coastguard Worker * format. 920*8975f5c5SAndroid Build Coastguard Worker */ 921*8975f5c5SAndroid Build Coastguard Worker 922*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_SYNC_MODE 68 /* RW- */ 923*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_SYNC_MODE_FREE_RUNNING 0 924*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_SYNC_MODE_GENLOCK 1 925*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_SYNC_MODE_FRAMELOCK 2 926*8975f5c5SAndroid Build Coastguard Worker 927*8975f5c5SAndroid Build Coastguard Worker /* 928*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_SYNC_SOURCE - if NV_CTRL_GVO_SYNC_MODE is set to either 929*8975f5c5SAndroid Build Coastguard Worker * GENLOCK or FRAMELOCK, this controls which sync source is used as 930*8975f5c5SAndroid Build Coastguard Worker * the incoming sync signal (either Composite or SDI). If 931*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_SYNC_MODE is FREE_RUNNING, this attribute has no 932*8975f5c5SAndroid Build Coastguard Worker * effect. 933*8975f5c5SAndroid Build Coastguard Worker */ 934*8975f5c5SAndroid Build Coastguard Worker 935*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_SYNC_SOURCE 69 /* RW- */ 936*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_SYNC_SOURCE_COMPOSITE 0 937*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_SYNC_SOURCE_SDI 1 938*8975f5c5SAndroid Build Coastguard Worker 939*8975f5c5SAndroid Build Coastguard Worker /* 940*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVIO_REQUESTED_VIDEO_FORMAT - specifies the desired output video 941*8975f5c5SAndroid Build Coastguard Worker * format for GVO devices or the desired input video format for GVI devices. 942*8975f5c5SAndroid Build Coastguard Worker * 943*8975f5c5SAndroid Build Coastguard Worker * Note that for GVO, the valid video formats may vary depending on 944*8975f5c5SAndroid Build Coastguard Worker * the NV_CTRL_GVO_SYNC_MODE and the incoming sync video format. See 945*8975f5c5SAndroid Build Coastguard Worker * the definition of NV_CTRL_GVO_SYNC_MODE. 946*8975f5c5SAndroid Build Coastguard Worker * 947*8975f5c5SAndroid Build Coastguard Worker * Note that when querying the ValidValues for this data type, the 948*8975f5c5SAndroid Build Coastguard Worker * values are reported as bits within a bitmask 949*8975f5c5SAndroid Build Coastguard Worker * (ATTRIBUTE_TYPE_INT_BITS); unfortunately, there are more valid 950*8975f5c5SAndroid Build Coastguard Worker * value bits than will fit in a single 32-bit value. To solve this, 951*8975f5c5SAndroid Build Coastguard Worker * query the ValidValues for NV_CTRL_GVIO_REQUESTED_VIDEO_FORMAT to 952*8975f5c5SAndroid Build Coastguard Worker * check which of the first 31 VIDEO_FORMATS are valid, query the 953*8975f5c5SAndroid Build Coastguard Worker * ValidValues for NV_CTRL_GVIO_REQUESTED_VIDEO_FORMAT2 to check which 954*8975f5c5SAndroid Build Coastguard Worker * of the 32-63 VIDEO_FORMATS are valid, and query the ValidValues of 955*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVIO_REQUESTED_VIDEO_FORMAT3 to check which of the 64-95 956*8975f5c5SAndroid Build Coastguard Worker * VIDEO_FORMATS are valid. 957*8975f5c5SAndroid Build Coastguard Worker * 958*8975f5c5SAndroid Build Coastguard Worker * Note: Setting this attribute on a GVI device may also result in the 959*8975f5c5SAndroid Build Coastguard Worker * following NV-CONTROL attributes being reset on that device (to 960*8975f5c5SAndroid Build Coastguard Worker * ensure the configuration remains valid): 961*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVI_REQUESTED_STREAM_BITS_PER_COMPONENT 962*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVI_REQUESTED_STREAM_COMPONENT_SAMPLING 963*8975f5c5SAndroid Build Coastguard Worker */ 964*8975f5c5SAndroid Build Coastguard Worker 965*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_REQUESTED_VIDEO_FORMAT 70 /* RW--I */ 966*8975f5c5SAndroid Build Coastguard Worker 967*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_NONE 0 968*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_487I_59_94_SMPTE259_NTSC 1 969*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_576I_50_00_SMPTE259_PAL 2 970*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_720P_59_94_SMPTE296 3 971*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_720P_60_00_SMPTE296 4 972*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1035I_59_94_SMPTE260 5 973*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1035I_60_00_SMPTE260 6 974*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080I_50_00_SMPTE295 7 975*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080I_50_00_SMPTE274 8 976*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080I_59_94_SMPTE274 9 977*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080I_60_00_SMPTE274 10 978*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080P_23_976_SMPTE274 11 979*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080P_24_00_SMPTE274 12 980*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080P_25_00_SMPTE274 13 981*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080P_29_97_SMPTE274 14 982*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080P_30_00_SMPTE274 15 983*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_720P_50_00_SMPTE296 16 984*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080I_48_00_SMPTE274 17 985*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080I_47_96_SMPTE274 18 986*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_720P_30_00_SMPTE296 19 987*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_720P_29_97_SMPTE296 20 988*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_720P_25_00_SMPTE296 21 989*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_720P_24_00_SMPTE296 22 990*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_720P_23_98_SMPTE296 23 991*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080PSF_25_00_SMPTE274 24 992*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080PSF_29_97_SMPTE274 25 993*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080PSF_30_00_SMPTE274 26 994*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080PSF_24_00_SMPTE274 27 995*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080PSF_23_98_SMPTE274 28 996*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_2048P_30_00_SMPTE372 29 997*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_2048P_29_97_SMPTE372 30 998*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_2048I_60_00_SMPTE372 31 999*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_2048I_59_94_SMPTE372 32 1000*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_2048P_25_00_SMPTE372 33 1001*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_2048I_50_00_SMPTE372 34 1002*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_2048P_24_00_SMPTE372 35 1003*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_2048P_23_98_SMPTE372 36 1004*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_2048I_48_00_SMPTE372 37 1005*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_2048I_47_96_SMPTE372 38 1006*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080P_50_00_3G_LEVEL_A_SMPTE274 39 1007*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080P_59_94_3G_LEVEL_A_SMPTE274 40 1008*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080P_60_00_3G_LEVEL_A_SMPTE274 41 1009*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080P_60_00_3G_LEVEL_B_SMPTE274 42 1010*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080I_60_00_3G_LEVEL_B_SMPTE274 43 1011*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_2048I_60_00_3G_LEVEL_B_SMPTE372 44 1012*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080P_50_00_3G_LEVEL_B_SMPTE274 45 1013*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080I_50_00_3G_LEVEL_B_SMPTE274 46 1014*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_2048I_50_00_3G_LEVEL_B_SMPTE372 47 1015*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080P_30_00_3G_LEVEL_B_SMPTE274 48 1016*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_2048P_30_00_3G_LEVEL_B_SMPTE372 49 1017*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080P_25_00_3G_LEVEL_B_SMPTE274 50 1018*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_2048P_25_00_3G_LEVEL_B_SMPTE372 51 1019*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080P_24_00_3G_LEVEL_B_SMPTE274 52 1020*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_2048P_24_00_3G_LEVEL_B_SMPTE372 53 1021*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080I_48_00_3G_LEVEL_B_SMPTE274 54 1022*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_2048I_48_00_3G_LEVEL_B_SMPTE372 55 1023*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080P_59_94_3G_LEVEL_B_SMPTE274 56 1024*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080I_59_94_3G_LEVEL_B_SMPTE274 57 1025*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_2048I_59_94_3G_LEVEL_B_SMPTE372 58 1026*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080P_29_97_3G_LEVEL_B_SMPTE274 59 1027*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_2048P_29_97_3G_LEVEL_B_SMPTE372 60 1028*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080P_23_98_3G_LEVEL_B_SMPTE274 61 1029*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_2048P_23_98_3G_LEVEL_B_SMPTE372 62 1030*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_1080I_47_96_3G_LEVEL_B_SMPTE274 63 1031*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_2048I_47_96_3G_LEVEL_B_SMPTE372 64 1032*8975f5c5SAndroid Build Coastguard Worker 1033*8975f5c5SAndroid Build Coastguard Worker /* 1034*8975f5c5SAndroid Build Coastguard Worker * The following are deprecated; NV_CTRL_GVIO_REQUESTED_VIDEO_FORMAT and the 1035*8975f5c5SAndroid Build Coastguard Worker * corresponding NV_CTRL_GVIO_* formats should be used instead. 1036*8975f5c5SAndroid Build Coastguard Worker */ 1037*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_OUTPUT_VIDEO_FORMAT 70 /* RW- */ 1038*8975f5c5SAndroid Build Coastguard Worker 1039*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_NONE 0 1040*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_487I_59_94_SMPTE259_NTSC 1 1041*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_576I_50_00_SMPTE259_PAL 2 1042*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_720P_59_94_SMPTE296 3 1043*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_720P_60_00_SMPTE296 4 1044*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_1035I_59_94_SMPTE260 5 1045*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_1035I_60_00_SMPTE260 6 1046*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_1080I_50_00_SMPTE295 7 1047*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_1080I_50_00_SMPTE274 8 1048*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_1080I_59_94_SMPTE274 9 1049*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_1080I_60_00_SMPTE274 10 1050*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_1080P_23_976_SMPTE274 11 1051*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_1080P_24_00_SMPTE274 12 1052*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_1080P_25_00_SMPTE274 13 1053*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_1080P_29_97_SMPTE274 14 1054*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_1080P_30_00_SMPTE274 15 1055*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_720P_50_00_SMPTE296 16 1056*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_1080I_48_00_SMPTE274 17 1057*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_1080I_47_96_SMPTE274 18 1058*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_720P_30_00_SMPTE296 19 1059*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_720P_29_97_SMPTE296 20 1060*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_720P_25_00_SMPTE296 21 1061*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_720P_24_00_SMPTE296 22 1062*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_720P_23_98_SMPTE296 23 1063*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_1080PSF_25_00_SMPTE274 24 1064*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_1080PSF_29_97_SMPTE274 25 1065*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_1080PSF_30_00_SMPTE274 26 1066*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_1080PSF_24_00_SMPTE274 27 1067*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_1080PSF_23_98_SMPTE274 28 1068*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_2048P_30_00_SMPTE372 29 1069*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_2048P_29_97_SMPTE372 30 1070*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_2048I_60_00_SMPTE372 31 1071*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_2048I_59_94_SMPTE372 32 1072*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_2048P_25_00_SMPTE372 33 1073*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_2048I_50_00_SMPTE372 34 1074*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_2048P_24_00_SMPTE372 35 1075*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_2048P_23_98_SMPTE372 36 1076*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_2048I_48_00_SMPTE372 37 1077*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_2048I_47_96_SMPTE372 38 1078*8975f5c5SAndroid Build Coastguard Worker 1079*8975f5c5SAndroid Build Coastguard Worker /* 1080*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVIO_DETECTED_VIDEO_FORMAT - indicates the input video format 1081*8975f5c5SAndroid Build Coastguard Worker * detected for GVO or GVI devices; the possible values are the 1082*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVIO_VIDEO_FORMAT constants. 1083*8975f5c5SAndroid Build Coastguard Worker * 1084*8975f5c5SAndroid Build Coastguard Worker * For GVI devices, the jack number should be specified in the lower 1085*8975f5c5SAndroid Build Coastguard Worker * 16 bits of the "display_mask" parameter, while the channel number should be 1086*8975f5c5SAndroid Build Coastguard Worker * specified in the upper 16 bits. 1087*8975f5c5SAndroid Build Coastguard Worker */ 1088*8975f5c5SAndroid Build Coastguard Worker 1089*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_DETECTED_VIDEO_FORMAT 71 /* R--I */ 1090*8975f5c5SAndroid Build Coastguard Worker 1091*8975f5c5SAndroid Build Coastguard Worker /* 1092*8975f5c5SAndroid Build Coastguard Worker * The following is deprecated. Use NV_CTRL_GVIO_DETECTED_VIDEO_FORMAT, 1093*8975f5c5SAndroid Build Coastguard Worker * instead. 1094*8975f5c5SAndroid Build Coastguard Worker */ 1095*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_INPUT_VIDEO_FORMAT 71 /* R-- */ 1096*8975f5c5SAndroid Build Coastguard Worker 1097*8975f5c5SAndroid Build Coastguard Worker /* 1098*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_DATA_FORMAT - This controls how the data in the source 1099*8975f5c5SAndroid Build Coastguard Worker * (either the X screen or the GLX pbuffer) is interpretted and 1100*8975f5c5SAndroid Build Coastguard Worker * displayed. 1101*8975f5c5SAndroid Build Coastguard Worker * 1102*8975f5c5SAndroid Build Coastguard Worker * Note: some of the below DATA_FORMATS have been renamed. For 1103*8975f5c5SAndroid Build Coastguard Worker * example, R8G8B8_TO_RGB444 has been renamed to X8X8X8_444_PASSTHRU. 1104*8975f5c5SAndroid Build Coastguard Worker * This is to more accurately reflect DATA_FORMATS where the 1105*8975f5c5SAndroid Build Coastguard Worker * per-channel data could be either RGB or YCrCb -- the point is that 1106*8975f5c5SAndroid Build Coastguard Worker * the driver and GVO hardware do not perform any implicit color space 1107*8975f5c5SAndroid Build Coastguard Worker * conversion on the data; it is passed through to the SDI out. 1108*8975f5c5SAndroid Build Coastguard Worker */ 1109*8975f5c5SAndroid Build Coastguard Worker 1110*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT 72 /* RW- */ 1111*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_R8G8B8_TO_YCRCB444 0 1112*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_R8G8B8A8_TO_YCRCBA4444 1 1113*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_R8G8B8Z10_TO_YCRCBZ4444 2 1114*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_R8G8B8_TO_YCRCB422 3 1115*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_R8G8B8A8_TO_YCRCBA4224 4 1116*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_R8G8B8Z10_TO_YCRCBZ4224 5 1117*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_R8G8B8_TO_RGB444 6 // renamed 1118*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_X8X8X8_444_PASSTHRU 6 1119*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_R8G8B8A8_TO_RGBA4444 7 // renamed 1120*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_X8X8X8A8_4444_PASSTHRU 7 1121*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_R8G8B8Z10_TO_RGBZ4444 8 // renamed 1122*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_X8X8X8Z8_4444_PASSTHRU 8 1123*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_Y10CR10CB10_TO_YCRCB444 9 // renamed 1124*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_X10X10X10_444_PASSTHRU 9 1125*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_Y10CR8CB8_TO_YCRCB444 10 // renamed 1126*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_X10X8X8_444_PASSTHRU 10 1127*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_Y10CR8CB8A10_TO_YCRCBA4444 11 // renamed 1128*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_X10X8X8A10_4444_PASSTHRU 11 1129*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_Y10CR8CB8Z10_TO_YCRCBZ4444 12 // renamed 1130*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_X10X8X8Z10_4444_PASSTHRU 12 1131*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_DUAL_R8G8B8_TO_DUAL_YCRCB422 13 1132*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_DUAL_Y8CR8CB8_TO_DUAL_YCRCB422 14 // renamed 1133*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_DUAL_X8X8X8_TO_DUAL_422_PASSTHRU 14 1134*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_R10G10B10_TO_YCRCB422 15 1135*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_R10G10B10_TO_YCRCB444 16 1136*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_Y12CR12CB12_TO_YCRCB444 17 // renamed 1137*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_X12X12X12_444_PASSTHRU 17 1138*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_R12G12B12_TO_YCRCB444 18 1139*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_X8X8X8_422_PASSTHRU 19 1140*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_X8X8X8A8_4224_PASSTHRU 20 1141*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_X8X8X8Z8_4224_PASSTHRU 21 1142*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_X10X10X10_422_PASSTHRU 22 1143*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_X10X8X8_422_PASSTHRU 23 1144*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_X10X8X8A10_4224_PASSTHRU 24 1145*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_X10X8X8Z10_4224_PASSTHRU 25 1146*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_X12X12X12_422_PASSTHRU 26 1147*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DATA_FORMAT_R12G12B12_TO_YCRCB422 27 1148*8975f5c5SAndroid Build Coastguard Worker 1149*8975f5c5SAndroid Build Coastguard Worker /* 1150*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_DISPLAY_X_SCREEN - no longer supported 1151*8975f5c5SAndroid Build Coastguard Worker */ 1152*8975f5c5SAndroid Build Coastguard Worker 1153*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DISPLAY_X_SCREEN 73 /* RW- */ 1154*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DISPLAY_X_SCREEN_ENABLE 1 1155*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_DISPLAY_X_SCREEN_DISABLE 0 1156*8975f5c5SAndroid Build Coastguard Worker 1157*8975f5c5SAndroid Build Coastguard Worker /* 1158*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_COMPOSITE_SYNC_INPUT_DETECTED - indicates whether 1159*8975f5c5SAndroid Build Coastguard Worker * Composite Sync input is detected. 1160*8975f5c5SAndroid Build Coastguard Worker */ 1161*8975f5c5SAndroid Build Coastguard Worker 1162*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_COMPOSITE_SYNC_INPUT_DETECTED 74 /* R-- */ 1163*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_COMPOSITE_SYNC_INPUT_DETECTED_FALSE 0 1164*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_COMPOSITE_SYNC_INPUT_DETECTED_TRUE 1 1165*8975f5c5SAndroid Build Coastguard Worker 1166*8975f5c5SAndroid Build Coastguard Worker /* 1167*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_COMPOSITE_SYNC_INPUT_DETECT_MODE - get/set the 1168*8975f5c5SAndroid Build Coastguard Worker * Composite Sync input detect mode. 1169*8975f5c5SAndroid Build Coastguard Worker */ 1170*8975f5c5SAndroid Build Coastguard Worker 1171*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_COMPOSITE_SYNC_INPUT_DETECT_MODE 75 /* RW- */ 1172*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_COMPOSITE_SYNC_INPUT_DETECT_MODE_AUTO 0 1173*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_COMPOSITE_SYNC_INPUT_DETECT_MODE_BI_LEVEL 1 1174*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_COMPOSITE_SYNC_INPUT_DETECT_MODE_TRI_LEVEL 2 1175*8975f5c5SAndroid Build Coastguard Worker 1176*8975f5c5SAndroid Build Coastguard Worker /* 1177*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_SYNC_INPUT_DETECTED - indicates whether SDI Sync input 1178*8975f5c5SAndroid Build Coastguard Worker * is detected, and what type. 1179*8975f5c5SAndroid Build Coastguard Worker */ 1180*8975f5c5SAndroid Build Coastguard Worker 1181*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_SDI_SYNC_INPUT_DETECTED 76 /* R-- */ 1182*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_SDI_SYNC_INPUT_DETECTED_NONE 0 1183*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_SDI_SYNC_INPUT_DETECTED_HD 1 1184*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_SDI_SYNC_INPUT_DETECTED_SD 2 1185*8975f5c5SAndroid Build Coastguard Worker 1186*8975f5c5SAndroid Build Coastguard Worker /* 1187*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_VIDEO_OUTPUTS - indicates which GVO video output 1188*8975f5c5SAndroid Build Coastguard Worker * connectors are currently outputing data. 1189*8975f5c5SAndroid Build Coastguard Worker */ 1190*8975f5c5SAndroid Build Coastguard Worker 1191*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_OUTPUTS 77 /* R-- */ 1192*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_OUTPUTS_NONE 0 1193*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_OUTPUTS_VIDEO1 1 1194*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_OUTPUTS_VIDEO2 2 1195*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_OUTPUTS_VIDEO_BOTH 3 1196*8975f5c5SAndroid Build Coastguard Worker 1197*8975f5c5SAndroid Build Coastguard Worker /* 1198*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_FPGA_VERSION - indicates the version of the Firmware on 1199*8975f5c5SAndroid Build Coastguard Worker * the GVO device. Deprecated; use 1200*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_GVIO_FIRMWARE_VERSION instead. 1201*8975f5c5SAndroid Build Coastguard Worker */ 1202*8975f5c5SAndroid Build Coastguard Worker 1203*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_FIRMWARE_VERSION 78 /* R-- */ 1204*8975f5c5SAndroid Build Coastguard Worker 1205*8975f5c5SAndroid Build Coastguard Worker /* 1206*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_SYNC_DELAY_PIXELS - controls the delay between the 1207*8975f5c5SAndroid Build Coastguard Worker * input sync and the output sync in numbers of pixels from hsync; 1208*8975f5c5SAndroid Build Coastguard Worker * this is a 12 bit value. 1209*8975f5c5SAndroid Build Coastguard Worker * 1210*8975f5c5SAndroid Build Coastguard Worker * If the NV_CTRL_GVO_CAPABILITIES_ADVANCE_SYNC_SKEW bit is set, 1211*8975f5c5SAndroid Build Coastguard Worker * then setting this value will set an advance instead of a delay. 1212*8975f5c5SAndroid Build Coastguard Worker */ 1213*8975f5c5SAndroid Build Coastguard Worker 1214*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_SYNC_DELAY_PIXELS 79 /* RW- */ 1215*8975f5c5SAndroid Build Coastguard Worker 1216*8975f5c5SAndroid Build Coastguard Worker /* 1217*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_SYNC_DELAY_LINES - controls the delay between the input 1218*8975f5c5SAndroid Build Coastguard Worker * sync and the output sync in numbers of lines from vsync; this is a 1219*8975f5c5SAndroid Build Coastguard Worker * 12 bit value. 1220*8975f5c5SAndroid Build Coastguard Worker * 1221*8975f5c5SAndroid Build Coastguard Worker * If the NV_CTRL_GVO_CAPABILITIES_ADVANCE_SYNC_SKEW bit is set, 1222*8975f5c5SAndroid Build Coastguard Worker * then setting this value will set an advance instead of a delay. 1223*8975f5c5SAndroid Build Coastguard Worker */ 1224*8975f5c5SAndroid Build Coastguard Worker 1225*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_SYNC_DELAY_LINES 80 /* RW- */ 1226*8975f5c5SAndroid Build Coastguard Worker 1227*8975f5c5SAndroid Build Coastguard Worker /* 1228*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_INPUT_VIDEO_FORMAT_REACQUIRE - must be set for a period 1229*8975f5c5SAndroid Build Coastguard Worker * of about 2 seconds for the new InputVideoFormat to be properly 1230*8975f5c5SAndroid Build Coastguard Worker * locked to. In nvidia-settings, we do a reacquire whenever genlock 1231*8975f5c5SAndroid Build Coastguard Worker * or frame lock mode is entered into, when the user clicks the 1232*8975f5c5SAndroid Build Coastguard Worker * "detect" button. This value can be written, but always reads back 1233*8975f5c5SAndroid Build Coastguard Worker * _FALSE. 1234*8975f5c5SAndroid Build Coastguard Worker */ 1235*8975f5c5SAndroid Build Coastguard Worker 1236*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_INPUT_VIDEO_FORMAT_REACQUIRE 81 /* -W- */ 1237*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_INPUT_VIDEO_FORMAT_REACQUIRE_FALSE 0 1238*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_INPUT_VIDEO_FORMAT_REACQUIRE_TRUE 1 1239*8975f5c5SAndroid Build Coastguard Worker 1240*8975f5c5SAndroid Build Coastguard Worker /* 1241*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_GLX_LOCKED - indicates that GVO configurability is 1242*8975f5c5SAndroid Build Coastguard Worker * locked by GLX; this occurs when either glXGetVideoDeviceNV (part of 1243*8975f5c5SAndroid Build Coastguard Worker * GLX_NV_video_out) or glXBindVideoDeviceNV (part of 1244*8975f5c5SAndroid Build Coastguard Worker * GLX_NV_present_video) is called. All GVO output resources are 1245*8975f5c5SAndroid Build Coastguard Worker * locked until released by the GLX_NV_video_out/GLX_NV_present_video 1246*8975f5c5SAndroid Build Coastguard Worker * client. 1247*8975f5c5SAndroid Build Coastguard Worker * 1248*8975f5c5SAndroid Build Coastguard Worker * When GVO is locked, setting of the following GVO NV-CONTROL attributes will 1249*8975f5c5SAndroid Build Coastguard Worker * not happen immediately and will instead be cached. The GVO resource will 1250*8975f5c5SAndroid Build Coastguard Worker * need to be disabled/released and re-enabled/claimed for the values to be 1251*8975f5c5SAndroid Build Coastguard Worker * flushed. These attributes are: 1252*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVIO_REQUESTED_VIDEO_FORMAT 1253*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_DATA_FORMAT 1254*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_FLIP_QUEUE_SIZE 1255*8975f5c5SAndroid Build Coastguard Worker * 1256*8975f5c5SAndroid Build Coastguard Worker * This attribute is deprecated and may be removed in a future release. Its 1257*8975f5c5SAndroid Build Coastguard Worker * functionality has been replaced by NV_CTRL_GVO_LOCK_OWNER. 1258*8975f5c5SAndroid Build Coastguard Worker */ 1259*8975f5c5SAndroid Build Coastguard Worker 1260*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_GLX_LOCKED 82 /* R-- */ 1261*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_GLX_LOCKED_FALSE 0 1262*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_GLX_LOCKED_TRUE 1 1263*8975f5c5SAndroid Build Coastguard Worker 1264*8975f5c5SAndroid Build Coastguard Worker /* 1265*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVIO_VIDEO_FORMAT_{WIDTH,HEIGHT,REFRESH_RATE} - query the 1266*8975f5c5SAndroid Build Coastguard Worker * width, height, and refresh rate for the specified 1267*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVIO_VIDEO_FORMAT_*. So that this can be queried with 1268*8975f5c5SAndroid Build Coastguard Worker * existing interfaces, XNVCTRLQueryAttribute() should be used, and 1269*8975f5c5SAndroid Build Coastguard Worker * the video format specified in the display_mask field; eg: 1270*8975f5c5SAndroid Build Coastguard Worker * 1271*8975f5c5SAndroid Build Coastguard Worker * XNVCTRLQueryAttribute (dpy, 1272*8975f5c5SAndroid Build Coastguard Worker * screen, 1273*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVIO_VIDEO_FORMAT_487I_59_94_SMPTE259_NTSC, 1274*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVIO_VIDEO_FORMAT_WIDTH, 1275*8975f5c5SAndroid Build Coastguard Worker * &value); 1276*8975f5c5SAndroid Build Coastguard Worker * 1277*8975f5c5SAndroid Build Coastguard Worker * Note that Refresh Rate is in milliHertz values 1278*8975f5c5SAndroid Build Coastguard Worker */ 1279*8975f5c5SAndroid Build Coastguard Worker 1280*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_WIDTH 83 /* R--I */ 1281*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_HEIGHT 84 /* R--I */ 1282*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_REFRESH_RATE 85 /* R--I */ 1283*8975f5c5SAndroid Build Coastguard Worker 1284*8975f5c5SAndroid Build Coastguard Worker /* The following are deprecated; use the NV_CTRL_GVIO_* versions, instead */ 1285*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_WIDTH 83 /* R-- */ 1286*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_HEIGHT 84 /* R-- */ 1287*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_VIDEO_FORMAT_REFRESH_RATE 85 /* R-- */ 1288*8975f5c5SAndroid Build Coastguard Worker 1289*8975f5c5SAndroid Build Coastguard Worker /* 1290*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_X_SCREEN_PAN_[XY] - no longer supported 1291*8975f5c5SAndroid Build Coastguard Worker */ 1292*8975f5c5SAndroid Build Coastguard Worker 1293*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_X_SCREEN_PAN_X 86 /* RW- */ 1294*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_X_SCREEN_PAN_Y 87 /* RW- */ 1295*8975f5c5SAndroid Build Coastguard Worker 1296*8975f5c5SAndroid Build Coastguard Worker /* 1297*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_OVERCLOCKING_STATE - query the current or set a new 1298*8975f5c5SAndroid Build Coastguard Worker * overclocking state; the value of this attribute controls the 1299*8975f5c5SAndroid Build Coastguard Worker * availability of additional overclocking attributes (see below). 1300*8975f5c5SAndroid Build Coastguard Worker * 1301*8975f5c5SAndroid Build Coastguard Worker * Note: this attribute is unavailable unless overclocking support 1302*8975f5c5SAndroid Build Coastguard Worker * has been enabled in the X server (by the user). 1303*8975f5c5SAndroid Build Coastguard Worker */ 1304*8975f5c5SAndroid Build Coastguard Worker 1305*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_OVERCLOCKING_STATE 88 /* RW-G */ 1306*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_OVERCLOCKING_STATE_NONE 0 1307*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_OVERCLOCKING_STATE_MANUAL 1 1308*8975f5c5SAndroid Build Coastguard Worker 1309*8975f5c5SAndroid Build Coastguard Worker /* 1310*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_{2,3}D_CLOCK_FREQS - query or set the GPU and memory 1311*8975f5c5SAndroid Build Coastguard Worker * clocks of the device driving the X screen. New clock frequencies 1312*8975f5c5SAndroid Build Coastguard Worker * are tested before being applied, and may be rejected. 1313*8975f5c5SAndroid Build Coastguard Worker * 1314*8975f5c5SAndroid Build Coastguard Worker * Note: if the target clocks are too aggressive, their testing may 1315*8975f5c5SAndroid Build Coastguard Worker * render the system unresponsive. 1316*8975f5c5SAndroid Build Coastguard Worker * 1317*8975f5c5SAndroid Build Coastguard Worker * Note: while this attribute can always be queried, it can't be set 1318*8975f5c5SAndroid Build Coastguard Worker * unless NV_CTRL_GPU_OVERCLOCKING_STATE is set to _MANUAL. Since 1319*8975f5c5SAndroid Build Coastguard Worker * the target clocks may be rejected, the requester should read this 1320*8975f5c5SAndroid Build Coastguard Worker * attribute after the set to determine success or failure. 1321*8975f5c5SAndroid Build Coastguard Worker * 1322*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_{2,3}D_CLOCK_FREQS are "packed" integer attributes; the 1323*8975f5c5SAndroid Build Coastguard Worker * GPU clock is stored in the upper 16 bits of the integer, and the 1324*8975f5c5SAndroid Build Coastguard Worker * memory clock is stored in the lower 16 bits of the integer. All 1325*8975f5c5SAndroid Build Coastguard Worker * clock values are in MHz. 1326*8975f5c5SAndroid Build Coastguard Worker */ 1327*8975f5c5SAndroid Build Coastguard Worker 1328*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_2D_CLOCK_FREQS 89 /* RW-G */ 1329*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_3D_CLOCK_FREQS 90 /* RW-G */ 1330*8975f5c5SAndroid Build Coastguard Worker 1331*8975f5c5SAndroid Build Coastguard Worker /* 1332*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_DEFAULT_{2,3}D_CLOCK_FREQS - query the default memory 1333*8975f5c5SAndroid Build Coastguard Worker * and GPU core clocks of the device driving the X screen. 1334*8975f5c5SAndroid Build Coastguard Worker * 1335*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_DEFAULT_{2,3}D_CLOCK_FREQS are "packed" integer 1336*8975f5c5SAndroid Build Coastguard Worker * attributes; the GPU clock is stored in the upper 16 bits of the 1337*8975f5c5SAndroid Build Coastguard Worker * integer, and the memory clock is stored in the lower 16 bits of the 1338*8975f5c5SAndroid Build Coastguard Worker * integer. All clock values are in MHz. 1339*8975f5c5SAndroid Build Coastguard Worker */ 1340*8975f5c5SAndroid Build Coastguard Worker 1341*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_DEFAULT_2D_CLOCK_FREQS 91 /* R--G */ 1342*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_DEFAULT_3D_CLOCK_FREQS 92 /* R--G */ 1343*8975f5c5SAndroid Build Coastguard Worker 1344*8975f5c5SAndroid Build Coastguard Worker /* 1345*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_CURRENT_CLOCK_FREQS - query the current GPU and memory 1346*8975f5c5SAndroid Build Coastguard Worker * clocks of the graphics device driving the X screen. 1347*8975f5c5SAndroid Build Coastguard Worker * 1348*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_CURRENT_CLOCK_FREQS is a "packed" integer attribute; 1349*8975f5c5SAndroid Build Coastguard Worker * the GPU clock is stored in the upper 16 bits of the integer, and 1350*8975f5c5SAndroid Build Coastguard Worker * the memory clock is stored in the lower 16 bits of the integer. 1351*8975f5c5SAndroid Build Coastguard Worker * All clock values are in MHz. All clock values are in MHz. 1352*8975f5c5SAndroid Build Coastguard Worker */ 1353*8975f5c5SAndroid Build Coastguard Worker 1354*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_CURRENT_CLOCK_FREQS 93 /* R--G */ 1355*8975f5c5SAndroid Build Coastguard Worker 1356*8975f5c5SAndroid Build Coastguard Worker /* 1357*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_OPTIMAL_CLOCK_FREQS - Holds the last calculated 1358*8975f5c5SAndroid Build Coastguard Worker * optimal 3D clock frequencies found by the 1359*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_OPTIMAL_CLOCK_FREQS_DETECTION process. Querying this 1360*8975f5c5SAndroid Build Coastguard Worker * attribute before having probed for the optimal clocks will return 1361*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_OPTIMAL_CLOCK_FREQS_INVALID 1362*8975f5c5SAndroid Build Coastguard Worker * 1363*8975f5c5SAndroid Build Coastguard Worker * Note: unless NV_CTRL_GPU_OVERCLOCKING_STATE is set to _MANUAL, the 1364*8975f5c5SAndroid Build Coastguard Worker * optimal clock detection process is unavailable. 1365*8975f5c5SAndroid Build Coastguard Worker */ 1366*8975f5c5SAndroid Build Coastguard Worker 1367*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_OPTIMAL_CLOCK_FREQS 94 /* R--G */ 1368*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_OPTIMAL_CLOCK_FREQS_INVALID 0 1369*8975f5c5SAndroid Build Coastguard Worker 1370*8975f5c5SAndroid Build Coastguard Worker /* 1371*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_OPTIMAL_CLOCK_FREQS_DETECTION - set to _START to 1372*8975f5c5SAndroid Build Coastguard Worker * initiate testing for the optimal 3D clock frequencies. Once 1373*8975f5c5SAndroid Build Coastguard Worker * found, the optimal clock frequencies will be returned by the 1374*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_OPTIMAL_CLOCK_FREQS attribute asynchronously 1375*8975f5c5SAndroid Build Coastguard Worker * (using an X event, see XNVCtrlSelectNotify). 1376*8975f5c5SAndroid Build Coastguard Worker * 1377*8975f5c5SAndroid Build Coastguard Worker * To cancel an ongoing test for the optimal clocks, set the 1378*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_OPTIMAL_CLOCK_FREQS_DETECTION attribute to _CANCEL 1379*8975f5c5SAndroid Build Coastguard Worker * 1380*8975f5c5SAndroid Build Coastguard Worker * Note: unless NV_CTRL_GPU_OVERCLOCKING_STATE is set to _MANUAL, the 1381*8975f5c5SAndroid Build Coastguard Worker * optimal clock detection process is unavailable. 1382*8975f5c5SAndroid Build Coastguard Worker */ 1383*8975f5c5SAndroid Build Coastguard Worker 1384*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_OPTIMAL_CLOCK_FREQS_DETECTION 95 /* -W-G */ 1385*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_OPTIMAL_CLOCK_FREQS_DETECTION_START 0 1386*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_OPTIMAL_CLOCK_FREQS_DETECTION_CANCEL 1 1387*8975f5c5SAndroid Build Coastguard Worker 1388*8975f5c5SAndroid Build Coastguard Worker /* 1389*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_OPTIMAL_CLOCK_FREQS_DETECTION_STATE - query this 1390*8975f5c5SAndroid Build Coastguard Worker * variable to know if a test is currently being run to 1391*8975f5c5SAndroid Build Coastguard Worker * determine the optimal 3D clock frequencies. _BUSY means a 1392*8975f5c5SAndroid Build Coastguard Worker * test is currently running, _IDLE means the test is not running. 1393*8975f5c5SAndroid Build Coastguard Worker * 1394*8975f5c5SAndroid Build Coastguard Worker * Note: unless NV_CTRL_GPU_OVERCLOCKING_STATE is set to _MANUAL, the 1395*8975f5c5SAndroid Build Coastguard Worker * optimal clock detection process is unavailable. 1396*8975f5c5SAndroid Build Coastguard Worker */ 1397*8975f5c5SAndroid Build Coastguard Worker 1398*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_OPTIMAL_CLOCK_FREQS_DETECTION_STATE 96 /* R--G */ 1399*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_OPTIMAL_CLOCK_FREQS_DETECTION_STATE_IDLE 0 1400*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_OPTIMAL_CLOCK_FREQS_DETECTION_STATE_BUSY 1 1401*8975f5c5SAndroid Build Coastguard Worker 1402*8975f5c5SAndroid Build Coastguard Worker /* 1403*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FLATPANEL_CHIP_LOCATION - for the specified display device, 1404*8975f5c5SAndroid Build Coastguard Worker * report whether the flat panel is driven by the on-chip controller, 1405*8975f5c5SAndroid Build Coastguard Worker * or a separate controller chip elsewhere on the graphics board. 1406*8975f5c5SAndroid Build Coastguard Worker * This attribute is only available for flat panels. 1407*8975f5c5SAndroid Build Coastguard Worker */ 1408*8975f5c5SAndroid Build Coastguard Worker 1409*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FLATPANEL_CHIP_LOCATION 215 /* R-DG */ 1410*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FLATPANEL_CHIP_LOCATION_INTERNAL 0 1411*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FLATPANEL_CHIP_LOCATION_EXTERNAL 1 1412*8975f5c5SAndroid Build Coastguard Worker 1413*8975f5c5SAndroid Build Coastguard Worker /* 1414*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FLATPANEL_LINK - report the number of links for a DVI connection, or 1415*8975f5c5SAndroid Build Coastguard Worker * the main link's active lane count for DisplayPort. 1416*8975f5c5SAndroid Build Coastguard Worker * This attribute is only available for flat panels. 1417*8975f5c5SAndroid Build Coastguard Worker */ 1418*8975f5c5SAndroid Build Coastguard Worker 1419*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FLATPANEL_LINK 216 /* R-DG */ 1420*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FLATPANEL_LINK_SINGLE 0 1421*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FLATPANEL_LINK_DUAL 1 1422*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FLATPANEL_LINK_QUAD 3 1423*8975f5c5SAndroid Build Coastguard Worker 1424*8975f5c5SAndroid Build Coastguard Worker /* 1425*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FLATPANEL_SIGNAL - for the specified display device, report 1426*8975f5c5SAndroid Build Coastguard Worker * whether the flat panel is driven by an LVDS, TMDS, or DisplayPort signal. 1427*8975f5c5SAndroid Build Coastguard Worker * This attribute is only available for flat panels. 1428*8975f5c5SAndroid Build Coastguard Worker */ 1429*8975f5c5SAndroid Build Coastguard Worker 1430*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FLATPANEL_SIGNAL 217 /* R-DG */ 1431*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FLATPANEL_SIGNAL_LVDS 0 1432*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FLATPANEL_SIGNAL_TMDS 1 1433*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FLATPANEL_SIGNAL_DISPLAYPORT 2 1434*8975f5c5SAndroid Build Coastguard Worker 1435*8975f5c5SAndroid Build Coastguard Worker /* 1436*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_USE_HOUSE_SYNC - when TRUE, the server (master) frame lock 1437*8975f5c5SAndroid Build Coastguard Worker * device will propagate the incoming house sync signal as the outgoing 1438*8975f5c5SAndroid Build Coastguard Worker * frame lock sync signal. If the frame lock device cannot detect a 1439*8975f5c5SAndroid Build Coastguard Worker * frame lock sync signal, it will default to using the internal timings 1440*8975f5c5SAndroid Build Coastguard Worker * from the GPU connected to the primary connector. 1441*8975f5c5SAndroid Build Coastguard Worker * 1442*8975f5c5SAndroid Build Coastguard Worker * This attribute may be queried through XNVCTRLQueryTargetAttribute() 1443*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_FRAMELOCK or NV_CTRL_TARGET_TYPE_X_SCREEN 1444*8975f5c5SAndroid Build Coastguard Worker * target. 1445*8975f5c5SAndroid Build Coastguard Worker */ 1446*8975f5c5SAndroid Build Coastguard Worker 1447*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_USE_HOUSE_SYNC 218 /* RW-F */ 1448*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_USE_HOUSE_SYNC_FALSE 0 1449*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_USE_HOUSE_SYNC_TRUE 1 1450*8975f5c5SAndroid Build Coastguard Worker 1451*8975f5c5SAndroid Build Coastguard Worker /* 1452*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_EDID_AVAILABLE - report if an EDID is available for the 1453*8975f5c5SAndroid Build Coastguard Worker * specified display device. 1454*8975f5c5SAndroid Build Coastguard Worker * 1455*8975f5c5SAndroid Build Coastguard Worker * This attribute may also be queried through XNVCTRLQueryTargetAttribute() 1456*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_GPU or NV_CTRL_TARGET_TYPE_X_SCREEN 1457*8975f5c5SAndroid Build Coastguard Worker * target. 1458*8975f5c5SAndroid Build Coastguard Worker */ 1459*8975f5c5SAndroid Build Coastguard Worker 1460*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_EDID_AVAILABLE 219 /* R-DG */ 1461*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_EDID_AVAILABLE_FALSE 0 1462*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_EDID_AVAILABLE_TRUE 1 1463*8975f5c5SAndroid Build Coastguard Worker 1464*8975f5c5SAndroid Build Coastguard Worker /* 1465*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FORCE_STEREO - when TRUE, OpenGL will force stereo flipping 1466*8975f5c5SAndroid Build Coastguard Worker * even when no stereo drawables are visible (if the device is configured 1467*8975f5c5SAndroid Build Coastguard Worker * to support it, see the "Stereo" X config option). 1468*8975f5c5SAndroid Build Coastguard Worker * When false, fall back to the default behavior of only flipping when a 1469*8975f5c5SAndroid Build Coastguard Worker * stereo drawable is visible. 1470*8975f5c5SAndroid Build Coastguard Worker */ 1471*8975f5c5SAndroid Build Coastguard Worker 1472*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FORCE_STEREO 220 /* RW- */ 1473*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FORCE_STEREO_FALSE 0 1474*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FORCE_STEREO_TRUE 1 1475*8975f5c5SAndroid Build Coastguard Worker 1476*8975f5c5SAndroid Build Coastguard Worker /* 1477*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_IMAGE_SETTINGS - the image quality setting for OpenGL clients. 1478*8975f5c5SAndroid Build Coastguard Worker * 1479*8975f5c5SAndroid Build Coastguard Worker * This setting is only applied to OpenGL clients that are started 1480*8975f5c5SAndroid Build Coastguard Worker * after this setting is applied. 1481*8975f5c5SAndroid Build Coastguard Worker */ 1482*8975f5c5SAndroid Build Coastguard Worker 1483*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_IMAGE_SETTINGS 221 /* RW-X */ 1484*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_IMAGE_SETTINGS_HIGH_QUALITY 0 1485*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_IMAGE_SETTINGS_QUALITY 1 1486*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_IMAGE_SETTINGS_PERFORMANCE 2 1487*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_IMAGE_SETTINGS_HIGH_PERFORMANCE 3 1488*8975f5c5SAndroid Build Coastguard Worker 1489*8975f5c5SAndroid Build Coastguard Worker /* 1490*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_XINERAMA - return whether xinerama is enabled 1491*8975f5c5SAndroid Build Coastguard Worker */ 1492*8975f5c5SAndroid Build Coastguard Worker 1493*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_XINERAMA 222 /* R--G */ 1494*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_XINERAMA_OFF 0 1495*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_XINERAMA_ON 1 1496*8975f5c5SAndroid Build Coastguard Worker 1497*8975f5c5SAndroid Build Coastguard Worker /* 1498*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_XINERAMA_STEREO - when TRUE, OpenGL will allow stereo flipping 1499*8975f5c5SAndroid Build Coastguard Worker * on multiple X screens configured with Xinerama. 1500*8975f5c5SAndroid Build Coastguard Worker * When FALSE, flipping is allowed only on one X screen at a time. 1501*8975f5c5SAndroid Build Coastguard Worker */ 1502*8975f5c5SAndroid Build Coastguard Worker 1503*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_XINERAMA_STEREO 223 /* RW- */ 1504*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_XINERAMA_STEREO_FALSE 0 1505*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_XINERAMA_STEREO_TRUE 1 1506*8975f5c5SAndroid Build Coastguard Worker 1507*8975f5c5SAndroid Build Coastguard Worker /* 1508*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_BUS_RATE - if the bus type of the specified device is AGP, then 1509*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_BUS_RATE returns the configured AGP transfer rate. If the bus type 1510*8975f5c5SAndroid Build Coastguard Worker * is PCI Express, then this attribute returns the maximum link width. 1511*8975f5c5SAndroid Build Coastguard Worker * When this attribute is queried on an X screen target, the bus rate of the 1512*8975f5c5SAndroid Build Coastguard Worker * GPU driving the X screen is returned. 1513*8975f5c5SAndroid Build Coastguard Worker */ 1514*8975f5c5SAndroid Build Coastguard Worker 1515*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_BUS_RATE 224 /* R--GI */ 1516*8975f5c5SAndroid Build Coastguard Worker 1517*8975f5c5SAndroid Build Coastguard Worker /* 1518*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_PCIE_MAX_LINK_WIDTH - returns the maximum 1519*8975f5c5SAndroid Build Coastguard Worker * PCIe link width, in number of lanes. 1520*8975f5c5SAndroid Build Coastguard Worker */ 1521*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_PCIE_MAX_LINK_WIDTH NV_CTRL_BUS_RATE 1522*8975f5c5SAndroid Build Coastguard Worker 1523*8975f5c5SAndroid Build Coastguard Worker /* 1524*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_SHOW_SLI_HUD - when TRUE, OpenGL will draw information about the 1525*8975f5c5SAndroid Build Coastguard Worker * current SLI mode. 1526*8975f5c5SAndroid Build Coastguard Worker * Renamed this attribute to NV_CTRL_SHOW_SLI_VISUAL_INDICATOR 1527*8975f5c5SAndroid Build Coastguard Worker */ 1528*8975f5c5SAndroid Build Coastguard Worker 1529*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_SHOW_SLI_HUD NV_CTRL_SHOW_SLI_VISUAL_INDICATOR 1530*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_SHOW_SLI_HUD_FALSE NV_CTRL_SHOW_SLI_VISUAL_INDICATOR_FALSE 1531*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_SHOW_SLI_HUD_TRUE NV_CTRL_SHOW_SLI_VISUAL_INDICATOR_TRUE 1532*8975f5c5SAndroid Build Coastguard Worker 1533*8975f5c5SAndroid Build Coastguard Worker /* 1534*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_SHOW_SLI_VISUAL_INDICATOR - when TRUE, OpenGL will draw information 1535*8975f5c5SAndroid Build Coastguard Worker * about the current SLI mode. 1536*8975f5c5SAndroid Build Coastguard Worker */ 1537*8975f5c5SAndroid Build Coastguard Worker 1538*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_SHOW_SLI_VISUAL_INDICATOR 225 /* RW-X */ 1539*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_SHOW_SLI_VISUAL_INDICATOR_FALSE 0 1540*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_SHOW_SLI_VISUAL_INDICATOR_TRUE 1 1541*8975f5c5SAndroid Build Coastguard Worker 1542*8975f5c5SAndroid Build Coastguard Worker /* 1543*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_XV_SYNC_TO_DISPLAY - this control is valid when TwinView and 1544*8975f5c5SAndroid Build Coastguard Worker * XVideo Sync To VBlank are enabled. 1545*8975f5c5SAndroid Build Coastguard Worker * It controls which display device will be synched to. 1546*8975f5c5SAndroid Build Coastguard Worker */ 1547*8975f5c5SAndroid Build Coastguard Worker 1548*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_XV_SYNC_TO_DISPLAY 226 /* RW- */ 1549*8975f5c5SAndroid Build Coastguard Worker 1550*8975f5c5SAndroid Build Coastguard Worker /* 1551*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVIO_REQUESTED_VIDEO_FORMAT2 - this attribute is only 1552*8975f5c5SAndroid Build Coastguard Worker * intended to be used to query the ValidValues for 1553*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVIO_REQUESTED_VIDEO_FORMAT for VIDEO_FORMAT values between 1554*8975f5c5SAndroid Build Coastguard Worker * 31 and 63. See NV_CTRL_GVIO_REQUESTED_VIDEO_FORMAT for details. 1555*8975f5c5SAndroid Build Coastguard Worker */ 1556*8975f5c5SAndroid Build Coastguard Worker 1557*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_REQUESTED_VIDEO_FORMAT2 227 /* ---GI */ 1558*8975f5c5SAndroid Build Coastguard Worker 1559*8975f5c5SAndroid Build Coastguard Worker /* 1560*8975f5c5SAndroid Build Coastguard Worker * The following is deprecated; use NV_CTRL_GVIO_REQUESTED_VIDEO_FORMAT2, 1561*8975f5c5SAndroid Build Coastguard Worker * instead 1562*8975f5c5SAndroid Build Coastguard Worker */ 1563*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_OUTPUT_VIDEO_FORMAT2 227 /* --- */ 1564*8975f5c5SAndroid Build Coastguard Worker 1565*8975f5c5SAndroid Build Coastguard Worker /* 1566*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_OVERRIDE_HW_CSC - Override the SDI hardware's Color Space 1567*8975f5c5SAndroid Build Coastguard Worker * Conversion with the values controlled through 1568*8975f5c5SAndroid Build Coastguard Worker * XNVCTRLSetGvoColorConversion() and XNVCTRLGetGvoColorConversion(). If 1569*8975f5c5SAndroid Build Coastguard Worker * this attribute is FALSE, then the values specified through 1570*8975f5c5SAndroid Build Coastguard Worker * XNVCTRLSetGvoColorConversion() are ignored. 1571*8975f5c5SAndroid Build Coastguard Worker */ 1572*8975f5c5SAndroid Build Coastguard Worker 1573*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_OVERRIDE_HW_CSC 228 /* RW- */ 1574*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_OVERRIDE_HW_CSC_FALSE 0 1575*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_OVERRIDE_HW_CSC_TRUE 1 1576*8975f5c5SAndroid Build Coastguard Worker 1577*8975f5c5SAndroid Build Coastguard Worker /* 1578*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_CAPABILITIES - this read-only attribute describes GVO 1579*8975f5c5SAndroid Build Coastguard Worker * capabilities that differ between NVIDIA SDI products. This value 1580*8975f5c5SAndroid Build Coastguard Worker * is a bitmask where each bit indicates whether that capability is 1581*8975f5c5SAndroid Build Coastguard Worker * available. 1582*8975f5c5SAndroid Build Coastguard Worker * 1583*8975f5c5SAndroid Build Coastguard Worker * APPLY_CSC_IMMEDIATELY - whether the CSC matrix, offset, and scale 1584*8975f5c5SAndroid Build Coastguard Worker * specified through XNVCTRLSetGvoColorConversion() will take affect 1585*8975f5c5SAndroid Build Coastguard Worker * immediately, or only after SDI output is disabled and enabled 1586*8975f5c5SAndroid Build Coastguard Worker * again. 1587*8975f5c5SAndroid Build Coastguard Worker * 1588*8975f5c5SAndroid Build Coastguard Worker * APPLY_CSC_TO_X_SCREEN - whether the CSC matrix, offset, and scale 1589*8975f5c5SAndroid Build Coastguard Worker * specified through XNVCTRLSetGvoColorConversion() will also apply 1590*8975f5c5SAndroid Build Coastguard Worker * to GVO output of an X screen, or only to OpenGL GVO output, as 1591*8975f5c5SAndroid Build Coastguard Worker * enabled through the GLX_NV_video_out extension. 1592*8975f5c5SAndroid Build Coastguard Worker * 1593*8975f5c5SAndroid Build Coastguard Worker * COMPOSITE_TERMINATION - whether the 75 ohm termination of the 1594*8975f5c5SAndroid Build Coastguard Worker * SDI composite input signal can be programmed through the 1595*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_COMPOSITE_TERMINATION attribute. 1596*8975f5c5SAndroid Build Coastguard Worker * 1597*8975f5c5SAndroid Build Coastguard Worker * SHARED_SYNC_BNC - whether the SDI device has a single BNC 1598*8975f5c5SAndroid Build Coastguard Worker * connector used for both (SDI & Composite) incoming signals. 1599*8975f5c5SAndroid Build Coastguard Worker * 1600*8975f5c5SAndroid Build Coastguard Worker * MULTIRATE_SYNC - whether the SDI device supports synchronization 1601*8975f5c5SAndroid Build Coastguard Worker * of input and output video modes that match in being odd or even 1602*8975f5c5SAndroid Build Coastguard Worker * modes (ie, AA.00 Hz modes can be synched to other BB.00 Hz modes and 1603*8975f5c5SAndroid Build Coastguard Worker * AA.XX Hz can match to BB.YY Hz where .XX and .YY are not .00) 1604*8975f5c5SAndroid Build Coastguard Worker */ 1605*8975f5c5SAndroid Build Coastguard Worker 1606*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_CAPABILITIES 229 /* R-- */ 1607*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_CAPABILITIES_APPLY_CSC_IMMEDIATELY 0x00000001 1608*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_CAPABILITIES_APPLY_CSC_TO_X_SCREEN 0x00000002 1609*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_CAPABILITIES_COMPOSITE_TERMINATION 0x00000004 1610*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_CAPABILITIES_SHARED_SYNC_BNC 0x00000008 1611*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_CAPABILITIES_MULTIRATE_SYNC 0x00000010 1612*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_CAPABILITIES_ADVANCE_SYNC_SKEW 0x00000020 1613*8975f5c5SAndroid Build Coastguard Worker 1614*8975f5c5SAndroid Build Coastguard Worker /* 1615*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_COMPOSITE_TERMINATION - enable or disable 75 ohm 1616*8975f5c5SAndroid Build Coastguard Worker * termination of the SDI composite input signal. 1617*8975f5c5SAndroid Build Coastguard Worker */ 1618*8975f5c5SAndroid Build Coastguard Worker 1619*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_COMPOSITE_TERMINATION 230 /* RW- */ 1620*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_COMPOSITE_TERMINATION_ENABLE 1 1621*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_COMPOSITE_TERMINATION_DISABLE 0 1622*8975f5c5SAndroid Build Coastguard Worker 1623*8975f5c5SAndroid Build Coastguard Worker /* 1624*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_ASSOCIATED_DISPLAY_DEVICES - display device mask indicating 1625*8975f5c5SAndroid Build Coastguard Worker * which display devices are "associated" with the specified X screen 1626*8975f5c5SAndroid Build Coastguard Worker * (ie: are available to the X screen for displaying the X screen). 1627*8975f5c5SAndroid Build Coastguard Worker */ 1628*8975f5c5SAndroid Build Coastguard Worker 1629*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_ASSOCIATED_DISPLAY_DEVICES 231 /* RW- */ 1630*8975f5c5SAndroid Build Coastguard Worker 1631*8975f5c5SAndroid Build Coastguard Worker /* 1632*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FRAMELOCK_SLAVES - get/set whether the display device(s) 1633*8975f5c5SAndroid Build Coastguard Worker * given should listen or ignore the master's sync signal. 1634*8975f5c5SAndroid Build Coastguard Worker * 1635*8975f5c5SAndroid Build Coastguard Worker * This attribute can only be queried through XNVCTRLQueryTargetAttribute() 1636*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_GPU target. This attribute cannot be 1637*8975f5c5SAndroid Build Coastguard Worker * queried using a NV_CTRL_TARGET_TYPE_X_SCREEN. 1638*8975f5c5SAndroid Build Coastguard Worker */ 1639*8975f5c5SAndroid Build Coastguard Worker 1640*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_SLAVES 232 /* RW-G */ 1641*8975f5c5SAndroid Build Coastguard Worker 1642*8975f5c5SAndroid Build Coastguard Worker /* 1643*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FRAMELOCK_MASTERABLE - Can any of the given display devices 1644*8975f5c5SAndroid Build Coastguard Worker * be set as master of the frame lock group. Returns a bitmask of the 1645*8975f5c5SAndroid Build Coastguard Worker * corresponding display devices that can be set as master. 1646*8975f5c5SAndroid Build Coastguard Worker * 1647*8975f5c5SAndroid Build Coastguard Worker * This attribute can only be queried through XNVCTRLQueryTargetAttribute() 1648*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_GPU target. This attribute cannot be 1649*8975f5c5SAndroid Build Coastguard Worker * queried using a NV_CTRL_TARGET_TYPE_X_SCREEN. 1650*8975f5c5SAndroid Build Coastguard Worker */ 1651*8975f5c5SAndroid Build Coastguard Worker 1652*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_MASTERABLE 233 /* R-DG */ 1653*8975f5c5SAndroid Build Coastguard Worker 1654*8975f5c5SAndroid Build Coastguard Worker /* 1655*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_PROBE_DISPLAYS - re-probes the hardware to detect what 1656*8975f5c5SAndroid Build Coastguard Worker * display devices are connected to the GPU or GPU driving the 1657*8975f5c5SAndroid Build Coastguard Worker * specified X screen. Returns a display mask. 1658*8975f5c5SAndroid Build Coastguard Worker * 1659*8975f5c5SAndroid Build Coastguard Worker * This attribute may be queried through XNVCTRLQueryTargetAttribute() 1660*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_GPU or NV_CTRL_TARGET_TYPE_X_SCREEN target. 1661*8975f5c5SAndroid Build Coastguard Worker */ 1662*8975f5c5SAndroid Build Coastguard Worker 1663*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_PROBE_DISPLAYS 234 /* R--G */ 1664*8975f5c5SAndroid Build Coastguard Worker 1665*8975f5c5SAndroid Build Coastguard Worker /* 1666*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_REFRESH_RATE - Returns the refresh rate of the specified 1667*8975f5c5SAndroid Build Coastguard Worker * display device in 100 * Hz (ie. to get the refresh rate in Hz, divide 1668*8975f5c5SAndroid Build Coastguard Worker * the returned value by 100.) 1669*8975f5c5SAndroid Build Coastguard Worker * 1670*8975f5c5SAndroid Build Coastguard Worker * This attribute may be queried through XNVCTRLQueryTargetAttribute() 1671*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_GPU or NV_CTRL_TARGET_TYPE_X_SCREEN target. 1672*8975f5c5SAndroid Build Coastguard Worker */ 1673*8975f5c5SAndroid Build Coastguard Worker 1674*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_REFRESH_RATE 235 /* R-DG */ 1675*8975f5c5SAndroid Build Coastguard Worker 1676*8975f5c5SAndroid Build Coastguard Worker /* 1677*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_FLIP_QUEUE_SIZE - The Graphics to Video Out interface 1678*8975f5c5SAndroid Build Coastguard Worker * exposed through NV-CONTROL and the GLX_NV_video_out extension uses 1679*8975f5c5SAndroid Build Coastguard Worker * an internal flip queue when pbuffers are sent to the video device 1680*8975f5c5SAndroid Build Coastguard Worker * (via glXSendPbufferToVideoNV()). The NV_CTRL_GVO_FLIP_QUEUE_SIZE 1681*8975f5c5SAndroid Build Coastguard Worker * can be used to query and assign the flip queue size. This 1682*8975f5c5SAndroid Build Coastguard Worker * attribute is applied to GLX when glXGetVideoDeviceNV() is called by 1683*8975f5c5SAndroid Build Coastguard Worker * the application. 1684*8975f5c5SAndroid Build Coastguard Worker */ 1685*8975f5c5SAndroid Build Coastguard Worker 1686*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_FLIP_QUEUE_SIZE 236 /* RW- */ 1687*8975f5c5SAndroid Build Coastguard Worker 1688*8975f5c5SAndroid Build Coastguard Worker /* 1689*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_CURRENT_SCANLINE - query the current scanline for the 1690*8975f5c5SAndroid Build Coastguard Worker * specified display device. 1691*8975f5c5SAndroid Build Coastguard Worker */ 1692*8975f5c5SAndroid Build Coastguard Worker 1693*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_CURRENT_SCANLINE 237 /* R-DG */ 1694*8975f5c5SAndroid Build Coastguard Worker 1695*8975f5c5SAndroid Build Coastguard Worker /* 1696*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_INITIAL_PIXMAP_PLACEMENT - Controls where X pixmaps are initially 1697*8975f5c5SAndroid Build Coastguard Worker * created. 1698*8975f5c5SAndroid Build Coastguard Worker * 1699*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_INITIAL_PIXMAP_PLACEMENT_FORCE_SYSMEM causes pixmaps to stay in 1700*8975f5c5SAndroid Build Coastguard Worker * system memory. These pixmaps can't be accelerated by the NVIDIA driver; this 1701*8975f5c5SAndroid Build Coastguard Worker * will cause blank windows if used with an OpenGL compositing manager. 1702*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_INITIAL_PIXMAP_PLACEMENT_SYSMEM creates pixmaps in system memory 1703*8975f5c5SAndroid Build Coastguard Worker * initially, but allows them to migrate to video memory. 1704*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_INITIAL_PIXMAP_PLACEMENT_VIDMEM creates pixmaps in video memory 1705*8975f5c5SAndroid Build Coastguard Worker * when enough resources are available. 1706*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_INITIAL_PIXMAP_PLACEMENT_RESERVED is currently reserved for future 1707*8975f5c5SAndroid Build Coastguard Worker * use. Behavior is undefined. 1708*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_INITIAL_PIXMAP_PLACEMENT_GPU_SYSMEM creates pixmaps in GPU accessible 1709*8975f5c5SAndroid Build Coastguard Worker * system memory when enough resources are available. 1710*8975f5c5SAndroid Build Coastguard Worker */ 1711*8975f5c5SAndroid Build Coastguard Worker 1712*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_INITIAL_PIXMAP_PLACEMENT 238 /* RW- */ 1713*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_INITIAL_PIXMAP_PLACEMENT_FORCE_SYSMEM 0 1714*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_INITIAL_PIXMAP_PLACEMENT_SYSMEM 1 1715*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_INITIAL_PIXMAP_PLACEMENT_VIDMEM 2 1716*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_INITIAL_PIXMAP_PLACEMENT_RESERVED 3 1717*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_INITIAL_PIXMAP_PLACEMENT_GPU_SYSMEM 4 1718*8975f5c5SAndroid Build Coastguard Worker 1719*8975f5c5SAndroid Build Coastguard Worker /* 1720*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_PCI_BUS - Returns the PCI bus number the specified device is using. 1721*8975f5c5SAndroid Build Coastguard Worker */ 1722*8975f5c5SAndroid Build Coastguard Worker 1723*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_PCI_BUS 239 /* R--GI */ 1724*8975f5c5SAndroid Build Coastguard Worker 1725*8975f5c5SAndroid Build Coastguard Worker /* 1726*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_PCI_DEVICE - Returns the PCI device number the specified device is 1727*8975f5c5SAndroid Build Coastguard Worker * using. 1728*8975f5c5SAndroid Build Coastguard Worker */ 1729*8975f5c5SAndroid Build Coastguard Worker 1730*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_PCI_DEVICE 240 /* R--GI */ 1731*8975f5c5SAndroid Build Coastguard Worker 1732*8975f5c5SAndroid Build Coastguard Worker /* 1733*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_PCI_FUNCTION - Returns the PCI function number the specified device 1734*8975f5c5SAndroid Build Coastguard Worker * is using. 1735*8975f5c5SAndroid Build Coastguard Worker */ 1736*8975f5c5SAndroid Build Coastguard Worker 1737*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_PCI_FUNCTION 241 /* R--GI */ 1738*8975f5c5SAndroid Build Coastguard Worker 1739*8975f5c5SAndroid Build Coastguard Worker /* 1740*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FRAMELOCK_FPGA_REVISION - Querys the FPGA revision of the 1741*8975f5c5SAndroid Build Coastguard Worker * Frame Lock device. 1742*8975f5c5SAndroid Build Coastguard Worker * 1743*8975f5c5SAndroid Build Coastguard Worker * This attribute must be queried through XNVCTRLQueryTargetAttribute() 1744*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_FRAMELOCK target. 1745*8975f5c5SAndroid Build Coastguard Worker */ 1746*8975f5c5SAndroid Build Coastguard Worker 1747*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_FPGA_REVISION 242 /* R--F */ 1748*8975f5c5SAndroid Build Coastguard Worker 1749*8975f5c5SAndroid Build Coastguard Worker /* 1750*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_MAX_SCREEN_{WIDTH,HEIGHT} - the maximum allowable size, in 1751*8975f5c5SAndroid Build Coastguard Worker * pixels, of either the specified X screen (if the target_type of the 1752*8975f5c5SAndroid Build Coastguard Worker * query is an X screen), or any X screen on the specified GPU (if the 1753*8975f5c5SAndroid Build Coastguard Worker * target_type of the query is a GPU). 1754*8975f5c5SAndroid Build Coastguard Worker */ 1755*8975f5c5SAndroid Build Coastguard Worker 1756*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_MAX_SCREEN_WIDTH 243 /* R--G */ 1757*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_MAX_SCREEN_HEIGHT 244 /* R--G */ 1758*8975f5c5SAndroid Build Coastguard Worker 1759*8975f5c5SAndroid Build Coastguard Worker /* 1760*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_MAX_DISPLAYS - the maximum number of display devices that 1761*8975f5c5SAndroid Build Coastguard Worker * can be driven simultaneously on a GPU (e.g., that can be used in a 1762*8975f5c5SAndroid Build Coastguard Worker * MetaMode at once). Note that this does not indicate the maximum 1763*8975f5c5SAndroid Build Coastguard Worker * number of bits that can be set in NV_CTRL_CONNECTED_DISPLAYS, 1764*8975f5c5SAndroid Build Coastguard Worker * because more display devices can be connected than are actively in 1765*8975f5c5SAndroid Build Coastguard Worker * use. 1766*8975f5c5SAndroid Build Coastguard Worker */ 1767*8975f5c5SAndroid Build Coastguard Worker 1768*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_MAX_DISPLAYS 245 /* R--G */ 1769*8975f5c5SAndroid Build Coastguard Worker 1770*8975f5c5SAndroid Build Coastguard Worker /* 1771*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_DYNAMIC_TWINVIEW - Returns whether or not the screen 1772*8975f5c5SAndroid Build Coastguard Worker * supports dynamic twinview. 1773*8975f5c5SAndroid Build Coastguard Worker */ 1774*8975f5c5SAndroid Build Coastguard Worker 1775*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_DYNAMIC_TWINVIEW 246 /* R-- */ 1776*8975f5c5SAndroid Build Coastguard Worker 1777*8975f5c5SAndroid Build Coastguard Worker /* 1778*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_MULTIGPU_DISPLAY_OWNER - Returns the (NV-CONTROL) GPU ID of 1779*8975f5c5SAndroid Build Coastguard Worker * the GPU that has the display device(s) used for showing the X Screen. 1780*8975f5c5SAndroid Build Coastguard Worker */ 1781*8975f5c5SAndroid Build Coastguard Worker 1782*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_MULTIGPU_DISPLAY_OWNER 247 /* R-- */ 1783*8975f5c5SAndroid Build Coastguard Worker 1784*8975f5c5SAndroid Build Coastguard Worker /* 1785*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_SCALING - not supported 1786*8975f5c5SAndroid Build Coastguard Worker */ 1787*8975f5c5SAndroid Build Coastguard Worker 1788*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_SCALING 248 /* RWDG */ 1789*8975f5c5SAndroid Build Coastguard Worker 1790*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_SCALING_TARGET_INVALID 0 1791*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_SCALING_TARGET_FLATPANEL_BEST_FIT 1 1792*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_SCALING_TARGET_FLATPANEL_NATIVE 2 1793*8975f5c5SAndroid Build Coastguard Worker 1794*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_SCALING_METHOD_INVALID 0 1795*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_SCALING_METHOD_STRETCHED 1 1796*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_SCALING_METHOD_CENTERED 2 1797*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_SCALING_METHOD_ASPECT_SCALED 3 1798*8975f5c5SAndroid Build Coastguard Worker 1799*8975f5c5SAndroid Build Coastguard Worker /* 1800*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FRONTEND_RESOLUTION - not supported 1801*8975f5c5SAndroid Build Coastguard Worker */ 1802*8975f5c5SAndroid Build Coastguard Worker 1803*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRONTEND_RESOLUTION 249 /* R-DG */ 1804*8975f5c5SAndroid Build Coastguard Worker 1805*8975f5c5SAndroid Build Coastguard Worker /* 1806*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_BACKEND_RESOLUTION - not supported 1807*8975f5c5SAndroid Build Coastguard Worker */ 1808*8975f5c5SAndroid Build Coastguard Worker 1809*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_BACKEND_RESOLUTION 250 /* R-DG */ 1810*8975f5c5SAndroid Build Coastguard Worker 1811*8975f5c5SAndroid Build Coastguard Worker /* 1812*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FLATPANEL_NATIVE_RESOLUTION - Returns the dimensions of the 1813*8975f5c5SAndroid Build Coastguard Worker * native resolution of the flat panel as determined by the 1814*8975f5c5SAndroid Build Coastguard Worker * NVIDIA X Driver. 1815*8975f5c5SAndroid Build Coastguard Worker * 1816*8975f5c5SAndroid Build Coastguard Worker * The native resolution is the resolution at which a flat panel 1817*8975f5c5SAndroid Build Coastguard Worker * must display any image. All other resolutions must be scaled to this 1818*8975f5c5SAndroid Build Coastguard Worker * resolution through GPU scaling or the DFP's native scaling capabilities 1819*8975f5c5SAndroid Build Coastguard Worker * in order to be displayed. 1820*8975f5c5SAndroid Build Coastguard Worker * 1821*8975f5c5SAndroid Build Coastguard Worker * This attribute is only valid for flat panel (DFP) display devices. 1822*8975f5c5SAndroid Build Coastguard Worker * 1823*8975f5c5SAndroid Build Coastguard Worker * This attribute is a packed integer; the width is packed in the upper 1824*8975f5c5SAndroid Build Coastguard Worker * 16-bits and the height is packed in the lower 16-bits. 1825*8975f5c5SAndroid Build Coastguard Worker */ 1826*8975f5c5SAndroid Build Coastguard Worker 1827*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FLATPANEL_NATIVE_RESOLUTION 251 /* R-DG */ 1828*8975f5c5SAndroid Build Coastguard Worker 1829*8975f5c5SAndroid Build Coastguard Worker /* 1830*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FLATPANEL_BEST_FIT_RESOLUTION - not supported 1831*8975f5c5SAndroid Build Coastguard Worker */ 1832*8975f5c5SAndroid Build Coastguard Worker 1833*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FLATPANEL_BEST_FIT_RESOLUTION 252 /* R-DG */ 1834*8975f5c5SAndroid Build Coastguard Worker 1835*8975f5c5SAndroid Build Coastguard Worker /* 1836*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_SCALING_ACTIVE - not supported 1837*8975f5c5SAndroid Build Coastguard Worker */ 1838*8975f5c5SAndroid Build Coastguard Worker 1839*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_SCALING_ACTIVE 253 /* R-DG */ 1840*8975f5c5SAndroid Build Coastguard Worker 1841*8975f5c5SAndroid Build Coastguard Worker /* 1842*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_DFP_SCALING_ACTIVE - not supported 1843*8975f5c5SAndroid Build Coastguard Worker */ 1844*8975f5c5SAndroid Build Coastguard Worker 1845*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_DFP_SCALING_ACTIVE 254 /* R-DG */ 1846*8975f5c5SAndroid Build Coastguard Worker 1847*8975f5c5SAndroid Build Coastguard Worker /* 1848*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FSAA_APPLICATION_ENHANCED - Controls how the NV_CTRL_FSAA_MODE 1849*8975f5c5SAndroid Build Coastguard Worker * is applied when NV_CTRL_FSAA_APPLICATION_CONTROLLED is set to 1850*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_APPLICATION_CONTROLLED_DISABLED. When 1851*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FSAA_APPLICATION_ENHANCED is _DISABLED, OpenGL applications will 1852*8975f5c5SAndroid Build Coastguard Worker * be forced to use the FSAA mode specified by NV_CTRL_FSAA_MODE. when set 1853*8975f5c5SAndroid Build Coastguard Worker * to _ENABLED, only those applications that have selected a multisample 1854*8975f5c5SAndroid Build Coastguard Worker * FBConfig will be made to use the NV_CTRL_FSAA_MODE specified. 1855*8975f5c5SAndroid Build Coastguard Worker * 1856*8975f5c5SAndroid Build Coastguard Worker * This attribute is ignored when NV_CTRL_FSAA_APPLICATION_CONTROLLED is 1857*8975f5c5SAndroid Build Coastguard Worker * set to NV_CTRL_FSAA_APPLICATION_CONTROLLED_ENABLED. 1858*8975f5c5SAndroid Build Coastguard Worker */ 1859*8975f5c5SAndroid Build Coastguard Worker 1860*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FSAA_APPLICATION_ENHANCED 255 /* RW-X */ 1861*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FSAA_APPLICATION_ENHANCED_ENABLED 1 1862*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FSAA_APPLICATION_ENHANCED_DISABLED 0 1863*8975f5c5SAndroid Build Coastguard Worker 1864*8975f5c5SAndroid Build Coastguard Worker /* 1865*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FRAMELOCK_SYNC_RATE_4 - This is the refresh rate that the 1866*8975f5c5SAndroid Build Coastguard Worker * frame lock board is sending to the GPU with 4 digits of precision. 1867*8975f5c5SAndroid Build Coastguard Worker * 1868*8975f5c5SAndroid Build Coastguard Worker * This attribute may be queried through XNVCTRLQueryTargetAttribute() 1869*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_FRAMELOCK. 1870*8975f5c5SAndroid Build Coastguard Worker */ 1871*8975f5c5SAndroid Build Coastguard Worker 1872*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_SYNC_RATE_4 256 /* R--F */ 1873*8975f5c5SAndroid Build Coastguard Worker 1874*8975f5c5SAndroid Build Coastguard Worker /* 1875*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_LOCK_OWNER - indicates that the GVO device is available 1876*8975f5c5SAndroid Build Coastguard Worker * or in use (by GLX or an X screen). 1877*8975f5c5SAndroid Build Coastguard Worker * 1878*8975f5c5SAndroid Build Coastguard Worker * The GVO device is locked by GLX when either glXGetVideoDeviceNV 1879*8975f5c5SAndroid Build Coastguard Worker * (part of GLX_NV_video_out) or glXBindVideoDeviceNV (part of 1880*8975f5c5SAndroid Build Coastguard Worker * GLX_NV_present_video) is called. All GVO output resources are 1881*8975f5c5SAndroid Build Coastguard Worker * locked until released by the GLX_NV_video_out/GLX_NV_present_video 1882*8975f5c5SAndroid Build Coastguard Worker * client. 1883*8975f5c5SAndroid Build Coastguard Worker * 1884*8975f5c5SAndroid Build Coastguard Worker * The GVO device is locked/unlocked by an X screen, when the GVO device is 1885*8975f5c5SAndroid Build Coastguard Worker * used in a MetaMode on an X screen. 1886*8975f5c5SAndroid Build Coastguard Worker * 1887*8975f5c5SAndroid Build Coastguard Worker * When the GVO device is locked, setting of the following GVO NV-CONTROL 1888*8975f5c5SAndroid Build Coastguard Worker * attributes will not happen immediately and will instead be cached. The 1889*8975f5c5SAndroid Build Coastguard Worker * GVO resource will need to be disabled/released and re-enabled/claimed for 1890*8975f5c5SAndroid Build Coastguard Worker * the values to be flushed. These attributes are: 1891*8975f5c5SAndroid Build Coastguard Worker * 1892*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVIO_REQUESTED_VIDEO_FORMAT 1893*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_DATA_FORMAT 1894*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_FLIP_QUEUE_SIZE 1895*8975f5c5SAndroid Build Coastguard Worker */ 1896*8975f5c5SAndroid Build Coastguard Worker 1897*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_LOCK_OWNER 257 /* R-- */ 1898*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_LOCK_OWNER_NONE 0 1899*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_LOCK_OWNER_GLX 1 1900*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_LOCK_OWNER_CLONE /* no longer supported */ 2 1901*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_LOCK_OWNER_X_SCREEN 3 1902*8975f5c5SAndroid Build Coastguard Worker 1903*8975f5c5SAndroid Build Coastguard Worker /* 1904*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_HWOVERLAY - when a workstation overlay is in use, reports 1905*8975f5c5SAndroid Build Coastguard Worker * whether the hardware overlay is used, or if the overlay is emulated. 1906*8975f5c5SAndroid Build Coastguard Worker */ 1907*8975f5c5SAndroid Build Coastguard Worker 1908*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_HWOVERLAY 258 /* R-- */ 1909*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_HWOVERLAY_FALSE 0 1910*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_HWOVERLAY_TRUE 1 1911*8975f5c5SAndroid Build Coastguard Worker 1912*8975f5c5SAndroid Build Coastguard Worker /* 1913*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_NUM_GPU_ERRORS_RECOVERED - Returns the number of GPU errors 1914*8975f5c5SAndroid Build Coastguard Worker * occured. This attribute may be queried through XNVCTRLQueryTargetAttribute() 1915*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_X_SCREEN target. 1916*8975f5c5SAndroid Build Coastguard Worker */ 1917*8975f5c5SAndroid Build Coastguard Worker 1918*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_NUM_GPU_ERRORS_RECOVERED 259 /* R--- */ 1919*8975f5c5SAndroid Build Coastguard Worker 1920*8975f5c5SAndroid Build Coastguard Worker /* 1921*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_REFRESH_RATE_3 - Returns the refresh rate of the specified 1922*8975f5c5SAndroid Build Coastguard Worker * display device in 1000 * Hz (ie. to get the refresh rate in Hz, divide 1923*8975f5c5SAndroid Build Coastguard Worker * the returned value by 1000.) 1924*8975f5c5SAndroid Build Coastguard Worker * 1925*8975f5c5SAndroid Build Coastguard Worker * This attribute may be queried through XNVCTRLQueryTargetAttribute() 1926*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_GPU or NV_CTRL_TARGET_TYPE_X_SCREEN target. 1927*8975f5c5SAndroid Build Coastguard Worker */ 1928*8975f5c5SAndroid Build Coastguard Worker 1929*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_REFRESH_RATE_3 260 /* R-DG */ 1930*8975f5c5SAndroid Build Coastguard Worker 1931*8975f5c5SAndroid Build Coastguard Worker /* 1932*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_ONDEMAND_VBLANK_INTERRUPTS - if the OnDemandVBlankInterrupts 1933*8975f5c5SAndroid Build Coastguard Worker * X driver option is set to true, this attribute can be used to 1934*8975f5c5SAndroid Build Coastguard Worker * determine if on-demand VBlank interrupt control is enabled on the 1935*8975f5c5SAndroid Build Coastguard Worker * specified GPU, as well as to enable or disable this feature. 1936*8975f5c5SAndroid Build Coastguard Worker */ 1937*8975f5c5SAndroid Build Coastguard Worker 1938*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_ONDEMAND_VBLANK_INTERRUPTS 261 /* RW-G */ 1939*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_ONDEMAND_VBLANK_INTERRUPTS_OFF 0 1940*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_ONDEMAND_VBLANK_INTERRUPTS_ON 1 1941*8975f5c5SAndroid Build Coastguard Worker 1942*8975f5c5SAndroid Build Coastguard Worker /* 1943*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_POWER_SOURCE reports the type of power source 1944*8975f5c5SAndroid Build Coastguard Worker * of the GPU driving the X screen. 1945*8975f5c5SAndroid Build Coastguard Worker */ 1946*8975f5c5SAndroid Build Coastguard Worker 1947*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_POWER_SOURCE 262 /* R--G */ 1948*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_POWER_SOURCE_AC 0 1949*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_POWER_SOURCE_BATTERY 1 1950*8975f5c5SAndroid Build Coastguard Worker 1951*8975f5c5SAndroid Build Coastguard Worker /* 1952*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_CURRENT_PERFORMANCE_MODE is deprecated 1953*8975f5c5SAndroid Build Coastguard Worker */ 1954*8975f5c5SAndroid Build Coastguard Worker 1955*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_CURRENT_PERFORMANCE_MODE 263 /* R--G */ 1956*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_CURRENT_PERFORMANCE_MODE_DESKTOP 0 1957*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_CURRENT_PERFORMANCE_MODE_MAXPERF 1 1958*8975f5c5SAndroid Build Coastguard Worker 1959*8975f5c5SAndroid Build Coastguard Worker /* NV_CTRL_GLYPH_CACHE - Enables RENDER Glyph Caching to VRAM */ 1960*8975f5c5SAndroid Build Coastguard Worker 1961*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GLYPH_CACHE 264 /* RW- */ 1962*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GLYPH_CACHE_DISABLED 0 1963*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GLYPH_CACHE_ENABLED 1 1964*8975f5c5SAndroid Build Coastguard Worker 1965*8975f5c5SAndroid Build Coastguard Worker /* 1966*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_CURRENT_PERFORMANCE_LEVEL reports the current 1967*8975f5c5SAndroid Build Coastguard Worker * Performance level of the GPU driving the X screen. Each 1968*8975f5c5SAndroid Build Coastguard Worker * Performance level has associated NVClock and Mem Clock values. 1969*8975f5c5SAndroid Build Coastguard Worker */ 1970*8975f5c5SAndroid Build Coastguard Worker 1971*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_CURRENT_PERFORMANCE_LEVEL 265 /* R--G */ 1972*8975f5c5SAndroid Build Coastguard Worker 1973*8975f5c5SAndroid Build Coastguard Worker /* 1974*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_ADAPTIVE_CLOCK_STATE reports if Adaptive Clocking 1975*8975f5c5SAndroid Build Coastguard Worker * is Enabled on the GPU driving the X screen. 1976*8975f5c5SAndroid Build Coastguard Worker */ 1977*8975f5c5SAndroid Build Coastguard Worker 1978*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_ADAPTIVE_CLOCK_STATE 266 /* R--G */ 1979*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_ADAPTIVE_CLOCK_STATE_DISABLED 0 1980*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_ADAPTIVE_CLOCK_STATE_ENABLED 1 1981*8975f5c5SAndroid Build Coastguard Worker 1982*8975f5c5SAndroid Build Coastguard Worker /* 1983*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_OUTPUT_VIDEO_LOCKED - Returns whether or not the GVO output 1984*8975f5c5SAndroid Build Coastguard Worker * video is locked to the GPU. 1985*8975f5c5SAndroid Build Coastguard Worker */ 1986*8975f5c5SAndroid Build Coastguard Worker 1987*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_OUTPUT_VIDEO_LOCKED 267 /* R--- */ 1988*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_OUTPUT_VIDEO_LOCKED_FALSE 0 1989*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_OUTPUT_VIDEO_LOCKED_TRUE 1 1990*8975f5c5SAndroid Build Coastguard Worker 1991*8975f5c5SAndroid Build Coastguard Worker /* 1992*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_SYNC_LOCK_STATUS - Returns whether or not the GVO device 1993*8975f5c5SAndroid Build Coastguard Worker * is locked to the input ref signal. If the sync mode is set to 1994*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_SYNC_MODE_GENLOCK, then this returns the genlock 1995*8975f5c5SAndroid Build Coastguard Worker * sync status, and if the sync mode is set to NV_CTRL_GVO_SYNC_MODE_FRAMELOCK, 1996*8975f5c5SAndroid Build Coastguard Worker * then this reports the frame lock status. 1997*8975f5c5SAndroid Build Coastguard Worker */ 1998*8975f5c5SAndroid Build Coastguard Worker 1999*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_SYNC_LOCK_STATUS 268 /* R--- */ 2000*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_SYNC_LOCK_STATUS_UNLOCKED 0 2001*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_SYNC_LOCK_STATUS_LOCKED 1 2002*8975f5c5SAndroid Build Coastguard Worker 2003*8975f5c5SAndroid Build Coastguard Worker /* 2004*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_ANC_TIME_CODE_GENERATION - Allows SDI device to generate 2005*8975f5c5SAndroid Build Coastguard Worker * time codes in the ANC region of the SDI video output stream. 2006*8975f5c5SAndroid Build Coastguard Worker */ 2007*8975f5c5SAndroid Build Coastguard Worker 2008*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_ANC_TIME_CODE_GENERATION 269 /* RW-- */ 2009*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_ANC_TIME_CODE_GENERATION_DISABLE 0 2010*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_ANC_TIME_CODE_GENERATION_ENABLE 1 2011*8975f5c5SAndroid Build Coastguard Worker 2012*8975f5c5SAndroid Build Coastguard Worker /* 2013*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_COMPOSITE - Enables/Disables SDI compositing. This attribute 2014*8975f5c5SAndroid Build Coastguard Worker * is only available when an SDI input source is detected and is in genlock 2015*8975f5c5SAndroid Build Coastguard Worker * mode. 2016*8975f5c5SAndroid Build Coastguard Worker */ 2017*8975f5c5SAndroid Build Coastguard Worker 2018*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_COMPOSITE 270 /* RW-- */ 2019*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_COMPOSITE_DISABLE 0 2020*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_COMPOSITE_ENABLE 1 2021*8975f5c5SAndroid Build Coastguard Worker 2022*8975f5c5SAndroid Build Coastguard Worker /* 2023*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_COMPOSITE_ALPHA_KEY - When compositing is enabled, this 2024*8975f5c5SAndroid Build Coastguard Worker * enables/disables alpha blending. 2025*8975f5c5SAndroid Build Coastguard Worker */ 2026*8975f5c5SAndroid Build Coastguard Worker 2027*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_COMPOSITE_ALPHA_KEY 271 /* RW-- */ 2028*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_COMPOSITE_ALPHA_KEY_DISABLE 0 2029*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_COMPOSITE_ALPHA_KEY_ENABLE 1 2030*8975f5c5SAndroid Build Coastguard Worker 2031*8975f5c5SAndroid Build Coastguard Worker /* 2032*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_COMPOSITE_LUMA_KEY_RANGE - Set the values of a luma 2033*8975f5c5SAndroid Build Coastguard Worker * channel range. This is a packed int that has the following format 2034*8975f5c5SAndroid Build Coastguard Worker * (in order of high-bits to low bits): 2035*8975f5c5SAndroid Build Coastguard Worker * 2036*8975f5c5SAndroid Build Coastguard Worker * Range # (11 bits), (Enabled 1 bit), min value (10 bits), max value (10 bits) 2037*8975f5c5SAndroid Build Coastguard Worker * 2038*8975f5c5SAndroid Build Coastguard Worker * To query the current values, pass the range # throught the display_mask 2039*8975f5c5SAndroid Build Coastguard Worker * variable. 2040*8975f5c5SAndroid Build Coastguard Worker */ 2041*8975f5c5SAndroid Build Coastguard Worker 2042*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_COMPOSITE_LUMA_KEY_RANGE 272 /* RW-- */ 2043*8975f5c5SAndroid Build Coastguard Worker 2044*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_COMPOSITE_MAKE_RANGE(range, enable, min, max) \ 2045*8975f5c5SAndroid Build Coastguard Worker ((((min)&0x3FF) << 0) | (((max)&0x3FF) << 10) | (((enable)&0x1) << 20) | \ 2046*8975f5c5SAndroid Build Coastguard Worker (((range)&0x7FF) << 21)) 2047*8975f5c5SAndroid Build Coastguard Worker 2048*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_COMPOSITE_GET_RANGE(val, range, enable, min, max) \ 2049*8975f5c5SAndroid Build Coastguard Worker (min) = ((val) >> 0) & 0x3FF; \ 2050*8975f5c5SAndroid Build Coastguard Worker (max) = ((val) >> 10) & 0x3FF; \ 2051*8975f5c5SAndroid Build Coastguard Worker (enable) = ((val) >> 20) & 0x1; \ 2052*8975f5c5SAndroid Build Coastguard Worker (range) = ((val) >> 21) & 0x7FF; 2053*8975f5c5SAndroid Build Coastguard Worker 2054*8975f5c5SAndroid Build Coastguard Worker /* 2055*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_COMPOSITE_CR_KEY_RANGE - Set the values of a CR 2056*8975f5c5SAndroid Build Coastguard Worker * channel range. This is a packed int that has the following format 2057*8975f5c5SAndroid Build Coastguard Worker * (in order of high-bits to low bits): 2058*8975f5c5SAndroid Build Coastguard Worker * 2059*8975f5c5SAndroid Build Coastguard Worker * Range # (11 bits), (Enabled 1 bit), min value (10 bits), max value (10 bits) 2060*8975f5c5SAndroid Build Coastguard Worker * 2061*8975f5c5SAndroid Build Coastguard Worker * To query the current values, pass the range # throught he display_mask 2062*8975f5c5SAndroid Build Coastguard Worker * variable. 2063*8975f5c5SAndroid Build Coastguard Worker */ 2064*8975f5c5SAndroid Build Coastguard Worker 2065*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_COMPOSITE_CR_KEY_RANGE 273 /* RW-- */ 2066*8975f5c5SAndroid Build Coastguard Worker 2067*8975f5c5SAndroid Build Coastguard Worker /* 2068*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_COMPOSITE_CB_KEY_RANGE - Set the values of a CB 2069*8975f5c5SAndroid Build Coastguard Worker * channel range. This is a packed int that has the following format 2070*8975f5c5SAndroid Build Coastguard Worker * (in order of high-bits to low bits): 2071*8975f5c5SAndroid Build Coastguard Worker * 2072*8975f5c5SAndroid Build Coastguard Worker * Range # (11 bits), (Enabled 1 bit), min value (10 bits), max value (10 bits) 2073*8975f5c5SAndroid Build Coastguard Worker * 2074*8975f5c5SAndroid Build Coastguard Worker * To query the current values, pass the range # throught he display_mask 2075*8975f5c5SAndroid Build Coastguard Worker * variable. 2076*8975f5c5SAndroid Build Coastguard Worker */ 2077*8975f5c5SAndroid Build Coastguard Worker 2078*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_COMPOSITE_CB_KEY_RANGE 274 /* RW-- */ 2079*8975f5c5SAndroid Build Coastguard Worker 2080*8975f5c5SAndroid Build Coastguard Worker /* 2081*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_COMPOSITE_NUM_KEY_RANGES - Returns the number of ranges 2082*8975f5c5SAndroid Build Coastguard Worker * available for each channel (Y/Luma, Cr, and Cb.) 2083*8975f5c5SAndroid Build Coastguard Worker */ 2084*8975f5c5SAndroid Build Coastguard Worker 2085*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_COMPOSITE_NUM_KEY_RANGES 275 /* R--- */ 2086*8975f5c5SAndroid Build Coastguard Worker 2087*8975f5c5SAndroid Build Coastguard Worker /* 2088*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_SWITCH_TO_DISPLAYS - Can be used to select which displays 2089*8975f5c5SAndroid Build Coastguard Worker * to switch to (as a hotkey event). 2090*8975f5c5SAndroid Build Coastguard Worker */ 2091*8975f5c5SAndroid Build Coastguard Worker 2092*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_SWITCH_TO_DISPLAYS 276 /* -W- */ 2093*8975f5c5SAndroid Build Coastguard Worker 2094*8975f5c5SAndroid Build Coastguard Worker /* 2095*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_NOTEBOOK_DISPLAY_CHANGE_LID_EVENT - Event that notifies 2096*8975f5c5SAndroid Build Coastguard Worker * when a notebook lid change occurs (i.e. when the lid is opened or 2097*8975f5c5SAndroid Build Coastguard Worker * closed.) This attribute can be queried to retrieve the current 2098*8975f5c5SAndroid Build Coastguard Worker * notebook lid status (opened/closed.) 2099*8975f5c5SAndroid Build Coastguard Worker */ 2100*8975f5c5SAndroid Build Coastguard Worker 2101*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_NOTEBOOK_DISPLAY_CHANGE_LID_EVENT 277 /* RW- */ 2102*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_NOTEBOOK_DISPLAY_CHANGE_LID_EVENT_CLOSE 0 2103*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_NOTEBOOK_DISPLAY_CHANGE_LID_EVENT_OPEN 1 2104*8975f5c5SAndroid Build Coastguard Worker 2105*8975f5c5SAndroid Build Coastguard Worker /* 2106*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_NOTEBOOK_INTERNAL_LCD - Returns the display device mask of 2107*8975f5c5SAndroid Build Coastguard Worker * the intenal LCD of a notebook. 2108*8975f5c5SAndroid Build Coastguard Worker */ 2109*8975f5c5SAndroid Build Coastguard Worker 2110*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_NOTEBOOK_INTERNAL_LCD 278 /* R-- */ 2111*8975f5c5SAndroid Build Coastguard Worker 2112*8975f5c5SAndroid Build Coastguard Worker /* 2113*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_DEPTH_30_ALLOWED - returns whether the NVIDIA X driver supports 2114*8975f5c5SAndroid Build Coastguard Worker * depth 30 on the specified X screen or GPU. 2115*8975f5c5SAndroid Build Coastguard Worker */ 2116*8975f5c5SAndroid Build Coastguard Worker 2117*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_DEPTH_30_ALLOWED 279 /* R--G */ 2118*8975f5c5SAndroid Build Coastguard Worker 2119*8975f5c5SAndroid Build Coastguard Worker /* 2120*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_MODE_SET_EVENT This attribute is sent as an event 2121*8975f5c5SAndroid Build Coastguard Worker * when hotkey, ctrl-alt-+/- or randr event occurs. Note that 2122*8975f5c5SAndroid Build Coastguard Worker * This attribute cannot be set or queried and is meant to 2123*8975f5c5SAndroid Build Coastguard Worker * be received by clients that wish to be notified of when 2124*8975f5c5SAndroid Build Coastguard Worker * mode set events occur. 2125*8975f5c5SAndroid Build Coastguard Worker */ 2126*8975f5c5SAndroid Build Coastguard Worker 2127*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_MODE_SET_EVENT 280 /* --- */ 2128*8975f5c5SAndroid Build Coastguard Worker 2129*8975f5c5SAndroid Build Coastguard Worker /* 2130*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_OPENGL_AA_LINE_GAMMA_VALUE - the gamma value used by 2131*8975f5c5SAndroid Build Coastguard Worker * OpenGL when NV_CTRL_OPENGL_AA_LINE_GAMMA is enabled 2132*8975f5c5SAndroid Build Coastguard Worker */ 2133*8975f5c5SAndroid Build Coastguard Worker 2134*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_OPENGL_AA_LINE_GAMMA_VALUE 281 /* RW-X */ 2135*8975f5c5SAndroid Build Coastguard Worker 2136*8975f5c5SAndroid Build Coastguard Worker /* 2137*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_VCSC_HIGH_PERF_MODE - Is used to both query High Performance Mode 2138*8975f5c5SAndroid Build Coastguard Worker * status on the Visual Computing System, and also to enable or disable High 2139*8975f5c5SAndroid Build Coastguard Worker * Performance Mode. 2140*8975f5c5SAndroid Build Coastguard Worker */ 2141*8975f5c5SAndroid Build Coastguard Worker 2142*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_VCSC_HIGH_PERF_MODE 282 /* RW-V */ 2143*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_VCSC_HIGH_PERF_MODE_DISABLE 0 2144*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_VCSC_HIGH_PERF_MODE_ENABLE 1 2145*8975f5c5SAndroid Build Coastguard Worker 2146*8975f5c5SAndroid Build Coastguard Worker /* 2147*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_DISPLAYPORT_LINK_RATE - returns the negotiated lane bandwidth of the 2148*8975f5c5SAndroid Build Coastguard Worker * DisplayPort main link. 2149*8975f5c5SAndroid Build Coastguard Worker * This attribute is only available for DisplayPort flat panels. 2150*8975f5c5SAndroid Build Coastguard Worker */ 2151*8975f5c5SAndroid Build Coastguard Worker 2152*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_DISPLAYPORT_LINK_RATE 291 /* R-DG */ 2153*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_DISPLAYPORT_LINK_RATE_DISABLED 0x0 2154*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_DISPLAYPORT_LINK_RATE_1_62GBPS 0x6 2155*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_DISPLAYPORT_LINK_RATE_2_70GBPS 0xA 2156*8975f5c5SAndroid Build Coastguard Worker 2157*8975f5c5SAndroid Build Coastguard Worker /* 2158*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STEREO_EYES_EXCHANGE - Controls whether or not the left and right 2159*8975f5c5SAndroid Build Coastguard Worker * eyes of a stereo image are flipped. 2160*8975f5c5SAndroid Build Coastguard Worker */ 2161*8975f5c5SAndroid Build Coastguard Worker 2162*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STEREO_EYES_EXCHANGE 292 /* RW-X */ 2163*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STEREO_EYES_EXCHANGE_OFF 0 2164*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STEREO_EYES_EXCHANGE_ON 1 2165*8975f5c5SAndroid Build Coastguard Worker 2166*8975f5c5SAndroid Build Coastguard Worker /* 2167*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_NO_SCANOUT - returns whether the special "NoScanout" mode is 2168*8975f5c5SAndroid Build Coastguard Worker * enabled on the specified X screen or GPU; for details on this mode, 2169*8975f5c5SAndroid Build Coastguard Worker * see the description of the "none" value for the "UseDisplayDevice" 2170*8975f5c5SAndroid Build Coastguard Worker * X configuration option in the NVIDIA driver README. 2171*8975f5c5SAndroid Build Coastguard Worker */ 2172*8975f5c5SAndroid Build Coastguard Worker 2173*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_NO_SCANOUT 293 /* R--G */ 2174*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_NO_SCANOUT_DISABLED 0 2175*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_NO_SCANOUT_ENABLED 1 2176*8975f5c5SAndroid Build Coastguard Worker 2177*8975f5c5SAndroid Build Coastguard Worker /* 2178*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_CSC_CHANGED_EVENT This attribute is sent as an event 2179*8975f5c5SAndroid Build Coastguard Worker * when the color space conversion matrix has been altered by another 2180*8975f5c5SAndroid Build Coastguard Worker * client. 2181*8975f5c5SAndroid Build Coastguard Worker */ 2182*8975f5c5SAndroid Build Coastguard Worker 2183*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_CSC_CHANGED_EVENT 294 /* --- */ 2184*8975f5c5SAndroid Build Coastguard Worker 2185*8975f5c5SAndroid Build Coastguard Worker /* 2186*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FRAMELOCK_SLAVEABLE - Returns a bitmask of the display devices 2187*8975f5c5SAndroid Build Coastguard Worker * that are (currently) allowed to be selected as slave devices for the 2188*8975f5c5SAndroid Build Coastguard Worker * given GPU 2189*8975f5c5SAndroid Build Coastguard Worker */ 2190*8975f5c5SAndroid Build Coastguard Worker 2191*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_SLAVEABLE 295 /* R-DG */ 2192*8975f5c5SAndroid Build Coastguard Worker 2193*8975f5c5SAndroid Build Coastguard Worker /* 2194*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_SYNC_TO_DISPLAY This attribute controls whether or not 2195*8975f5c5SAndroid Build Coastguard Worker * the non-SDI display device will be sync'ed to the SDI display device 2196*8975f5c5SAndroid Build Coastguard Worker * (when configured in TwinView, Clone Mode or when using the SDI device 2197*8975f5c5SAndroid Build Coastguard Worker * with OpenGL). 2198*8975f5c5SAndroid Build Coastguard Worker */ 2199*8975f5c5SAndroid Build Coastguard Worker 2200*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_SYNC_TO_DISPLAY 296 /* --- */ 2201*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_SYNC_TO_DISPLAY_DISABLE 0 2202*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_SYNC_TO_DISPLAY_ENABLE 1 2203*8975f5c5SAndroid Build Coastguard Worker 2204*8975f5c5SAndroid Build Coastguard Worker /* 2205*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_X_SERVER_UNIQUE_ID - returns a pseudo-unique identifier for this 2206*8975f5c5SAndroid Build Coastguard Worker * X server. Intended for use in cases where an NV-CONTROL client communicates 2207*8975f5c5SAndroid Build Coastguard Worker * with multiple X servers, and wants some level of confidence that two 2208*8975f5c5SAndroid Build Coastguard Worker * X Display connections correspond to the same or different X servers. 2209*8975f5c5SAndroid Build Coastguard Worker */ 2210*8975f5c5SAndroid Build Coastguard Worker 2211*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_X_SERVER_UNIQUE_ID 297 /* R--- */ 2212*8975f5c5SAndroid Build Coastguard Worker 2213*8975f5c5SAndroid Build Coastguard Worker /* 2214*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_PIXMAP_CACHE - This attribute controls whether the driver attempts to 2215*8975f5c5SAndroid Build Coastguard Worker * store video memory pixmaps in a cache. The cache speeds up allocation and 2216*8975f5c5SAndroid Build Coastguard Worker * deallocation of pixmaps, but could use more memory than when the cache is 2217*8975f5c5SAndroid Build Coastguard Worker * disabled. 2218*8975f5c5SAndroid Build Coastguard Worker */ 2219*8975f5c5SAndroid Build Coastguard Worker 2220*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_PIXMAP_CACHE 298 /* RW-X */ 2221*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_PIXMAP_CACHE_DISABLE 0 2222*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_PIXMAP_CACHE_ENABLE 1 2223*8975f5c5SAndroid Build Coastguard Worker 2224*8975f5c5SAndroid Build Coastguard Worker /* 2225*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_PIXMAP_CACHE_ROUNDING_SIZE_KB - When the pixmap cache is enabled and 2226*8975f5c5SAndroid Build Coastguard Worker * there is not enough free space in the cache to fit a new pixmap, the driver 2227*8975f5c5SAndroid Build Coastguard Worker * will round up to the next multiple of this number of kilobytes when 2228*8975f5c5SAndroid Build Coastguard Worker * allocating more memory for the cache. 2229*8975f5c5SAndroid Build Coastguard Worker */ 2230*8975f5c5SAndroid Build Coastguard Worker 2231*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_PIXMAP_CACHE_ROUNDING_SIZE_KB 299 /* RW-X */ 2232*8975f5c5SAndroid Build Coastguard Worker 2233*8975f5c5SAndroid Build Coastguard Worker /* 2234*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_IS_GVO_DISPLAY - returns whether or not a given display is an 2235*8975f5c5SAndroid Build Coastguard Worker * SDI device. 2236*8975f5c5SAndroid Build Coastguard Worker */ 2237*8975f5c5SAndroid Build Coastguard Worker 2238*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_IS_GVO_DISPLAY 300 /* R-D */ 2239*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_IS_GVO_DISPLAY_FALSE 0 2240*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_IS_GVO_DISPLAY_TRUE 1 2241*8975f5c5SAndroid Build Coastguard Worker 2242*8975f5c5SAndroid Build Coastguard Worker /* 2243*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_PCI_ID - Returns the PCI vendor and device ID of the specified 2244*8975f5c5SAndroid Build Coastguard Worker * device. 2245*8975f5c5SAndroid Build Coastguard Worker * 2246*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_PCI_ID is a "packed" integer attribute; the PCI vendor ID is stored 2247*8975f5c5SAndroid Build Coastguard Worker * in the upper 16 bits of the integer, and the PCI device ID is stored in the 2248*8975f5c5SAndroid Build Coastguard Worker * lower 16 bits of the integer. 2249*8975f5c5SAndroid Build Coastguard Worker */ 2250*8975f5c5SAndroid Build Coastguard Worker 2251*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_PCI_ID 301 /* R--GI */ 2252*8975f5c5SAndroid Build Coastguard Worker 2253*8975f5c5SAndroid Build Coastguard Worker /* 2254*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_FULL_RANGE_COLOR - Allow full range color data [4-1019] 2255*8975f5c5SAndroid Build Coastguard Worker * without clamping to [64-940]. 2256*8975f5c5SAndroid Build Coastguard Worker */ 2257*8975f5c5SAndroid Build Coastguard Worker 2258*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_FULL_RANGE_COLOR 302 /* RW- */ 2259*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_FULL_RANGE_COLOR_DISABLED 0 2260*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_FULL_RANGE_COLOR_ENABLED 1 2261*8975f5c5SAndroid Build Coastguard Worker 2262*8975f5c5SAndroid Build Coastguard Worker /* 2263*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_SLI_MOSAIC_MODE_AVAILABLE - Returns whether or not 2264*8975f5c5SAndroid Build Coastguard Worker * SLI Mosaic Mode supported. 2265*8975f5c5SAndroid Build Coastguard Worker */ 2266*8975f5c5SAndroid Build Coastguard Worker 2267*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_SLI_MOSAIC_MODE_AVAILABLE 303 /* R-- */ 2268*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_SLI_MOSAIC_MODE_AVAILABLE_FALSE 0 2269*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_SLI_MOSAIC_MODE_AVAILABLE_TRUE 1 2270*8975f5c5SAndroid Build Coastguard Worker 2271*8975f5c5SAndroid Build Coastguard Worker /* 2272*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_ENABLE_RGB_DATA - Allows clients to specify when 2273*8975f5c5SAndroid Build Coastguard Worker * the GVO board should process colors as RGB when the output data 2274*8975f5c5SAndroid Build Coastguard Worker * format is one of the NV_CTRL_GVO_DATA_FORMAT_???_PASSTRHU modes. 2275*8975f5c5SAndroid Build Coastguard Worker */ 2276*8975f5c5SAndroid Build Coastguard Worker 2277*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_ENABLE_RGB_DATA 304 /* RW- */ 2278*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_ENABLE_RGB_DATA_DISABLE 0 2279*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_ENABLE_RGB_DATA_ENABLE 1 2280*8975f5c5SAndroid Build Coastguard Worker 2281*8975f5c5SAndroid Build Coastguard Worker /* 2282*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_IMAGE_SHARPENING_DEFAULT - Returns default value of 2283*8975f5c5SAndroid Build Coastguard Worker * Image Sharpening. 2284*8975f5c5SAndroid Build Coastguard Worker */ 2285*8975f5c5SAndroid Build Coastguard Worker 2286*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_IMAGE_SHARPENING_DEFAULT 305 /* R-- */ 2287*8975f5c5SAndroid Build Coastguard Worker 2288*8975f5c5SAndroid Build Coastguard Worker /* 2289*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_PCI_DOMAIN - Returns the PCI domain number the specified device is 2290*8975f5c5SAndroid Build Coastguard Worker * using. 2291*8975f5c5SAndroid Build Coastguard Worker */ 2292*8975f5c5SAndroid Build Coastguard Worker 2293*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_PCI_DOMAIN 306 /* R--GI */ 2294*8975f5c5SAndroid Build Coastguard Worker 2295*8975f5c5SAndroid Build Coastguard Worker /* 2296*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVI_NUM_JACKS - Returns the number of input BNC jacks available 2297*8975f5c5SAndroid Build Coastguard Worker * on a GVI device. 2298*8975f5c5SAndroid Build Coastguard Worker */ 2299*8975f5c5SAndroid Build Coastguard Worker 2300*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_NUM_JACKS 307 /* R--I */ 2301*8975f5c5SAndroid Build Coastguard Worker 2302*8975f5c5SAndroid Build Coastguard Worker /* 2303*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVI_MAX_LINKS_PER_STREAM - Returns the maximum supported number of 2304*8975f5c5SAndroid Build Coastguard Worker * links that can be tied to one stream. 2305*8975f5c5SAndroid Build Coastguard Worker */ 2306*8975f5c5SAndroid Build Coastguard Worker 2307*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_MAX_LINKS_PER_STREAM 308 /* R--I */ 2308*8975f5c5SAndroid Build Coastguard Worker 2309*8975f5c5SAndroid Build Coastguard Worker /* 2310*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVI_DETECTED_CHANNEL_BITS_PER_COMPONENT - Returns the detected 2311*8975f5c5SAndroid Build Coastguard Worker * number of bits per component (BPC) of data on the given input jack+ 2312*8975f5c5SAndroid Build Coastguard Worker * channel. 2313*8975f5c5SAndroid Build Coastguard Worker * 2314*8975f5c5SAndroid Build Coastguard Worker * The jack number should be specified in the lower 16 bits of the 2315*8975f5c5SAndroid Build Coastguard Worker * "display_mask" parameter, while the channel number should be specified in 2316*8975f5c5SAndroid Build Coastguard Worker * the upper 16 bits. 2317*8975f5c5SAndroid Build Coastguard Worker */ 2318*8975f5c5SAndroid Build Coastguard Worker 2319*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_DETECTED_CHANNEL_BITS_PER_COMPONENT 309 /* R--I */ 2320*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_BITS_PER_COMPONENT_UNKNOWN 0 2321*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_BITS_PER_COMPONENT_8 1 2322*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_BITS_PER_COMPONENT_10 2 2323*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_BITS_PER_COMPONENT_12 3 2324*8975f5c5SAndroid Build Coastguard Worker 2325*8975f5c5SAndroid Build Coastguard Worker /* 2326*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVI_REQUESTED_STREAM_BITS_PER_COMPONENT - Specify the number of 2327*8975f5c5SAndroid Build Coastguard Worker * bits per component (BPC) of data for the captured stream. 2328*8975f5c5SAndroid Build Coastguard Worker * The stream number should be specified in the "display_mask" parameter. 2329*8975f5c5SAndroid Build Coastguard Worker * 2330*8975f5c5SAndroid Build Coastguard Worker * Note: Setting this attribute may also result in the following 2331*8975f5c5SAndroid Build Coastguard Worker * NV-CONTROL attributes being reset on the GVI device (to ensure 2332*8975f5c5SAndroid Build Coastguard Worker * the configuration remains valid): 2333*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVI_REQUESTED_STREAM_COMPONENT_SAMPLING 2334*8975f5c5SAndroid Build Coastguard Worker */ 2335*8975f5c5SAndroid Build Coastguard Worker 2336*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_REQUESTED_STREAM_BITS_PER_COMPONENT 310 /* RW-I */ 2337*8975f5c5SAndroid Build Coastguard Worker 2338*8975f5c5SAndroid Build Coastguard Worker /* 2339*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVI_DETECTED_CHANNEL_COMPONENT_SAMPLING - Returns the detected 2340*8975f5c5SAndroid Build Coastguard Worker * sampling format for the input jack+channel. 2341*8975f5c5SAndroid Build Coastguard Worker * 2342*8975f5c5SAndroid Build Coastguard Worker * The jack number should be specified in the lower 16 bits of the 2343*8975f5c5SAndroid Build Coastguard Worker * "display_mask" parameter, while the channel number should be specified in 2344*8975f5c5SAndroid Build Coastguard Worker * the upper 16 bits. 2345*8975f5c5SAndroid Build Coastguard Worker */ 2346*8975f5c5SAndroid Build Coastguard Worker 2347*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_DETECTED_CHANNEL_COMPONENT_SAMPLING 311 /* R--I */ 2348*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_COMPONENT_SAMPLING_UNKNOWN 0 2349*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_COMPONENT_SAMPLING_4444 1 2350*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_COMPONENT_SAMPLING_4224 2 2351*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_COMPONENT_SAMPLING_444 3 2352*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_COMPONENT_SAMPLING_422 4 2353*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_COMPONENT_SAMPLING_420 5 2354*8975f5c5SAndroid Build Coastguard Worker 2355*8975f5c5SAndroid Build Coastguard Worker /* 2356*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVI_REQUESTED_COMPONENT_SAMPLING - Specify the sampling format for 2357*8975f5c5SAndroid Build Coastguard Worker * the captured stream. 2358*8975f5c5SAndroid Build Coastguard Worker * The possible values are the NV_CTRL_GVI_DETECTED_COMPONENT_SAMPLING 2359*8975f5c5SAndroid Build Coastguard Worker * constants. 2360*8975f5c5SAndroid Build Coastguard Worker * The stream number should be specified in the "display_mask" parameter. 2361*8975f5c5SAndroid Build Coastguard Worker */ 2362*8975f5c5SAndroid Build Coastguard Worker 2363*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_REQUESTED_STREAM_COMPONENT_SAMPLING 312 /* RW-I */ 2364*8975f5c5SAndroid Build Coastguard Worker 2365*8975f5c5SAndroid Build Coastguard Worker /* 2366*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVI_CHROMA_EXPAND - Enable or disable 4:2:2 -> 4:4:4 chroma 2367*8975f5c5SAndroid Build Coastguard Worker * expansion for the captured stream. This value is ignored when a 2368*8975f5c5SAndroid Build Coastguard Worker * COMPONENT_SAMPLING format is selected that does not use chroma subsampling, 2369*8975f5c5SAndroid Build Coastguard Worker * or if a BITS_PER_COMPONENT value is selected that is not supported. 2370*8975f5c5SAndroid Build Coastguard Worker * The stream number should be specified in the "display_mask" parameter. 2371*8975f5c5SAndroid Build Coastguard Worker */ 2372*8975f5c5SAndroid Build Coastguard Worker 2373*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_REQUESTED_STREAM_CHROMA_EXPAND 313 /* RW-I */ 2374*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_CHROMA_EXPAND_FALSE 0 2375*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_CHROMA_EXPAND_TRUE 1 2376*8975f5c5SAndroid Build Coastguard Worker 2377*8975f5c5SAndroid Build Coastguard Worker /* 2378*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVI_DETECTED_CHANNEL_COLOR_SPACE - Returns the detected color space 2379*8975f5c5SAndroid Build Coastguard Worker * of the input jack+channel. 2380*8975f5c5SAndroid Build Coastguard Worker * 2381*8975f5c5SAndroid Build Coastguard Worker * The jack number should be specified in the lower 16 bits of the 2382*8975f5c5SAndroid Build Coastguard Worker * "display_mask" parameter, while the channel number should be specified in 2383*8975f5c5SAndroid Build Coastguard Worker * the upper 16 bits. 2384*8975f5c5SAndroid Build Coastguard Worker */ 2385*8975f5c5SAndroid Build Coastguard Worker 2386*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_DETECTED_CHANNEL_COLOR_SPACE 314 /* R--I */ 2387*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_COLOR_SPACE_UNKNOWN 0 2388*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_COLOR_SPACE_GBR 1 2389*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_COLOR_SPACE_GBRA 2 2390*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_COLOR_SPACE_GBRD 3 2391*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_COLOR_SPACE_YCBCR 4 2392*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_COLOR_SPACE_YCBCRA 5 2393*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_COLOR_SPACE_YCBCRD 6 2394*8975f5c5SAndroid Build Coastguard Worker 2395*8975f5c5SAndroid Build Coastguard Worker /* 2396*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVI_DETECTED_CHANNEL_LINK_ID - Returns the detected link identifier 2397*8975f5c5SAndroid Build Coastguard Worker * for the given input jack+channel. 2398*8975f5c5SAndroid Build Coastguard Worker * 2399*8975f5c5SAndroid Build Coastguard Worker * The jack number should be specified in the lower 16 bits of the 2400*8975f5c5SAndroid Build Coastguard Worker * "display_mask" parameter, while the channel number should be specified in 2401*8975f5c5SAndroid Build Coastguard Worker * the upper 16 bits. 2402*8975f5c5SAndroid Build Coastguard Worker */ 2403*8975f5c5SAndroid Build Coastguard Worker 2404*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_DETECTED_CHANNEL_LINK_ID 315 /* R--I */ 2405*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_LINK_ID_UNKNOWN 0xFFFF 2406*8975f5c5SAndroid Build Coastguard Worker 2407*8975f5c5SAndroid Build Coastguard Worker /* 2408*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVI_DETECTED_CHANNEL_SMPTE352_IDENTIFIER - Returns the 4-byte 2409*8975f5c5SAndroid Build Coastguard Worker * SMPTE 352 identifier from the given input jack+channel. 2410*8975f5c5SAndroid Build Coastguard Worker * 2411*8975f5c5SAndroid Build Coastguard Worker * The jack number should be specified in the lower 16 bits of the 2412*8975f5c5SAndroid Build Coastguard Worker * "display_mask" parameter, while the channel number should be specified in 2413*8975f5c5SAndroid Build Coastguard Worker * the upper 16 bits. 2414*8975f5c5SAndroid Build Coastguard Worker */ 2415*8975f5c5SAndroid Build Coastguard Worker 2416*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_DETECTED_CHANNEL_SMPTE352_IDENTIFIER 316 /* R--I */ 2417*8975f5c5SAndroid Build Coastguard Worker 2418*8975f5c5SAndroid Build Coastguard Worker /* 2419*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVI_GLOBAL_IDENTIFIER - Returns a global identifier for the 2420*8975f5c5SAndroid Build Coastguard Worker * GVI device. This identifier can be used to relate GVI devices named 2421*8975f5c5SAndroid Build Coastguard Worker * in NV-CONTROL with those enumerated in OpenGL. 2422*8975f5c5SAndroid Build Coastguard Worker */ 2423*8975f5c5SAndroid Build Coastguard Worker 2424*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_GLOBAL_IDENTIFIER 317 /* R--I */ 2425*8975f5c5SAndroid Build Coastguard Worker 2426*8975f5c5SAndroid Build Coastguard Worker /* 2427*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_FRAMELOCK_SYNC_DELAY_RESOLUTION - Returns the number of nanoseconds 2428*8975f5c5SAndroid Build Coastguard Worker * that one unit of NV_CTRL_FRAMELOCK_SYNC_DELAY corresponds to. 2429*8975f5c5SAndroid Build Coastguard Worker */ 2430*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_FRAMELOCK_SYNC_DELAY_RESOLUTION 318 /* R-- */ 2431*8975f5c5SAndroid Build Coastguard Worker 2432*8975f5c5SAndroid Build Coastguard Worker /* 2433*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_COOLER_MANUAL_CONTROL - Query the current or set a new 2434*8975f5c5SAndroid Build Coastguard Worker * cooler control state; the value of this attribute controls the 2435*8975f5c5SAndroid Build Coastguard Worker * availability of additional cooler control attributes (see below). 2436*8975f5c5SAndroid Build Coastguard Worker * 2437*8975f5c5SAndroid Build Coastguard Worker * Note: this attribute is unavailable unless cooler control support 2438*8975f5c5SAndroid Build Coastguard Worker * has been enabled in the X server (by the user). 2439*8975f5c5SAndroid Build Coastguard Worker */ 2440*8975f5c5SAndroid Build Coastguard Worker 2441*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_COOLER_MANUAL_CONTROL 319 /* RW-G */ 2442*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_COOLER_MANUAL_CONTROL_FALSE 0 2443*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_COOLER_MANUAL_CONTROL_TRUE 1 2444*8975f5c5SAndroid Build Coastguard Worker 2445*8975f5c5SAndroid Build Coastguard Worker /* 2446*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_THERMAL_COOLER_LEVEL - Returns cooler's current operating 2447*8975f5c5SAndroid Build Coastguard Worker * level. 2448*8975f5c5SAndroid Build Coastguard Worker */ 2449*8975f5c5SAndroid Build Coastguard Worker 2450*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_COOLER_LEVEL 320 /* RW-C */ 2451*8975f5c5SAndroid Build Coastguard Worker 2452*8975f5c5SAndroid Build Coastguard Worker /* NV_CTRL_THERMAL_COOLER_LEVEL_SET_DEFAULT - Sets default values of 2453*8975f5c5SAndroid Build Coastguard Worker * cooler. 2454*8975f5c5SAndroid Build Coastguard Worker */ 2455*8975f5c5SAndroid Build Coastguard Worker 2456*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_COOLER_LEVEL_SET_DEFAULT 321 /* -W-C */ 2457*8975f5c5SAndroid Build Coastguard Worker 2458*8975f5c5SAndroid Build Coastguard Worker /* 2459*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_THERMAL_COOLER_CONTROL_TYPE - 2460*8975f5c5SAndroid Build Coastguard Worker * Returns a cooler's control signal characteristics. 2461*8975f5c5SAndroid Build Coastguard Worker * The possible types are restricted, Variable and Toggle. 2462*8975f5c5SAndroid Build Coastguard Worker */ 2463*8975f5c5SAndroid Build Coastguard Worker 2464*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_COOLER_CONTROL_TYPE 322 /* R--C */ 2465*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_COOLER_CONTROL_TYPE_NONE 0 2466*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_COOLER_CONTROL_TYPE_TOGGLE 1 2467*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_COOLER_CONTROL_TYPE_VARIABLE 2 2468*8975f5c5SAndroid Build Coastguard Worker 2469*8975f5c5SAndroid Build Coastguard Worker /* 2470*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_THERMAL_COOLER_TARGET - Returns objects that cooler cools. 2471*8975f5c5SAndroid Build Coastguard Worker * Targets may be GPU, Memory, Power Supply or All of these. 2472*8975f5c5SAndroid Build Coastguard Worker * GPU_RELATED = GPU | MEMORY | POWER_SUPPLY 2473*8975f5c5SAndroid Build Coastguard Worker * 2474*8975f5c5SAndroid Build Coastguard Worker */ 2475*8975f5c5SAndroid Build Coastguard Worker 2476*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_COOLER_TARGET 323 /* R--C */ 2477*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_COOLER_TARGET_NONE 0 2478*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_COOLER_TARGET_GPU 1 2479*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_COOLER_TARGET_MEMORY 2 2480*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_COOLER_TARGET_POWER_SUPPLY 4 2481*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_COOLER_TARGET_GPU_RELATED \ 2482*8975f5c5SAndroid Build Coastguard Worker (NV_CTRL_THERMAL_COOLER_TARGET_GPU | NV_CTRL_THERMAL_COOLER_TARGET_MEMORY | \ 2483*8975f5c5SAndroid Build Coastguard Worker NV_CTRL_THERMAL_COOLER_TARGET_POWER_SUPPLY) 2484*8975f5c5SAndroid Build Coastguard Worker 2485*8975f5c5SAndroid Build Coastguard Worker /* 2486*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_ECC_SUPPORTED - Reports whether ECC is supported by the 2487*8975f5c5SAndroid Build Coastguard Worker * targeted GPU. 2488*8975f5c5SAndroid Build Coastguard Worker */ 2489*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_ECC_SUPPORTED 324 /* R--G */ 2490*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_ECC_SUPPORTED_FALSE 0 2491*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_ECC_SUPPORTED_TRUE 1 2492*8975f5c5SAndroid Build Coastguard Worker 2493*8975f5c5SAndroid Build Coastguard Worker /* 2494*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_ECC_STATUS - Returns the current hardware ECC setting 2495*8975f5c5SAndroid Build Coastguard Worker * for the targeted GPU. 2496*8975f5c5SAndroid Build Coastguard Worker */ 2497*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_ECC_STATUS 325 /* R--G */ 2498*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_ECC_STATUS_DISABLED 0 2499*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_ECC_STATUS_ENABLED 1 2500*8975f5c5SAndroid Build Coastguard Worker 2501*8975f5c5SAndroid Build Coastguard Worker /* 2502*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_ECC_CONFIGURATION - Reports whether ECC can be configured 2503*8975f5c5SAndroid Build Coastguard Worker * dynamically for the GPU in question. 2504*8975f5c5SAndroid Build Coastguard Worker */ 2505*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_ECC_CONFIGURATION_SUPPORTED 326 /* R--G */ 2506*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_ECC_CONFIGURATION_SUPPORTED_FALSE 0 2507*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_ECC_CONFIGURATION_SUPPORTED_TRUE 1 2508*8975f5c5SAndroid Build Coastguard Worker 2509*8975f5c5SAndroid Build Coastguard Worker /* 2510*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_ECC_CONFIGURATION_SETTING - Returns the current ECC 2511*8975f5c5SAndroid Build Coastguard Worker * configuration setting or specifies new settings. New settings do not 2512*8975f5c5SAndroid Build Coastguard Worker * take effect until the next POST. 2513*8975f5c5SAndroid Build Coastguard Worker */ 2514*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_ECC_CONFIGURATION 327 /* RW-G */ 2515*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_ECC_CONFIGURATION_DISABLED 0 2516*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_ECC_CONFIGURATION_ENABLED 1 2517*8975f5c5SAndroid Build Coastguard Worker 2518*8975f5c5SAndroid Build Coastguard Worker /* 2519*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_ECC_DEFAULT_CONFIGURATION_SETTING - Returns the default 2520*8975f5c5SAndroid Build Coastguard Worker * ECC configuration setting. 2521*8975f5c5SAndroid Build Coastguard Worker */ 2522*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_ECC_DEFAULT_CONFIGURATION 328 /* R--G */ 2523*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_ECC_DEFAULT_CONFIGURATION_DISABLED 0 2524*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_ECC_DEFAULT_CONFIGURATION_ENABLED 1 2525*8975f5c5SAndroid Build Coastguard Worker 2526*8975f5c5SAndroid Build Coastguard Worker /* 2527*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_ECC_SINGLE_BIT_ERRORS - Returns the number of single-bit 2528*8975f5c5SAndroid Build Coastguard Worker * ECC errors detected by the targeted GPU since the last POST. 2529*8975f5c5SAndroid Build Coastguard Worker * Note: this attribute is a 64-bit integer attribute. 2530*8975f5c5SAndroid Build Coastguard Worker */ 2531*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_ECC_SINGLE_BIT_ERRORS 329 /* R--GQ */ 2532*8975f5c5SAndroid Build Coastguard Worker 2533*8975f5c5SAndroid Build Coastguard Worker /* 2534*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_ECC_DOUBLE_BIT_ERRORS - Returns the number of double-bit 2535*8975f5c5SAndroid Build Coastguard Worker * ECC errors detected by the targeted GPU since the last POST. 2536*8975f5c5SAndroid Build Coastguard Worker * Note: this attribute is a 64-bit integer attribute. 2537*8975f5c5SAndroid Build Coastguard Worker */ 2538*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_ECC_DOUBLE_BIT_ERRORS 330 /* R--GQ */ 2539*8975f5c5SAndroid Build Coastguard Worker 2540*8975f5c5SAndroid Build Coastguard Worker /* 2541*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_ECC_AGGREGATE_SINGLE_BIT_ERRORS - Returns the number of 2542*8975f5c5SAndroid Build Coastguard Worker * single-bit ECC errors detected by the targeted GPU since the 2543*8975f5c5SAndroid Build Coastguard Worker * last counter reset. 2544*8975f5c5SAndroid Build Coastguard Worker * Note: this attribute is a 64-bit integer attribute. 2545*8975f5c5SAndroid Build Coastguard Worker */ 2546*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_ECC_AGGREGATE_SINGLE_BIT_ERRORS 331 /* R--GQ */ 2547*8975f5c5SAndroid Build Coastguard Worker 2548*8975f5c5SAndroid Build Coastguard Worker /* 2549*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_ECC_AGGREGATE_DOUBLE_BIT_ERRORS - Returns the number of 2550*8975f5c5SAndroid Build Coastguard Worker * double-bit ECC errors detected by the targeted GPU since the 2551*8975f5c5SAndroid Build Coastguard Worker * last counter reset. 2552*8975f5c5SAndroid Build Coastguard Worker * Note: this attribute is a 64-bit integer attribute. 2553*8975f5c5SAndroid Build Coastguard Worker */ 2554*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_ECC_AGGREGATE_DOUBLE_BIT_ERRORS 332 /* R--GQ */ 2555*8975f5c5SAndroid Build Coastguard Worker 2556*8975f5c5SAndroid Build Coastguard Worker /* 2557*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_ECC_RESET_ERROR_STATUS - Resets the volatile/aggregate 2558*8975f5c5SAndroid Build Coastguard Worker * single-bit and double-bit error counters. This attribute is a 2559*8975f5c5SAndroid Build Coastguard Worker * bitmask attribute. 2560*8975f5c5SAndroid Build Coastguard Worker */ 2561*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_ECC_RESET_ERROR_STATUS 333 /* -W-G */ 2562*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_ECC_RESET_ERROR_STATUS_VOLATILE 0x00000001 2563*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_ECC_RESET_ERROR_STATUS_AGGREGATE 0x00000002 2564*8975f5c5SAndroid Build Coastguard Worker 2565*8975f5c5SAndroid Build Coastguard Worker /* 2566*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_POWER_MIZER_MODE - Provides a hint to the driver 2567*8975f5c5SAndroid Build Coastguard Worker * as to how to manage the performance of the GPU. 2568*8975f5c5SAndroid Build Coastguard Worker * 2569*8975f5c5SAndroid Build Coastguard Worker * ADAPTIVE - adjust GPU clocks based on GPU 2570*8975f5c5SAndroid Build Coastguard Worker * utilization 2571*8975f5c5SAndroid Build Coastguard Worker * PREFER_MAXIMUM_PERFORMANCE - raise GPU clocks to favor 2572*8975f5c5SAndroid Build Coastguard Worker * maximum performance, to the extent 2573*8975f5c5SAndroid Build Coastguard Worker * that thermal and other constraints 2574*8975f5c5SAndroid Build Coastguard Worker * allow 2575*8975f5c5SAndroid Build Coastguard Worker */ 2576*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_POWER_MIZER_MODE 334 /* RW-G */ 2577*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_POWER_MIZER_MODE_ADAPTIVE 0 2578*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_POWER_MIZER_MODE_PREFER_MAXIMUM_PERFORMANCE 1 2579*8975f5c5SAndroid Build Coastguard Worker 2580*8975f5c5SAndroid Build Coastguard Worker /* 2581*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVI_SYNC_OUTPUT_FORMAT - Returns the output sync signal 2582*8975f5c5SAndroid Build Coastguard Worker * from the GVI device. 2583*8975f5c5SAndroid Build Coastguard Worker */ 2584*8975f5c5SAndroid Build Coastguard Worker 2585*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_SYNC_OUTPUT_FORMAT 335 /* R--I */ 2586*8975f5c5SAndroid Build Coastguard Worker 2587*8975f5c5SAndroid Build Coastguard Worker /* 2588*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVI_MAX_CHANNELS_PER_JACK - Returns the maximum 2589*8975f5c5SAndroid Build Coastguard Worker * supported number of (logical) channels within a single physical jack of 2590*8975f5c5SAndroid Build Coastguard Worker * a GVI device. For most SDI video formats, there is only one channel 2591*8975f5c5SAndroid Build Coastguard Worker * (channel 0). But for 3G video formats (as specified in SMPTE 425), 2592*8975f5c5SAndroid Build Coastguard Worker * as an example, there are two channels (channel 0 and channel 1) per 2593*8975f5c5SAndroid Build Coastguard Worker * physical jack. 2594*8975f5c5SAndroid Build Coastguard Worker */ 2595*8975f5c5SAndroid Build Coastguard Worker 2596*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_MAX_CHANNELS_PER_JACK 336 /* R--I */ 2597*8975f5c5SAndroid Build Coastguard Worker 2598*8975f5c5SAndroid Build Coastguard Worker /* 2599*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVI_MAX_STREAMS - Returns the maximum number of streams 2600*8975f5c5SAndroid Build Coastguard Worker * that can be configured on the GVI device. 2601*8975f5c5SAndroid Build Coastguard Worker */ 2602*8975f5c5SAndroid Build Coastguard Worker 2603*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_MAX_STREAMS 337 /* R--I */ 2604*8975f5c5SAndroid Build Coastguard Worker 2605*8975f5c5SAndroid Build Coastguard Worker /* 2606*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVI_NUM_CAPTURE_SURFACES - The GVI interface exposed through 2607*8975f5c5SAndroid Build Coastguard Worker * NV-CONTROL and the GLX_NV_video_input extension uses internal capture 2608*8975f5c5SAndroid Build Coastguard Worker * surfaces when frames are read from the GVI device. The 2609*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVI_NUM_CAPTURE_SURFACES can be used to query and assign the 2610*8975f5c5SAndroid Build Coastguard Worker * number of capture surfaces. This attribute is applied when 2611*8975f5c5SAndroid Build Coastguard Worker * glXBindVideoCaptureDeviceNV() is called by the application. 2612*8975f5c5SAndroid Build Coastguard Worker * 2613*8975f5c5SAndroid Build Coastguard Worker * A lower number of capture surfaces will mean less video memory is used, 2614*8975f5c5SAndroid Build Coastguard Worker * but can result in frames being dropped if the application cannot keep up 2615*8975f5c5SAndroid Build Coastguard Worker * with the capture device. A higher number will prevent frames from being 2616*8975f5c5SAndroid Build Coastguard Worker * dropped, making capture more reliable but will consume move video memory. 2617*8975f5c5SAndroid Build Coastguard Worker */ 2618*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_NUM_CAPTURE_SURFACES 338 /* RW-I */ 2619*8975f5c5SAndroid Build Coastguard Worker 2620*8975f5c5SAndroid Build Coastguard Worker /* 2621*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_OVERSCAN_COMPENSATION - not supported 2622*8975f5c5SAndroid Build Coastguard Worker */ 2623*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_OVERSCAN_COMPENSATION 339 /* RWDG */ 2624*8975f5c5SAndroid Build Coastguard Worker 2625*8975f5c5SAndroid Build Coastguard Worker /* 2626*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_PCIE_GENERATION - Reports the current PCIe generation. 2627*8975f5c5SAndroid Build Coastguard Worker */ 2628*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_PCIE_GENERATION 341 /* R--GI */ 2629*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_PCIE_GENERATION1 0x00000001 2630*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_PCIE_GENERATION2 0x00000002 2631*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_PCIE_GENERATION3 0x00000003 2632*8975f5c5SAndroid Build Coastguard Worker 2633*8975f5c5SAndroid Build Coastguard Worker /* 2634*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVI_BOUND_GPU - Returns the NV_CTRL_TARGET_TYPE_GPU target_id of 2635*8975f5c5SAndroid Build Coastguard Worker * the GPU currently bound to the GVI device. Returns -1 if no GPU is 2636*8975f5c5SAndroid Build Coastguard Worker * currently bound to the GVI device. 2637*8975f5c5SAndroid Build Coastguard Worker */ 2638*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_BOUND_GPU 342 /* R--I */ 2639*8975f5c5SAndroid Build Coastguard Worker 2640*8975f5c5SAndroid Build Coastguard Worker /* 2641*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVIO_REQUESTED_VIDEO_FORMAT3 - this attribute is only 2642*8975f5c5SAndroid Build Coastguard Worker * intended to be used to query the ValidValues for 2643*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVIO_REQUESTED_VIDEO_FORMAT for VIDEO_FORMAT values between 2644*8975f5c5SAndroid Build Coastguard Worker * 64 and 95. See NV_CTRL_GVIO_REQUESTED_VIDEO_FORMAT for details. 2645*8975f5c5SAndroid Build Coastguard Worker */ 2646*8975f5c5SAndroid Build Coastguard Worker 2647*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_REQUESTED_VIDEO_FORMAT3 343 /* ---GI */ 2648*8975f5c5SAndroid Build Coastguard Worker 2649*8975f5c5SAndroid Build Coastguard Worker /* 2650*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_ACCELERATE_TRAPEZOIDS - Toggles RENDER Trapezoid acceleration 2651*8975f5c5SAndroid Build Coastguard Worker */ 2652*8975f5c5SAndroid Build Coastguard Worker 2653*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_ACCELERATE_TRAPEZOIDS 344 /* RW- */ 2654*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_ACCELERATE_TRAPEZOIDS_DISABLE 0 2655*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_ACCELERATE_TRAPEZOIDS_ENABLE 1 2656*8975f5c5SAndroid Build Coastguard Worker 2657*8975f5c5SAndroid Build Coastguard Worker /* 2658*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_CORES - Returns number of GPU cores supported by the graphics 2659*8975f5c5SAndroid Build Coastguard Worker * pipeline. 2660*8975f5c5SAndroid Build Coastguard Worker */ 2661*8975f5c5SAndroid Build Coastguard Worker 2662*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_CORES 345 /* R--G */ 2663*8975f5c5SAndroid Build Coastguard Worker 2664*8975f5c5SAndroid Build Coastguard Worker /* 2665*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_MEMORY_BUS_WIDTH - Returns memory bus bandwidth on the associated 2666*8975f5c5SAndroid Build Coastguard Worker * subdevice. 2667*8975f5c5SAndroid Build Coastguard Worker */ 2668*8975f5c5SAndroid Build Coastguard Worker 2669*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_MEMORY_BUS_WIDTH 346 /* R--G */ 2670*8975f5c5SAndroid Build Coastguard Worker 2671*8975f5c5SAndroid Build Coastguard Worker /* 2672*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVI_TEST_MODE - This attribute controls the GVI test mode. When 2673*8975f5c5SAndroid Build Coastguard Worker * enabled, the GVI device will generate fake data as quickly as possible. All 2674*8975f5c5SAndroid Build Coastguard Worker * GVI settings are still valid when this is enabled (e.g., the requested video 2675*8975f5c5SAndroid Build Coastguard Worker * format is honored and sets the video size). 2676*8975f5c5SAndroid Build Coastguard Worker * This may be used to test the pipeline. 2677*8975f5c5SAndroid Build Coastguard Worker */ 2678*8975f5c5SAndroid Build Coastguard Worker 2679*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_TEST_MODE 347 /* R--I */ 2680*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_TEST_MODE_DISABLE 0 2681*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVI_TEST_MODE_ENABLE 1 2682*8975f5c5SAndroid Build Coastguard Worker 2683*8975f5c5SAndroid Build Coastguard Worker /* 2684*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_COLOR_SPACE - This option sets color space of the video 2685*8975f5c5SAndroid Build Coastguard Worker * signal. 2686*8975f5c5SAndroid Build Coastguard Worker */ 2687*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_COLOR_SPACE 348 /* RWDG */ 2688*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_COLOR_SPACE_RGB 0 2689*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_COLOR_SPACE_YCbCr422 1 2690*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_COLOR_SPACE_YCbCr444 2 2691*8975f5c5SAndroid Build Coastguard Worker 2692*8975f5c5SAndroid Build Coastguard Worker /* 2693*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_COLOR_RANGE - This option sets color range of the video 2694*8975f5c5SAndroid Build Coastguard Worker * signal. 2695*8975f5c5SAndroid Build Coastguard Worker */ 2696*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_COLOR_RANGE 349 /* RWDG */ 2697*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_COLOR_RANGE_FULL 0 2698*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_COLOR_RANGE_LIMITED 1 2699*8975f5c5SAndroid Build Coastguard Worker 2700*8975f5c5SAndroid Build Coastguard Worker /* 2701*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_SCALING_DEFAULT_TARGET - not supported 2702*8975f5c5SAndroid Build Coastguard Worker * 2703*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_SCALING_DEFAULT_METHOD - not supported 2704*8975f5c5SAndroid Build Coastguard Worker */ 2705*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_SCALING_DEFAULT_TARGET 350 /* R-DG */ 2706*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_SCALING_DEFAULT_METHOD 351 /* R-DG */ 2707*8975f5c5SAndroid Build Coastguard Worker 2708*8975f5c5SAndroid Build Coastguard Worker /* 2709*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_DITHERING_MODE - Controls the dithering mode, when 2710*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_CURRENT_DITHERING is Enabled. 2711*8975f5c5SAndroid Build Coastguard Worker * 2712*8975f5c5SAndroid Build Coastguard Worker * AUTO: allow the driver to choose the dithering mode automatically. 2713*8975f5c5SAndroid Build Coastguard Worker * 2714*8975f5c5SAndroid Build Coastguard Worker * DYNAMIC_2X2: use a 2x2 matrix to dither from the GPU's pixel 2715*8975f5c5SAndroid Build Coastguard Worker * pipeline to the bit depth of the flat panel. The matrix values 2716*8975f5c5SAndroid Build Coastguard Worker * are changed from frame to frame. 2717*8975f5c5SAndroid Build Coastguard Worker * 2718*8975f5c5SAndroid Build Coastguard Worker * STATIC_2X2: use a 2x2 matrix to dither from the GPU's pixel 2719*8975f5c5SAndroid Build Coastguard Worker * pipeline to the bit depth of the flat panel. The matrix values 2720*8975f5c5SAndroid Build Coastguard Worker * do not change from frame to frame. 2721*8975f5c5SAndroid Build Coastguard Worker * 2722*8975f5c5SAndroid Build Coastguard Worker * TEMPORAL: use a pseudorandom value from a uniform distribution calculated at 2723*8975f5c5SAndroid Build Coastguard Worker * every pixel to achieve stochastic dithering. This method produces a better 2724*8975f5c5SAndroid Build Coastguard Worker * visual result than 2x2 matrix approaches. 2725*8975f5c5SAndroid Build Coastguard Worker */ 2726*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_DITHERING_MODE 352 /* RWDG */ 2727*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_DITHERING_MODE_AUTO 0 2728*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_DITHERING_MODE_DYNAMIC_2X2 1 2729*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_DITHERING_MODE_STATIC_2X2 2 2730*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_DITHERING_MODE_TEMPORAL 3 2731*8975f5c5SAndroid Build Coastguard Worker 2732*8975f5c5SAndroid Build Coastguard Worker /* 2733*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_CURRENT_DITHERING - Returns the current dithering state. 2734*8975f5c5SAndroid Build Coastguard Worker */ 2735*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_CURRENT_DITHERING 353 /* R-DG */ 2736*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_CURRENT_DITHERING_DISABLED 0 2737*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_CURRENT_DITHERING_ENABLED 1 2738*8975f5c5SAndroid Build Coastguard Worker 2739*8975f5c5SAndroid Build Coastguard Worker /* 2740*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_CURRENT_DITHERING_MODE - Returns the current dithering 2741*8975f5c5SAndroid Build Coastguard Worker * mode. 2742*8975f5c5SAndroid Build Coastguard Worker */ 2743*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_CURRENT_DITHERING_MODE 354 /* R-DG */ 2744*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_CURRENT_DITHERING_MODE_NONE 0 2745*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_CURRENT_DITHERING_MODE_DYNAMIC_2X2 1 2746*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_CURRENT_DITHERING_MODE_STATIC_2X2 2 2747*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_CURRENT_DITHERING_MODE_TEMPORAL 3 2748*8975f5c5SAndroid Build Coastguard Worker 2749*8975f5c5SAndroid Build Coastguard Worker /* 2750*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_THERMAL_SENSOR_READING - Returns the thermal sensor's current 2751*8975f5c5SAndroid Build Coastguard Worker * reading. 2752*8975f5c5SAndroid Build Coastguard Worker */ 2753*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_SENSOR_READING 355 /* R--S */ 2754*8975f5c5SAndroid Build Coastguard Worker 2755*8975f5c5SAndroid Build Coastguard Worker /* 2756*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_THERMAL_SENSOR_PROVIDER - Returns the hardware device that 2757*8975f5c5SAndroid Build Coastguard Worker * provides the thermal sensor. 2758*8975f5c5SAndroid Build Coastguard Worker */ 2759*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_SENSOR_PROVIDER 356 /* R--S */ 2760*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_SENSOR_PROVIDER_NONE 0 2761*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_SENSOR_PROVIDER_GPU_INTERNAL 1 2762*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_SENSOR_PROVIDER_ADM1032 2 2763*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_SENSOR_PROVIDER_ADT7461 3 2764*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_SENSOR_PROVIDER_MAX6649 4 2765*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_SENSOR_PROVIDER_MAX1617 5 2766*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_SENSOR_PROVIDER_LM99 6 2767*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_SENSOR_PROVIDER_LM89 7 2768*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_SENSOR_PROVIDER_LM64 8 2769*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_SENSOR_PROVIDER_G781 9 2770*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_SENSOR_PROVIDER_ADT7473 10 2771*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_SENSOR_PROVIDER_SBMAX6649 11 2772*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_SENSOR_PROVIDER_VBIOSEVT 12 2773*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_SENSOR_PROVIDER_OS 13 2774*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_SENSOR_PROVIDER_UNKNOWN 0xFFFFFFFF 2775*8975f5c5SAndroid Build Coastguard Worker 2776*8975f5c5SAndroid Build Coastguard Worker /* 2777*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_THERMAL_SENSOR_TARGET - Returns what hardware component 2778*8975f5c5SAndroid Build Coastguard Worker * the thermal sensor is measuring. 2779*8975f5c5SAndroid Build Coastguard Worker */ 2780*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_SENSOR_TARGET 357 /* R--S */ 2781*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_SENSOR_TARGET_NONE 0 2782*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_SENSOR_TARGET_GPU 1 2783*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_SENSOR_TARGET_MEMORY 2 2784*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_SENSOR_TARGET_POWER_SUPPLY 4 2785*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_SENSOR_TARGET_BOARD 8 2786*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_THERMAL_SENSOR_TARGET_UNKNOWN 0xFFFFFFFF 2787*8975f5c5SAndroid Build Coastguard Worker 2788*8975f5c5SAndroid Build Coastguard Worker /* 2789*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_SHOW_MULTIGPU_VISUAL_INDICATOR - when TRUE, OpenGL will 2790*8975f5c5SAndroid Build Coastguard Worker * draw information about the current MULTIGPU mode. 2791*8975f5c5SAndroid Build Coastguard Worker */ 2792*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_SHOW_MULTIGPU_VISUAL_INDICATOR 358 /* RW-X */ 2793*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_SHOW_MULTIGPU_VISUAL_INDICATOR_FALSE 0 2794*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_SHOW_MULTIGPU_VISUAL_INDICATOR_TRUE 1 2795*8975f5c5SAndroid Build Coastguard Worker 2796*8975f5c5SAndroid Build Coastguard Worker /* 2797*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_CURRENT_PROCESSOR_CLOCK_FREQS - Returns GPU's processor 2798*8975f5c5SAndroid Build Coastguard Worker * clock freqs. 2799*8975f5c5SAndroid Build Coastguard Worker */ 2800*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_CURRENT_PROCESSOR_CLOCK_FREQS 359 /* RW-G */ 2801*8975f5c5SAndroid Build Coastguard Worker 2802*8975f5c5SAndroid Build Coastguard Worker /* 2803*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVIO_VIDEO_FORMAT_FLAGS - query the flags (various information 2804*8975f5c5SAndroid Build Coastguard Worker * for the specified NV_CTRL_GVIO_VIDEO_FORMAT_*. So that this can be 2805*8975f5c5SAndroid Build Coastguard Worker * queried with existing interfaces, the video format should be specified 2806*8975f5c5SAndroid Build Coastguard Worker * in the display_mask field; eg: 2807*8975f5c5SAndroid Build Coastguard Worker * 2808*8975f5c5SAndroid Build Coastguard Worker * XNVCTRLQueryTargetAttribute(dpy, 2809*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_TARGET_TYPE_GVI, 2810*8975f5c5SAndroid Build Coastguard Worker * gvi, 2811*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVIO_VIDEO_FORMAT_720P_60_00_SMPTE296, 2812*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVIO_VIDEO_FORMAT_FLAGS, 2813*8975f5c5SAndroid Build Coastguard Worker * &flags); 2814*8975f5c5SAndroid Build Coastguard Worker * 2815*8975f5c5SAndroid Build Coastguard Worker * Note: The NV_CTRL_GVIO_VIDEO_FORMAT_FLAGS_3G_1080P_NO_12BPC flag is set 2816*8975f5c5SAndroid Build Coastguard Worker * for those 1080P 3G modes (level A and B) that do not support 2817*8975f5c5SAndroid Build Coastguard Worker * 12 bits per component (when configuring a GVI stream.) 2818*8975f5c5SAndroid Build Coastguard Worker */ 2819*8975f5c5SAndroid Build Coastguard Worker 2820*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_FLAGS 360 /* R--I */ 2821*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_FLAGS_NONE 0x00000000 2822*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_FLAGS_INTERLACED 0x00000001 2823*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_FLAGS_PROGRESSIVE 0x00000002 2824*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_FLAGS_PSF 0x00000004 2825*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_FLAGS_3G_LEVEL_A 0x00000008 2826*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_FLAGS_3G_LEVEL_B 0x00000010 2827*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_FLAGS_3G \ 2828*8975f5c5SAndroid Build Coastguard Worker ((NV_CTRL_GVIO_VIDEO_FORMAT_FLAGS_3G_LEVEL_A) | (NV_CTRL_GVIO_VIDEO_FORMAT_FLAGS_3G_LEVEL_B)) 2829*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVIO_VIDEO_FORMAT_FLAGS_3G_1080P_NO_12BPC 0x00000020 2830*8975f5c5SAndroid Build Coastguard Worker 2831*8975f5c5SAndroid Build Coastguard Worker /* 2832*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_PCIE_MAX_LINK_SPEED - returns maximum PCIe link speed, 2833*8975f5c5SAndroid Build Coastguard Worker * in gigatransfers per second (GT/s). 2834*8975f5c5SAndroid Build Coastguard Worker */ 2835*8975f5c5SAndroid Build Coastguard Worker 2836*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_PCIE_MAX_LINK_SPEED 361 /* R--GI */ 2837*8975f5c5SAndroid Build Coastguard Worker 2838*8975f5c5SAndroid Build Coastguard Worker /* 2839*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_3D_VISION_PRO_RESET_TRANSCEIVER_TO_FACTORY_SETTINGS - Resets the 2840*8975f5c5SAndroid Build Coastguard Worker * 3D Vision Pro transceiver to its factory settings. 2841*8975f5c5SAndroid Build Coastguard Worker */ 2842*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_3D_VISION_PRO_RESET_TRANSCEIVER_TO_FACTORY_SETTINGS 363 /* -W-T */ 2843*8975f5c5SAndroid Build Coastguard Worker 2844*8975f5c5SAndroid Build Coastguard Worker /* 2845*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_3D_VISION_PRO_TRANSCEIVER_CHANNEL - Controls the channel that is 2846*8975f5c5SAndroid Build Coastguard Worker * currently used by the 3D Vision Pro transceiver. 2847*8975f5c5SAndroid Build Coastguard Worker */ 2848*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_3D_VISION_PRO_TRANSCEIVER_CHANNEL 364 /* RW-T */ 2849*8975f5c5SAndroid Build Coastguard Worker 2850*8975f5c5SAndroid Build Coastguard Worker /* 2851*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_3D_VISION_PRO_TRANSCEIVER_MODE - Controls the mode in which the 2852*8975f5c5SAndroid Build Coastguard Worker * 3D Vision Pro transceiver operates. 2853*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_3D_VISION_PRO_TM_LOW_RANGE is bidirectional 2854*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_3D_VISION_PRO_TM_MEDIUM_RANGE is bidirectional 2855*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_3D_VISION_PRO_TM_HIGH_RANGE may be bidirectional just up to a 2856*8975f5c5SAndroid Build Coastguard Worker * given range, and unidirectional beyond it 2857*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_3D_VISION_PRO_TM_COUNT is the total number of 2858*8975f5c5SAndroid Build Coastguard Worker * 3D Vision Pro transceiver modes 2859*8975f5c5SAndroid Build Coastguard Worker */ 2860*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_3D_VISION_PRO_TRANSCEIVER_MODE 365 /* RW-T */ 2861*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_3D_VISION_PRO_TRANSCEIVER_MODE_INVALID 0 2862*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_3D_VISION_PRO_TRANSCEIVER_MODE_LOW_RANGE 1 2863*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_3D_VISION_PRO_TRANSCEIVER_MODE_MEDIUM_RANGE 2 2864*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_3D_VISION_PRO_TRANSCEIVER_MODE_HIGH_RANGE 3 2865*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_3D_VISION_PRO_TRANSCEIVER_MODE_COUNT 4 2866*8975f5c5SAndroid Build Coastguard Worker 2867*8975f5c5SAndroid Build Coastguard Worker /* 2868*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_SYNCHRONOUS_PALETTE_UPDATES - controls whether updates to the color 2869*8975f5c5SAndroid Build Coastguard Worker * lookup table (LUT) are synchronous with respect to X rendering. For example, 2870*8975f5c5SAndroid Build Coastguard Worker * if an X client sends XStoreColors followed by XFillRectangle, the driver will 2871*8975f5c5SAndroid Build Coastguard Worker * guarantee that the FillRectangle request is not processed until after the 2872*8975f5c5SAndroid Build Coastguard Worker * updated LUT colors are actually visible on the screen if 2873*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_SYNCHRONOUS_PALETTE_UPDATES is enabled. Otherwise, the rendering may 2874*8975f5c5SAndroid Build Coastguard Worker * occur first. 2875*8975f5c5SAndroid Build Coastguard Worker * 2876*8975f5c5SAndroid Build Coastguard Worker * This makes a difference for applications that use the LUT to animate, such as 2877*8975f5c5SAndroid Build Coastguard Worker * XPilot. If you experience flickering in applications that use LUT 2878*8975f5c5SAndroid Build Coastguard Worker * animations, try enabling this attribute. 2879*8975f5c5SAndroid Build Coastguard Worker * 2880*8975f5c5SAndroid Build Coastguard Worker * When synchronous updates are enabled, XStoreColors requests will be processed 2881*8975f5c5SAndroid Build Coastguard Worker * at your screen's refresh rate. 2882*8975f5c5SAndroid Build Coastguard Worker */ 2883*8975f5c5SAndroid Build Coastguard Worker 2884*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_SYNCHRONOUS_PALETTE_UPDATES 367 /* RWDG */ 2885*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_SYNCHRONOUS_PALETTE_UPDATES_DISABLE 0 2886*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_SYNCHRONOUS_PALETTE_UPDATES_ENABLE 1 2887*8975f5c5SAndroid Build Coastguard Worker 2888*8975f5c5SAndroid Build Coastguard Worker /* 2889*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_DITHERING_DEPTH - Controls the dithering depth when 2890*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_CURRENT_DITHERING is ENABLED. Some displays connected 2891*8975f5c5SAndroid Build Coastguard Worker * to the GPU via the DVI or LVDS interfaces cannot display the 2892*8975f5c5SAndroid Build Coastguard Worker * full color range of ten bits per channel, so the GPU will 2893*8975f5c5SAndroid Build Coastguard Worker * dither to either 6 or 8 bits per channel. 2894*8975f5c5SAndroid Build Coastguard Worker */ 2895*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_DITHERING_DEPTH 368 /* RWDG */ 2896*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_DITHERING_DEPTH_AUTO 0 2897*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_DITHERING_DEPTH_6_BITS 1 2898*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_DITHERING_DEPTH_8_BITS 2 2899*8975f5c5SAndroid Build Coastguard Worker 2900*8975f5c5SAndroid Build Coastguard Worker /* 2901*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_CURRENT_DITHERING_DEPTH - Returns the current dithering 2902*8975f5c5SAndroid Build Coastguard Worker * depth value. 2903*8975f5c5SAndroid Build Coastguard Worker */ 2904*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_CURRENT_DITHERING_DEPTH 369 /* R-DG */ 2905*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_CURRENT_DITHERING_DEPTH_NONE 0 2906*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_CURRENT_DITHERING_DEPTH_6_BITS 1 2907*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_CURRENT_DITHERING_DEPTH_8_BITS 2 2908*8975f5c5SAndroid Build Coastguard Worker 2909*8975f5c5SAndroid Build Coastguard Worker /* 2910*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_3D_VISION_PRO_TRANSCEIVER_CHANNEL_FREQUENCY - Returns the 2911*8975f5c5SAndroid Build Coastguard Worker * frequency of the channel(in kHz) of the 3D Vision Pro transceiver. 2912*8975f5c5SAndroid Build Coastguard Worker * Use the display_mask parameter to specify the channel number. 2913*8975f5c5SAndroid Build Coastguard Worker */ 2914*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_3D_VISION_PRO_TRANSCEIVER_CHANNEL_FREQUENCY 370 /* R--T */ 2915*8975f5c5SAndroid Build Coastguard Worker 2916*8975f5c5SAndroid Build Coastguard Worker /* 2917*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_3D_VISION_PRO_TRANSCEIVER_CHANNEL_QUALITY - Returns the 2918*8975f5c5SAndroid Build Coastguard Worker * quality of the channel(in percentage) of the 3D Vision Pro transceiver. 2919*8975f5c5SAndroid Build Coastguard Worker * Use the display_mask parameter to specify the channel number. 2920*8975f5c5SAndroid Build Coastguard Worker */ 2921*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_3D_VISION_PRO_TRANSCEIVER_CHANNEL_QUALITY 371 /* R--T */ 2922*8975f5c5SAndroid Build Coastguard Worker 2923*8975f5c5SAndroid Build Coastguard Worker /* 2924*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_3D_VISION_PRO_TRANSCEIVER_CHANNEL_COUNT - Returns the number of 2925*8975f5c5SAndroid Build Coastguard Worker * channels on the 3D Vision Pro transceiver. 2926*8975f5c5SAndroid Build Coastguard Worker */ 2927*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_3D_VISION_PRO_TRANSCEIVER_CHANNEL_COUNT 372 /* R--T */ 2928*8975f5c5SAndroid Build Coastguard Worker 2929*8975f5c5SAndroid Build Coastguard Worker /* 2930*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_3D_VISION_PRO_PAIR_GLASSES - Puts the 3D Vision Pro 2931*8975f5c5SAndroid Build Coastguard Worker * transceiver into pairing mode to gather additional glasses. 2932*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_3D_VISION_PRO_PAIR_GLASSES_STOP - stops any pairing 2933*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_3D_VISION_PRO_PAIR_GLASSES_BEACON - starts continuous 2934*8975f5c5SAndroid Build Coastguard Worker * pairing via beacon mode 2935*8975f5c5SAndroid Build Coastguard Worker * Any other value, N - Puts the 3D Vision Pro transceiver into 2936*8975f5c5SAndroid Build Coastguard Worker * authenticated pairing mode for N seconds. 2937*8975f5c5SAndroid Build Coastguard Worker */ 2938*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_3D_VISION_PRO_PAIR_GLASSES 373 /* -W-T */ 2939*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_3D_VISION_PRO_PAIR_GLASSES_STOP 0 2940*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_3D_VISION_PRO_PAIR_GLASSES_BEACON 0xFFFFFFFF 2941*8975f5c5SAndroid Build Coastguard Worker 2942*8975f5c5SAndroid Build Coastguard Worker /* 2943*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_3D_VISION_PRO_UNPAIR_GLASSES - Tells a specific pair 2944*8975f5c5SAndroid Build Coastguard Worker * of glasses to unpair. The glasses will "forget" the address 2945*8975f5c5SAndroid Build Coastguard Worker * of the 3D Vision Pro transceiver to which they have been paired. 2946*8975f5c5SAndroid Build Coastguard Worker * To unpair all the currently paired glasses, specify 2947*8975f5c5SAndroid Build Coastguard Worker * the glasses id as 0. 2948*8975f5c5SAndroid Build Coastguard Worker */ 2949*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_3D_VISION_PRO_UNPAIR_GLASSES 374 /* -W-T */ 2950*8975f5c5SAndroid Build Coastguard Worker 2951*8975f5c5SAndroid Build Coastguard Worker /* 2952*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_3D_VISION_PRO_DISCOVER_GLASSES - Tells the 3D Vision Pro 2953*8975f5c5SAndroid Build Coastguard Worker * transceiver about the glasses that have been paired using 2954*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_3D_VISION_PRO_PAIR_GLASSES_BEACON. Unless this is done, 2955*8975f5c5SAndroid Build Coastguard Worker * the 3D Vision Pro transceiver will not know about glasses paired in 2956*8975f5c5SAndroid Build Coastguard Worker * beacon mode. 2957*8975f5c5SAndroid Build Coastguard Worker */ 2958*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_3D_VISION_PRO_DISCOVER_GLASSES 375 /* -W-T */ 2959*8975f5c5SAndroid Build Coastguard Worker 2960*8975f5c5SAndroid Build Coastguard Worker /* 2961*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_3D_VISION_PRO_IDENTIFY_GLASSES - Causes glasses LEDs to 2962*8975f5c5SAndroid Build Coastguard Worker * flash for a short period of time. 2963*8975f5c5SAndroid Build Coastguard Worker */ 2964*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_3D_VISION_PRO_IDENTIFY_GLASSES 376 /* -W-T */ 2965*8975f5c5SAndroid Build Coastguard Worker 2966*8975f5c5SAndroid Build Coastguard Worker /* 2967*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_3D_VISION_PRO_GLASSES_SYNC_CYCLE - Controls the 2968*8975f5c5SAndroid Build Coastguard Worker * sync cycle duration(in milliseconds) of the glasses. 2969*8975f5c5SAndroid Build Coastguard Worker * Use the display_mask parameter to specify the glasses id. 2970*8975f5c5SAndroid Build Coastguard Worker */ 2971*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_3D_VISION_PRO_GLASSES_SYNC_CYCLE 378 /* RW-T */ 2972*8975f5c5SAndroid Build Coastguard Worker 2973*8975f5c5SAndroid Build Coastguard Worker /* 2974*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_3D_VISION_PRO_GLASSES_MISSED_SYNC_CYCLES - Returns the 2975*8975f5c5SAndroid Build Coastguard Worker * number of state sync cycles recently missed by the glasses. 2976*8975f5c5SAndroid Build Coastguard Worker * Use the display_mask parameter to specify the glasses id. 2977*8975f5c5SAndroid Build Coastguard Worker */ 2978*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_3D_VISION_PRO_GLASSES_MISSED_SYNC_CYCLES 379 /* R--T */ 2979*8975f5c5SAndroid Build Coastguard Worker 2980*8975f5c5SAndroid Build Coastguard Worker /* 2981*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_3D_VISION_PRO_GLASSES_BATTERY_LEVEL - Returns the 2982*8975f5c5SAndroid Build Coastguard Worker * battery level(in percentage) of the glasses. 2983*8975f5c5SAndroid Build Coastguard Worker * Use the display_mask parameter to specify the glasses id. 2984*8975f5c5SAndroid Build Coastguard Worker */ 2985*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_3D_VISION_PRO_GLASSES_BATTERY_LEVEL 380 /* R--T */ 2986*8975f5c5SAndroid Build Coastguard Worker 2987*8975f5c5SAndroid Build Coastguard Worker /* 2988*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_ANC_PARITY_COMPUTATION - Controls the SDI device's computation 2989*8975f5c5SAndroid Build Coastguard Worker * of the parity bit (bit 8) for ANC data words. 2990*8975f5c5SAndroid Build Coastguard Worker */ 2991*8975f5c5SAndroid Build Coastguard Worker 2992*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_ANC_PARITY_COMPUTATION 381 /* RW--- */ 2993*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_ANC_PARITY_COMPUTATION_AUTO 0 2994*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_ANC_PARITY_COMPUTATION_ON 1 2995*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_ANC_PARITY_COMPUTATION_OFF 2 2996*8975f5c5SAndroid Build Coastguard Worker 2997*8975f5c5SAndroid Build Coastguard Worker /* 2998*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_3D_VISION_PRO_GLASSES_PAIR_EVENT - This attribute is sent 2999*8975f5c5SAndroid Build Coastguard Worker * as an event when glasses get paired in response to pair command 3000*8975f5c5SAndroid Build Coastguard Worker * from any of the clients. 3001*8975f5c5SAndroid Build Coastguard Worker */ 3002*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_3D_VISION_PRO_GLASSES_PAIR_EVENT 382 /* ---T */ 3003*8975f5c5SAndroid Build Coastguard Worker 3004*8975f5c5SAndroid Build Coastguard Worker /* 3005*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_3D_VISION_PRO_GLASSES_UNPAIR_EVENT - This attribute is sent 3006*8975f5c5SAndroid Build Coastguard Worker * as an event when glasses get unpaired in response to unpair command 3007*8975f5c5SAndroid Build Coastguard Worker * from any of the clients. 3008*8975f5c5SAndroid Build Coastguard Worker */ 3009*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_3D_VISION_PRO_GLASSES_UNPAIR_EVENT 383 /* ---T */ 3010*8975f5c5SAndroid Build Coastguard Worker 3011*8975f5c5SAndroid Build Coastguard Worker /* 3012*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_PCIE_CURRENT_LINK_WIDTH - returns the current 3013*8975f5c5SAndroid Build Coastguard Worker * PCIe link width, in number of lanes. 3014*8975f5c5SAndroid Build Coastguard Worker */ 3015*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_PCIE_CURRENT_LINK_WIDTH 384 /* R--GI */ 3016*8975f5c5SAndroid Build Coastguard Worker 3017*8975f5c5SAndroid Build Coastguard Worker /* 3018*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GPU_PCIE_CURRENT_LINK_SPEED - returns the current 3019*8975f5c5SAndroid Build Coastguard Worker * PCIe link speed, in megatransfers per second (GT/s). 3020*8975f5c5SAndroid Build Coastguard Worker */ 3021*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GPU_PCIE_CURRENT_LINK_SPEED 385 /* R--GI */ 3022*8975f5c5SAndroid Build Coastguard Worker 3023*8975f5c5SAndroid Build Coastguard Worker /* 3024*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVO_AUDIO_BLANKING - specifies whether the GVO device should delete 3025*8975f5c5SAndroid Build Coastguard Worker * audio ancillary data packets when frames are repeated. 3026*8975f5c5SAndroid Build Coastguard Worker * 3027*8975f5c5SAndroid Build Coastguard Worker * When a new frame is not ready in time, the current frame, including all 3028*8975f5c5SAndroid Build Coastguard Worker * ancillary data packets, is repeated. When this data includes audio packets, 3029*8975f5c5SAndroid Build Coastguard Worker * this can result in stutters or clicks. When this option is enabled, the GVO 3030*8975f5c5SAndroid Build Coastguard Worker * device will detect when frames are repeated, identify audio ancillary data 3031*8975f5c5SAndroid Build Coastguard Worker * packets, and mark them for deletion. 3032*8975f5c5SAndroid Build Coastguard Worker * 3033*8975f5c5SAndroid Build Coastguard Worker * This option is applied when the GVO device is bound. 3034*8975f5c5SAndroid Build Coastguard Worker */ 3035*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_AUDIO_BLANKING 386 /* RW- */ 3036*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_AUDIO_BLANKING_DISABLE 0 3037*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_GVO_AUDIO_BLANKING_ENABLE 1 3038*8975f5c5SAndroid Build Coastguard Worker 3039*8975f5c5SAndroid Build Coastguard Worker /* 3040*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_CURRENT_METAMODE_ID - switch modes to the MetaMode with 3041*8975f5c5SAndroid Build Coastguard Worker * the specified ID. 3042*8975f5c5SAndroid Build Coastguard Worker */ 3043*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_CURRENT_METAMODE_ID 387 /* RW- */ 3044*8975f5c5SAndroid Build Coastguard Worker 3045*8975f5c5SAndroid Build Coastguard Worker /* 3046*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_DISPLAY_ENABLED - Returns whether or not the display device 3047*8975f5c5SAndroid Build Coastguard Worker * is currently enabled. 3048*8975f5c5SAndroid Build Coastguard Worker */ 3049*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_DISPLAY_ENABLED 388 /* R-D */ 3050*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_DISPLAY_ENABLED_TRUE 1 3051*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_DISPLAY_ENABLED_FALSE 0 3052*8975f5c5SAndroid Build Coastguard Worker 3053*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_LAST_ATTRIBUTE NV_CTRL_DISPLAY_ENABLED 3054*8975f5c5SAndroid Build Coastguard Worker 3055*8975f5c5SAndroid Build Coastguard Worker /**************************************************************************/ 3056*8975f5c5SAndroid Build Coastguard Worker 3057*8975f5c5SAndroid Build Coastguard Worker /* 3058*8975f5c5SAndroid Build Coastguard Worker * String Attributes: 3059*8975f5c5SAndroid Build Coastguard Worker * 3060*8975f5c5SAndroid Build Coastguard Worker * String attributes can be queryied through the XNVCTRLQueryStringAttribute() 3061*8975f5c5SAndroid Build Coastguard Worker * and XNVCTRLQueryTargetStringAttribute() function calls. 3062*8975f5c5SAndroid Build Coastguard Worker * 3063*8975f5c5SAndroid Build Coastguard Worker * String attributes can be set through the XNVCTRLSetStringAttribute() 3064*8975f5c5SAndroid Build Coastguard Worker * function call. (There are currently no string attributes that can be 3065*8975f5c5SAndroid Build Coastguard Worker * set on non-X Screen targets.) 3066*8975f5c5SAndroid Build Coastguard Worker * 3067*8975f5c5SAndroid Build Coastguard Worker * Unless otherwise noted, all string attributes can be queried/set using an 3068*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_TARGET_TYPE_X_SCREEN target. Attributes that cannot take an 3069*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_TARGET_TYPE_X_SCREEN target also cannot be queried/set through 3070*8975f5c5SAndroid Build Coastguard Worker * XNVCTRLQueryStringAttribute()/XNVCTRLSetStringAttribute() (Since 3071*8975f5c5SAndroid Build Coastguard Worker * these assume an X Screen target). 3072*8975f5c5SAndroid Build Coastguard Worker */ 3073*8975f5c5SAndroid Build Coastguard Worker 3074*8975f5c5SAndroid Build Coastguard Worker /* 3075*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_PRODUCT_NAME - the GPU product name on which the 3076*8975f5c5SAndroid Build Coastguard Worker * specified X screen is running. 3077*8975f5c5SAndroid Build Coastguard Worker * 3078*8975f5c5SAndroid Build Coastguard Worker * This attribute may be queried through XNVCTRLQueryTargetStringAttribute() 3079*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_GPU or NV_CTRL_TARGET_TYPE_X_SCREEN target. 3080*8975f5c5SAndroid Build Coastguard Worker */ 3081*8975f5c5SAndroid Build Coastguard Worker 3082*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_PRODUCT_NAME 0 /* R--G */ 3083*8975f5c5SAndroid Build Coastguard Worker 3084*8975f5c5SAndroid Build Coastguard Worker /* 3085*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_VBIOS_VERSION - the video bios version on the GPU on 3086*8975f5c5SAndroid Build Coastguard Worker * which the specified X screen is running. 3087*8975f5c5SAndroid Build Coastguard Worker */ 3088*8975f5c5SAndroid Build Coastguard Worker 3089*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_VBIOS_VERSION 1 /* R--G */ 3090*8975f5c5SAndroid Build Coastguard Worker 3091*8975f5c5SAndroid Build Coastguard Worker /* 3092*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_NVIDIA_DRIVER_VERSION - string representation of the 3093*8975f5c5SAndroid Build Coastguard Worker * NVIDIA driver version number for the NVIDIA X driver in use. 3094*8975f5c5SAndroid Build Coastguard Worker */ 3095*8975f5c5SAndroid Build Coastguard Worker 3096*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_NVIDIA_DRIVER_VERSION 3 /* R--G */ 3097*8975f5c5SAndroid Build Coastguard Worker 3098*8975f5c5SAndroid Build Coastguard Worker /* 3099*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_DISPLAY_DEVICE_NAME - name of the display device 3100*8975f5c5SAndroid Build Coastguard Worker * specified in the display_mask argument. 3101*8975f5c5SAndroid Build Coastguard Worker * 3102*8975f5c5SAndroid Build Coastguard Worker * This attribute may be queried through XNVCTRLQueryTargetStringAttribute() 3103*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_GPU or NV_CTRL_TARGET_TYPE_X_SCREEN target. 3104*8975f5c5SAndroid Build Coastguard Worker */ 3105*8975f5c5SAndroid Build Coastguard Worker 3106*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_DISPLAY_DEVICE_NAME 4 /* R-DG */ 3107*8975f5c5SAndroid Build Coastguard Worker 3108*8975f5c5SAndroid Build Coastguard Worker /* 3109*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_TV_ENCODER_NAME - name of the TV encoder used by the 3110*8975f5c5SAndroid Build Coastguard Worker * specified display device; only valid if the display device is a TV. 3111*8975f5c5SAndroid Build Coastguard Worker */ 3112*8975f5c5SAndroid Build Coastguard Worker 3113*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_TV_ENCODER_NAME 5 /* R-DG */ 3114*8975f5c5SAndroid Build Coastguard Worker 3115*8975f5c5SAndroid Build Coastguard Worker /* 3116*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_GVIO_FIRMWARE_VERSION - indicates the version of the 3117*8975f5c5SAndroid Build Coastguard Worker * Firmware on the GVIO device. 3118*8975f5c5SAndroid Build Coastguard Worker */ 3119*8975f5c5SAndroid Build Coastguard Worker 3120*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_GVIO_FIRMWARE_VERSION 8 /* R--I */ 3121*8975f5c5SAndroid Build Coastguard Worker 3122*8975f5c5SAndroid Build Coastguard Worker /* 3123*8975f5c5SAndroid Build Coastguard Worker * The following is deprecated; use NV_CTRL_STRING_GVIO_FIRMWARE_VERSION, 3124*8975f5c5SAndroid Build Coastguard Worker * instead 3125*8975f5c5SAndroid Build Coastguard Worker */ 3126*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_GVO_FIRMWARE_VERSION 8 /* R-- */ 3127*8975f5c5SAndroid Build Coastguard Worker 3128*8975f5c5SAndroid Build Coastguard Worker /* 3129*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_CURRENT_MODELINE - Return the ModeLine currently 3130*8975f5c5SAndroid Build Coastguard Worker * being used by the specified display device. 3131*8975f5c5SAndroid Build Coastguard Worker * 3132*8975f5c5SAndroid Build Coastguard Worker * This attribute may be queried through XNVCTRLQueryTargetStringAttribute() 3133*8975f5c5SAndroid Build Coastguard Worker * using an NV_CTRL_TARGET_TYPE_GPU or NV_CTRL_TARGET_TYPE_X_SCREEN target. 3134*8975f5c5SAndroid Build Coastguard Worker * 3135*8975f5c5SAndroid Build Coastguard Worker * The ModeLine string may be prepended with a comma-separated list of 3136*8975f5c5SAndroid Build Coastguard Worker * "token=value" pairs, separated from the ModeLine string by "::". 3137*8975f5c5SAndroid Build Coastguard Worker * This "token=value" syntax is the same as that used in 3138*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_BINARY_DATA_MODELINES 3139*8975f5c5SAndroid Build Coastguard Worker */ 3140*8975f5c5SAndroid Build Coastguard Worker 3141*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_CURRENT_MODELINE 9 /* R-DG */ 3142*8975f5c5SAndroid Build Coastguard Worker 3143*8975f5c5SAndroid Build Coastguard Worker /* 3144*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_ADD_MODELINE - Adds a ModeLine to the specified 3145*8975f5c5SAndroid Build Coastguard Worker * display device. The ModeLine is not added if validation fails. 3146*8975f5c5SAndroid Build Coastguard Worker * 3147*8975f5c5SAndroid Build Coastguard Worker * The ModeLine string should have the same syntax as a ModeLine in 3148*8975f5c5SAndroid Build Coastguard Worker * the X configuration file; e.g., 3149*8975f5c5SAndroid Build Coastguard Worker * 3150*8975f5c5SAndroid Build Coastguard Worker * "1600x1200" 229.5 1600 1664 1856 2160 1200 1201 1204 1250 +HSync +VSync 3151*8975f5c5SAndroid Build Coastguard Worker */ 3152*8975f5c5SAndroid Build Coastguard Worker 3153*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_ADD_MODELINE 10 /* -WDG */ 3154*8975f5c5SAndroid Build Coastguard Worker 3155*8975f5c5SAndroid Build Coastguard Worker /* 3156*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_DELETE_MODELINE - Deletes an existing ModeLine 3157*8975f5c5SAndroid Build Coastguard Worker * from the specified display device. The currently selected 3158*8975f5c5SAndroid Build Coastguard Worker * ModeLine cannot be deleted. (This also means you cannot delete 3159*8975f5c5SAndroid Build Coastguard Worker * the last ModeLine.) 3160*8975f5c5SAndroid Build Coastguard Worker * 3161*8975f5c5SAndroid Build Coastguard Worker * The ModeLine string should have the same syntax as a ModeLine in 3162*8975f5c5SAndroid Build Coastguard Worker * the X configuration file; e.g., 3163*8975f5c5SAndroid Build Coastguard Worker * 3164*8975f5c5SAndroid Build Coastguard Worker * "1600x1200" 229.5 1600 1664 1856 2160 1200 1201 1204 1250 +HSync +VSync 3165*8975f5c5SAndroid Build Coastguard Worker */ 3166*8975f5c5SAndroid Build Coastguard Worker 3167*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_DELETE_MODELINE 11 /* -WDG */ 3168*8975f5c5SAndroid Build Coastguard Worker 3169*8975f5c5SAndroid Build Coastguard Worker /* 3170*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_CURRENT_METAMODE - Returns the metamode currently 3171*8975f5c5SAndroid Build Coastguard Worker * being used by the specified X screen. The MetaMode string has the 3172*8975f5c5SAndroid Build Coastguard Worker * same syntax as the MetaMode X configuration option, as documented 3173*8975f5c5SAndroid Build Coastguard Worker * in the NVIDIA driver README. 3174*8975f5c5SAndroid Build Coastguard Worker * 3175*8975f5c5SAndroid Build Coastguard Worker * The returned string may be prepended with a comma-separated list of 3176*8975f5c5SAndroid Build Coastguard Worker * "token=value" pairs, separated from the MetaMode string by "::". 3177*8975f5c5SAndroid Build Coastguard Worker * This "token=value" syntax is the same as that used in 3178*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_BINARY_DATA_METAMODES. 3179*8975f5c5SAndroid Build Coastguard Worker */ 3180*8975f5c5SAndroid Build Coastguard Worker 3181*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_CURRENT_METAMODE 12 /* RW-- */ 3182*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_CURRENT_METAMODE_VERSION_1 NV_CTRL_STRING_CURRENT_METAMODE 3183*8975f5c5SAndroid Build Coastguard Worker 3184*8975f5c5SAndroid Build Coastguard Worker /* 3185*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_ADD_METAMODE - Adds a MetaMode to the specified 3186*8975f5c5SAndroid Build Coastguard Worker * X Screen. 3187*8975f5c5SAndroid Build Coastguard Worker * 3188*8975f5c5SAndroid Build Coastguard Worker * It is recommended to not use this attribute, but instead use 3189*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_OPERATION_ADD_METAMODE. 3190*8975f5c5SAndroid Build Coastguard Worker */ 3191*8975f5c5SAndroid Build Coastguard Worker 3192*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_ADD_METAMODE 13 /* -W-- */ 3193*8975f5c5SAndroid Build Coastguard Worker 3194*8975f5c5SAndroid Build Coastguard Worker /* 3195*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_DELETE_METAMODE - Deletes an existing MetaMode from 3196*8975f5c5SAndroid Build Coastguard Worker * the specified X Screen. The currently selected MetaMode cannot be 3197*8975f5c5SAndroid Build Coastguard Worker * deleted. (This also means you cannot delete the last MetaMode). 3198*8975f5c5SAndroid Build Coastguard Worker * The MetaMode string should have the same syntax as the MetaMode X 3199*8975f5c5SAndroid Build Coastguard Worker * configuration option, as documented in the NVIDIA driver README. 3200*8975f5c5SAndroid Build Coastguard Worker */ 3201*8975f5c5SAndroid Build Coastguard Worker 3202*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_DELETE_METAMODE 14 /* -WD-- */ 3203*8975f5c5SAndroid Build Coastguard Worker 3204*8975f5c5SAndroid Build Coastguard Worker /* 3205*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_VCSC_PRODUCT_NAME - Querys the product name of the 3206*8975f5c5SAndroid Build Coastguard Worker * VCSC device. 3207*8975f5c5SAndroid Build Coastguard Worker * 3208*8975f5c5SAndroid Build Coastguard Worker * This attribute must be queried through XNVCTRLQueryTargetStringAttribute() 3209*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_VCSC target. 3210*8975f5c5SAndroid Build Coastguard Worker */ 3211*8975f5c5SAndroid Build Coastguard Worker 3212*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_VCSC_PRODUCT_NAME 15 /* R---V */ 3213*8975f5c5SAndroid Build Coastguard Worker 3214*8975f5c5SAndroid Build Coastguard Worker /* 3215*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_VCSC_PRODUCT_ID - Querys the product ID of the VCSC device. 3216*8975f5c5SAndroid Build Coastguard Worker * 3217*8975f5c5SAndroid Build Coastguard Worker * This attribute must be queried through XNVCTRLQueryTargetStringAttribute() 3218*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_VCSC target. 3219*8975f5c5SAndroid Build Coastguard Worker */ 3220*8975f5c5SAndroid Build Coastguard Worker 3221*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_VCSC_PRODUCT_ID 16 /* R---V */ 3222*8975f5c5SAndroid Build Coastguard Worker 3223*8975f5c5SAndroid Build Coastguard Worker /* 3224*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_VCSC_SERIAL_NUMBER - Querys the unique serial number 3225*8975f5c5SAndroid Build Coastguard Worker * of the VCS device. 3226*8975f5c5SAndroid Build Coastguard Worker * 3227*8975f5c5SAndroid Build Coastguard Worker * This attribute must be queried through XNVCTRLQueryTargetStringAttribute() 3228*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_VCSC target. 3229*8975f5c5SAndroid Build Coastguard Worker */ 3230*8975f5c5SAndroid Build Coastguard Worker 3231*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_VCSC_SERIAL_NUMBER 17 /* R---V */ 3232*8975f5c5SAndroid Build Coastguard Worker 3233*8975f5c5SAndroid Build Coastguard Worker /* 3234*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_VCSC_BUILD_DATE - Querys the date of the VCS device. 3235*8975f5c5SAndroid Build Coastguard Worker * the returned string is in the following format: "Week.Year" 3236*8975f5c5SAndroid Build Coastguard Worker * 3237*8975f5c5SAndroid Build Coastguard Worker * This attribute must be queried through XNVCTRLQueryTargetStringAttribute() 3238*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_VCSC target. 3239*8975f5c5SAndroid Build Coastguard Worker */ 3240*8975f5c5SAndroid Build Coastguard Worker 3241*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_VCSC_BUILD_DATE 18 /* R---V */ 3242*8975f5c5SAndroid Build Coastguard Worker 3243*8975f5c5SAndroid Build Coastguard Worker /* 3244*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_VCSC_FIRMWARE_VERSION - Querys the firmware version 3245*8975f5c5SAndroid Build Coastguard Worker * of the VCS device. 3246*8975f5c5SAndroid Build Coastguard Worker * 3247*8975f5c5SAndroid Build Coastguard Worker * This attribute must be queried through XNVCTRLQueryTargetStringAttribute() 3248*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_VCSC target. 3249*8975f5c5SAndroid Build Coastguard Worker */ 3250*8975f5c5SAndroid Build Coastguard Worker 3251*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_VCSC_FIRMWARE_VERSION 19 /* R---V */ 3252*8975f5c5SAndroid Build Coastguard Worker 3253*8975f5c5SAndroid Build Coastguard Worker /* 3254*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_VCSC_FIRMWARE_REVISION - Querys the firmware revision 3255*8975f5c5SAndroid Build Coastguard Worker * of the VCS device. 3256*8975f5c5SAndroid Build Coastguard Worker * 3257*8975f5c5SAndroid Build Coastguard Worker * This attribute must be queried through XNVCTRLQueryTargetStringAttribute() 3258*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_VCS target. 3259*8975f5c5SAndroid Build Coastguard Worker */ 3260*8975f5c5SAndroid Build Coastguard Worker 3261*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_VCSC_FIRMWARE_REVISION 20 /* R---V */ 3262*8975f5c5SAndroid Build Coastguard Worker 3263*8975f5c5SAndroid Build Coastguard Worker /* 3264*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_VCSC_HARDWARE_VERSION - Querys the hardware version 3265*8975f5c5SAndroid Build Coastguard Worker * of the VCS device. 3266*8975f5c5SAndroid Build Coastguard Worker * 3267*8975f5c5SAndroid Build Coastguard Worker * This attribute must be queried through XNVCTRLQueryTargetStringAttribute() 3268*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_VCSC target. 3269*8975f5c5SAndroid Build Coastguard Worker */ 3270*8975f5c5SAndroid Build Coastguard Worker 3271*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_VCSC_HARDWARE_VERSION 21 /* R---V */ 3272*8975f5c5SAndroid Build Coastguard Worker 3273*8975f5c5SAndroid Build Coastguard Worker /* 3274*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_VCSC_HARDWARE_REVISION - Querys the hardware revision 3275*8975f5c5SAndroid Build Coastguard Worker * of the VCS device. 3276*8975f5c5SAndroid Build Coastguard Worker * 3277*8975f5c5SAndroid Build Coastguard Worker * This attribute must be queried through XNVCTRLQueryTargetStringAttribute() 3278*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_VCSC target. 3279*8975f5c5SAndroid Build Coastguard Worker */ 3280*8975f5c5SAndroid Build Coastguard Worker 3281*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_VCSC_HARDWARE_REVISION 22 /* R---V */ 3282*8975f5c5SAndroid Build Coastguard Worker 3283*8975f5c5SAndroid Build Coastguard Worker /* 3284*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_MOVE_METAMODE - Moves a MetaMode to the specified 3285*8975f5c5SAndroid Build Coastguard Worker * index location. The MetaMode must already exist in the X Screen's 3286*8975f5c5SAndroid Build Coastguard Worker * list of MetaModes (as returned by the NV_CTRL_BINARY_DATA_METAMODES 3287*8975f5c5SAndroid Build Coastguard Worker * attribute). If the index is larger than the number of MetaModes in 3288*8975f5c5SAndroid Build Coastguard Worker * the list, the MetaMode is moved to the end of the list. The 3289*8975f5c5SAndroid Build Coastguard Worker * MetaMode string should have the same syntax as the MetaMode X 3290*8975f5c5SAndroid Build Coastguard Worker * configuration option, as documented in the NVIDIA driver README. 3291*8975f5c5SAndroid Build Coastguard Worker 3292*8975f5c5SAndroid Build Coastguard Worker * The MetaMode string must be prepended with a comma-separated list 3293*8975f5c5SAndroid Build Coastguard Worker * of "token=value" pairs, separated from the MetaMode string by "::". 3294*8975f5c5SAndroid Build Coastguard Worker * Currently, the only valid token is "index", which indicates where 3295*8975f5c5SAndroid Build Coastguard Worker * in the MetaMode list the MetaMode should be moved to. 3296*8975f5c5SAndroid Build Coastguard Worker * 3297*8975f5c5SAndroid Build Coastguard Worker * Other tokens may be added in the future. 3298*8975f5c5SAndroid Build Coastguard Worker * 3299*8975f5c5SAndroid Build Coastguard Worker * E.g., 3300*8975f5c5SAndroid Build Coastguard Worker * "index=5 :: CRT-0: 1024x768 @1024x768 +0+0" 3301*8975f5c5SAndroid Build Coastguard Worker */ 3302*8975f5c5SAndroid Build Coastguard Worker 3303*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_MOVE_METAMODE 23 /* -W-- */ 3304*8975f5c5SAndroid Build Coastguard Worker 3305*8975f5c5SAndroid Build Coastguard Worker /* 3306*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_VALID_HORIZ_SYNC_RANGES - returns the valid 3307*8975f5c5SAndroid Build Coastguard Worker * horizontal sync ranges used to perform mode validation for the 3308*8975f5c5SAndroid Build Coastguard Worker * specified display device. The ranges are in the same format as the 3309*8975f5c5SAndroid Build Coastguard Worker * "HorizSync" X config option: 3310*8975f5c5SAndroid Build Coastguard Worker * 3311*8975f5c5SAndroid Build Coastguard Worker * "horizsync-range may be a comma separated list of either discrete 3312*8975f5c5SAndroid Build Coastguard Worker * values or ranges of values. A range of values is two values 3313*8975f5c5SAndroid Build Coastguard Worker * separated by a dash." 3314*8975f5c5SAndroid Build Coastguard Worker * 3315*8975f5c5SAndroid Build Coastguard Worker * The values are in kHz. 3316*8975f5c5SAndroid Build Coastguard Worker * 3317*8975f5c5SAndroid Build Coastguard Worker * Additionally, the string may be prepended with a comma-separated 3318*8975f5c5SAndroid Build Coastguard Worker * list of "token=value" pairs, separated from the HorizSync string by 3319*8975f5c5SAndroid Build Coastguard Worker * "::". Valid tokens: 3320*8975f5c5SAndroid Build Coastguard Worker * 3321*8975f5c5SAndroid Build Coastguard Worker * Token Value 3322*8975f5c5SAndroid Build Coastguard Worker * "source" "edid" - HorizSync is from the display device's EDID 3323*8975f5c5SAndroid Build Coastguard Worker * "xconfig" - HorizSync is from the "HorizSync" entry in 3324*8975f5c5SAndroid Build Coastguard Worker * the Monitor section of the X config file 3325*8975f5c5SAndroid Build Coastguard Worker * "option" - HorizSync is from the "HorizSync" NVIDIA X 3326*8975f5c5SAndroid Build Coastguard Worker * config option 3327*8975f5c5SAndroid Build Coastguard Worker * "twinview" - HorizSync is from the "SecondMonitorHorizSync" 3328*8975f5c5SAndroid Build Coastguard Worker * NVIDIA X config option 3329*8975f5c5SAndroid Build Coastguard Worker * "builtin" - HorizSync is from NVIDIA X driver builtin 3330*8975f5c5SAndroid Build Coastguard Worker * default values 3331*8975f5c5SAndroid Build Coastguard Worker * 3332*8975f5c5SAndroid Build Coastguard Worker * Additional tokens and/or values may be added in the future. 3333*8975f5c5SAndroid Build Coastguard Worker * 3334*8975f5c5SAndroid Build Coastguard Worker * Example: "source=edid :: 30.000-62.000" 3335*8975f5c5SAndroid Build Coastguard Worker */ 3336*8975f5c5SAndroid Build Coastguard Worker 3337*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_VALID_HORIZ_SYNC_RANGES 24 /* R-DG */ 3338*8975f5c5SAndroid Build Coastguard Worker 3339*8975f5c5SAndroid Build Coastguard Worker /* 3340*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_VALID_VERT_REFRESH_RANGES - returns the valid 3341*8975f5c5SAndroid Build Coastguard Worker * vertical refresh ranges used to perform mode validation for the 3342*8975f5c5SAndroid Build Coastguard Worker * specified display device. The ranges are in the same format as the 3343*8975f5c5SAndroid Build Coastguard Worker * "VertRefresh" X config option: 3344*8975f5c5SAndroid Build Coastguard Worker * 3345*8975f5c5SAndroid Build Coastguard Worker * "vertrefresh-range may be a comma separated list of either discrete 3346*8975f5c5SAndroid Build Coastguard Worker * values or ranges of values. A range of values is two values 3347*8975f5c5SAndroid Build Coastguard Worker * separated by a dash." 3348*8975f5c5SAndroid Build Coastguard Worker * 3349*8975f5c5SAndroid Build Coastguard Worker * The values are in Hz. 3350*8975f5c5SAndroid Build Coastguard Worker * 3351*8975f5c5SAndroid Build Coastguard Worker * Additionally, the string may be prepended with a comma-separated 3352*8975f5c5SAndroid Build Coastguard Worker * list of "token=value" pairs, separated from the VertRefresh string by 3353*8975f5c5SAndroid Build Coastguard Worker * "::". Valid tokens: 3354*8975f5c5SAndroid Build Coastguard Worker * 3355*8975f5c5SAndroid Build Coastguard Worker * Token Value 3356*8975f5c5SAndroid Build Coastguard Worker * "source" "edid" - VertRefresh is from the display device's EDID 3357*8975f5c5SAndroid Build Coastguard Worker * "xconfig" - VertRefresh is from the "VertRefresh" entry in 3358*8975f5c5SAndroid Build Coastguard Worker * the Monitor section of the X config file 3359*8975f5c5SAndroid Build Coastguard Worker * "option" - VertRefresh is from the "VertRefresh" NVIDIA X 3360*8975f5c5SAndroid Build Coastguard Worker * config option 3361*8975f5c5SAndroid Build Coastguard Worker * "twinview" - VertRefresh is from the "SecondMonitorVertRefresh" 3362*8975f5c5SAndroid Build Coastguard Worker * NVIDIA X config option 3363*8975f5c5SAndroid Build Coastguard Worker * "builtin" - VertRefresh is from NVIDIA X driver builtin 3364*8975f5c5SAndroid Build Coastguard Worker * default values 3365*8975f5c5SAndroid Build Coastguard Worker * 3366*8975f5c5SAndroid Build Coastguard Worker * Additional tokens and/or values may be added in the future. 3367*8975f5c5SAndroid Build Coastguard Worker * 3368*8975f5c5SAndroid Build Coastguard Worker * Example: "source=edid :: 50.000-75.000" 3369*8975f5c5SAndroid Build Coastguard Worker */ 3370*8975f5c5SAndroid Build Coastguard Worker 3371*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_VALID_VERT_REFRESH_RANGES 25 /* R-DG */ 3372*8975f5c5SAndroid Build Coastguard Worker 3373*8975f5c5SAndroid Build Coastguard Worker /* 3374*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_XINERAMA_SCREEN_INFO - returns the physical X Screen's 3375*8975f5c5SAndroid Build Coastguard Worker * initial position and size (in absolute coordinates) within the Xinerama 3376*8975f5c5SAndroid Build Coastguard Worker * desktop as the "token=value" string: "x=#, y=#, width=#, height=#" 3377*8975f5c5SAndroid Build Coastguard Worker * 3378*8975f5c5SAndroid Build Coastguard Worker * Querying this attribute returns FALSE if NV_CTRL_XINERAMA is not 3379*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_XINERAMA_ON. 3380*8975f5c5SAndroid Build Coastguard Worker */ 3381*8975f5c5SAndroid Build Coastguard Worker 3382*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_XINERAMA_SCREEN_INFO 26 /* R--- */ 3383*8975f5c5SAndroid Build Coastguard Worker 3384*8975f5c5SAndroid Build Coastguard Worker /* 3385*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_TWINVIEW_XINERAMA_INFO_ORDER - used to specify the 3386*8975f5c5SAndroid Build Coastguard Worker * order that display devices will be returned via Xinerama when 3387*8975f5c5SAndroid Build Coastguard Worker * nvidiaXineramaInfo is enabled. Follows the same syntax as the 3388*8975f5c5SAndroid Build Coastguard Worker * nvidiaXineramaInfoOrder X config option. 3389*8975f5c5SAndroid Build Coastguard Worker */ 3390*8975f5c5SAndroid Build Coastguard Worker 3391*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_NVIDIA_XINERAMA_INFO_ORDER 27 /* RW-- */ 3392*8975f5c5SAndroid Build Coastguard Worker 3393*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_TWINVIEW_XINERAMA_INFO_ORDER \ 3394*8975f5c5SAndroid Build Coastguard Worker NV_CTRL_STRING_NVIDIA_XINERAMA_INFO_ORDER /* for backwards compatibility: */ 3395*8975f5c5SAndroid Build Coastguard Worker 3396*8975f5c5SAndroid Build Coastguard Worker /* 3397*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_SLI_MODE - returns a string describing the current 3398*8975f5c5SAndroid Build Coastguard Worker * SLI mode, if any, or FALSE if SLI is not currently enabled. 3399*8975f5c5SAndroid Build Coastguard Worker * 3400*8975f5c5SAndroid Build Coastguard Worker * This string should be used for informational purposes only, and 3401*8975f5c5SAndroid Build Coastguard Worker * should not be used to distinguish between SLI modes, other than to 3402*8975f5c5SAndroid Build Coastguard Worker * recognize when SLI is disabled (FALSE is returned) or 3403*8975f5c5SAndroid Build Coastguard Worker * enabled (the returned string is non-NULL and describes the current 3404*8975f5c5SAndroid Build Coastguard Worker * SLI configuration). 3405*8975f5c5SAndroid Build Coastguard Worker */ 3406*8975f5c5SAndroid Build Coastguard Worker 3407*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_SLI_MODE 28 /* R---*/ 3408*8975f5c5SAndroid Build Coastguard Worker 3409*8975f5c5SAndroid Build Coastguard Worker /* 3410*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_PERFORMANCE_MODES - returns a string with all the 3411*8975f5c5SAndroid Build Coastguard Worker * performance modes defined for this GPU along with their associated 3412*8975f5c5SAndroid Build Coastguard Worker * NV Clock and Memory Clock values. 3413*8975f5c5SAndroid Build Coastguard Worker * 3414*8975f5c5SAndroid Build Coastguard Worker * Each performance modes are returned as a comma-separated list of 3415*8975f5c5SAndroid Build Coastguard Worker * "token=value" pairs. Each set of performance mode tokens are separated 3416*8975f5c5SAndroid Build Coastguard Worker * by a ";". Valid tokens: 3417*8975f5c5SAndroid Build Coastguard Worker * 3418*8975f5c5SAndroid Build Coastguard Worker * Token Value 3419*8975f5c5SAndroid Build Coastguard Worker * "perf" integer - the Performance level 3420*8975f5c5SAndroid Build Coastguard Worker * "nvclock" integer - the GPU clocks (in MHz) for the perf level 3421*8975f5c5SAndroid Build Coastguard Worker * "memclock" integer - the memory clocks (in MHz) for the perf level 3422*8975f5c5SAndroid Build Coastguard Worker * 3423*8975f5c5SAndroid Build Coastguard Worker * 3424*8975f5c5SAndroid Build Coastguard Worker * Example: 3425*8975f5c5SAndroid Build Coastguard Worker * 3426*8975f5c5SAndroid Build Coastguard Worker * perf=0, nvclock=500, memclock=505 ; perf=1, nvclock=650, memclock=505 3427*8975f5c5SAndroid Build Coastguard Worker * 3428*8975f5c5SAndroid Build Coastguard Worker * This attribute may be queried through XNVCTRLQueryTargetStringAttribute() 3429*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_GPU or NV_CTRL_TARGET_TYPE_X_SCREEN target. 3430*8975f5c5SAndroid Build Coastguard Worker */ 3431*8975f5c5SAndroid Build Coastguard Worker 3432*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_PERFORMANCE_MODES 29 /* R--G */ 3433*8975f5c5SAndroid Build Coastguard Worker 3434*8975f5c5SAndroid Build Coastguard Worker /* 3435*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_VCSC_FAN_STATUS - returns a string with status of all the 3436*8975f5c5SAndroid Build Coastguard Worker * fans in the Visual Computing System, if such a query is supported. Fan 3437*8975f5c5SAndroid Build Coastguard Worker * information is reported along with its tachometer reading (in RPM) and a 3438*8975f5c5SAndroid Build Coastguard Worker * flag indicating whether the fan has failed or not. 3439*8975f5c5SAndroid Build Coastguard Worker * 3440*8975f5c5SAndroid Build Coastguard Worker * Valid tokens: 3441*8975f5c5SAndroid Build Coastguard Worker * 3442*8975f5c5SAndroid Build Coastguard Worker * Token Value 3443*8975f5c5SAndroid Build Coastguard Worker * "fan" integer - the Fan index 3444*8975f5c5SAndroid Build Coastguard Worker * "speed" integer - the tachometer reading of the fan in rpm 3445*8975f5c5SAndroid Build Coastguard Worker * "fail" integer - flag to indicate whether the fan has failed 3446*8975f5c5SAndroid Build Coastguard Worker * 3447*8975f5c5SAndroid Build Coastguard Worker * Example: 3448*8975f5c5SAndroid Build Coastguard Worker * 3449*8975f5c5SAndroid Build Coastguard Worker * fan=0, speed=694, fail=0 ; fan=1, speed=693, fail=0 3450*8975f5c5SAndroid Build Coastguard Worker * 3451*8975f5c5SAndroid Build Coastguard Worker * This attribute must be queried through XNVCTRLQueryTargetStringAttribute() 3452*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_VCSC target. 3453*8975f5c5SAndroid Build Coastguard Worker * 3454*8975f5c5SAndroid Build Coastguard Worker */ 3455*8975f5c5SAndroid Build Coastguard Worker 3456*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_VCSC_FAN_STATUS 30 /* R---V */ 3457*8975f5c5SAndroid Build Coastguard Worker 3458*8975f5c5SAndroid Build Coastguard Worker /* 3459*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_VCSC_TEMPERATURES - returns a string with all Temperature 3460*8975f5c5SAndroid Build Coastguard Worker * readings in the Visual Computing System, if such a query is supported. 3461*8975f5c5SAndroid Build Coastguard Worker * Intake, Exhaust and Board Temperature values are reported in Celcius. 3462*8975f5c5SAndroid Build Coastguard Worker * 3463*8975f5c5SAndroid Build Coastguard Worker * Valid tokens: 3464*8975f5c5SAndroid Build Coastguard Worker * 3465*8975f5c5SAndroid Build Coastguard Worker * Token Value 3466*8975f5c5SAndroid Build Coastguard Worker * "intake" integer - the intake temperature for the VCS 3467*8975f5c5SAndroid Build Coastguard Worker * "exhaust" integer - the exhaust temperature for the VCS 3468*8975f5c5SAndroid Build Coastguard Worker * "board" integer - the board temperature of the VCS 3469*8975f5c5SAndroid Build Coastguard Worker * 3470*8975f5c5SAndroid Build Coastguard Worker * Example: 3471*8975f5c5SAndroid Build Coastguard Worker * 3472*8975f5c5SAndroid Build Coastguard Worker * intake=29, exhaust=46, board=41 3473*8975f5c5SAndroid Build Coastguard Worker * 3474*8975f5c5SAndroid Build Coastguard Worker * This attribute must be queried through XNVCTRLQueryTargetStringAttribute() 3475*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_VCSC target. 3476*8975f5c5SAndroid Build Coastguard Worker * 3477*8975f5c5SAndroid Build Coastguard Worker */ 3478*8975f5c5SAndroid Build Coastguard Worker 3479*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_VCSC_TEMPERATURES 31 /* R---V */ 3480*8975f5c5SAndroid Build Coastguard Worker 3481*8975f5c5SAndroid Build Coastguard Worker /* 3482*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_VCSC_PSU_INFO - returns a string with all Power Supply Unit 3483*8975f5c5SAndroid Build Coastguard Worker * related readings in the Visual Computing System, if such a query is 3484*8975f5c5SAndroid Build Coastguard Worker * supported. Current in amperes, Power in watts, Voltage in volts and PSU 3485*8975f5c5SAndroid Build Coastguard Worker * state may be reported. Not all PSU types support all of these values, and 3486*8975f5c5SAndroid Build Coastguard Worker * therefore some readings may be unknown. 3487*8975f5c5SAndroid Build Coastguard Worker * 3488*8975f5c5SAndroid Build Coastguard Worker * Valid tokens: 3489*8975f5c5SAndroid Build Coastguard Worker * 3490*8975f5c5SAndroid Build Coastguard Worker * Token Value 3491*8975f5c5SAndroid Build Coastguard Worker * "current" integer - the current drawn in amperes by the VCS 3492*8975f5c5SAndroid Build Coastguard Worker * "power" integer - the power drawn in watts by the VCS 3493*8975f5c5SAndroid Build Coastguard Worker * "voltage" integer - the voltage reading of the VCS 3494*8975f5c5SAndroid Build Coastguard Worker * "state" integer - flag to indicate whether PSU is operating normally 3495*8975f5c5SAndroid Build Coastguard Worker * 3496*8975f5c5SAndroid Build Coastguard Worker * Example: 3497*8975f5c5SAndroid Build Coastguard Worker * 3498*8975f5c5SAndroid Build Coastguard Worker * current=10, power=15, voltage=unknown, state=normal 3499*8975f5c5SAndroid Build Coastguard Worker * 3500*8975f5c5SAndroid Build Coastguard Worker * This attribute must be queried through XNVCTRLQueryTargetStringAttribute() 3501*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_VCSC target. 3502*8975f5c5SAndroid Build Coastguard Worker * 3503*8975f5c5SAndroid Build Coastguard Worker */ 3504*8975f5c5SAndroid Build Coastguard Worker 3505*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_VCSC_PSU_INFO 32 /* R---V */ 3506*8975f5c5SAndroid Build Coastguard Worker 3507*8975f5c5SAndroid Build Coastguard Worker /* 3508*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_GVIO_VIDEO_FORMAT_NAME - query the name for the specified 3509*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVIO_VIDEO_FORMAT_*. So that this can be queried with existing 3510*8975f5c5SAndroid Build Coastguard Worker * interfaces, XNVCTRLQueryStringAttribute() should be used, and the video 3511*8975f5c5SAndroid Build Coastguard Worker * format specified in the display_mask field; eg: 3512*8975f5c5SAndroid Build Coastguard Worker * 3513*8975f5c5SAndroid Build Coastguard Worker * XNVCTRLQueryStringAttribute(dpy, 3514*8975f5c5SAndroid Build Coastguard Worker * screen, 3515*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVIO_VIDEO_FORMAT_720P_60_00_SMPTE296, 3516*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVIO_VIDEO_FORMAT_NAME, 3517*8975f5c5SAndroid Build Coastguard Worker * &name); 3518*8975f5c5SAndroid Build Coastguard Worker */ 3519*8975f5c5SAndroid Build Coastguard Worker 3520*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_GVIO_VIDEO_FORMAT_NAME 33 /* R--GI */ 3521*8975f5c5SAndroid Build Coastguard Worker 3522*8975f5c5SAndroid Build Coastguard Worker /* 3523*8975f5c5SAndroid Build Coastguard Worker * The following is deprecated; use NV_CTRL_STRING_GVIO_VIDEO_FORMAT_NAME, 3524*8975f5c5SAndroid Build Coastguard Worker * instead 3525*8975f5c5SAndroid Build Coastguard Worker */ 3526*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_GVO_VIDEO_FORMAT_NAME 33 /* R--- */ 3527*8975f5c5SAndroid Build Coastguard Worker 3528*8975f5c5SAndroid Build Coastguard Worker /* 3529*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_GPU_CURRENT_CLOCK_FREQS - returns a string with the 3530*8975f5c5SAndroid Build Coastguard Worker * associated NV Clock, Memory Clock and Processor Clock values. 3531*8975f5c5SAndroid Build Coastguard Worker * 3532*8975f5c5SAndroid Build Coastguard Worker * Current valid tokens are "nvclock", "memclock", and "processorclock". 3533*8975f5c5SAndroid Build Coastguard Worker * Not all tokens will be reported on all GPUs, and additional tokens 3534*8975f5c5SAndroid Build Coastguard Worker * may be added in the future. 3535*8975f5c5SAndroid Build Coastguard Worker * 3536*8975f5c5SAndroid Build Coastguard Worker * Clock values are returned as a comma-separated list of 3537*8975f5c5SAndroid Build Coastguard Worker * "token=value" pairs. 3538*8975f5c5SAndroid Build Coastguard Worker * Valid tokens: 3539*8975f5c5SAndroid Build Coastguard Worker * 3540*8975f5c5SAndroid Build Coastguard Worker * Token Value 3541*8975f5c5SAndroid Build Coastguard Worker * "nvclock" integer - the GPU clocks (in MHz) for the current 3542*8975f5c5SAndroid Build Coastguard Worker * perf level 3543*8975f5c5SAndroid Build Coastguard Worker * "memclock" integer - the memory clocks (in MHz) for the current 3544*8975f5c5SAndroid Build Coastguard Worker * perf level 3545*8975f5c5SAndroid Build Coastguard Worker * "processorclock" integer - the processor clocks (in MHz) for the perf level 3546*8975f5c5SAndroid Build Coastguard Worker * 3547*8975f5c5SAndroid Build Coastguard Worker * 3548*8975f5c5SAndroid Build Coastguard Worker * Example: 3549*8975f5c5SAndroid Build Coastguard Worker * 3550*8975f5c5SAndroid Build Coastguard Worker * nvclock=459, memclock=400, processorclock=918 3551*8975f5c5SAndroid Build Coastguard Worker * 3552*8975f5c5SAndroid Build Coastguard Worker * This attribute may be queried through XNVCTRLQueryTargetStringAttribute() 3553*8975f5c5SAndroid Build Coastguard Worker * using an NV_CTRL_TARGET_TYPE_GPU or NV_CTRL_TARGET_TYPE_X_SCREEN target. 3554*8975f5c5SAndroid Build Coastguard Worker */ 3555*8975f5c5SAndroid Build Coastguard Worker 3556*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_GPU_CURRENT_CLOCK_FREQS 34 /* RW-G */ 3557*8975f5c5SAndroid Build Coastguard Worker 3558*8975f5c5SAndroid Build Coastguard Worker /* 3559*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_3D_VISION_PRO_TRANSCEIVER_HARDWARE_REVISION - Returns the 3560*8975f5c5SAndroid Build Coastguard Worker * hardware revision of the 3D Vision Pro transceiver. 3561*8975f5c5SAndroid Build Coastguard Worker */ 3562*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_3D_VISION_PRO_TRANSCEIVER_HARDWARE_REVISION 35 /* R--T */ 3563*8975f5c5SAndroid Build Coastguard Worker 3564*8975f5c5SAndroid Build Coastguard Worker /* 3565*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_3D_VISION_PRO_TRANSCEIVER_FIRMWARE_VERSION_A - Returns the 3566*8975f5c5SAndroid Build Coastguard Worker * firmware version of chip A of the 3D Vision Pro transceiver. 3567*8975f5c5SAndroid Build Coastguard Worker */ 3568*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_3D_VISION_PRO_TRANSCEIVER_FIRMWARE_VERSION_A 36 /* R--T */ 3569*8975f5c5SAndroid Build Coastguard Worker 3570*8975f5c5SAndroid Build Coastguard Worker /* 3571*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_3D_VISION_PRO_TRANSCEIVER_FIRMWARE_DATE_A - Returns the 3572*8975f5c5SAndroid Build Coastguard Worker * date of the firmware of chip A of the 3D Vision Pro transceiver. 3573*8975f5c5SAndroid Build Coastguard Worker */ 3574*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_3D_VISION_PRO_TRANSCEIVER_FIRMWARE_DATE_A 37 /* R--T */ 3575*8975f5c5SAndroid Build Coastguard Worker 3576*8975f5c5SAndroid Build Coastguard Worker /* 3577*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_3D_VISION_PRO_TRANSCEIVER_FIRMWARE_VERSION_B - Returns the 3578*8975f5c5SAndroid Build Coastguard Worker * firmware version of chip B of the 3D Vision Pro transceiver. 3579*8975f5c5SAndroid Build Coastguard Worker */ 3580*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_3D_VISION_PRO_TRANSCEIVER_FIRMWARE_VERSION_B 38 /* R--T */ 3581*8975f5c5SAndroid Build Coastguard Worker 3582*8975f5c5SAndroid Build Coastguard Worker /* 3583*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_3D_VISION_PRO_TRANSCEIVER_FIRMWARE_DATE_B - Returns the 3584*8975f5c5SAndroid Build Coastguard Worker * date of the firmware of chip B of the 3D Vision Pro transceiver. 3585*8975f5c5SAndroid Build Coastguard Worker */ 3586*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_3D_VISION_PRO_TRANSCEIVER_FIRMWARE_DATE_B 39 /* R--T */ 3587*8975f5c5SAndroid Build Coastguard Worker 3588*8975f5c5SAndroid Build Coastguard Worker /* 3589*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_3D_VISION_PRO_TRANSCEIVER_ADDRESS - Returns the RF address 3590*8975f5c5SAndroid Build Coastguard Worker * of the 3D Vision Pro transceiver. 3591*8975f5c5SAndroid Build Coastguard Worker */ 3592*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_3D_VISION_PRO_TRANSCEIVER_ADDRESS 40 /* R--T */ 3593*8975f5c5SAndroid Build Coastguard Worker 3594*8975f5c5SAndroid Build Coastguard Worker /* 3595*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_3D_VISION_PRO_GLASSES_FIRMWARE_VERSION_A - Returns the 3596*8975f5c5SAndroid Build Coastguard Worker * firmware version of chip A of the glasses. 3597*8975f5c5SAndroid Build Coastguard Worker * Use the display_mask parameter to specify the glasses id. 3598*8975f5c5SAndroid Build Coastguard Worker */ 3599*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_3D_VISION_PRO_GLASSES_FIRMWARE_VERSION_A 41 /* R--T */ 3600*8975f5c5SAndroid Build Coastguard Worker 3601*8975f5c5SAndroid Build Coastguard Worker /* 3602*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_3D_VISION_PRO_GLASSES_FIRMWARE_DATE_A - Returns the 3603*8975f5c5SAndroid Build Coastguard Worker * date of the firmware of chip A of the glasses. 3604*8975f5c5SAndroid Build Coastguard Worker * Use the display_mask parameter to specify the glasses id. 3605*8975f5c5SAndroid Build Coastguard Worker */ 3606*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_3D_VISION_PRO_GLASSES_FIRMWARE_DATE_A 42 /* R--T */ 3607*8975f5c5SAndroid Build Coastguard Worker 3608*8975f5c5SAndroid Build Coastguard Worker /* 3609*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_3D_VISION_PRO_GLASSES_ADDRESS - Returns the RF address 3610*8975f5c5SAndroid Build Coastguard Worker * of the glasses. 3611*8975f5c5SAndroid Build Coastguard Worker * Use the display_mask parameter to specify the glasses id. 3612*8975f5c5SAndroid Build Coastguard Worker */ 3613*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_3D_VISION_PRO_GLASSES_ADDRESS 43 /* R--T */ 3614*8975f5c5SAndroid Build Coastguard Worker 3615*8975f5c5SAndroid Build Coastguard Worker /* 3616*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_3D_VISION_PRO_GLASSES_NAME - Controls the name the 3617*8975f5c5SAndroid Build Coastguard Worker * glasses should use. 3618*8975f5c5SAndroid Build Coastguard Worker * Use the display_mask parameter to specify the glasses id. 3619*8975f5c5SAndroid Build Coastguard Worker * Glasses' name should start and end with an alpha-numeric character. 3620*8975f5c5SAndroid Build Coastguard Worker */ 3621*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_3D_VISION_PRO_GLASSES_NAME 44 /* RW-T */ 3622*8975f5c5SAndroid Build Coastguard Worker 3623*8975f5c5SAndroid Build Coastguard Worker /* 3624*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_CURRENT_METAMODE_VERSION_2 - Returns the metamode currently 3625*8975f5c5SAndroid Build Coastguard Worker * being used by the specified X screen. The MetaMode string has the same 3626*8975f5c5SAndroid Build Coastguard Worker * syntax as the MetaMode X configuration option, as documented in the NVIDIA 3627*8975f5c5SAndroid Build Coastguard Worker * driver README. Also, see NV_CTRL_BINARY_DATA_METAMODES_VERSION_2 for more 3628*8975f5c5SAndroid Build Coastguard Worker * details on the base syntax. 3629*8975f5c5SAndroid Build Coastguard Worker * 3630*8975f5c5SAndroid Build Coastguard Worker * The returned string may also be prepended with a comma-separated list of 3631*8975f5c5SAndroid Build Coastguard Worker * "token=value" pairs, separated from the MetaMode string by "::". 3632*8975f5c5SAndroid Build Coastguard Worker */ 3633*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_CURRENT_METAMODE_VERSION_2 45 /* RW-- */ 3634*8975f5c5SAndroid Build Coastguard Worker 3635*8975f5c5SAndroid Build Coastguard Worker /* 3636*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_DISPLAY_NAME_TYPE_BASENAME - Returns a type name for the 3637*8975f5c5SAndroid Build Coastguard Worker * display device ("CRT", "DFP", or "TV"). However, note that the determination 3638*8975f5c5SAndroid Build Coastguard Worker * of the name is based on the protocol through which the X driver communicates 3639*8975f5c5SAndroid Build Coastguard Worker * to the display device. E.g., if the driver communicates using VGA ,then the 3640*8975f5c5SAndroid Build Coastguard Worker * basename is "CRT"; if the driver communicates using TMDS, LVDS, or DP, then 3641*8975f5c5SAndroid Build Coastguard Worker * the name is "DFP". 3642*8975f5c5SAndroid Build Coastguard Worker */ 3643*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_DISPLAY_NAME_TYPE_BASENAME 46 /* R-D- */ 3644*8975f5c5SAndroid Build Coastguard Worker 3645*8975f5c5SAndroid Build Coastguard Worker /* 3646*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_DISPLAY_NAME_TYPE_ID - Returns the type-based name + ID for 3647*8975f5c5SAndroid Build Coastguard Worker * the display device, e.g. "CRT-0", "DFP-1", "TV-2". If this device is a 3648*8975f5c5SAndroid Build Coastguard Worker * DisplayPort 1.2 device, then this name will also be prepended with the 3649*8975f5c5SAndroid Build Coastguard Worker * device's port address like so: "DFP-1.0.1.2.3". See 3650*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_DISPLAY_NAME_TYPE_BASENAME for more information about the 3651*8975f5c5SAndroid Build Coastguard Worker * construction of type-based names. 3652*8975f5c5SAndroid Build Coastguard Worker */ 3653*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_DISPLAY_NAME_TYPE_ID 47 /* R-D- */ 3654*8975f5c5SAndroid Build Coastguard Worker 3655*8975f5c5SAndroid Build Coastguard Worker /* 3656*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_DISPLAY_NAME_DP_GUID - Returns the GUID of the DisplayPort 3657*8975f5c5SAndroid Build Coastguard Worker * display device. e.g. "DP-GUID-f16a5bde-79f3-11e1-b2ae-8b5a8969ba9c" 3658*8975f5c5SAndroid Build Coastguard Worker * 3659*8975f5c5SAndroid Build Coastguard Worker * The display device must be a DisplayPort 1.2 device. 3660*8975f5c5SAndroid Build Coastguard Worker */ 3661*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_DISPLAY_NAME_DP_GUID 48 /* R-D- */ 3662*8975f5c5SAndroid Build Coastguard Worker 3663*8975f5c5SAndroid Build Coastguard Worker /* 3664*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_DISPLAY_NAME_EDID_HASH - Returns the SHA-1 hash of the 3665*8975f5c5SAndroid Build Coastguard Worker * display device's EDID in 8-4-4-4-12 UID format. e.g. 3666*8975f5c5SAndroid Build Coastguard Worker * "DPY-EDID-f16a5bde-79f3-11e1-b2ae-8b5a8969ba9c" 3667*8975f5c5SAndroid Build Coastguard Worker * 3668*8975f5c5SAndroid Build Coastguard Worker * The display device must have a valid EDID. 3669*8975f5c5SAndroid Build Coastguard Worker */ 3670*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_DISPLAY_NAME_EDID_HASH 49 /* R-D- */ 3671*8975f5c5SAndroid Build Coastguard Worker 3672*8975f5c5SAndroid Build Coastguard Worker /* 3673*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_DISPLAY_NAME_TARGET_INDEX - Returns the current NV-CONTROL 3674*8975f5c5SAndroid Build Coastguard Worker * target ID (name) of the display device. e.g. "DPY-1", "DPY-4" 3675*8975f5c5SAndroid Build Coastguard Worker * 3676*8975f5c5SAndroid Build Coastguard Worker * This name for the display device is not guarenteed to be the same between 3677*8975f5c5SAndroid Build Coastguard Worker * different runs of the X server. 3678*8975f5c5SAndroid Build Coastguard Worker */ 3679*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_DISPLAY_NAME_TARGET_INDEX 50 /* R-D- */ 3680*8975f5c5SAndroid Build Coastguard Worker 3681*8975f5c5SAndroid Build Coastguard Worker /* 3682*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_DISPLAY_NAME_RANDR - Returns the RandR output name for the 3683*8975f5c5SAndroid Build Coastguard Worker * display device. e.g. "VGA-1", "DVI-I-0", "DVI-D-3", "LVDS-1", "DP-2", 3684*8975f5c5SAndroid Build Coastguard Worker * "HDMI-3", "eDP-6". This name should match If this device is a DisplayPort 3685*8975f5c5SAndroid Build Coastguard Worker * 1.2 device, then this name will also be prepended with the device's port 3686*8975f5c5SAndroid Build Coastguard Worker * address like so: "DVI-I-3.0.1.2.3" 3687*8975f5c5SAndroid Build Coastguard Worker */ 3688*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_DISPLAY_NAME_RANDR 51 /* R-D- */ 3689*8975f5c5SAndroid Build Coastguard Worker 3690*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_LAST_ATTRIBUTE NV_CTRL_STRING_DISPLAY_NAME_RANDR 3691*8975f5c5SAndroid Build Coastguard Worker 3692*8975f5c5SAndroid Build Coastguard Worker /**************************************************************************/ 3693*8975f5c5SAndroid Build Coastguard Worker 3694*8975f5c5SAndroid Build Coastguard Worker /* 3695*8975f5c5SAndroid Build Coastguard Worker * Binary Data Attributes: 3696*8975f5c5SAndroid Build Coastguard Worker * 3697*8975f5c5SAndroid Build Coastguard Worker * Binary data attributes can be queryied through the XNVCTRLQueryBinaryData() 3698*8975f5c5SAndroid Build Coastguard Worker * and XNVCTRLQueryTargetBinaryData() function calls. 3699*8975f5c5SAndroid Build Coastguard Worker * 3700*8975f5c5SAndroid Build Coastguard Worker * There are currently no binary data attributes that can be set. 3701*8975f5c5SAndroid Build Coastguard Worker * 3702*8975f5c5SAndroid Build Coastguard Worker * Unless otherwise noted, all Binary data attributes can be queried 3703*8975f5c5SAndroid Build Coastguard Worker * using an NV_CTRL_TARGET_TYPE_X_SCREEN target. Attributes that cannot take 3704*8975f5c5SAndroid Build Coastguard Worker * an NV_CTRL_TARGET_TYPE_X_SCREEN target also cannot be queried through 3705*8975f5c5SAndroid Build Coastguard Worker * XNVCTRLQueryBinaryData() (Since an X Screen target is assumed). 3706*8975f5c5SAndroid Build Coastguard Worker */ 3707*8975f5c5SAndroid Build Coastguard Worker 3708*8975f5c5SAndroid Build Coastguard Worker /* 3709*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_BINARY_DATA_EDID - Returns a display device's EDID information 3710*8975f5c5SAndroid Build Coastguard Worker * data. 3711*8975f5c5SAndroid Build Coastguard Worker * 3712*8975f5c5SAndroid Build Coastguard Worker * This attribute may be queried through XNVCTRLQueryTargetBinaryData() 3713*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_GPU or NV_CTRL_TARGET_TYPE_X_SCREEN target. 3714*8975f5c5SAndroid Build Coastguard Worker */ 3715*8975f5c5SAndroid Build Coastguard Worker 3716*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_BINARY_DATA_EDID 0 /* R-DG */ 3717*8975f5c5SAndroid Build Coastguard Worker 3718*8975f5c5SAndroid Build Coastguard Worker /* 3719*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_BINARY_DATA_MODELINES - Returns a display device's supported 3720*8975f5c5SAndroid Build Coastguard Worker * ModeLines. ModeLines are returned in a buffer, separated by a single 3721*8975f5c5SAndroid Build Coastguard Worker * '\0' and terminated by two consecutive '\0' s like so: 3722*8975f5c5SAndroid Build Coastguard Worker * 3723*8975f5c5SAndroid Build Coastguard Worker * "ModeLine 1\0ModeLine 2\0ModeLine 3\0Last ModeLine\0\0" 3724*8975f5c5SAndroid Build Coastguard Worker * 3725*8975f5c5SAndroid Build Coastguard Worker * This attribute may be queried through XNVCTRLQueryTargetBinaryData() 3726*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_GPU or NV_CTRL_TARGET_TYPE_X_SCREEN target. 3727*8975f5c5SAndroid Build Coastguard Worker * 3728*8975f5c5SAndroid Build Coastguard Worker * Each ModeLine string may be prepended with a comma-separated list 3729*8975f5c5SAndroid Build Coastguard Worker * of "token=value" pairs, separated from the ModeLine string with a 3730*8975f5c5SAndroid Build Coastguard Worker * "::". Valid tokens: 3731*8975f5c5SAndroid Build Coastguard Worker * 3732*8975f5c5SAndroid Build Coastguard Worker * Token Value 3733*8975f5c5SAndroid Build Coastguard Worker * "source" "xserver" - the ModeLine is from the core X server 3734*8975f5c5SAndroid Build Coastguard Worker * "xconfig" - the ModeLine was specified in the X config file 3735*8975f5c5SAndroid Build Coastguard Worker * "builtin" - the NVIDIA driver provided this builtin ModeLine 3736*8975f5c5SAndroid Build Coastguard Worker * "vesa" - this is a VESA standard ModeLine 3737*8975f5c5SAndroid Build Coastguard Worker * "edid" - the ModeLine was in the display device's EDID 3738*8975f5c5SAndroid Build Coastguard Worker * "nv-control" - the ModeLine was specified via NV-CONTROL 3739*8975f5c5SAndroid Build Coastguard Worker * 3740*8975f5c5SAndroid Build Coastguard Worker * "xconfig-name" - for ModeLines that were specified in the X config 3741*8975f5c5SAndroid Build Coastguard Worker * file, this is the name the X config file 3742*8975f5c5SAndroid Build Coastguard Worker * gave for the ModeLine. 3743*8975f5c5SAndroid Build Coastguard Worker * 3744*8975f5c5SAndroid Build Coastguard Worker * Note that a ModeLine can have several sources; the "source" token 3745*8975f5c5SAndroid Build Coastguard Worker * can appear multiple times in the "token=value" pairs list. 3746*8975f5c5SAndroid Build Coastguard Worker * Additional source values may be specified in the future. 3747*8975f5c5SAndroid Build Coastguard Worker * 3748*8975f5c5SAndroid Build Coastguard Worker * Additional tokens may be added in the future, so it is recommended 3749*8975f5c5SAndroid Build Coastguard Worker * that any token parser processing the returned string from 3750*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_BINARY_DATA_MODELINES be implemented to gracefully ignore 3751*8975f5c5SAndroid Build Coastguard Worker * unrecognized tokens. 3752*8975f5c5SAndroid Build Coastguard Worker * 3753*8975f5c5SAndroid Build Coastguard Worker * E.g., 3754*8975f5c5SAndroid Build Coastguard Worker * 3755*8975f5c5SAndroid Build Coastguard Worker * "source=xserver, source=vesa, source=edid :: "1024x768_70" 75.0 1024 1048 1184 1328 768 771 3756*8975f5c5SAndroid Build Coastguard Worker * 777 806 -HSync -VSync" 3757*8975f5c5SAndroid Build Coastguard Worker * "source=xconfig, xconfig-name=1600x1200_60.00 :: "1600x1200_60_0" 161.0 1600 1704 1880 2160 3758*8975f5c5SAndroid Build Coastguard Worker * 1200 1201 1204 1242 -HSync +VSync" 3759*8975f5c5SAndroid Build Coastguard Worker */ 3760*8975f5c5SAndroid Build Coastguard Worker 3761*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_BINARY_DATA_MODELINES 1 /* R-DG */ 3762*8975f5c5SAndroid Build Coastguard Worker 3763*8975f5c5SAndroid Build Coastguard Worker /* 3764*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_BINARY_DATA_METAMODES - Returns an X Screen's supported 3765*8975f5c5SAndroid Build Coastguard Worker * MetaModes. MetaModes are returned in a buffer separated by a 3766*8975f5c5SAndroid Build Coastguard Worker * single '\0' and terminated by two consecutive '\0' s like so: 3767*8975f5c5SAndroid Build Coastguard Worker * 3768*8975f5c5SAndroid Build Coastguard Worker * "MetaMode 1\0MetaMode 2\0MetaMode 3\0Last MetaMode\0\0" 3769*8975f5c5SAndroid Build Coastguard Worker * 3770*8975f5c5SAndroid Build Coastguard Worker * The MetaMode string should have the same syntax as the MetaMode X 3771*8975f5c5SAndroid Build Coastguard Worker * configuration option, as documented in the NVIDIA driver README. 3772*8975f5c5SAndroid Build Coastguard Worker 3773*8975f5c5SAndroid Build Coastguard Worker * Each MetaMode string may be prepended with a comma-separated list 3774*8975f5c5SAndroid Build Coastguard Worker * of "token=value" pairs, separated from the MetaMode string with 3775*8975f5c5SAndroid Build Coastguard Worker * "::". Currently, valid tokens are: 3776*8975f5c5SAndroid Build Coastguard Worker * 3777*8975f5c5SAndroid Build Coastguard Worker * Token Value 3778*8975f5c5SAndroid Build Coastguard Worker * "id" <number> - the id of this MetaMode; this is stored in 3779*8975f5c5SAndroid Build Coastguard Worker * the Vertical Refresh field, as viewed 3780*8975f5c5SAndroid Build Coastguard Worker * by the XRandR and XF86VidMode X * 3781*8975f5c5SAndroid Build Coastguard Worker * extensions. 3782*8975f5c5SAndroid Build Coastguard Worker * 3783*8975f5c5SAndroid Build Coastguard Worker * "switchable" "yes"/"no" - whether this MetaMode may be switched to via 3784*8975f5c5SAndroid Build Coastguard Worker * ctrl-alt-+/-; Implicit MetaModes (see 3785*8975f5c5SAndroid Build Coastguard Worker * the "IncludeImplicitMetaModes" X 3786*8975f5c5SAndroid Build Coastguard Worker * config option), for example, are not 3787*8975f5c5SAndroid Build Coastguard Worker * normally made available through 3788*8975f5c5SAndroid Build Coastguard Worker * ctrl-alt-+/-. 3789*8975f5c5SAndroid Build Coastguard Worker * 3790*8975f5c5SAndroid Build Coastguard Worker * "source" "xconfig" - the MetaMode was specified in the X 3791*8975f5c5SAndroid Build Coastguard Worker * config file. 3792*8975f5c5SAndroid Build Coastguard Worker * "implicit" - the MetaMode was implicitly added; see the 3793*8975f5c5SAndroid Build Coastguard Worker * "IncludeImplicitMetaModes" X config option 3794*8975f5c5SAndroid Build Coastguard Worker * for details. 3795*8975f5c5SAndroid Build Coastguard Worker * "nv-control" - the MetaMode was added via the NV-CONTROL X 3796*8975f5c5SAndroid Build Coastguard Worker * extension to the currently running X server. 3797*8975f5c5SAndroid Build Coastguard Worker * "RandR" - the MetaMode was modified in response to an 3798*8975f5c5SAndroid Build Coastguard Worker * RandR RRSetCrtcConfig request. 3799*8975f5c5SAndroid Build Coastguard Worker * 3800*8975f5c5SAndroid Build Coastguard Worker * Additional tokens may be added in the future, so it is recommended 3801*8975f5c5SAndroid Build Coastguard Worker * that any token parser processing the returned string from 3802*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_BINARY_DATA_METAMODES be implemented to gracefully ignore 3803*8975f5c5SAndroid Build Coastguard Worker * unrecognized tokens. 3804*8975f5c5SAndroid Build Coastguard Worker * 3805*8975f5c5SAndroid Build Coastguard Worker * E.g., 3806*8975f5c5SAndroid Build Coastguard Worker * 3807*8975f5c5SAndroid Build Coastguard Worker * "id=50, switchable=yes, source=xconfig :: CRT-0: 1024x768 @1024x768 +0+0" 3808*8975f5c5SAndroid Build Coastguard Worker */ 3809*8975f5c5SAndroid Build Coastguard Worker 3810*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_BINARY_DATA_METAMODES 2 /* R-D- */ 3811*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_BINARY_DATA_METAMODES_VERSION_1 NV_CTRL_BINARY_DATA_METAMODES 3812*8975f5c5SAndroid Build Coastguard Worker 3813*8975f5c5SAndroid Build Coastguard Worker /* 3814*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_BINARY_DATA_XSCREENS_USING_GPU - Returns the list of X 3815*8975f5c5SAndroid Build Coastguard Worker * screens currently driven by the given GPU. 3816*8975f5c5SAndroid Build Coastguard Worker * 3817*8975f5c5SAndroid Build Coastguard Worker * The format of the returned data is: 3818*8975f5c5SAndroid Build Coastguard Worker * 3819*8975f5c5SAndroid Build Coastguard Worker * 4 CARD32 number of screens 3820*8975f5c5SAndroid Build Coastguard Worker * 4 * n CARD32 screen indices 3821*8975f5c5SAndroid Build Coastguard Worker * 3822*8975f5c5SAndroid Build Coastguard Worker * This attribute can only be queried through XNVCTRLQueryTargetBinaryData() 3823*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_GPU target. This attribute cannot be 3824*8975f5c5SAndroid Build Coastguard Worker * queried using a NV_CTRL_TARGET_TYPE_X_SCREEN. 3825*8975f5c5SAndroid Build Coastguard Worker */ 3826*8975f5c5SAndroid Build Coastguard Worker 3827*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_BINARY_DATA_XSCREENS_USING_GPU 3 /* R-DG */ 3828*8975f5c5SAndroid Build Coastguard Worker 3829*8975f5c5SAndroid Build Coastguard Worker /* 3830*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_BINARY_DATA_GPUS_USED_BY_XSCREEN - Returns the list of GPUs 3831*8975f5c5SAndroid Build Coastguard Worker * currently in use by the given X screen. 3832*8975f5c5SAndroid Build Coastguard Worker * 3833*8975f5c5SAndroid Build Coastguard Worker * The format of the returned data is: 3834*8975f5c5SAndroid Build Coastguard Worker * 3835*8975f5c5SAndroid Build Coastguard Worker * 4 CARD32 number of GPUs 3836*8975f5c5SAndroid Build Coastguard Worker * 4 * n CARD32 GPU indices 3837*8975f5c5SAndroid Build Coastguard Worker */ 3838*8975f5c5SAndroid Build Coastguard Worker 3839*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_BINARY_DATA_GPUS_USED_BY_XSCREEN 4 /* R--- */ 3840*8975f5c5SAndroid Build Coastguard Worker 3841*8975f5c5SAndroid Build Coastguard Worker /* 3842*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_BINARY_DATA_GPUS_USING_FRAMELOCK - Returns the list of 3843*8975f5c5SAndroid Build Coastguard Worker * GPUs currently connected to the given frame lock board. 3844*8975f5c5SAndroid Build Coastguard Worker * 3845*8975f5c5SAndroid Build Coastguard Worker * The format of the returned data is: 3846*8975f5c5SAndroid Build Coastguard Worker * 3847*8975f5c5SAndroid Build Coastguard Worker * 4 CARD32 number of GPUs 3848*8975f5c5SAndroid Build Coastguard Worker * 4 * n CARD32 GPU indices 3849*8975f5c5SAndroid Build Coastguard Worker * 3850*8975f5c5SAndroid Build Coastguard Worker * This attribute can only be queried through XNVCTRLQueryTargetBinaryData() 3851*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_FRAMELOCK target. This attribute cannot be 3852*8975f5c5SAndroid Build Coastguard Worker * queried using a NV_CTRL_TARGET_TYPE_X_SCREEN. 3853*8975f5c5SAndroid Build Coastguard Worker */ 3854*8975f5c5SAndroid Build Coastguard Worker 3855*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_BINARY_DATA_GPUS_USING_FRAMELOCK 5 /* R-DF */ 3856*8975f5c5SAndroid Build Coastguard Worker 3857*8975f5c5SAndroid Build Coastguard Worker /* 3858*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_BINARY_DATA_DISPLAY_VIEWPORT - Returns the Display Device's 3859*8975f5c5SAndroid Build Coastguard Worker * viewport box into the given X Screen (in X Screen coordinates.) 3860*8975f5c5SAndroid Build Coastguard Worker * 3861*8975f5c5SAndroid Build Coastguard Worker * The format of the returned data is: 3862*8975f5c5SAndroid Build Coastguard Worker * 3863*8975f5c5SAndroid Build Coastguard Worker * 4 CARD32 Offset X 3864*8975f5c5SAndroid Build Coastguard Worker * 4 CARD32 Offset Y 3865*8975f5c5SAndroid Build Coastguard Worker * 4 CARD32 Width 3866*8975f5c5SAndroid Build Coastguard Worker * 4 CARD32 Height 3867*8975f5c5SAndroid Build Coastguard Worker */ 3868*8975f5c5SAndroid Build Coastguard Worker 3869*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_BINARY_DATA_DISPLAY_VIEWPORT 6 /* R-DG */ 3870*8975f5c5SAndroid Build Coastguard Worker 3871*8975f5c5SAndroid Build Coastguard Worker /* 3872*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_BINARY_DATA_FRAMELOCKS_USED_BY_GPU - Returns the list of 3873*8975f5c5SAndroid Build Coastguard Worker * Framelock devices currently connected to the given GPU. 3874*8975f5c5SAndroid Build Coastguard Worker * 3875*8975f5c5SAndroid Build Coastguard Worker * The format of the returned data is: 3876*8975f5c5SAndroid Build Coastguard Worker * 3877*8975f5c5SAndroid Build Coastguard Worker * 4 CARD32 number of Framelocks 3878*8975f5c5SAndroid Build Coastguard Worker * 4 * n CARD32 Framelock indices 3879*8975f5c5SAndroid Build Coastguard Worker * 3880*8975f5c5SAndroid Build Coastguard Worker * This attribute can only be queried through XNVCTRLQueryTargetBinaryData() 3881*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_GPU target. This attribute cannot be 3882*8975f5c5SAndroid Build Coastguard Worker * queried using a NV_CTRL_TARGET_TYPE_X_SCREEN. 3883*8975f5c5SAndroid Build Coastguard Worker */ 3884*8975f5c5SAndroid Build Coastguard Worker 3885*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_BINARY_DATA_FRAMELOCKS_USED_BY_GPU 7 /* R-DG */ 3886*8975f5c5SAndroid Build Coastguard Worker 3887*8975f5c5SAndroid Build Coastguard Worker /* 3888*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_BINARY_DATA_GPUS_USING_VCSC - Returns the list of 3889*8975f5c5SAndroid Build Coastguard Worker * GPU devices connected to the given VCS. 3890*8975f5c5SAndroid Build Coastguard Worker * 3891*8975f5c5SAndroid Build Coastguard Worker * The format of the returned data is: 3892*8975f5c5SAndroid Build Coastguard Worker * 3893*8975f5c5SAndroid Build Coastguard Worker * 4 CARD32 number of GPUs 3894*8975f5c5SAndroid Build Coastguard Worker * 4 * n CARD32 GPU indices 3895*8975f5c5SAndroid Build Coastguard Worker * 3896*8975f5c5SAndroid Build Coastguard Worker * This attribute can only be queried through XNVCTRLQueryTargetBinaryData() 3897*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_VCSC target. This attribute cannot be 3898*8975f5c5SAndroid Build Coastguard Worker * queried using a NV_CTRL_TARGET_TYPE_X_SCREEN and cannot be queried using 3899*8975f5c5SAndroid Build Coastguard Worker * a NV_CTRL_TARGET_TYPE_X_GPU 3900*8975f5c5SAndroid Build Coastguard Worker */ 3901*8975f5c5SAndroid Build Coastguard Worker 3902*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_BINARY_DATA_GPUS_USING_VCSC 8 /* R-DV */ 3903*8975f5c5SAndroid Build Coastguard Worker 3904*8975f5c5SAndroid Build Coastguard Worker /* 3905*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_BINARY_DATA_VCSCS_USED_BY_GPU - Returns the VCSC device 3906*8975f5c5SAndroid Build Coastguard Worker * that is controlling the given GPU. 3907*8975f5c5SAndroid Build Coastguard Worker * 3908*8975f5c5SAndroid Build Coastguard Worker * The format of the returned data is: 3909*8975f5c5SAndroid Build Coastguard Worker * 3910*8975f5c5SAndroid Build Coastguard Worker * 4 CARD32 number of VCS (always 1) 3911*8975f5c5SAndroid Build Coastguard Worker * 4 * n CARD32 VCS indices 3912*8975f5c5SAndroid Build Coastguard Worker * 3913*8975f5c5SAndroid Build Coastguard Worker * This attribute can only be queried through XNVCTRLQueryTargetBinaryData() 3914*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_GPU target. This attribute cannot be 3915*8975f5c5SAndroid Build Coastguard Worker * queried using a NV_CTRL_TARGET_TYPE_X_SCREEN 3916*8975f5c5SAndroid Build Coastguard Worker */ 3917*8975f5c5SAndroid Build Coastguard Worker 3918*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_BINARY_DATA_VCSCS_USED_BY_GPU 9 /* R-DG */ 3919*8975f5c5SAndroid Build Coastguard Worker 3920*8975f5c5SAndroid Build Coastguard Worker /* 3921*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_BINARY_DATA_COOLERS_USED_BY_GPU - Returns the coolers that 3922*8975f5c5SAndroid Build Coastguard Worker * are cooling the given GPU. 3923*8975f5c5SAndroid Build Coastguard Worker * 3924*8975f5c5SAndroid Build Coastguard Worker * The format of the returned data is: 3925*8975f5c5SAndroid Build Coastguard Worker * 3926*8975f5c5SAndroid Build Coastguard Worker * 4 CARD32 number of COOLER 3927*8975f5c5SAndroid Build Coastguard Worker * 4 * n CARD32 COOLER indices 3928*8975f5c5SAndroid Build Coastguard Worker * 3929*8975f5c5SAndroid Build Coastguard Worker * This attribute can only be queried through XNVCTRLQueryTargetBinaryData() 3930*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_GPU target. This attribute cannot be 3931*8975f5c5SAndroid Build Coastguard Worker * queried using a NV_CTRL_TARGET_TYPE_X_SCREEN 3932*8975f5c5SAndroid Build Coastguard Worker */ 3933*8975f5c5SAndroid Build Coastguard Worker 3934*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_BINARY_DATA_COOLERS_USED_BY_GPU 10 /* R-DG */ 3935*8975f5c5SAndroid Build Coastguard Worker 3936*8975f5c5SAndroid Build Coastguard Worker /* 3937*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_BINARY_DATA_GPUS_USED_BY_LOGICAL_XSCREEN - Returns the list of 3938*8975f5c5SAndroid Build Coastguard Worker * GPUs currently driving the given X screen. If Xinerama is enabled, this 3939*8975f5c5SAndroid Build Coastguard Worker * will return all GPUs that are driving any X screen. 3940*8975f5c5SAndroid Build Coastguard Worker * 3941*8975f5c5SAndroid Build Coastguard Worker * The format of the returned data is: 3942*8975f5c5SAndroid Build Coastguard Worker * 3943*8975f5c5SAndroid Build Coastguard Worker * 4 CARD32 number of GPUs 3944*8975f5c5SAndroid Build Coastguard Worker * 4 * n CARD32 GPU indices 3945*8975f5c5SAndroid Build Coastguard Worker */ 3946*8975f5c5SAndroid Build Coastguard Worker 3947*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_BINARY_DATA_GPUS_USED_BY_LOGICAL_XSCREEN 11 /* R--- */ 3948*8975f5c5SAndroid Build Coastguard Worker 3949*8975f5c5SAndroid Build Coastguard Worker /* 3950*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_BINARY_DATA_THERMAL_SENSORS_USED_BY_GPU - Returns the sensors that 3951*8975f5c5SAndroid Build Coastguard Worker * are attached to the given GPU. 3952*8975f5c5SAndroid Build Coastguard Worker * 3953*8975f5c5SAndroid Build Coastguard Worker * The format of the returned data is: 3954*8975f5c5SAndroid Build Coastguard Worker * 3955*8975f5c5SAndroid Build Coastguard Worker * 4 CARD32 number of SENSOR 3956*8975f5c5SAndroid Build Coastguard Worker * 4 * n CARD32 SENSOR indices 3957*8975f5c5SAndroid Build Coastguard Worker * 3958*8975f5c5SAndroid Build Coastguard Worker * This attribute can only be queried through XNVCTRLQueryTargetBinaryData() 3959*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_GPU target. This attribute cannot be 3960*8975f5c5SAndroid Build Coastguard Worker * queried using a NV_CTRL_TARGET_TYPE_X_SCREEN 3961*8975f5c5SAndroid Build Coastguard Worker */ 3962*8975f5c5SAndroid Build Coastguard Worker 3963*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_BINARY_DATA_THERMAL_SENSORS_USED_BY_GPU 12 /* R--G */ 3964*8975f5c5SAndroid Build Coastguard Worker 3965*8975f5c5SAndroid Build Coastguard Worker /* 3966*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_BINARY_DATA_GLASSES_PAIRED_TO_3D_VISION_PRO_TRANSCEIVER - Returns 3967*8975f5c5SAndroid Build Coastguard Worker * the id of the glasses that are currently paired to the given 3968*8975f5c5SAndroid Build Coastguard Worker * 3D Vision Pro transceiver. 3969*8975f5c5SAndroid Build Coastguard Worker * 3970*8975f5c5SAndroid Build Coastguard Worker * The format of the returned data is: 3971*8975f5c5SAndroid Build Coastguard Worker * 3972*8975f5c5SAndroid Build Coastguard Worker * 4 CARD32 number of glasses 3973*8975f5c5SAndroid Build Coastguard Worker * 4 * n CARD32 id of glasses 3974*8975f5c5SAndroid Build Coastguard Worker * 3975*8975f5c5SAndroid Build Coastguard Worker * This attribute can only be queried through XNVCTRLQueryTargetBinaryData() 3976*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_3D_VISION_PRO_TRANSCEIVER target. 3977*8975f5c5SAndroid Build Coastguard Worker */ 3978*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_BINARY_DATA_GLASSES_PAIRED_TO_3D_VISION_PRO_TRANSCEIVER 13 /* R--T */ 3979*8975f5c5SAndroid Build Coastguard Worker 3980*8975f5c5SAndroid Build Coastguard Worker /* 3981*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_BINARY_DATA_DISPLAY_TARGETS - Returns all the display devices 3982*8975f5c5SAndroid Build Coastguard Worker * currently connected to any GPU on the X server. 3983*8975f5c5SAndroid Build Coastguard Worker * 3984*8975f5c5SAndroid Build Coastguard Worker * The format of the returned data is: 3985*8975f5c5SAndroid Build Coastguard Worker * 3986*8975f5c5SAndroid Build Coastguard Worker * 4 CARD32 number of display devices 3987*8975f5c5SAndroid Build Coastguard Worker * 4 * n CARD32 display device indices 3988*8975f5c5SAndroid Build Coastguard Worker * 3989*8975f5c5SAndroid Build Coastguard Worker * This attribute can only be queried through XNVCTRLQueryTargetBinaryData(). 3990*8975f5c5SAndroid Build Coastguard Worker */ 3991*8975f5c5SAndroid Build Coastguard Worker 3992*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_BINARY_DATA_DISPLAY_TARGETS 14 /* R--- */ 3993*8975f5c5SAndroid Build Coastguard Worker 3994*8975f5c5SAndroid Build Coastguard Worker /* 3995*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_BINARY_DATA_DISPLAYS_CONNECTED_TO_GPU - Returns the list of 3996*8975f5c5SAndroid Build Coastguard Worker * display devices that are connected to the GPU target. 3997*8975f5c5SAndroid Build Coastguard Worker * 3998*8975f5c5SAndroid Build Coastguard Worker * The format of the returned data is: 3999*8975f5c5SAndroid Build Coastguard Worker * 4000*8975f5c5SAndroid Build Coastguard Worker * 4 CARD32 number of display devices 4001*8975f5c5SAndroid Build Coastguard Worker * 4 * n CARD32 display device indices 4002*8975f5c5SAndroid Build Coastguard Worker * 4003*8975f5c5SAndroid Build Coastguard Worker * This attribute can only be queried through XNVCTRLQueryTargetBinaryData() 4004*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_GPU target. 4005*8975f5c5SAndroid Build Coastguard Worker */ 4006*8975f5c5SAndroid Build Coastguard Worker 4007*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_BINARY_DATA_DISPLAYS_CONNECTED_TO_GPU 15 /* R--G */ 4008*8975f5c5SAndroid Build Coastguard Worker 4009*8975f5c5SAndroid Build Coastguard Worker /* 4010*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_BINARY_DATA_METAMODES_VERSION_2 - Returns values similar to 4011*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_BINARY_DATA_METAMODES(_VERSION_1) but also returns extended syntax 4012*8975f5c5SAndroid Build Coastguard Worker * information to indicate a specific display device, as well as other per- 4013*8975f5c5SAndroid Build Coastguard Worker * display deviceflags as "token=value" pairs. For example: 4014*8975f5c5SAndroid Build Coastguard Worker * 4015*8975f5c5SAndroid Build Coastguard Worker * "DPY-1: 1280x1024 {Stereo=PassiveLeft}, 4016*8975f5c5SAndroid Build Coastguard Worker * DPY-2: 1280x1024 {Stereo=PassiveRight}," 4017*8975f5c5SAndroid Build Coastguard Worker * 4018*8975f5c5SAndroid Build Coastguard Worker * The display device names have the form "DPY-%d", where the integer 4019*8975f5c5SAndroid Build Coastguard Worker * part of the name is the NV-CONTROL target ID for that display device 4020*8975f5c5SAndroid Build Coastguard Worker * for this instance of the X server. Note that display device NV-CONTROL 4021*8975f5c5SAndroid Build Coastguard Worker * target IDs are not guaranteed to be the same from one run of the X 4022*8975f5c5SAndroid Build Coastguard Worker * server to the next. 4023*8975f5c5SAndroid Build Coastguard Worker */ 4024*8975f5c5SAndroid Build Coastguard Worker 4025*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_BINARY_DATA_METAMODES_VERSION_2 16 /* R-D- */ 4026*8975f5c5SAndroid Build Coastguard Worker 4027*8975f5c5SAndroid Build Coastguard Worker /* 4028*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_BINARY_DATA_DISPLAYS_ENABLED_ON_XSCREEN - Returns the list of 4029*8975f5c5SAndroid Build Coastguard Worker * display devices that are currently scanning out the X screen target. 4030*8975f5c5SAndroid Build Coastguard Worker * 4031*8975f5c5SAndroid Build Coastguard Worker * The format of the returned data is: 4032*8975f5c5SAndroid Build Coastguard Worker * 4033*8975f5c5SAndroid Build Coastguard Worker * 4 CARD32 number of display devices 4034*8975f5c5SAndroid Build Coastguard Worker * 4 * n CARD32 display device indices 4035*8975f5c5SAndroid Build Coastguard Worker * 4036*8975f5c5SAndroid Build Coastguard Worker * This attribute can only be queried through XNVCTRLQueryTargetBinaryData() 4037*8975f5c5SAndroid Build Coastguard Worker * using a NV_CTRL_TARGET_TYPE_X_SCREEN target. 4038*8975f5c5SAndroid Build Coastguard Worker */ 4039*8975f5c5SAndroid Build Coastguard Worker 4040*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_BINARY_DATA_DISPLAYS_ENABLED_ON_XSCREEN 17 /* R--- */ 4041*8975f5c5SAndroid Build Coastguard Worker 4042*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_BINARY_DATA_LAST_ATTRIBUTE NV_CTRL_BINARY_DATA_DISPLAYS_ENABLED_ON_XSCREEN 4043*8975f5c5SAndroid Build Coastguard Worker 4044*8975f5c5SAndroid Build Coastguard Worker /**************************************************************************/ 4045*8975f5c5SAndroid Build Coastguard Worker 4046*8975f5c5SAndroid Build Coastguard Worker /* 4047*8975f5c5SAndroid Build Coastguard Worker * String Operation Attributes: 4048*8975f5c5SAndroid Build Coastguard Worker * 4049*8975f5c5SAndroid Build Coastguard Worker * These attributes are used with the XNVCTRLStringOperation() 4050*8975f5c5SAndroid Build Coastguard Worker * function; a string is specified as input, and a string is returned 4051*8975f5c5SAndroid Build Coastguard Worker * as output. 4052*8975f5c5SAndroid Build Coastguard Worker * 4053*8975f5c5SAndroid Build Coastguard Worker * Unless otherwise noted, all attributes can be operated upon using 4054*8975f5c5SAndroid Build Coastguard Worker * an NV_CTRL_TARGET_TYPE_X_SCREEN target. 4055*8975f5c5SAndroid Build Coastguard Worker */ 4056*8975f5c5SAndroid Build Coastguard Worker 4057*8975f5c5SAndroid Build Coastguard Worker /* 4058*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_OPERATION_ADD_METAMODE - provide a MetaMode string 4059*8975f5c5SAndroid Build Coastguard Worker * as input, and returns a string containing comma-separated list of 4060*8975f5c5SAndroid Build Coastguard Worker * "token=value" pairs as output. Currently, the only output token is 4061*8975f5c5SAndroid Build Coastguard Worker * "id", which indicates the id that was assigned to the MetaMode. 4062*8975f5c5SAndroid Build Coastguard Worker * 4063*8975f5c5SAndroid Build Coastguard Worker * All ModeLines referenced in the MetaMode must already exist for 4064*8975f5c5SAndroid Build Coastguard Worker * each display device (as returned by the 4065*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_BINARY_DATA_MODELINES attribute). 4066*8975f5c5SAndroid Build Coastguard Worker * 4067*8975f5c5SAndroid Build Coastguard Worker * The MetaMode string should have the same syntax as the MetaMode X 4068*8975f5c5SAndroid Build Coastguard Worker * configuration option, as documented in the NVIDIA driver README. 4069*8975f5c5SAndroid Build Coastguard Worker * 4070*8975f5c5SAndroid Build Coastguard Worker * The input string can optionally be prepended with a string of 4071*8975f5c5SAndroid Build Coastguard Worker * comma-separated "token=value" pairs, separated from the MetaMode 4072*8975f5c5SAndroid Build Coastguard Worker * string by "::". Currently, the only valid token is "index" which 4073*8975f5c5SAndroid Build Coastguard Worker * indicates the insertion index for the MetaMode. 4074*8975f5c5SAndroid Build Coastguard Worker * 4075*8975f5c5SAndroid Build Coastguard Worker * E.g., 4076*8975f5c5SAndroid Build Coastguard Worker * 4077*8975f5c5SAndroid Build Coastguard Worker * Input: "index=5 :: 1600x1200+0+0, 1600x1200+1600+0" 4078*8975f5c5SAndroid Build Coastguard Worker * Output: "id=58" 4079*8975f5c5SAndroid Build Coastguard Worker * 4080*8975f5c5SAndroid Build Coastguard Worker * which causes the MetaMode to be inserted at position 5 in the 4081*8975f5c5SAndroid Build Coastguard Worker * MetaMode list (all entries after 5 will be shifted down one slot in 4082*8975f5c5SAndroid Build Coastguard Worker * the list), and the X server's containing mode stores 58 as the 4083*8975f5c5SAndroid Build Coastguard Worker * VRefresh, so that the MetaMode can be uniquely identifed through 4084*8975f5c5SAndroid Build Coastguard Worker * XRandR and XF86VidMode. 4085*8975f5c5SAndroid Build Coastguard Worker */ 4086*8975f5c5SAndroid Build Coastguard Worker 4087*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_OPERATION_ADD_METAMODE 0 4088*8975f5c5SAndroid Build Coastguard Worker 4089*8975f5c5SAndroid Build Coastguard Worker /* 4090*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_OPERATION_GTF_MODELINE - provide as input a string 4091*8975f5c5SAndroid Build Coastguard Worker * of comma-separated "token=value" pairs, and returns a ModeLine 4092*8975f5c5SAndroid Build Coastguard Worker * string, computed using the GTF formula using the parameters from 4093*8975f5c5SAndroid Build Coastguard Worker * the input string. Valid tokens for the input string are "width", 4094*8975f5c5SAndroid Build Coastguard Worker * "height", and "refreshrate". 4095*8975f5c5SAndroid Build Coastguard Worker * 4096*8975f5c5SAndroid Build Coastguard Worker * E.g., 4097*8975f5c5SAndroid Build Coastguard Worker * 4098*8975f5c5SAndroid Build Coastguard Worker * Input: "width=1600, height=1200, refreshrate=60" 4099*8975f5c5SAndroid Build Coastguard Worker * Output: "160.96 1600 1704 1880 2160 1200 1201 1204 1242 -HSync +VSync" 4100*8975f5c5SAndroid Build Coastguard Worker * 4101*8975f5c5SAndroid Build Coastguard Worker * This operation does not have any impact on any display device's 4102*8975f5c5SAndroid Build Coastguard Worker * modePool, and the ModeLine is not validated; it is simply intended 4103*8975f5c5SAndroid Build Coastguard Worker * for generating ModeLines. 4104*8975f5c5SAndroid Build Coastguard Worker */ 4105*8975f5c5SAndroid Build Coastguard Worker 4106*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_OPERATION_GTF_MODELINE 1 4107*8975f5c5SAndroid Build Coastguard Worker 4108*8975f5c5SAndroid Build Coastguard Worker /* 4109*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_OPERATION_CVT_MODELINE - provide as input a string 4110*8975f5c5SAndroid Build Coastguard Worker * of comma-separated "token=value" pairs, and returns a ModeLine 4111*8975f5c5SAndroid Build Coastguard Worker * string, computed using the CVT formula using the parameters from 4112*8975f5c5SAndroid Build Coastguard Worker * the input string. Valid tokens for the input string are "width", 4113*8975f5c5SAndroid Build Coastguard Worker * "height", "refreshrate", and "reduced-blanking". The 4114*8975f5c5SAndroid Build Coastguard Worker * "reduced-blanking" argument can be "0" or "1", to enable or disable 4115*8975f5c5SAndroid Build Coastguard Worker * use of reduced blanking for the CVT formula. 4116*8975f5c5SAndroid Build Coastguard Worker * 4117*8975f5c5SAndroid Build Coastguard Worker * E.g., 4118*8975f5c5SAndroid Build Coastguard Worker * 4119*8975f5c5SAndroid Build Coastguard Worker * Input: "width=1600, height=1200, refreshrate=60, reduced-blanking=1" 4120*8975f5c5SAndroid Build Coastguard Worker * Output: "130.25 1600 1648 1680 1760 1200 1203 1207 1235 +HSync -VSync" 4121*8975f5c5SAndroid Build Coastguard Worker * 4122*8975f5c5SAndroid Build Coastguard Worker * This operation does not have any impact on any display device's 4123*8975f5c5SAndroid Build Coastguard Worker * modePool, and the ModeLine is not validated; it is simply intended 4124*8975f5c5SAndroid Build Coastguard Worker * for generating ModeLines. 4125*8975f5c5SAndroid Build Coastguard Worker */ 4126*8975f5c5SAndroid Build Coastguard Worker 4127*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_OPERATION_CVT_MODELINE 2 4128*8975f5c5SAndroid Build Coastguard Worker 4129*8975f5c5SAndroid Build Coastguard Worker /* 4130*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_OPERATION_BUILD_MODEPOOL - build a ModePool for the 4131*8975f5c5SAndroid Build Coastguard Worker * specified display device on the specified target (either an X 4132*8975f5c5SAndroid Build Coastguard Worker * screen or a GPU). This is typically used to generate a ModePool 4133*8975f5c5SAndroid Build Coastguard Worker * for a display device on a GPU on which no X screens are present. 4134*8975f5c5SAndroid Build Coastguard Worker * 4135*8975f5c5SAndroid Build Coastguard Worker * Currently, a display device's ModePool is static for the life of 4136*8975f5c5SAndroid Build Coastguard Worker * the X server, so XNVCTRLStringOperation will return FALSE if 4137*8975f5c5SAndroid Build Coastguard Worker * requested to build a ModePool on a display device that already has 4138*8975f5c5SAndroid Build Coastguard Worker * a ModePool. 4139*8975f5c5SAndroid Build Coastguard Worker * 4140*8975f5c5SAndroid Build Coastguard Worker * The string input to BUILD_MODEPOOL may be NULL. If it is not NULL, 4141*8975f5c5SAndroid Build Coastguard Worker * then it is interpreted as a double-colon ("::") separated list 4142*8975f5c5SAndroid Build Coastguard Worker * of "option=value" pairs, where the options and the syntax of their 4143*8975f5c5SAndroid Build Coastguard Worker * values are the X configuration options that impact the behavior of 4144*8975f5c5SAndroid Build Coastguard Worker * modePool construction; namely: 4145*8975f5c5SAndroid Build Coastguard Worker * 4146*8975f5c5SAndroid Build Coastguard Worker * "ModeValidation" 4147*8975f5c5SAndroid Build Coastguard Worker * "HorizSync" 4148*8975f5c5SAndroid Build Coastguard Worker * "VertRefresh" 4149*8975f5c5SAndroid Build Coastguard Worker * "FlatPanelProperties" 4150*8975f5c5SAndroid Build Coastguard Worker * "TVStandard" 4151*8975f5c5SAndroid Build Coastguard Worker * "ExactModeTimingsDVI" 4152*8975f5c5SAndroid Build Coastguard Worker * "UseEdidFreqs" 4153*8975f5c5SAndroid Build Coastguard Worker * 4154*8975f5c5SAndroid Build Coastguard Worker * An example input string might look like: 4155*8975f5c5SAndroid Build Coastguard Worker * 4156*8975f5c5SAndroid Build Coastguard Worker * "ModeValidation=NoVesaModes :: HorizSync=50-110 :: VertRefresh=50-150" 4157*8975f5c5SAndroid Build Coastguard Worker * 4158*8975f5c5SAndroid Build Coastguard Worker * This request currently does not return a string. 4159*8975f5c5SAndroid Build Coastguard Worker */ 4160*8975f5c5SAndroid Build Coastguard Worker 4161*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_OPERATION_BUILD_MODEPOOL 3 /* DG */ 4162*8975f5c5SAndroid Build Coastguard Worker 4163*8975f5c5SAndroid Build Coastguard Worker /* 4164*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_STRING_OPERATION_GVI_CONFIGURE_STREAMS - Configure the streams- 4165*8975f5c5SAndroid Build Coastguard Worker * to-jack+channel topology for a GVI (Graphics capture board). 4166*8975f5c5SAndroid Build Coastguard Worker * 4167*8975f5c5SAndroid Build Coastguard Worker * The string input to GVI_CONFIGURE_STREAMS may be NULL. If this is the 4168*8975f5c5SAndroid Build Coastguard Worker * case, then the current topology is returned. 4169*8975f5c5SAndroid Build Coastguard Worker * 4170*8975f5c5SAndroid Build Coastguard Worker * If the input string to GVI_CONFIGURE_STREAMS is not NULL, the string 4171*8975f5c5SAndroid Build Coastguard Worker * is interpreted as a semicolon (";") separated list of comma-separated 4172*8975f5c5SAndroid Build Coastguard Worker * lists of "option=value" pairs that define a stream's composition. The 4173*8975f5c5SAndroid Build Coastguard Worker * available options and their values are: 4174*8975f5c5SAndroid Build Coastguard Worker * 4175*8975f5c5SAndroid Build Coastguard Worker * "stream": Defines which stream this comma-separated list describes. 4176*8975f5c5SAndroid Build Coastguard Worker * Valid values are the integers between 0 and 4177*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVI_NUM_STREAMS-1 (inclusive). 4178*8975f5c5SAndroid Build Coastguard Worker * 4179*8975f5c5SAndroid Build Coastguard Worker * "linkN": Defines a jack+channel pair to use for the given link N. 4180*8975f5c5SAndroid Build Coastguard Worker * Valid options are the string "linkN", where N is an integer 4181*8975f5c5SAndroid Build Coastguard Worker * between 0 and NV_CTRL_GVI_MAX_LINKS_PER_STREAM-1 (inclusive). 4182*8975f5c5SAndroid Build Coastguard Worker * Valid values for these options are strings of the form 4183*8975f5c5SAndroid Build Coastguard Worker * "jackX" and/or "jackX.Y", where X is an integer between 0 and 4184*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVI_NUM_JACKS-1 (inclusive), and Y (optional) is an 4185*8975f5c5SAndroid Build Coastguard Worker * integer between 0 and NV_CTRL_GVI_MAX_CHANNELS_PER_JACK-1 4186*8975f5c5SAndroid Build Coastguard Worker * (inclusive). 4187*8975f5c5SAndroid Build Coastguard Worker * 4188*8975f5c5SAndroid Build Coastguard Worker * An example input string might look like: 4189*8975f5c5SAndroid Build Coastguard Worker * 4190*8975f5c5SAndroid Build Coastguard Worker * "stream=0, link0=jack0, link1=jack1; stream=1, link0=jack2.1" 4191*8975f5c5SAndroid Build Coastguard Worker * 4192*8975f5c5SAndroid Build Coastguard Worker * This example specifies two streams, stream 0 and stream 1. Stream 0 4193*8975f5c5SAndroid Build Coastguard Worker * is defined to capture link0 data from the first channel (channel 0) of 4194*8975f5c5SAndroid Build Coastguard Worker * BNC jack 0 and link1 data from the first channel of BNC jack 1. The 4195*8975f5c5SAndroid Build Coastguard Worker * second stream (Stream 1) is defined to capture link0 data from channel 1 4196*8975f5c5SAndroid Build Coastguard Worker * (second channel) of BNC jack 2. 4197*8975f5c5SAndroid Build Coastguard Worker * 4198*8975f5c5SAndroid Build Coastguard Worker * This example shows a possible configuration for capturing 3G input: 4199*8975f5c5SAndroid Build Coastguard Worker * 4200*8975f5c5SAndroid Build Coastguard Worker * "stream=0, link0=jack0.0, link1=jack0.1" 4201*8975f5c5SAndroid Build Coastguard Worker * 4202*8975f5c5SAndroid Build Coastguard Worker * Applications should query the following attributes to determine 4203*8975f5c5SAndroid Build Coastguard Worker * possible combinations: 4204*8975f5c5SAndroid Build Coastguard Worker * 4205*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVI_MAX_STREAMS 4206*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVI_MAX_LINKS_PER_STREAM 4207*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVI_NUM_JACKS 4208*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVI_MAX_CHANNELS_PER_JACK 4209*8975f5c5SAndroid Build Coastguard Worker * 4210*8975f5c5SAndroid Build Coastguard Worker * Note: A jack+channel pair can only be tied to one link/stream. 4211*8975f5c5SAndroid Build Coastguard Worker * 4212*8975f5c5SAndroid Build Coastguard Worker * Upon successful configuration or querying of this attribute, a string 4213*8975f5c5SAndroid Build Coastguard Worker * representing the current topology for all known streams on the device 4214*8975f5c5SAndroid Build Coastguard Worker * will be returned. On failure, NULL is returned. 4215*8975f5c5SAndroid Build Coastguard Worker * 4216*8975f5c5SAndroid Build Coastguard Worker * Note: Setting this attribute may also result in the following 4217*8975f5c5SAndroid Build Coastguard Worker * NV-CONTROL attributes being reset on the GVI device (to ensure 4218*8975f5c5SAndroid Build Coastguard Worker * the configuration remains valid): 4219*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVIO_REQUESTED_VIDEO_FORMAT 4220*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVI_REQUESTED_STREAM_BITS_PER_COMPONENT 4221*8975f5c5SAndroid Build Coastguard Worker * NV_CTRL_GVI_REQUESTED_STREAM_COMPONENT_SAMPLING 4222*8975f5c5SAndroid Build Coastguard Worker */ 4223*8975f5c5SAndroid Build Coastguard Worker 4224*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_OPERATION_GVI_CONFIGURE_STREAMS 4 /* RW-I */ 4225*8975f5c5SAndroid Build Coastguard Worker 4226*8975f5c5SAndroid Build Coastguard Worker #define NV_CTRL_STRING_OPERATION_LAST_ATTRIBUTE NV_CTRL_STRING_OPERATION_GVI_CONFIGURE_STREAMS 4227*8975f5c5SAndroid Build Coastguard Worker 4228*8975f5c5SAndroid Build Coastguard Worker /**************************************************************************/ 4229*8975f5c5SAndroid Build Coastguard Worker 4230*8975f5c5SAndroid Build Coastguard Worker /* 4231*8975f5c5SAndroid Build Coastguard Worker * CTRLAttributeValidValuesRec - 4232*8975f5c5SAndroid Build Coastguard Worker * 4233*8975f5c5SAndroid Build Coastguard Worker * structure and related defines used by 4234*8975f5c5SAndroid Build Coastguard Worker * XNVCTRLQueryValidAttributeValues() to describe the valid values of 4235*8975f5c5SAndroid Build Coastguard Worker * a particular attribute. The type field will be one of: 4236*8975f5c5SAndroid Build Coastguard Worker * 4237*8975f5c5SAndroid Build Coastguard Worker * ATTRIBUTE_TYPE_INTEGER : the attribute is an integer value; there 4238*8975f5c5SAndroid Build Coastguard Worker * is no fixed range of valid values. 4239*8975f5c5SAndroid Build Coastguard Worker * 4240*8975f5c5SAndroid Build Coastguard Worker * ATTRIBUTE_TYPE_BITMASK : the attribute is an integer value, 4241*8975f5c5SAndroid Build Coastguard Worker * interpretted as a bitmask. 4242*8975f5c5SAndroid Build Coastguard Worker * 4243*8975f5c5SAndroid Build Coastguard Worker * ATTRIBUTE_TYPE_BOOL : the attribute is a boolean, valid values are 4244*8975f5c5SAndroid Build Coastguard Worker * either 1 (on/true) or 0 (off/false). 4245*8975f5c5SAndroid Build Coastguard Worker * 4246*8975f5c5SAndroid Build Coastguard Worker * ATTRIBUTE_TYPE_RANGE : the attribute can have any integer value 4247*8975f5c5SAndroid Build Coastguard Worker * between NVCTRLAttributeValidValues.u.range.min and 4248*8975f5c5SAndroid Build Coastguard Worker * NVCTRLAttributeValidValues.u.range.max (inclusive). 4249*8975f5c5SAndroid Build Coastguard Worker * 4250*8975f5c5SAndroid Build Coastguard Worker * ATTRIBUTE_TYPE_INT_BITS : the attribute can only have certain 4251*8975f5c5SAndroid Build Coastguard Worker * integer values, indicated by which bits in 4252*8975f5c5SAndroid Build Coastguard Worker * NVCTRLAttributeValidValues.u.bits.ints are on (for example: if bit 4253*8975f5c5SAndroid Build Coastguard Worker * 0 is on, then 0 is a valid value; if bit 5 is on, then 5 is a valid 4254*8975f5c5SAndroid Build Coastguard Worker * value, etc). This is useful for attributes like NV_CTRL_FSAA_MODE, 4255*8975f5c5SAndroid Build Coastguard Worker * which can only have certain values, depending on GPU. 4256*8975f5c5SAndroid Build Coastguard Worker * 4257*8975f5c5SAndroid Build Coastguard Worker * ATTRIBUTE_TYPE_64BIT_INTEGER : the attribute is a 64 bit integer value; 4258*8975f5c5SAndroid Build Coastguard Worker * there is no fixed range of valid values. 4259*8975f5c5SAndroid Build Coastguard Worker * 4260*8975f5c5SAndroid Build Coastguard Worker * ATTRIBUTE_TYPE_STRING : the attribute is a string value; there is no fixed 4261*8975f5c5SAndroid Build Coastguard Worker * range of valid values. 4262*8975f5c5SAndroid Build Coastguard Worker * 4263*8975f5c5SAndroid Build Coastguard Worker * ATTRIBUTE_TYPE_BINARY_DATA : the attribute is binary data; there is 4264*8975f5c5SAndroid Build Coastguard Worker * no fixed range of valid values. 4265*8975f5c5SAndroid Build Coastguard Worker * 4266*8975f5c5SAndroid Build Coastguard Worker * ATTRIBUTE_TYPE_STRING_OPERATION : the attribute is a string; there is 4267*8975f5c5SAndroid Build Coastguard Worker * no fixed range of valid values. 4268*8975f5c5SAndroid Build Coastguard Worker * 4269*8975f5c5SAndroid Build Coastguard Worker * 4270*8975f5c5SAndroid Build Coastguard Worker * The permissions field of NVCTRLAttributeValidValuesRec is a bitmask 4271*8975f5c5SAndroid Build Coastguard Worker * that may contain: 4272*8975f5c5SAndroid Build Coastguard Worker * 4273*8975f5c5SAndroid Build Coastguard Worker * ATTRIBUTE_TYPE_READ - Attribute may be read (queried.) 4274*8975f5c5SAndroid Build Coastguard Worker * ATTRIBUTE_TYPE_WRITE - Attribute may be written to (set.) 4275*8975f5c5SAndroid Build Coastguard Worker * ATTRIBUTE_TYPE_DISPLAY - Attribute is valid for display target types 4276*8975f5c5SAndroid Build Coastguard Worker * (requires a display_mask if queried via 4277*8975f5c5SAndroid Build Coastguard Worker * a GPU or X screen.) 4278*8975f5c5SAndroid Build Coastguard Worker * ATTRIBUTE_TYPE_GPU - Attribute is valid for GPU target types. 4279*8975f5c5SAndroid Build Coastguard Worker * ATTRIBUTE_TYPE_FRAMELOCK - Attribute is valid for Frame Lock target types. 4280*8975f5c5SAndroid Build Coastguard Worker * ATTRIBUTE_TYPE_X_SCREEN - Attribute is valid for X Screen target types. 4281*8975f5c5SAndroid Build Coastguard Worker * ATTRIBUTE_TYPE_XINERAMA - Attribute will be made consistent for all 4282*8975f5c5SAndroid Build Coastguard Worker * X Screens when the Xinerama extension is enabled. 4283*8975f5c5SAndroid Build Coastguard Worker * ATTRIBUTE_TYPE_VCSC - Attribute is valid for Visual Computing System 4284*8975f5c5SAndroid Build Coastguard Worker * target types. 4285*8975f5c5SAndroid Build Coastguard Worker * ATTRIBUTE_TYPE_GVI - Attribute is valid for Graphics Video In target 4286*8975f5c5SAndroid Build Coastguard Worker * types. 4287*8975f5c5SAndroid Build Coastguard Worker * ATTRIBUTE_TYPE_COOLER - Attribute is valid for Cooler target types. 4288*8975f5c5SAndroid Build Coastguard Worker * ATTRIBUTE_TYPE_3D_VISION_PRO_TRANSCEIVER - Attribute is valid for 3D Vision 4289*8975f5c5SAndroid Build Coastguard Worker * Pro Transceiver target types. 4290*8975f5c5SAndroid Build Coastguard Worker * 4291*8975f5c5SAndroid Build Coastguard Worker * See 'Key to Integer Attribute "Permissions"' at the top of this 4292*8975f5c5SAndroid Build Coastguard Worker * file for a description of what these permission bits mean. 4293*8975f5c5SAndroid Build Coastguard Worker */ 4294*8975f5c5SAndroid Build Coastguard Worker 4295*8975f5c5SAndroid Build Coastguard Worker #define ATTRIBUTE_TYPE_UNKNOWN 0 4296*8975f5c5SAndroid Build Coastguard Worker #define ATTRIBUTE_TYPE_INTEGER 1 4297*8975f5c5SAndroid Build Coastguard Worker #define ATTRIBUTE_TYPE_BITMASK 2 4298*8975f5c5SAndroid Build Coastguard Worker #define ATTRIBUTE_TYPE_BOOL 3 4299*8975f5c5SAndroid Build Coastguard Worker #define ATTRIBUTE_TYPE_RANGE 4 4300*8975f5c5SAndroid Build Coastguard Worker #define ATTRIBUTE_TYPE_INT_BITS 5 4301*8975f5c5SAndroid Build Coastguard Worker #define ATTRIBUTE_TYPE_64BIT_INTEGER 6 4302*8975f5c5SAndroid Build Coastguard Worker #define ATTRIBUTE_TYPE_STRING 7 4303*8975f5c5SAndroid Build Coastguard Worker #define ATTRIBUTE_TYPE_BINARY_DATA 8 4304*8975f5c5SAndroid Build Coastguard Worker #define ATTRIBUTE_TYPE_STRING_OPERATION 9 4305*8975f5c5SAndroid Build Coastguard Worker 4306*8975f5c5SAndroid Build Coastguard Worker #define ATTRIBUTE_TYPE_READ 0x001 4307*8975f5c5SAndroid Build Coastguard Worker #define ATTRIBUTE_TYPE_WRITE 0x002 4308*8975f5c5SAndroid Build Coastguard Worker #define ATTRIBUTE_TYPE_DISPLAY 0x004 4309*8975f5c5SAndroid Build Coastguard Worker #define ATTRIBUTE_TYPE_GPU 0x008 4310*8975f5c5SAndroid Build Coastguard Worker #define ATTRIBUTE_TYPE_FRAMELOCK 0x010 4311*8975f5c5SAndroid Build Coastguard Worker #define ATTRIBUTE_TYPE_X_SCREEN 0x020 4312*8975f5c5SAndroid Build Coastguard Worker #define ATTRIBUTE_TYPE_XINERAMA 0x040 4313*8975f5c5SAndroid Build Coastguard Worker #define ATTRIBUTE_TYPE_VCSC 0x080 4314*8975f5c5SAndroid Build Coastguard Worker #define ATTRIBUTE_TYPE_GVI 0x100 4315*8975f5c5SAndroid Build Coastguard Worker #define ATTRIBUTE_TYPE_COOLER 0x200 4316*8975f5c5SAndroid Build Coastguard Worker #define ATTRIBUTE_TYPE_THERMAL_SENSOR 0x400 4317*8975f5c5SAndroid Build Coastguard Worker #define ATTRIBUTE_TYPE_3D_VISION_PRO_TRANSCEIVER 0x800 4318*8975f5c5SAndroid Build Coastguard Worker 4319*8975f5c5SAndroid Build Coastguard Worker #define ATTRIBUTE_TYPE_ALL_TARGETS \ 4320*8975f5c5SAndroid Build Coastguard Worker ((ATTRIBUTE_TYPE_DISPLAY) | (ATTRIBUTE_TYPE_GPU) | (ATTRIBUTE_TYPE_FRAMELOCK) | \ 4321*8975f5c5SAndroid Build Coastguard Worker (ATTRIBUTE_TYPE_X_SCREEN) | (ATTRIBUTE_TYPE_VCSC) | (ATTRIBUTE_TYPE_GVI) | \ 4322*8975f5c5SAndroid Build Coastguard Worker (ATTRIBUTE_TYPE_COOLER) | (ATTRIBUTE_TYPE_THERMAL_SENSOR) | \ 4323*8975f5c5SAndroid Build Coastguard Worker (ATTRIBUTE_TYPE_3D_VISION_PRO_TRANSCEIVER)) 4324*8975f5c5SAndroid Build Coastguard Worker 4325*8975f5c5SAndroid Build Coastguard Worker typedef struct _NVCTRLAttributeValidValues 4326*8975f5c5SAndroid Build Coastguard Worker { 4327*8975f5c5SAndroid Build Coastguard Worker int type; 4328*8975f5c5SAndroid Build Coastguard Worker union 4329*8975f5c5SAndroid Build Coastguard Worker { 4330*8975f5c5SAndroid Build Coastguard Worker struct 4331*8975f5c5SAndroid Build Coastguard Worker { 4332*8975f5c5SAndroid Build Coastguard Worker int64_t min; 4333*8975f5c5SAndroid Build Coastguard Worker int64_t max; 4334*8975f5c5SAndroid Build Coastguard Worker } range; 4335*8975f5c5SAndroid Build Coastguard Worker struct 4336*8975f5c5SAndroid Build Coastguard Worker { 4337*8975f5c5SAndroid Build Coastguard Worker unsigned int ints; 4338*8975f5c5SAndroid Build Coastguard Worker } bits; 4339*8975f5c5SAndroid Build Coastguard Worker } u; 4340*8975f5c5SAndroid Build Coastguard Worker unsigned int permissions; 4341*8975f5c5SAndroid Build Coastguard Worker } NVCTRLAttributeValidValuesRec; 4342*8975f5c5SAndroid Build Coastguard Worker 4343*8975f5c5SAndroid Build Coastguard Worker typedef struct _NVCTRLAttributePermissions 4344*8975f5c5SAndroid Build Coastguard Worker { 4345*8975f5c5SAndroid Build Coastguard Worker int type; 4346*8975f5c5SAndroid Build Coastguard Worker unsigned int permissions; 4347*8975f5c5SAndroid Build Coastguard Worker } NVCTRLAttributePermissionsRec; 4348*8975f5c5SAndroid Build Coastguard Worker 4349*8975f5c5SAndroid Build Coastguard Worker /**************************************************************************/ 4350*8975f5c5SAndroid Build Coastguard Worker 4351*8975f5c5SAndroid Build Coastguard Worker /* 4352*8975f5c5SAndroid Build Coastguard Worker * NV-CONTROL X event notification. 4353*8975f5c5SAndroid Build Coastguard Worker * 4354*8975f5c5SAndroid Build Coastguard Worker * To receive X event notifications dealing with NV-CONTROL, you should 4355*8975f5c5SAndroid Build Coastguard Worker * call XNVCtrlSelectNotify() with one of the following set as the type 4356*8975f5c5SAndroid Build Coastguard Worker * of event to receive (see NVCtrlLib.h for more information): 4357*8975f5c5SAndroid Build Coastguard Worker */ 4358*8975f5c5SAndroid Build Coastguard Worker 4359*8975f5c5SAndroid Build Coastguard Worker #define ATTRIBUTE_CHANGED_EVENT 0 4360*8975f5c5SAndroid Build Coastguard Worker #define TARGET_ATTRIBUTE_CHANGED_EVENT 1 4361*8975f5c5SAndroid Build Coastguard Worker #define TARGET_ATTRIBUTE_AVAILABILITY_CHANGED_EVENT 2 4362*8975f5c5SAndroid Build Coastguard Worker #define TARGET_STRING_ATTRIBUTE_CHANGED_EVENT 3 4363*8975f5c5SAndroid Build Coastguard Worker #define TARGET_BINARY_ATTRIBUTE_CHANGED_EVENT 4 4364*8975f5c5SAndroid Build Coastguard Worker 4365*8975f5c5SAndroid Build Coastguard Worker #endif /* __NVCTRL_H */ 4366