376 lines · c
1/*2 * Copyright (c) 1993-2014, NVIDIA CORPORATION. All rights reserved.3 *4 * Permission is hereby granted, free of charge, to any person obtaining a5 * copy of this software and associated documentation files (the "Software"),6 * to deal in the Software without restriction, including without limitation7 * the rights to use, copy, modify, merge, publish, distribute, sublicense,8 * and/or sell copies of the Software, and to permit persons to whom the9 * Software is furnished to do so, subject to the following conditions:10 *11 * The above copyright notice and this permission notice shall be included in12 * all copies or substantial portions of the Software.13 *14 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR15 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,16 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL17 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER18 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING19 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER20 * DEALINGS IN THE SOFTWARE.21 */22 23 24#ifndef _cl507d_h_25#define _cl507d_h_26 27#define NV_DISP_CORE_NOTIFIER_1 0x0000000028#define NV_DISP_CORE_NOTIFIER_1_SIZEOF 0x0000005429#define NV_DISP_CORE_NOTIFIER_1_COMPLETION_0 0x0000000030#define NV_DISP_CORE_NOTIFIER_1_COMPLETION_0_DONE 0:031#define NV_DISP_CORE_NOTIFIER_1_COMPLETION_0_DONE_FALSE 0x0000000032#define NV_DISP_CORE_NOTIFIER_1_COMPLETION_0_DONE_TRUE 0x0000000133#define NV_DISP_CORE_NOTIFIER_1_COMPLETION_0_R0 15:134#define NV_DISP_CORE_NOTIFIER_1_COMPLETION_0_TIMESTAMP 29:1635#define NV_DISP_CORE_NOTIFIER_1_CAPABILITIES_1 0x0000000136#define NV_DISP_CORE_NOTIFIER_1_CAPABILITIES_1_DONE 0:037#define NV_DISP_CORE_NOTIFIER_1_CAPABILITIES_1_DONE_FALSE 0x0000000038#define NV_DISP_CORE_NOTIFIER_1_CAPABILITIES_1_DONE_TRUE 0x0000000139 40// class methods41#define NV507D_UPDATE (0x00000080)42#define NV507D_UPDATE_INTERLOCK_WITH_CURSOR0 0:043#define NV507D_UPDATE_INTERLOCK_WITH_CURSOR0_DISABLE (0x00000000)44#define NV507D_UPDATE_INTERLOCK_WITH_CURSOR0_ENABLE (0x00000001)45#define NV507D_UPDATE_INTERLOCK_WITH_CURSOR1 8:846#define NV507D_UPDATE_INTERLOCK_WITH_CURSOR1_DISABLE (0x00000000)47#define NV507D_UPDATE_INTERLOCK_WITH_CURSOR1_ENABLE (0x00000001)48#define NV507D_UPDATE_INTERLOCK_WITH_BASE0 1:149#define NV507D_UPDATE_INTERLOCK_WITH_BASE0_DISABLE (0x00000000)50#define NV507D_UPDATE_INTERLOCK_WITH_BASE0_ENABLE (0x00000001)51#define NV507D_UPDATE_INTERLOCK_WITH_BASE1 9:952#define NV507D_UPDATE_INTERLOCK_WITH_BASE1_DISABLE (0x00000000)53#define NV507D_UPDATE_INTERLOCK_WITH_BASE1_ENABLE (0x00000001)54#define NV507D_UPDATE_INTERLOCK_WITH_OVERLAY0 2:255#define NV507D_UPDATE_INTERLOCK_WITH_OVERLAY0_DISABLE (0x00000000)56#define NV507D_UPDATE_INTERLOCK_WITH_OVERLAY0_ENABLE (0x00000001)57#define NV507D_UPDATE_INTERLOCK_WITH_OVERLAY1 10:1058#define NV507D_UPDATE_INTERLOCK_WITH_OVERLAY1_DISABLE (0x00000000)59#define NV507D_UPDATE_INTERLOCK_WITH_OVERLAY1_ENABLE (0x00000001)60#define NV507D_UPDATE_INTERLOCK_WITH_OVERLAY_IMM0 3:361#define NV507D_UPDATE_INTERLOCK_WITH_OVERLAY_IMM0_DISABLE (0x00000000)62#define NV507D_UPDATE_INTERLOCK_WITH_OVERLAY_IMM0_ENABLE (0x00000001)63#define NV507D_UPDATE_INTERLOCK_WITH_OVERLAY_IMM1 11:1164#define NV507D_UPDATE_INTERLOCK_WITH_OVERLAY_IMM1_DISABLE (0x00000000)65#define NV507D_UPDATE_INTERLOCK_WITH_OVERLAY_IMM1_ENABLE (0x00000001)66#define NV507D_UPDATE_NOT_DRIVER_FRIENDLY 31:3167#define NV507D_UPDATE_NOT_DRIVER_FRIENDLY_FALSE (0x00000000)68#define NV507D_UPDATE_NOT_DRIVER_FRIENDLY_TRUE (0x00000001)69#define NV507D_UPDATE_NOT_DRIVER_UNFRIENDLY 30:3070#define NV507D_UPDATE_NOT_DRIVER_UNFRIENDLY_FALSE (0x00000000)71#define NV507D_UPDATE_NOT_DRIVER_UNFRIENDLY_TRUE (0x00000001)72#define NV507D_UPDATE_INHIBIT_INTERRUPTS 29:2973#define NV507D_UPDATE_INHIBIT_INTERRUPTS_FALSE (0x00000000)74#define NV507D_UPDATE_INHIBIT_INTERRUPTS_TRUE (0x00000001)75#define NV507D_SET_NOTIFIER_CONTROL (0x00000084)76#define NV507D_SET_NOTIFIER_CONTROL_MODE 30:3077#define NV507D_SET_NOTIFIER_CONTROL_MODE_WRITE (0x00000000)78#define NV507D_SET_NOTIFIER_CONTROL_MODE_WRITE_AWAKEN (0x00000001)79#define NV507D_SET_NOTIFIER_CONTROL_OFFSET 11:280#define NV507D_SET_NOTIFIER_CONTROL_NOTIFY 31:3181#define NV507D_SET_NOTIFIER_CONTROL_NOTIFY_DISABLE (0x00000000)82#define NV507D_SET_NOTIFIER_CONTROL_NOTIFY_ENABLE (0x00000001)83#define NV507D_SET_CONTEXT_DMA_NOTIFIER (0x00000088)84#define NV507D_SET_CONTEXT_DMA_NOTIFIER_HANDLE 31:085#define NV507D_GET_CAPABILITIES (0x0000008C)86#define NV507D_GET_CAPABILITIES_DUMMY 31:087 88#define NV507D_DAC_SET_CONTROL(a) (0x00000400 + (a)*0x00000080)89#define NV507D_DAC_SET_CONTROL_OWNER 3:090#define NV507D_DAC_SET_CONTROL_OWNER_NONE (0x00000000)91#define NV507D_DAC_SET_CONTROL_OWNER_HEAD0 (0x00000001)92#define NV507D_DAC_SET_CONTROL_OWNER_HEAD1 (0x00000002)93#define NV507D_DAC_SET_CONTROL_SUB_OWNER 5:494#define NV507D_DAC_SET_CONTROL_SUB_OWNER_NONE (0x00000000)95#define NV507D_DAC_SET_CONTROL_SUB_OWNER_SUBHEAD0 (0x00000001)96#define NV507D_DAC_SET_CONTROL_SUB_OWNER_SUBHEAD1 (0x00000002)97#define NV507D_DAC_SET_CONTROL_SUB_OWNER_BOTH (0x00000003)98#define NV507D_DAC_SET_CONTROL_PROTOCOL 13:899#define NV507D_DAC_SET_CONTROL_PROTOCOL_RGB_CRT (0x00000000)100#define NV507D_DAC_SET_CONTROL_PROTOCOL_CPST_NTSC_M (0x00000001)101#define NV507D_DAC_SET_CONTROL_PROTOCOL_CPST_NTSC_J (0x00000002)102#define NV507D_DAC_SET_CONTROL_PROTOCOL_CPST_PAL_BDGHI (0x00000003)103#define NV507D_DAC_SET_CONTROL_PROTOCOL_CPST_PAL_M (0x00000004)104#define NV507D_DAC_SET_CONTROL_PROTOCOL_CPST_PAL_N (0x00000005)105#define NV507D_DAC_SET_CONTROL_PROTOCOL_CPST_PAL_CN (0x00000006)106#define NV507D_DAC_SET_CONTROL_PROTOCOL_COMP_NTSC_M (0x00000007)107#define NV507D_DAC_SET_CONTROL_PROTOCOL_COMP_NTSC_J (0x00000008)108#define NV507D_DAC_SET_CONTROL_PROTOCOL_COMP_PAL_BDGHI (0x00000009)109#define NV507D_DAC_SET_CONTROL_PROTOCOL_COMP_PAL_M (0x0000000A)110#define NV507D_DAC_SET_CONTROL_PROTOCOL_COMP_PAL_N (0x0000000B)111#define NV507D_DAC_SET_CONTROL_PROTOCOL_COMP_PAL_CN (0x0000000C)112#define NV507D_DAC_SET_CONTROL_PROTOCOL_COMP_480P_60 (0x0000000D)113#define NV507D_DAC_SET_CONTROL_PROTOCOL_COMP_576P_50 (0x0000000E)114#define NV507D_DAC_SET_CONTROL_PROTOCOL_COMP_720P_50 (0x0000000F)115#define NV507D_DAC_SET_CONTROL_PROTOCOL_COMP_720P_60 (0x00000010)116#define NV507D_DAC_SET_CONTROL_PROTOCOL_COMP_1080I_50 (0x00000011)117#define NV507D_DAC_SET_CONTROL_PROTOCOL_COMP_1080I_60 (0x00000012)118#define NV507D_DAC_SET_CONTROL_PROTOCOL_CUSTOM (0x0000003F)119#define NV507D_DAC_SET_CONTROL_INVALIDATE_FIRST_FIELD 14:14120#define NV507D_DAC_SET_CONTROL_INVALIDATE_FIRST_FIELD_FALSE (0x00000000)121#define NV507D_DAC_SET_CONTROL_INVALIDATE_FIRST_FIELD_TRUE (0x00000001)122#define NV507D_DAC_SET_POLARITY(a) (0x00000404 + (a)*0x00000080)123#define NV507D_DAC_SET_POLARITY_HSYNC 0:0124#define NV507D_DAC_SET_POLARITY_HSYNC_POSITIVE_TRUE (0x00000000)125#define NV507D_DAC_SET_POLARITY_HSYNC_NEGATIVE_TRUE (0x00000001)126#define NV507D_DAC_SET_POLARITY_VSYNC 1:1127#define NV507D_DAC_SET_POLARITY_VSYNC_POSITIVE_TRUE (0x00000000)128#define NV507D_DAC_SET_POLARITY_VSYNC_NEGATIVE_TRUE (0x00000001)129#define NV507D_DAC_SET_POLARITY_RESERVED 31:2130 131#define NV507D_SOR_SET_CONTROL(a) (0x00000600 + (a)*0x00000040)132#define NV507D_SOR_SET_CONTROL_OWNER 3:0133#define NV507D_SOR_SET_CONTROL_OWNER_NONE (0x00000000)134#define NV507D_SOR_SET_CONTROL_OWNER_HEAD0 (0x00000001)135#define NV507D_SOR_SET_CONTROL_OWNER_HEAD1 (0x00000002)136#define NV507D_SOR_SET_CONTROL_SUB_OWNER 5:4137#define NV507D_SOR_SET_CONTROL_SUB_OWNER_NONE (0x00000000)138#define NV507D_SOR_SET_CONTROL_SUB_OWNER_SUBHEAD0 (0x00000001)139#define NV507D_SOR_SET_CONTROL_SUB_OWNER_SUBHEAD1 (0x00000002)140#define NV507D_SOR_SET_CONTROL_SUB_OWNER_BOTH (0x00000003)141#define NV507D_SOR_SET_CONTROL_PROTOCOL 11:8142#define NV507D_SOR_SET_CONTROL_PROTOCOL_LVDS_CUSTOM (0x00000000)143#define NV507D_SOR_SET_CONTROL_PROTOCOL_SINGLE_TMDS_A (0x00000001)144#define NV507D_SOR_SET_CONTROL_PROTOCOL_SINGLE_TMDS_B (0x00000002)145#define NV507D_SOR_SET_CONTROL_PROTOCOL_SINGLE_TMDS_AB (0x00000003)146#define NV507D_SOR_SET_CONTROL_PROTOCOL_DUAL_SINGLE_TMDS (0x00000004)147#define NV507D_SOR_SET_CONTROL_PROTOCOL_DUAL_TMDS (0x00000005)148#define NV507D_SOR_SET_CONTROL_PROTOCOL_DDI_OUT (0x00000007)149#define NV507D_SOR_SET_CONTROL_PROTOCOL_CUSTOM (0x0000000F)150#define NV507D_SOR_SET_CONTROL_HSYNC_POLARITY 12:12151#define NV507D_SOR_SET_CONTROL_HSYNC_POLARITY_POSITIVE_TRUE (0x00000000)152#define NV507D_SOR_SET_CONTROL_HSYNC_POLARITY_NEGATIVE_TRUE (0x00000001)153#define NV507D_SOR_SET_CONTROL_VSYNC_POLARITY 13:13154#define NV507D_SOR_SET_CONTROL_VSYNC_POLARITY_POSITIVE_TRUE (0x00000000)155#define NV507D_SOR_SET_CONTROL_VSYNC_POLARITY_NEGATIVE_TRUE (0x00000001)156#define NV507D_SOR_SET_CONTROL_DE_SYNC_POLARITY 14:14157#define NV507D_SOR_SET_CONTROL_DE_SYNC_POLARITY_POSITIVE_TRUE (0x00000000)158#define NV507D_SOR_SET_CONTROL_DE_SYNC_POLARITY_NEGATIVE_TRUE (0x00000001)159 160#define NV507D_PIOR_SET_CONTROL(a) (0x00000700 + (a)*0x00000040)161#define NV507D_PIOR_SET_CONTROL_OWNER 3:0162#define NV507D_PIOR_SET_CONTROL_OWNER_NONE (0x00000000)163#define NV507D_PIOR_SET_CONTROL_OWNER_HEAD0 (0x00000001)164#define NV507D_PIOR_SET_CONTROL_OWNER_HEAD1 (0x00000002)165#define NV507D_PIOR_SET_CONTROL_SUB_OWNER 5:4166#define NV507D_PIOR_SET_CONTROL_SUB_OWNER_NONE (0x00000000)167#define NV507D_PIOR_SET_CONTROL_SUB_OWNER_SUBHEAD0 (0x00000001)168#define NV507D_PIOR_SET_CONTROL_SUB_OWNER_SUBHEAD1 (0x00000002)169#define NV507D_PIOR_SET_CONTROL_SUB_OWNER_BOTH (0x00000003)170#define NV507D_PIOR_SET_CONTROL_PROTOCOL 11:8171#define NV507D_PIOR_SET_CONTROL_PROTOCOL_EXT_TMDS_ENC (0x00000000)172#define NV507D_PIOR_SET_CONTROL_PROTOCOL_EXT_TV_ENC (0x00000001)173#define NV507D_PIOR_SET_CONTROL_HSYNC_POLARITY 12:12174#define NV507D_PIOR_SET_CONTROL_HSYNC_POLARITY_POSITIVE_TRUE (0x00000000)175#define NV507D_PIOR_SET_CONTROL_HSYNC_POLARITY_NEGATIVE_TRUE (0x00000001)176#define NV507D_PIOR_SET_CONTROL_VSYNC_POLARITY 13:13177#define NV507D_PIOR_SET_CONTROL_VSYNC_POLARITY_POSITIVE_TRUE (0x00000000)178#define NV507D_PIOR_SET_CONTROL_VSYNC_POLARITY_NEGATIVE_TRUE (0x00000001)179#define NV507D_PIOR_SET_CONTROL_DE_SYNC_POLARITY 14:14180#define NV507D_PIOR_SET_CONTROL_DE_SYNC_POLARITY_POSITIVE_TRUE (0x00000000)181#define NV507D_PIOR_SET_CONTROL_DE_SYNC_POLARITY_NEGATIVE_TRUE (0x00000001)182 183#define NV507D_HEAD_SET_PIXEL_CLOCK(a) (0x00000804 + (a)*0x00000400)184#define NV507D_HEAD_SET_PIXEL_CLOCK_FREQUENCY 21:0185#define NV507D_HEAD_SET_PIXEL_CLOCK_MODE 23:22186#define NV507D_HEAD_SET_PIXEL_CLOCK_MODE_CLK_25 (0x00000000)187#define NV507D_HEAD_SET_PIXEL_CLOCK_MODE_CLK_28 (0x00000001)188#define NV507D_HEAD_SET_PIXEL_CLOCK_MODE_CLK_CUSTOM (0x00000002)189#define NV507D_HEAD_SET_PIXEL_CLOCK_ADJ1000DIV1001 24:24190#define NV507D_HEAD_SET_PIXEL_CLOCK_ADJ1000DIV1001_FALSE (0x00000000)191#define NV507D_HEAD_SET_PIXEL_CLOCK_ADJ1000DIV1001_TRUE (0x00000001)192#define NV507D_HEAD_SET_PIXEL_CLOCK_NOT_DRIVER 25:25193#define NV507D_HEAD_SET_PIXEL_CLOCK_NOT_DRIVER_FALSE (0x00000000)194#define NV507D_HEAD_SET_PIXEL_CLOCK_NOT_DRIVER_TRUE (0x00000001)195#define NV507D_HEAD_SET_CONTROL(a) (0x00000808 + (a)*0x00000400)196#define NV507D_HEAD_SET_CONTROL_STRUCTURE 2:1197#define NV507D_HEAD_SET_CONTROL_STRUCTURE_PROGRESSIVE (0x00000000)198#define NV507D_HEAD_SET_CONTROL_STRUCTURE_INTERLACED (0x00000001)199#define NV507D_HEAD_SET_OVERSCAN_COLOR(a) (0x00000810 + (a)*0x00000400)200#define NV507D_HEAD_SET_OVERSCAN_COLOR_RED 9:0201#define NV507D_HEAD_SET_OVERSCAN_COLOR_GRN 19:10202#define NV507D_HEAD_SET_OVERSCAN_COLOR_BLU 29:20203#define NV507D_HEAD_SET_RASTER_SIZE(a) (0x00000814 + (a)*0x00000400)204#define NV507D_HEAD_SET_RASTER_SIZE_WIDTH 14:0205#define NV507D_HEAD_SET_RASTER_SIZE_HEIGHT 30:16206#define NV507D_HEAD_SET_RASTER_SYNC_END(a) (0x00000818 + (a)*0x00000400)207#define NV507D_HEAD_SET_RASTER_SYNC_END_X 14:0208#define NV507D_HEAD_SET_RASTER_SYNC_END_Y 30:16209#define NV507D_HEAD_SET_RASTER_BLANK_END(a) (0x0000081C + (a)*0x00000400)210#define NV507D_HEAD_SET_RASTER_BLANK_END_X 14:0211#define NV507D_HEAD_SET_RASTER_BLANK_END_Y 30:16212#define NV507D_HEAD_SET_RASTER_BLANK_START(a) (0x00000820 + (a)*0x00000400)213#define NV507D_HEAD_SET_RASTER_BLANK_START_X 14:0214#define NV507D_HEAD_SET_RASTER_BLANK_START_Y 30:16215#define NV507D_HEAD_SET_RASTER_VERT_BLANK2(a) (0x00000824 + (a)*0x00000400)216#define NV507D_HEAD_SET_RASTER_VERT_BLANK2_YSTART 14:0217#define NV507D_HEAD_SET_RASTER_VERT_BLANK2_YEND 30:16218#define NV507D_HEAD_SET_RASTER_VERT_BLANK_DMI(a) (0x00000828 + (a)*0x00000400)219#define NV507D_HEAD_SET_RASTER_VERT_BLANK_DMI_DURATION 11:0220#define NV507D_HEAD_SET_DEFAULT_BASE_COLOR(a) (0x0000082C + (a)*0x00000400)221#define NV507D_HEAD_SET_DEFAULT_BASE_COLOR_RED 9:0222#define NV507D_HEAD_SET_DEFAULT_BASE_COLOR_GREEN 19:10223#define NV507D_HEAD_SET_DEFAULT_BASE_COLOR_BLUE 29:20224#define NV507D_HEAD_SET_BASE_LUT_LO(a) (0x00000840 + (a)*0x00000400)225#define NV507D_HEAD_SET_BASE_LUT_LO_ENABLE 31:31226#define NV507D_HEAD_SET_BASE_LUT_LO_ENABLE_DISABLE (0x00000000)227#define NV507D_HEAD_SET_BASE_LUT_LO_ENABLE_ENABLE (0x00000001)228#define NV507D_HEAD_SET_BASE_LUT_LO_MODE 30:30229#define NV507D_HEAD_SET_BASE_LUT_LO_MODE_LORES (0x00000000)230#define NV507D_HEAD_SET_BASE_LUT_LO_MODE_HIRES (0x00000001)231#define NV507D_HEAD_SET_BASE_LUT_LO_ORIGIN 7:2232#define NV507D_HEAD_SET_BASE_LUT_HI(a) (0x00000844 + (a)*0x00000400)233#define NV507D_HEAD_SET_BASE_LUT_HI_ORIGIN 31:0234#define NV507D_HEAD_SET_OFFSET(a,b) (0x00000860 + (a)*0x00000400 + (b)*0x00000004)235#define NV507D_HEAD_SET_OFFSET_ORIGIN 31:0236#define NV507D_HEAD_SET_SIZE(a) (0x00000868 + (a)*0x00000400)237#define NV507D_HEAD_SET_SIZE_WIDTH 14:0238#define NV507D_HEAD_SET_SIZE_HEIGHT 30:16239#define NV507D_HEAD_SET_STORAGE(a) (0x0000086C + (a)*0x00000400)240#define NV507D_HEAD_SET_STORAGE_BLOCK_HEIGHT 3:0241#define NV507D_HEAD_SET_STORAGE_BLOCK_HEIGHT_ONE_GOB (0x00000000)242#define NV507D_HEAD_SET_STORAGE_BLOCK_HEIGHT_TWO_GOBS (0x00000001)243#define NV507D_HEAD_SET_STORAGE_BLOCK_HEIGHT_FOUR_GOBS (0x00000002)244#define NV507D_HEAD_SET_STORAGE_BLOCK_HEIGHT_EIGHT_GOBS (0x00000003)245#define NV507D_HEAD_SET_STORAGE_BLOCK_HEIGHT_SIXTEEN_GOBS (0x00000004)246#define NV507D_HEAD_SET_STORAGE_BLOCK_HEIGHT_THIRTYTWO_GOBS (0x00000005)247#define NV507D_HEAD_SET_STORAGE_PITCH 17:8248#define NV507D_HEAD_SET_STORAGE_MEMORY_LAYOUT 20:20249#define NV507D_HEAD_SET_STORAGE_MEMORY_LAYOUT_BLOCKLINEAR (0x00000000)250#define NV507D_HEAD_SET_STORAGE_MEMORY_LAYOUT_PITCH (0x00000001)251#define NV507D_HEAD_SET_PARAMS(a) (0x00000870 + (a)*0x00000400)252#define NV507D_HEAD_SET_PARAMS_FORMAT 15:8253#define NV507D_HEAD_SET_PARAMS_FORMAT_I8 (0x0000001E)254#define NV507D_HEAD_SET_PARAMS_FORMAT_VOID16 (0x0000001F)255#define NV507D_HEAD_SET_PARAMS_FORMAT_VOID32 (0x0000002E)256#define NV507D_HEAD_SET_PARAMS_FORMAT_RF16_GF16_BF16_AF16 (0x000000CA)257#define NV507D_HEAD_SET_PARAMS_FORMAT_A8R8G8B8 (0x000000CF)258#define NV507D_HEAD_SET_PARAMS_FORMAT_A2B10G10R10 (0x000000D1)259#define NV507D_HEAD_SET_PARAMS_FORMAT_A8B8G8R8 (0x000000D5)260#define NV507D_HEAD_SET_PARAMS_FORMAT_R5G6B5 (0x000000E8)261#define NV507D_HEAD_SET_PARAMS_FORMAT_A1R5G5B5 (0x000000E9)262#define NV507D_HEAD_SET_PARAMS_KIND 22:16263#define NV507D_HEAD_SET_PARAMS_KIND_KIND_PITCH (0x00000000)264#define NV507D_HEAD_SET_PARAMS_KIND_KIND_GENERIC_8BX2 (0x00000070)265#define NV507D_HEAD_SET_PARAMS_KIND_KIND_GENERIC_8BX2_BANKSWIZ (0x00000072)266#define NV507D_HEAD_SET_PARAMS_KIND_KIND_GENERIC_16BX1 (0x00000074)267#define NV507D_HEAD_SET_PARAMS_KIND_KIND_GENERIC_16BX1_BANKSWIZ (0x00000076)268#define NV507D_HEAD_SET_PARAMS_KIND_KIND_C32_MS4 (0x00000078)269#define NV507D_HEAD_SET_PARAMS_KIND_KIND_C32_MS8 (0x00000079)270#define NV507D_HEAD_SET_PARAMS_KIND_KIND_C32_MS4_BANKSWIZ (0x0000007A)271#define NV507D_HEAD_SET_PARAMS_KIND_KIND_C32_MS8_BANKSWIZ (0x0000007B)272#define NV507D_HEAD_SET_PARAMS_KIND_KIND_C64_MS4 (0x0000007C)273#define NV507D_HEAD_SET_PARAMS_KIND_KIND_C64_MS8 (0x0000007D)274#define NV507D_HEAD_SET_PARAMS_KIND_KIND_C128_MS4 (0x0000007E)275#define NV507D_HEAD_SET_PARAMS_KIND_FROM_PTE (0x0000007F)276#define NV507D_HEAD_SET_PARAMS_PART_STRIDE 24:24277#define NV507D_HEAD_SET_PARAMS_PART_STRIDE_PARTSTRIDE_256 (0x00000000)278#define NV507D_HEAD_SET_PARAMS_PART_STRIDE_PARTSTRIDE_1024 (0x00000001)279#define NV507D_HEAD_SET_CONTEXT_DMA_ISO(a) (0x00000874 + (a)*0x00000400)280#define NV507D_HEAD_SET_CONTEXT_DMA_ISO_HANDLE 31:0281#define NV507D_HEAD_SET_CONTROL_CURSOR(a) (0x00000880 + (a)*0x00000400)282#define NV507D_HEAD_SET_CONTROL_CURSOR_ENABLE 31:31283#define NV507D_HEAD_SET_CONTROL_CURSOR_ENABLE_DISABLE (0x00000000)284#define NV507D_HEAD_SET_CONTROL_CURSOR_ENABLE_ENABLE (0x00000001)285#define NV507D_HEAD_SET_CONTROL_CURSOR_FORMAT 25:24286#define NV507D_HEAD_SET_CONTROL_CURSOR_FORMAT_A1R5G5B5 (0x00000000)287#define NV507D_HEAD_SET_CONTROL_CURSOR_FORMAT_A8R8G8B8 (0x00000001)288#define NV507D_HEAD_SET_CONTROL_CURSOR_SIZE 26:26289#define NV507D_HEAD_SET_CONTROL_CURSOR_SIZE_W32_H32 (0x00000000)290#define NV507D_HEAD_SET_CONTROL_CURSOR_SIZE_W64_H64 (0x00000001)291#define NV507D_HEAD_SET_CONTROL_CURSOR_HOT_SPOT_X 13:8292#define NV507D_HEAD_SET_CONTROL_CURSOR_HOT_SPOT_Y 21:16293#define NV507D_HEAD_SET_CONTROL_CURSOR_COMPOSITION 29:28294#define NV507D_HEAD_SET_CONTROL_CURSOR_COMPOSITION_ALPHA_BLEND (0x00000000)295#define NV507D_HEAD_SET_CONTROL_CURSOR_COMPOSITION_PREMULT_ALPHA_BLEND (0x00000001)296#define NV507D_HEAD_SET_CONTROL_CURSOR_COMPOSITION_XOR (0x00000002)297#define NV507D_HEAD_SET_CONTROL_CURSOR_SUB_OWNER 5:4298#define NV507D_HEAD_SET_CONTROL_CURSOR_SUB_OWNER_NONE (0x00000000)299#define NV507D_HEAD_SET_CONTROL_CURSOR_SUB_OWNER_SUBHEAD0 (0x00000001)300#define NV507D_HEAD_SET_CONTROL_CURSOR_SUB_OWNER_SUBHEAD1 (0x00000002)301#define NV507D_HEAD_SET_CONTROL_CURSOR_SUB_OWNER_BOTH (0x00000003)302#define NV507D_HEAD_SET_OFFSET_CURSOR(a) (0x00000884 + (a)*0x00000400)303#define NV507D_HEAD_SET_OFFSET_CURSOR_ORIGIN 31:0304#define NV507D_HEAD_SET_DITHER_CONTROL(a) (0x000008A0 + (a)*0x00000400)305#define NV507D_HEAD_SET_DITHER_CONTROL_ENABLE 0:0306#define NV507D_HEAD_SET_DITHER_CONTROL_ENABLE_DISABLE (0x00000000)307#define NV507D_HEAD_SET_DITHER_CONTROL_ENABLE_ENABLE (0x00000001)308#define NV507D_HEAD_SET_DITHER_CONTROL_BITS 2:1309#define NV507D_HEAD_SET_DITHER_CONTROL_BITS_DITHER_TO_6_BITS (0x00000000)310#define NV507D_HEAD_SET_DITHER_CONTROL_BITS_DITHER_TO_8_BITS (0x00000001)311#define NV507D_HEAD_SET_DITHER_CONTROL_MODE 6:3312#define NV507D_HEAD_SET_DITHER_CONTROL_MODE_DYNAMIC_ERR_ACC (0x00000000)313#define NV507D_HEAD_SET_DITHER_CONTROL_MODE_STATIC_ERR_ACC (0x00000001)314#define NV507D_HEAD_SET_DITHER_CONTROL_MODE_DYNAMIC_2X2 (0x00000002)315#define NV507D_HEAD_SET_DITHER_CONTROL_MODE_STATIC_2X2 (0x00000003)316#define NV507D_HEAD_SET_DITHER_CONTROL_PHASE 8:7317#define NV507D_HEAD_SET_CONTROL_OUTPUT_SCALER(a) (0x000008A4 + (a)*0x00000400)318#define NV507D_HEAD_SET_CONTROL_OUTPUT_SCALER_VERTICAL_TAPS 2:0319#define NV507D_HEAD_SET_CONTROL_OUTPUT_SCALER_VERTICAL_TAPS_TAPS_1 (0x00000000)320#define NV507D_HEAD_SET_CONTROL_OUTPUT_SCALER_VERTICAL_TAPS_TAPS_2 (0x00000001)321#define NV507D_HEAD_SET_CONTROL_OUTPUT_SCALER_VERTICAL_TAPS_TAPS_3 (0x00000002)322#define NV507D_HEAD_SET_CONTROL_OUTPUT_SCALER_VERTICAL_TAPS_TAPS_3_ADAPTIVE (0x00000003)323#define NV507D_HEAD_SET_CONTROL_OUTPUT_SCALER_VERTICAL_TAPS_TAPS_5 (0x00000004)324#define NV507D_HEAD_SET_CONTROL_OUTPUT_SCALER_HORIZONTAL_TAPS 4:3325#define NV507D_HEAD_SET_CONTROL_OUTPUT_SCALER_HORIZONTAL_TAPS_TAPS_1 (0x00000000)326#define NV507D_HEAD_SET_CONTROL_OUTPUT_SCALER_HORIZONTAL_TAPS_TAPS_2 (0x00000001)327#define NV507D_HEAD_SET_CONTROL_OUTPUT_SCALER_HORIZONTAL_TAPS_TAPS_8 (0x00000002)328#define NV507D_HEAD_SET_CONTROL_OUTPUT_SCALER_HRESPONSE_BIAS 23:16329#define NV507D_HEAD_SET_CONTROL_OUTPUT_SCALER_VRESPONSE_BIAS 31:24330#define NV507D_HEAD_SET_PROCAMP(a) (0x000008A8 + (a)*0x00000400)331#define NV507D_HEAD_SET_PROCAMP_COLOR_SPACE 1:0332#define NV507D_HEAD_SET_PROCAMP_COLOR_SPACE_RGB (0x00000000)333#define NV507D_HEAD_SET_PROCAMP_COLOR_SPACE_YUV_601 (0x00000001)334#define NV507D_HEAD_SET_PROCAMP_COLOR_SPACE_YUV_709 (0x00000002)335#define NV507D_HEAD_SET_PROCAMP_CHROMA_LPF 2:2336#define NV507D_HEAD_SET_PROCAMP_CHROMA_LPF_AUTO (0x00000000)337#define NV507D_HEAD_SET_PROCAMP_CHROMA_LPF_ON (0x00000001)338#define NV507D_HEAD_SET_PROCAMP_SAT_COS 19:8339#define NV507D_HEAD_SET_PROCAMP_SAT_SINE 31:20340#define NV507D_HEAD_SET_PROCAMP_TRANSITION 4:3341#define NV507D_HEAD_SET_PROCAMP_TRANSITION_HARD (0x00000000)342#define NV507D_HEAD_SET_PROCAMP_TRANSITION_NTSC (0x00000001)343#define NV507D_HEAD_SET_PROCAMP_TRANSITION_PAL (0x00000002)344#define NV507D_HEAD_SET_VIEWPORT_POINT_IN(a,b) (0x000008C0 + (a)*0x00000400 + (b)*0x00000004)345#define NV507D_HEAD_SET_VIEWPORT_POINT_IN_X 14:0346#define NV507D_HEAD_SET_VIEWPORT_POINT_IN_Y 30:16347#define NV507D_HEAD_SET_VIEWPORT_SIZE_IN(a) (0x000008C8 + (a)*0x00000400)348#define NV507D_HEAD_SET_VIEWPORT_SIZE_IN_WIDTH 14:0349#define NV507D_HEAD_SET_VIEWPORT_SIZE_IN_HEIGHT 30:16350#define NV507D_HEAD_SET_VIEWPORT_SIZE_OUT(a) (0x000008D8 + (a)*0x00000400)351#define NV507D_HEAD_SET_VIEWPORT_SIZE_OUT_WIDTH 14:0352#define NV507D_HEAD_SET_VIEWPORT_SIZE_OUT_HEIGHT 30:16353#define NV507D_HEAD_SET_VIEWPORT_SIZE_OUT_MIN(a) (0x000008DC + (a)*0x00000400)354#define NV507D_HEAD_SET_VIEWPORT_SIZE_OUT_MIN_WIDTH 14:0355#define NV507D_HEAD_SET_VIEWPORT_SIZE_OUT_MIN_HEIGHT 30:16356#define NV507D_HEAD_SET_BASE_CHANNEL_USAGE_BOUNDS(a) (0x00000900 + (a)*0x00000400)357#define NV507D_HEAD_SET_BASE_CHANNEL_USAGE_BOUNDS_USABLE 0:0358#define NV507D_HEAD_SET_BASE_CHANNEL_USAGE_BOUNDS_USABLE_FALSE (0x00000000)359#define NV507D_HEAD_SET_BASE_CHANNEL_USAGE_BOUNDS_USABLE_TRUE (0x00000001)360#define NV507D_HEAD_SET_BASE_CHANNEL_USAGE_BOUNDS_PIXEL_DEPTH 11:8361#define NV507D_HEAD_SET_BASE_CHANNEL_USAGE_BOUNDS_PIXEL_DEPTH_BPP_8 (0x00000000)362#define NV507D_HEAD_SET_BASE_CHANNEL_USAGE_BOUNDS_PIXEL_DEPTH_BPP_16 (0x00000001)363#define NV507D_HEAD_SET_BASE_CHANNEL_USAGE_BOUNDS_PIXEL_DEPTH_BPP_32 (0x00000003)364#define NV507D_HEAD_SET_BASE_CHANNEL_USAGE_BOUNDS_PIXEL_DEPTH_BPP_64 (0x00000005)365#define NV507D_HEAD_SET_BASE_CHANNEL_USAGE_BOUNDS_SUPER_SAMPLE 13:12366#define NV507D_HEAD_SET_BASE_CHANNEL_USAGE_BOUNDS_SUPER_SAMPLE_X1_AA (0x00000000)367#define NV507D_HEAD_SET_BASE_CHANNEL_USAGE_BOUNDS_SUPER_SAMPLE_X4_AA (0x00000002)368#define NV507D_HEAD_SET_OVERLAY_USAGE_BOUNDS(a) (0x00000904 + (a)*0x00000400)369#define NV507D_HEAD_SET_OVERLAY_USAGE_BOUNDS_USABLE 0:0370#define NV507D_HEAD_SET_OVERLAY_USAGE_BOUNDS_USABLE_FALSE (0x00000000)371#define NV507D_HEAD_SET_OVERLAY_USAGE_BOUNDS_USABLE_TRUE (0x00000001)372#define NV507D_HEAD_SET_OVERLAY_USAGE_BOUNDS_PIXEL_DEPTH 11:8373#define NV507D_HEAD_SET_OVERLAY_USAGE_BOUNDS_PIXEL_DEPTH_BPP_16 (0x00000001)374#define NV507D_HEAD_SET_OVERLAY_USAGE_BOUNDS_PIXEL_DEPTH_BPP_32 (0x00000003)375#endif // _cl507d_h376