13cffeffeSRoman Li /* SPDX-License-Identifier: MIT */ 23cffeffeSRoman Li /* 33cffeffeSRoman Li * Copyright 2022 Advanced Micro Devices, Inc. 43cffeffeSRoman Li * 53cffeffeSRoman Li * Permission is hereby granted, free of charge, to any person obtaining a 63cffeffeSRoman Li * copy of this software and associated documentation files (the "Software"), 73cffeffeSRoman Li * to deal in the Software without restriction, including without limitation 83cffeffeSRoman Li * the rights to use, copy, modify, merge, publish, distribute, sublicense, 93cffeffeSRoman Li * and/or sell copies of the Software, and to permit persons to whom the 103cffeffeSRoman Li * Software is furnished to do so, subject to the following conditions: 113cffeffeSRoman Li * 123cffeffeSRoman Li * The above copyright notice and this permission notice shall be included in 133cffeffeSRoman Li * all copies or substantial portions of the Software. 143cffeffeSRoman Li * 153cffeffeSRoman Li * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 163cffeffeSRoman Li * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 173cffeffeSRoman Li * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL 183cffeffeSRoman Li * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR 193cffeffeSRoman Li * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, 203cffeffeSRoman Li * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR 213cffeffeSRoman Li * OTHER DEALINGS IN THE SOFTWARE. 223cffeffeSRoman Li * 233cffeffeSRoman Li * Authors: AMD 243cffeffeSRoman Li * 253cffeffeSRoman Li */ 263cffeffeSRoman Li 273cffeffeSRoman Li #ifndef __DC_OPTC_DCN314_H__ 283cffeffeSRoman Li #define __DC_OPTC_DCN314_H__ 293cffeffeSRoman Li 303cffeffeSRoman Li #include "dcn10/dcn10_optc.h" 313cffeffeSRoman Li 323cffeffeSRoman Li #define OPTC_COMMON_REG_LIST_DCN3_14(inst) \ 333cffeffeSRoman Li SRI(OTG_VSTARTUP_PARAM, OTG, inst),\ 343cffeffeSRoman Li SRI(OTG_VUPDATE_PARAM, OTG, inst),\ 353cffeffeSRoman Li SRI(OTG_VREADY_PARAM, OTG, inst),\ 363cffeffeSRoman Li SRI(OTG_MASTER_UPDATE_LOCK, OTG, inst),\ 373cffeffeSRoman Li SRI(OTG_GLOBAL_CONTROL0, OTG, inst),\ 383cffeffeSRoman Li SRI(OTG_GLOBAL_CONTROL1, OTG, inst),\ 393cffeffeSRoman Li SRI(OTG_GLOBAL_CONTROL2, OTG, inst),\ 403cffeffeSRoman Li SRI(OTG_GLOBAL_CONTROL4, OTG, inst),\ 413cffeffeSRoman Li SRI(OTG_DOUBLE_BUFFER_CONTROL, OTG, inst),\ 423cffeffeSRoman Li SRI(OTG_H_TOTAL, OTG, inst),\ 433cffeffeSRoman Li SRI(OTG_H_BLANK_START_END, OTG, inst),\ 443cffeffeSRoman Li SRI(OTG_H_SYNC_A, OTG, inst),\ 453cffeffeSRoman Li SRI(OTG_H_SYNC_A_CNTL, OTG, inst),\ 463cffeffeSRoman Li SRI(OTG_H_TIMING_CNTL, OTG, inst),\ 473cffeffeSRoman Li SRI(OTG_V_TOTAL, OTG, inst),\ 483cffeffeSRoman Li SRI(OTG_V_BLANK_START_END, OTG, inst),\ 493cffeffeSRoman Li SRI(OTG_V_SYNC_A, OTG, inst),\ 503cffeffeSRoman Li SRI(OTG_V_SYNC_A_CNTL, OTG, inst),\ 513cffeffeSRoman Li SRI(OTG_CONTROL, OTG, inst),\ 523cffeffeSRoman Li SRI(OTG_STEREO_CONTROL, OTG, inst),\ 533cffeffeSRoman Li SRI(OTG_3D_STRUCTURE_CONTROL, OTG, inst),\ 543cffeffeSRoman Li SRI(OTG_STEREO_STATUS, OTG, inst),\ 553cffeffeSRoman Li SRI(OTG_V_TOTAL_MAX, OTG, inst),\ 563cffeffeSRoman Li SRI(OTG_V_TOTAL_MIN, OTG, inst),\ 573cffeffeSRoman Li SRI(OTG_V_TOTAL_CONTROL, OTG, inst),\ 583cffeffeSRoman Li SRI(OTG_TRIGA_CNTL, OTG, inst),\ 593cffeffeSRoman Li SRI(OTG_FORCE_COUNT_NOW_CNTL, OTG, inst),\ 603cffeffeSRoman Li SRI(OTG_STATIC_SCREEN_CONTROL, OTG, inst),\ 613cffeffeSRoman Li SRI(OTG_STATUS_FRAME_COUNT, OTG, inst),\ 623cffeffeSRoman Li SRI(OTG_STATUS, OTG, inst),\ 633cffeffeSRoman Li SRI(OTG_STATUS_POSITION, OTG, inst),\ 643cffeffeSRoman Li SRI(OTG_NOM_VERT_POSITION, OTG, inst),\ 653cffeffeSRoman Li SRI(OTG_M_CONST_DTO0, OTG, inst),\ 663cffeffeSRoman Li SRI(OTG_M_CONST_DTO1, OTG, inst),\ 673cffeffeSRoman Li SRI(OTG_CLOCK_CONTROL, OTG, inst),\ 683cffeffeSRoman Li SRI(OTG_VERTICAL_INTERRUPT0_CONTROL, OTG, inst),\ 693cffeffeSRoman Li SRI(OTG_VERTICAL_INTERRUPT0_POSITION, OTG, inst),\ 703cffeffeSRoman Li SRI(OTG_VERTICAL_INTERRUPT1_CONTROL, OTG, inst),\ 713cffeffeSRoman Li SRI(OTG_VERTICAL_INTERRUPT1_POSITION, OTG, inst),\ 723cffeffeSRoman Li SRI(OTG_VERTICAL_INTERRUPT2_CONTROL, OTG, inst),\ 733cffeffeSRoman Li SRI(OTG_VERTICAL_INTERRUPT2_POSITION, OTG, inst),\ 743cffeffeSRoman Li SRI(OPTC_INPUT_CLOCK_CONTROL, ODM, inst),\ 753cffeffeSRoman Li SRI(OPTC_DATA_SOURCE_SELECT, ODM, inst),\ 763cffeffeSRoman Li SRI(OPTC_INPUT_GLOBAL_CONTROL, ODM, inst),\ 773cffeffeSRoman Li SRI(CONTROL, VTG, inst),\ 783cffeffeSRoman Li SRI(OTG_VERT_SYNC_CONTROL, OTG, inst),\ 793cffeffeSRoman Li SRI(OTG_GSL_CONTROL, OTG, inst),\ 803cffeffeSRoman Li SRI(OTG_CRC_CNTL, OTG, inst),\ 813cffeffeSRoman Li SRI(OTG_CRC0_DATA_RG, OTG, inst),\ 823cffeffeSRoman Li SRI(OTG_CRC0_DATA_B, OTG, inst),\ 833cffeffeSRoman Li SRI(OTG_CRC0_WINDOWA_X_CONTROL, OTG, inst),\ 843cffeffeSRoman Li SRI(OTG_CRC0_WINDOWA_Y_CONTROL, OTG, inst),\ 853cffeffeSRoman Li SRI(OTG_CRC0_WINDOWB_X_CONTROL, OTG, inst),\ 863cffeffeSRoman Li SRI(OTG_CRC0_WINDOWB_Y_CONTROL, OTG, inst),\ 873cffeffeSRoman Li SR(GSL_SOURCE_SELECT),\ 883cffeffeSRoman Li SRI(OTG_TRIGA_MANUAL_TRIG, OTG, inst),\ 893cffeffeSRoman Li SRI(OTG_GLOBAL_CONTROL1, OTG, inst),\ 903cffeffeSRoman Li SRI(OTG_GLOBAL_CONTROL2, OTG, inst),\ 913cffeffeSRoman Li SRI(OTG_GSL_WINDOW_X, OTG, inst),\ 923cffeffeSRoman Li SRI(OTG_GSL_WINDOW_Y, OTG, inst),\ 933cffeffeSRoman Li SRI(OTG_VUPDATE_KEEPOUT, OTG, inst),\ 943cffeffeSRoman Li SRI(OTG_DSC_START_POSITION, OTG, inst),\ 953cffeffeSRoman Li SRI(OTG_DRR_TRIGGER_WINDOW, OTG, inst),\ 963cffeffeSRoman Li SRI(OTG_DRR_V_TOTAL_CHANGE, OTG, inst),\ 973cffeffeSRoman Li SRI(OPTC_DATA_FORMAT_CONTROL, ODM, inst),\ 983cffeffeSRoman Li SRI(OPTC_BYTES_PER_PIXEL, ODM, inst),\ 993cffeffeSRoman Li SRI(OPTC_WIDTH_CONTROL, ODM, inst),\ 1003cffeffeSRoman Li SRI(OPTC_MEMORY_CONFIG, ODM, inst),\ 101faee3edfSAlvin Lee SRI(OTG_DRR_CONTROL, OTG, inst),\ 102*06b0a4adSJosip Pavic SRI(OTG_PIPE_UPDATE_STATUS, OTG, inst),\ 103*06b0a4adSJosip Pavic SRI(INTERRUPT_DEST, OTG, inst) 1043cffeffeSRoman Li 1053cffeffeSRoman Li #define OPTC_COMMON_MASK_SH_LIST_DCN3_14(mask_sh)\ 1063cffeffeSRoman Li SF(OTG0_OTG_VSTARTUP_PARAM, VSTARTUP_START, mask_sh),\ 1073cffeffeSRoman Li SF(OTG0_OTG_VUPDATE_PARAM, VUPDATE_OFFSET, mask_sh),\ 1083cffeffeSRoman Li SF(OTG0_OTG_VUPDATE_PARAM, VUPDATE_WIDTH, mask_sh),\ 1093cffeffeSRoman Li SF(OTG0_OTG_VREADY_PARAM, VREADY_OFFSET, mask_sh),\ 1103cffeffeSRoman Li SF(OTG0_OTG_MASTER_UPDATE_LOCK, OTG_MASTER_UPDATE_LOCK, mask_sh),\ 1113cffeffeSRoman Li SF(OTG0_OTG_MASTER_UPDATE_LOCK, UPDATE_LOCK_STATUS, mask_sh),\ 1123cffeffeSRoman Li SF(OTG0_OTG_GLOBAL_CONTROL0, MASTER_UPDATE_LOCK_DB_START_X, mask_sh),\ 1133cffeffeSRoman Li SF(OTG0_OTG_GLOBAL_CONTROL0, MASTER_UPDATE_LOCK_DB_END_X, mask_sh),\ 1143cffeffeSRoman Li SF(OTG0_OTG_GLOBAL_CONTROL0, MASTER_UPDATE_LOCK_DB_EN, mask_sh),\ 1153cffeffeSRoman Li SF(OTG0_OTG_GLOBAL_CONTROL1, MASTER_UPDATE_LOCK_DB_START_Y, mask_sh),\ 1163cffeffeSRoman Li SF(OTG0_OTG_GLOBAL_CONTROL1, MASTER_UPDATE_LOCK_DB_END_Y, mask_sh),\ 1173cffeffeSRoman Li SF(OTG0_OTG_GLOBAL_CONTROL2, OTG_MASTER_UPDATE_LOCK_SEL, mask_sh),\ 1183cffeffeSRoman Li SF(OTG0_OTG_GLOBAL_CONTROL4, DIG_UPDATE_POSITION_X, mask_sh),\ 1193cffeffeSRoman Li SF(OTG0_OTG_GLOBAL_CONTROL4, DIG_UPDATE_POSITION_Y, mask_sh),\ 1203cffeffeSRoman Li SF(OTG0_OTG_DOUBLE_BUFFER_CONTROL, OTG_UPDATE_PENDING, mask_sh),\ 1213cffeffeSRoman Li SF(OTG0_OTG_H_TOTAL, OTG_H_TOTAL, mask_sh),\ 1223cffeffeSRoman Li SF(OTG0_OTG_H_BLANK_START_END, OTG_H_BLANK_START, mask_sh),\ 1233cffeffeSRoman Li SF(OTG0_OTG_H_BLANK_START_END, OTG_H_BLANK_END, mask_sh),\ 1243cffeffeSRoman Li SF(OTG0_OTG_H_SYNC_A, OTG_H_SYNC_A_START, mask_sh),\ 1253cffeffeSRoman Li SF(OTG0_OTG_H_SYNC_A, OTG_H_SYNC_A_END, mask_sh),\ 1263cffeffeSRoman Li SF(OTG0_OTG_H_SYNC_A_CNTL, OTG_H_SYNC_A_POL, mask_sh),\ 1273cffeffeSRoman Li SF(OTG0_OTG_V_TOTAL, OTG_V_TOTAL, mask_sh),\ 1283cffeffeSRoman Li SF(OTG0_OTG_V_BLANK_START_END, OTG_V_BLANK_START, mask_sh),\ 1293cffeffeSRoman Li SF(OTG0_OTG_V_BLANK_START_END, OTG_V_BLANK_END, mask_sh),\ 1303cffeffeSRoman Li SF(OTG0_OTG_V_SYNC_A, OTG_V_SYNC_A_START, mask_sh),\ 1313cffeffeSRoman Li SF(OTG0_OTG_V_SYNC_A, OTG_V_SYNC_A_END, mask_sh),\ 1323cffeffeSRoman Li SF(OTG0_OTG_V_SYNC_A_CNTL, OTG_V_SYNC_A_POL, mask_sh),\ 1333cffeffeSRoman Li SF(OTG0_OTG_V_SYNC_A_CNTL, OTG_V_SYNC_MODE, mask_sh),\ 1343cffeffeSRoman Li SF(OTG0_OTG_CONTROL, OTG_MASTER_EN, mask_sh),\ 1353cffeffeSRoman Li SF(OTG0_OTG_CONTROL, OTG_START_POINT_CNTL, mask_sh),\ 1363cffeffeSRoman Li SF(OTG0_OTG_CONTROL, OTG_DISABLE_POINT_CNTL, mask_sh),\ 1373cffeffeSRoman Li SF(OTG0_OTG_CONTROL, OTG_FIELD_NUMBER_CNTL, mask_sh),\ 1383cffeffeSRoman Li SF(OTG0_OTG_CONTROL, OTG_OUT_MUX, mask_sh),\ 1393cffeffeSRoman Li SF(OTG0_OTG_STEREO_CONTROL, OTG_STEREO_EN, mask_sh),\ 1403cffeffeSRoman Li SF(OTG0_OTG_STEREO_CONTROL, OTG_STEREO_SYNC_OUTPUT_LINE_NUM, mask_sh),\ 1413cffeffeSRoman Li SF(OTG0_OTG_STEREO_CONTROL, OTG_STEREO_SYNC_OUTPUT_POLARITY, mask_sh),\ 1423cffeffeSRoman Li SF(OTG0_OTG_STEREO_CONTROL, OTG_STEREO_EYE_FLAG_POLARITY, mask_sh),\ 1433cffeffeSRoman Li SF(OTG0_OTG_STEREO_CONTROL, OTG_DISABLE_STEREOSYNC_OUTPUT_FOR_DP, mask_sh),\ 1443cffeffeSRoman Li SF(OTG0_OTG_STEREO_STATUS, OTG_STEREO_CURRENT_EYE, mask_sh),\ 1453cffeffeSRoman Li SF(OTG0_OTG_3D_STRUCTURE_CONTROL, OTG_3D_STRUCTURE_EN, mask_sh),\ 1463cffeffeSRoman Li SF(OTG0_OTG_3D_STRUCTURE_CONTROL, OTG_3D_STRUCTURE_V_UPDATE_MODE, mask_sh),\ 1473cffeffeSRoman Li SF(OTG0_OTG_3D_STRUCTURE_CONTROL, OTG_3D_STRUCTURE_STEREO_SEL_OVR, mask_sh),\ 1483cffeffeSRoman Li SF(OTG0_OTG_V_TOTAL_MAX, OTG_V_TOTAL_MAX, mask_sh),\ 1493cffeffeSRoman Li SF(OTG0_OTG_V_TOTAL_MIN, OTG_V_TOTAL_MIN, mask_sh),\ 1503cffeffeSRoman Li SF(OTG0_OTG_V_TOTAL_CONTROL, OTG_V_TOTAL_MIN_SEL, mask_sh),\ 1513cffeffeSRoman Li SF(OTG0_OTG_V_TOTAL_CONTROL, OTG_V_TOTAL_MAX_SEL, mask_sh),\ 1523cffeffeSRoman Li SF(OTG0_OTG_V_TOTAL_CONTROL, OTG_FORCE_LOCK_ON_EVENT, mask_sh),\ 1533cffeffeSRoman Li SF(OTG0_OTG_V_TOTAL_CONTROL, OTG_SET_V_TOTAL_MIN_MASK, mask_sh),\ 1543cffeffeSRoman Li SF(OTG0_OTG_V_TOTAL_CONTROL, OTG_VTOTAL_MID_REPLACING_MIN_EN, mask_sh),\ 1553cffeffeSRoman Li SF(OTG0_OTG_V_TOTAL_CONTROL, OTG_VTOTAL_MID_REPLACING_MAX_EN, mask_sh),\ 1563cffeffeSRoman Li SF(OTG0_OTG_FORCE_COUNT_NOW_CNTL, OTG_FORCE_COUNT_NOW_CLEAR, mask_sh),\ 1573cffeffeSRoman Li SF(OTG0_OTG_FORCE_COUNT_NOW_CNTL, OTG_FORCE_COUNT_NOW_MODE, mask_sh),\ 1583cffeffeSRoman Li SF(OTG0_OTG_FORCE_COUNT_NOW_CNTL, OTG_FORCE_COUNT_NOW_OCCURRED, mask_sh),\ 1593cffeffeSRoman Li SF(OTG0_OTG_TRIGA_CNTL, OTG_TRIGA_SOURCE_SELECT, mask_sh),\ 1603cffeffeSRoman Li SF(OTG0_OTG_TRIGA_CNTL, OTG_TRIGA_SOURCE_PIPE_SELECT, mask_sh),\ 1613cffeffeSRoman Li SF(OTG0_OTG_TRIGA_CNTL, OTG_TRIGA_RISING_EDGE_DETECT_CNTL, mask_sh),\ 1623cffeffeSRoman Li SF(OTG0_OTG_TRIGA_CNTL, OTG_TRIGA_FALLING_EDGE_DETECT_CNTL, mask_sh),\ 1633cffeffeSRoman Li SF(OTG0_OTG_TRIGA_CNTL, OTG_TRIGA_POLARITY_SELECT, mask_sh),\ 1643cffeffeSRoman Li SF(OTG0_OTG_TRIGA_CNTL, OTG_TRIGA_FREQUENCY_SELECT, mask_sh),\ 1653cffeffeSRoman Li SF(OTG0_OTG_TRIGA_CNTL, OTG_TRIGA_DELAY, mask_sh),\ 1663cffeffeSRoman Li SF(OTG0_OTG_TRIGA_CNTL, OTG_TRIGA_CLEAR, mask_sh),\ 1673cffeffeSRoman Li SF(OTG0_OTG_STATIC_SCREEN_CONTROL, OTG_STATIC_SCREEN_EVENT_MASK, mask_sh),\ 1683cffeffeSRoman Li SF(OTG0_OTG_STATIC_SCREEN_CONTROL, OTG_STATIC_SCREEN_FRAME_COUNT, mask_sh),\ 1693cffeffeSRoman Li SF(OTG0_OTG_STATUS_FRAME_COUNT, OTG_FRAME_COUNT, mask_sh),\ 1703cffeffeSRoman Li SF(OTG0_OTG_STATUS, OTG_V_BLANK, mask_sh),\ 1713cffeffeSRoman Li SF(OTG0_OTG_STATUS, OTG_V_ACTIVE_DISP, mask_sh),\ 1723cffeffeSRoman Li SF(OTG0_OTG_STATUS_POSITION, OTG_HORZ_COUNT, mask_sh),\ 1733cffeffeSRoman Li SF(OTG0_OTG_STATUS_POSITION, OTG_VERT_COUNT, mask_sh),\ 1743cffeffeSRoman Li SF(OTG0_OTG_NOM_VERT_POSITION, OTG_VERT_COUNT_NOM, mask_sh),\ 1753cffeffeSRoman Li SF(OTG0_OTG_M_CONST_DTO0, OTG_M_CONST_DTO_PHASE, mask_sh),\ 1763cffeffeSRoman Li SF(OTG0_OTG_M_CONST_DTO1, OTG_M_CONST_DTO_MODULO, mask_sh),\ 1773cffeffeSRoman Li SF(OTG0_OTG_CLOCK_CONTROL, OTG_BUSY, mask_sh),\ 1783cffeffeSRoman Li SF(OTG0_OTG_CLOCK_CONTROL, OTG_CLOCK_EN, mask_sh),\ 1793cffeffeSRoman Li SF(OTG0_OTG_CLOCK_CONTROL, OTG_CLOCK_ON, mask_sh),\ 1803cffeffeSRoman Li SF(OTG0_OTG_CLOCK_CONTROL, OTG_CLOCK_GATE_DIS, mask_sh),\ 1813cffeffeSRoman Li SF(OTG0_OTG_VERTICAL_INTERRUPT0_CONTROL, OTG_VERTICAL_INTERRUPT0_INT_ENABLE, mask_sh),\ 1823cffeffeSRoman Li SF(OTG0_OTG_VERTICAL_INTERRUPT0_POSITION, OTG_VERTICAL_INTERRUPT0_LINE_START, mask_sh),\ 1833cffeffeSRoman Li SF(OTG0_OTG_VERTICAL_INTERRUPT0_POSITION, OTG_VERTICAL_INTERRUPT0_LINE_END, mask_sh),\ 1843cffeffeSRoman Li SF(OTG0_OTG_VERTICAL_INTERRUPT1_CONTROL, OTG_VERTICAL_INTERRUPT1_INT_ENABLE, mask_sh),\ 1853cffeffeSRoman Li SF(OTG0_OTG_VERTICAL_INTERRUPT1_POSITION, OTG_VERTICAL_INTERRUPT1_LINE_START, mask_sh),\ 1863cffeffeSRoman Li SF(OTG0_OTG_VERTICAL_INTERRUPT2_CONTROL, OTG_VERTICAL_INTERRUPT2_INT_ENABLE, mask_sh),\ 1873cffeffeSRoman Li SF(OTG0_OTG_VERTICAL_INTERRUPT2_POSITION, OTG_VERTICAL_INTERRUPT2_LINE_START, mask_sh),\ 1883cffeffeSRoman Li SF(ODM0_OPTC_INPUT_CLOCK_CONTROL, OPTC_INPUT_CLK_EN, mask_sh),\ 1893cffeffeSRoman Li SF(ODM0_OPTC_INPUT_CLOCK_CONTROL, OPTC_INPUT_CLK_ON, mask_sh),\ 1903cffeffeSRoman Li SF(ODM0_OPTC_INPUT_CLOCK_CONTROL, OPTC_INPUT_CLK_GATE_DIS, mask_sh),\ 1913cffeffeSRoman Li SF(ODM0_OPTC_INPUT_GLOBAL_CONTROL, OPTC_UNDERFLOW_OCCURRED_STATUS, mask_sh),\ 1923cffeffeSRoman Li SF(ODM0_OPTC_INPUT_GLOBAL_CONTROL, OPTC_UNDERFLOW_CLEAR, mask_sh),\ 1933cffeffeSRoman Li SF(VTG0_CONTROL, VTG0_ENABLE, mask_sh),\ 1943cffeffeSRoman Li SF(VTG0_CONTROL, VTG0_FP2, mask_sh),\ 1953cffeffeSRoman Li SF(VTG0_CONTROL, VTG0_VCOUNT_INIT, mask_sh),\ 1963cffeffeSRoman Li SF(OTG0_OTG_VERT_SYNC_CONTROL, OTG_FORCE_VSYNC_NEXT_LINE_OCCURRED, mask_sh),\ 1973cffeffeSRoman Li SF(OTG0_OTG_VERT_SYNC_CONTROL, OTG_FORCE_VSYNC_NEXT_LINE_CLEAR, mask_sh),\ 1983cffeffeSRoman Li SF(OTG0_OTG_VERT_SYNC_CONTROL, OTG_AUTO_FORCE_VSYNC_MODE, mask_sh),\ 1993cffeffeSRoman Li SF(OTG0_OTG_GSL_CONTROL, OTG_GSL0_EN, mask_sh),\ 2003cffeffeSRoman Li SF(OTG0_OTG_GSL_CONTROL, OTG_GSL1_EN, mask_sh),\ 2013cffeffeSRoman Li SF(OTG0_OTG_GSL_CONTROL, OTG_GSL2_EN, mask_sh),\ 2023cffeffeSRoman Li SF(OTG0_OTG_GSL_CONTROL, OTG_GSL_MASTER_EN, mask_sh),\ 2033cffeffeSRoman Li SF(OTG0_OTG_GSL_CONTROL, OTG_GSL_FORCE_DELAY, mask_sh),\ 2043cffeffeSRoman Li SF(OTG0_OTG_GSL_CONTROL, OTG_GSL_CHECK_ALL_FIELDS, mask_sh),\ 2053cffeffeSRoman Li SF(OTG0_OTG_CRC_CNTL, OTG_CRC_CONT_EN, mask_sh),\ 2063cffeffeSRoman Li SF(OTG0_OTG_CRC_CNTL, OTG_CRC0_SELECT, mask_sh),\ 2073cffeffeSRoman Li SF(OTG0_OTG_CRC_CNTL, OTG_CRC_EN, mask_sh),\ 2083cffeffeSRoman Li SF(OTG0_OTG_CRC0_DATA_RG, CRC0_R_CR, mask_sh),\ 2093cffeffeSRoman Li SF(OTG0_OTG_CRC0_DATA_RG, CRC0_G_Y, mask_sh),\ 2103cffeffeSRoman Li SF(OTG0_OTG_CRC0_DATA_B, CRC0_B_CB, mask_sh),\ 2113cffeffeSRoman Li SF(OTG0_OTG_CRC0_WINDOWA_X_CONTROL, OTG_CRC0_WINDOWA_X_START, mask_sh),\ 2123cffeffeSRoman Li SF(OTG0_OTG_CRC0_WINDOWA_X_CONTROL, OTG_CRC0_WINDOWA_X_END, mask_sh),\ 2133cffeffeSRoman Li SF(OTG0_OTG_CRC0_WINDOWA_Y_CONTROL, OTG_CRC0_WINDOWA_Y_START, mask_sh),\ 2143cffeffeSRoman Li SF(OTG0_OTG_CRC0_WINDOWA_Y_CONTROL, OTG_CRC0_WINDOWA_Y_END, mask_sh),\ 2153cffeffeSRoman Li SF(OTG0_OTG_CRC0_WINDOWB_X_CONTROL, OTG_CRC0_WINDOWB_X_START, mask_sh),\ 2163cffeffeSRoman Li SF(OTG0_OTG_CRC0_WINDOWB_X_CONTROL, OTG_CRC0_WINDOWB_X_END, mask_sh),\ 2173cffeffeSRoman Li SF(OTG0_OTG_CRC0_WINDOWB_Y_CONTROL, OTG_CRC0_WINDOWB_Y_START, mask_sh),\ 2183cffeffeSRoman Li SF(OTG0_OTG_CRC0_WINDOWB_Y_CONTROL, OTG_CRC0_WINDOWB_Y_END, mask_sh),\ 2193cffeffeSRoman Li SF(OTG0_OTG_TRIGA_MANUAL_TRIG, OTG_TRIGA_MANUAL_TRIG, mask_sh),\ 2203cffeffeSRoman Li SF(GSL_SOURCE_SELECT, GSL0_READY_SOURCE_SEL, mask_sh),\ 2213cffeffeSRoman Li SF(GSL_SOURCE_SELECT, GSL1_READY_SOURCE_SEL, mask_sh),\ 2223cffeffeSRoman Li SF(GSL_SOURCE_SELECT, GSL2_READY_SOURCE_SEL, mask_sh),\ 2233cffeffeSRoman Li SF(OTG0_OTG_GLOBAL_CONTROL2, MANUAL_FLOW_CONTROL_SEL, mask_sh),\ 2243cffeffeSRoman Li SF(OTG0_OTG_GLOBAL_CONTROL2, GLOBAL_UPDATE_LOCK_EN, mask_sh),\ 2253cffeffeSRoman Li SF(OTG0_OTG_GSL_WINDOW_X, OTG_GSL_WINDOW_START_X, mask_sh),\ 2263cffeffeSRoman Li SF(OTG0_OTG_GSL_WINDOW_X, OTG_GSL_WINDOW_END_X, mask_sh), \ 2273cffeffeSRoman Li SF(OTG0_OTG_GSL_WINDOW_Y, OTG_GSL_WINDOW_START_Y, mask_sh),\ 2283cffeffeSRoman Li SF(OTG0_OTG_GSL_WINDOW_Y, OTG_GSL_WINDOW_END_Y, mask_sh),\ 2293cffeffeSRoman Li SF(OTG0_OTG_VUPDATE_KEEPOUT, OTG_MASTER_UPDATE_LOCK_VUPDATE_KEEPOUT_EN, mask_sh), \ 2303cffeffeSRoman Li SF(OTG0_OTG_VUPDATE_KEEPOUT, MASTER_UPDATE_LOCK_VUPDATE_KEEPOUT_START_OFFSET, mask_sh), \ 2313cffeffeSRoman Li SF(OTG0_OTG_VUPDATE_KEEPOUT, MASTER_UPDATE_LOCK_VUPDATE_KEEPOUT_END_OFFSET, mask_sh), \ 2323cffeffeSRoman Li SF(OTG0_OTG_GSL_CONTROL, OTG_GSL_MASTER_MODE, mask_sh), \ 2333cffeffeSRoman Li SF(OTG0_OTG_GSL_CONTROL, OTG_MASTER_UPDATE_LOCK_GSL_EN, mask_sh), \ 2343cffeffeSRoman Li SF(OTG0_OTG_DSC_START_POSITION, OTG_DSC_START_POSITION_X, mask_sh), \ 2353cffeffeSRoman Li SF(OTG0_OTG_DSC_START_POSITION, OTG_DSC_START_POSITION_LINE_NUM, mask_sh),\ 2363cffeffeSRoman Li SF(ODM0_OPTC_DATA_SOURCE_SELECT, OPTC_SEG0_SRC_SEL, mask_sh),\ 2373cffeffeSRoman Li SF(ODM0_OPTC_DATA_SOURCE_SELECT, OPTC_SEG1_SRC_SEL, mask_sh),\ 2383cffeffeSRoman Li SF(ODM0_OPTC_DATA_SOURCE_SELECT, OPTC_SEG2_SRC_SEL, mask_sh),\ 2393cffeffeSRoman Li SF(ODM0_OPTC_DATA_SOURCE_SELECT, OPTC_SEG3_SRC_SEL, mask_sh),\ 2403cffeffeSRoman Li SF(ODM0_OPTC_DATA_SOURCE_SELECT, OPTC_NUM_OF_INPUT_SEGMENT, mask_sh),\ 2413cffeffeSRoman Li SF(ODM0_OPTC_MEMORY_CONFIG, OPTC_MEM_SEL, mask_sh),\ 2423cffeffeSRoman Li SF(ODM0_OPTC_DATA_FORMAT_CONTROL, OPTC_DATA_FORMAT, mask_sh),\ 2433cffeffeSRoman Li SF(ODM0_OPTC_DATA_FORMAT_CONTROL, OPTC_DSC_MODE, mask_sh),\ 2443cffeffeSRoman Li SF(ODM0_OPTC_BYTES_PER_PIXEL, OPTC_DSC_BYTES_PER_PIXEL, mask_sh),\ 2453cffeffeSRoman Li SF(ODM0_OPTC_WIDTH_CONTROL, OPTC_DSC_SLICE_WIDTH, mask_sh),\ 2463cffeffeSRoman Li SF(ODM0_OPTC_WIDTH_CONTROL, OPTC_SEGMENT_WIDTH, mask_sh),\ 2473cffeffeSRoman Li SF(OTG0_OTG_DRR_TRIGGER_WINDOW, OTG_DRR_TRIGGER_WINDOW_START_X, mask_sh),\ 2483cffeffeSRoman Li SF(OTG0_OTG_DRR_TRIGGER_WINDOW, OTG_DRR_TRIGGER_WINDOW_END_X, mask_sh),\ 2493cffeffeSRoman Li SF(OTG0_OTG_DRR_V_TOTAL_CHANGE, OTG_DRR_V_TOTAL_CHANGE_LIMIT, mask_sh),\ 2503cffeffeSRoman Li SF(OTG0_OTG_H_TIMING_CNTL, OTG_H_TIMING_DIV_MODE, mask_sh),\ 2513cffeffeSRoman Li SF(OTG0_OTG_H_TIMING_CNTL, OTG_H_TIMING_DIV_MODE_MANUAL, mask_sh),\ 2523cffeffeSRoman Li SF(OTG0_OTG_DOUBLE_BUFFER_CONTROL, OTG_DRR_TIMING_DBUF_UPDATE_MODE, mask_sh),\ 253faee3edfSAlvin Lee SF(OTG0_OTG_DRR_CONTROL, OTG_V_TOTAL_LAST_USED_BY_DRR, mask_sh),\ 254faee3edfSAlvin Lee SF(OTG0_OTG_PIPE_UPDATE_STATUS, OTG_FLIP_PENDING, mask_sh),\ 255faee3edfSAlvin Lee SF(OTG0_OTG_PIPE_UPDATE_STATUS, OTG_DC_REG_UPDATE_PENDING, mask_sh),\ 256faee3edfSAlvin Lee SF(OTG0_OTG_PIPE_UPDATE_STATUS, OTG_CURSOR_UPDATE_PENDING, mask_sh),\ 257faee3edfSAlvin Lee SF(OTG0_OTG_PIPE_UPDATE_STATUS, OTG_VUPDATE_KEEPOUT_STATUS, mask_sh),\ 258*06b0a4adSJosip Pavic SF(OTG0_INTERRUPT_DEST, OTG0_IHC_OTG_VERTICAL_INTERRUPT2_DEST, mask_sh) 2593cffeffeSRoman Li 2603cffeffeSRoman Li void dcn314_timing_generator_init(struct optc *optc1); 2613cffeffeSRoman Li 2623cffeffeSRoman Li #endif /* __DC_OPTC_DCN314_H__ */ 263