cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

dp_reg.h (12349B)


      1/* SPDX-License-Identifier: GPL-2.0-only */
      2/*
      3 * Copyright (c) 2017-2020, The Linux Foundation. All rights reserved.
      4 */
      5
      6#ifndef _DP_REG_H_
      7#define _DP_REG_H_
      8
      9/* DP_TX Registers */
     10#define REG_DP_HW_VERSION			(0x00000000)
     11
     12#define REG_DP_SW_RESET				(0x00000010)
     13#define DP_SW_RESET				(0x00000001)
     14
     15#define REG_DP_PHY_CTRL				(0x00000014)
     16#define DP_PHY_CTRL_SW_RESET_PLL		(0x00000001)
     17#define DP_PHY_CTRL_SW_RESET			(0x00000004)
     18
     19#define REG_DP_CLK_CTRL				(0x00000018)
     20#define REG_DP_CLK_ACTIVE			(0x0000001C)
     21#define REG_DP_INTR_STATUS			(0x00000020)
     22#define REG_DP_INTR_STATUS2			(0x00000024)
     23#define REG_DP_INTR_STATUS3			(0x00000028)
     24
     25#define REG_DP_DP_HPD_CTRL			(0x00000000)
     26#define DP_DP_HPD_CTRL_HPD_EN			(0x00000001)
     27
     28#define REG_DP_DP_HPD_INT_STATUS		(0x00000004)
     29
     30#define REG_DP_DP_HPD_INT_ACK			(0x00000008)
     31#define DP_DP_HPD_PLUG_INT_ACK			(0x00000001)
     32#define DP_DP_IRQ_HPD_INT_ACK			(0x00000002)
     33#define DP_DP_HPD_REPLUG_INT_ACK		(0x00000004)
     34#define DP_DP_HPD_UNPLUG_INT_ACK		(0x00000008)
     35#define DP_DP_HPD_STATE_STATUS_BITS_MASK	(0x0000000F)
     36#define DP_DP_HPD_STATE_STATUS_BITS_SHIFT	(0x1C)
     37
     38#define REG_DP_DP_HPD_INT_MASK			(0x0000000C)
     39#define DP_DP_HPD_PLUG_INT_MASK			(0x00000001)
     40#define DP_DP_IRQ_HPD_INT_MASK			(0x00000002)
     41#define DP_DP_HPD_REPLUG_INT_MASK		(0x00000004)
     42#define DP_DP_HPD_UNPLUG_INT_MASK		(0x00000008)
     43#define DP_DP_HPD_INT_MASK			(DP_DP_HPD_PLUG_INT_MASK | \
     44						DP_DP_IRQ_HPD_INT_MASK | \
     45						DP_DP_HPD_REPLUG_INT_MASK | \
     46						DP_DP_HPD_UNPLUG_INT_MASK)
     47#define DP_DP_HPD_STATE_STATUS_CONNECTED	(0x40000000)
     48#define DP_DP_HPD_STATE_STATUS_PENDING		(0x20000000)
     49#define DP_DP_HPD_STATE_STATUS_DISCONNECTED	(0x00000000)
     50#define DP_DP_HPD_STATE_STATUS_MASK		(0xE0000000)
     51
     52#define REG_DP_DP_HPD_REFTIMER			(0x00000018)
     53#define DP_DP_HPD_REFTIMER_ENABLE		(1 << 16)
     54
     55#define REG_DP_DP_HPD_EVENT_TIME_0		(0x0000001C)
     56#define REG_DP_DP_HPD_EVENT_TIME_1		(0x00000020)
     57#define DP_DP_HPD_EVENT_TIME_0_VAL		(0x3E800FA)
     58#define DP_DP_HPD_EVENT_TIME_1_VAL		(0x1F407D0)
     59
     60#define REG_DP_AUX_CTRL				(0x00000030)
     61#define DP_AUX_CTRL_ENABLE			(0x00000001)
     62#define DP_AUX_CTRL_RESET			(0x00000002)
     63
     64#define REG_DP_AUX_DATA				(0x00000034)
     65#define DP_AUX_DATA_READ			(0x00000001)
     66#define DP_AUX_DATA_WRITE			(0x00000000)
     67#define DP_AUX_DATA_OFFSET			(0x00000008)
     68#define DP_AUX_DATA_INDEX_OFFSET		(0x00000010)
     69#define DP_AUX_DATA_MASK			(0x0000ff00)
     70#define DP_AUX_DATA_INDEX_WRITE			(0x80000000)
     71
     72#define REG_DP_AUX_TRANS_CTRL			(0x00000038)
     73#define DP_AUX_TRANS_CTRL_I2C			(0x00000100)
     74#define DP_AUX_TRANS_CTRL_GO			(0x00000200)
     75#define DP_AUX_TRANS_CTRL_NO_SEND_ADDR		(0x00000400)
     76#define DP_AUX_TRANS_CTRL_NO_SEND_STOP		(0x00000800)
     77
     78#define REG_DP_TIMEOUT_COUNT			(0x0000003C)
     79#define REG_DP_AUX_LIMITS			(0x00000040)
     80#define REG_DP_AUX_STATUS			(0x00000044)
     81
     82#define DP_DPCD_CP_IRQ				(0x201)
     83#define DP_DPCD_RXSTATUS			(0x69493)
     84
     85#define DP_INTERRUPT_TRANS_NUM			(0x000000A0)
     86
     87#define REG_DP_MAINLINK_CTRL			(0x00000000)
     88#define DP_MAINLINK_CTRL_ENABLE			(0x00000001)
     89#define DP_MAINLINK_CTRL_RESET			(0x00000002)
     90#define DP_MAINLINK_CTRL_SW_BYPASS_SCRAMBLER	(0x00000010)
     91#define DP_MAINLINK_FB_BOUNDARY_SEL		(0x02000000)
     92
     93#define REG_DP_STATE_CTRL			(0x00000004)
     94#define DP_STATE_CTRL_LINK_TRAINING_PATTERN1	(0x00000001)
     95#define DP_STATE_CTRL_LINK_TRAINING_PATTERN2	(0x00000002)
     96#define DP_STATE_CTRL_LINK_TRAINING_PATTERN3	(0x00000004)
     97#define DP_STATE_CTRL_LINK_TRAINING_PATTERN4	(0x00000008)
     98#define DP_STATE_CTRL_LINK_SYMBOL_ERR_MEASURE	(0x00000010)
     99#define DP_STATE_CTRL_LINK_PRBS7		(0x00000020)
    100#define DP_STATE_CTRL_LINK_TEST_CUSTOM_PATTERN	(0x00000040)
    101#define DP_STATE_CTRL_SEND_VIDEO		(0x00000080)
    102#define DP_STATE_CTRL_PUSH_IDLE			(0x00000100)
    103
    104#define REG_DP_CONFIGURATION_CTRL		(0x00000008)
    105#define DP_CONFIGURATION_CTRL_SYNC_ASYNC_CLK	(0x00000001)
    106#define DP_CONFIGURATION_CTRL_STATIC_DYNAMIC_CN (0x00000002)
    107#define DP_CONFIGURATION_CTRL_P_INTERLACED	(0x00000004)
    108#define DP_CONFIGURATION_CTRL_INTERLACED_BTF	(0x00000008)
    109#define DP_CONFIGURATION_CTRL_NUM_OF_LANES	(0x00000010)
    110#define DP_CONFIGURATION_CTRL_ENHANCED_FRAMING	(0x00000040)
    111#define DP_CONFIGURATION_CTRL_SEND_VSC		(0x00000080)
    112#define DP_CONFIGURATION_CTRL_BPC		(0x00000100)
    113#define DP_CONFIGURATION_CTRL_ASSR		(0x00000400)
    114#define DP_CONFIGURATION_CTRL_RGB_YUV		(0x00000800)
    115#define DP_CONFIGURATION_CTRL_LSCLK_DIV		(0x00002000)
    116#define DP_CONFIGURATION_CTRL_NUM_OF_LANES_SHIFT	(0x04)
    117#define DP_CONFIGURATION_CTRL_BPC_SHIFT		(0x08)
    118#define DP_CONFIGURATION_CTRL_LSCLK_DIV_SHIFT	(0x0D)
    119
    120#define REG_DP_SOFTWARE_MVID			(0x00000010)
    121#define REG_DP_SOFTWARE_NVID			(0x00000018)
    122#define REG_DP_TOTAL_HOR_VER			(0x0000001C)
    123#define REG_DP_START_HOR_VER_FROM_SYNC		(0x00000020)
    124#define REG_DP_HSYNC_VSYNC_WIDTH_POLARITY	(0x00000024)
    125#define REG_DP_ACTIVE_HOR_VER			(0x00000028)
    126
    127#define REG_DP_MISC1_MISC0			(0x0000002C)
    128#define DP_MISC0_SYNCHRONOUS_CLK		(0x00000001)
    129#define DP_MISC0_COLORIMETRY_CFG_SHIFT		(0x00000001)
    130#define DP_MISC0_TEST_BITS_DEPTH_SHIFT		(0x00000005)
    131
    132#define REG_DP_VALID_BOUNDARY			(0x00000030)
    133#define REG_DP_VALID_BOUNDARY_2			(0x00000034)
    134
    135#define REG_DP_LOGICAL2PHYSICAL_LANE_MAPPING	(0x00000038)
    136#define LANE0_MAPPING_SHIFT			(0x00000000)
    137#define LANE1_MAPPING_SHIFT			(0x00000002)
    138#define LANE2_MAPPING_SHIFT			(0x00000004)
    139#define LANE3_MAPPING_SHIFT			(0x00000006)
    140
    141#define REG_DP_MAINLINK_READY			(0x00000040)
    142#define DP_MAINLINK_READY_FOR_VIDEO		(0x00000001)
    143#define DP_MAINLINK_READY_LINK_TRAINING_SHIFT	(0x00000003)
    144
    145#define REG_DP_MAINLINK_LEVELS			(0x00000044)
    146#define DP_MAINLINK_SAFE_TO_EXIT_LEVEL_2	(0x00000002)
    147
    148
    149#define REG_DP_TU				(0x0000004C)
    150
    151#define REG_DP_HBR2_COMPLIANCE_SCRAMBLER_RESET	(0x00000054)
    152#define DP_HBR2_ERM_PATTERN			(0x00010000)
    153
    154#define REG_DP_TEST_80BIT_CUSTOM_PATTERN_REG0	(0x000000C0)
    155#define REG_DP_TEST_80BIT_CUSTOM_PATTERN_REG1	(0x000000C4)
    156#define REG_DP_TEST_80BIT_CUSTOM_PATTERN_REG2	(0x000000C8)
    157
    158#define MMSS_DP_MISC1_MISC0			(0x0000002C)
    159#define MMSS_DP_AUDIO_TIMING_GEN		(0x00000080)
    160#define MMSS_DP_AUDIO_TIMING_RBR_32		(0x00000084)
    161#define MMSS_DP_AUDIO_TIMING_HBR_32		(0x00000088)
    162#define MMSS_DP_AUDIO_TIMING_RBR_44		(0x0000008C)
    163#define MMSS_DP_AUDIO_TIMING_HBR_44		(0x00000090)
    164#define MMSS_DP_AUDIO_TIMING_RBR_48		(0x00000094)
    165#define MMSS_DP_AUDIO_TIMING_HBR_48		(0x00000098)
    166
    167#define MMSS_DP_PSR_CRC_RG			(0x00000154)
    168#define MMSS_DP_PSR_CRC_B			(0x00000158)
    169
    170#define REG_DP_COMPRESSION_MODE_CTRL		(0x00000180)
    171
    172#define MMSS_DP_AUDIO_CFG			(0x00000200)
    173#define MMSS_DP_AUDIO_STATUS			(0x00000204)
    174#define MMSS_DP_AUDIO_PKT_CTRL			(0x00000208)
    175#define MMSS_DP_AUDIO_PKT_CTRL2			(0x0000020C)
    176#define MMSS_DP_AUDIO_ACR_CTRL			(0x00000210)
    177#define MMSS_DP_AUDIO_CTRL_RESET		(0x00000214)
    178
    179#define MMSS_DP_SDP_CFG				(0x00000228)
    180#define MMSS_DP_SDP_CFG2			(0x0000022C)
    181#define MMSS_DP_AUDIO_TIMESTAMP_0		(0x00000230)
    182#define MMSS_DP_AUDIO_TIMESTAMP_1		(0x00000234)
    183
    184#define MMSS_DP_AUDIO_STREAM_0			(0x00000240)
    185#define MMSS_DP_AUDIO_STREAM_1			(0x00000244)
    186
    187#define MMSS_DP_EXTENSION_0			(0x00000250)
    188#define MMSS_DP_EXTENSION_1			(0x00000254)
    189#define MMSS_DP_EXTENSION_2			(0x00000258)
    190#define MMSS_DP_EXTENSION_3			(0x0000025C)
    191#define MMSS_DP_EXTENSION_4			(0x00000260)
    192#define MMSS_DP_EXTENSION_5			(0x00000264)
    193#define MMSS_DP_EXTENSION_6			(0x00000268)
    194#define MMSS_DP_EXTENSION_7			(0x0000026C)
    195#define MMSS_DP_EXTENSION_8			(0x00000270)
    196#define MMSS_DP_EXTENSION_9			(0x00000274)
    197#define MMSS_DP_AUDIO_COPYMANAGEMENT_0		(0x00000278)
    198#define MMSS_DP_AUDIO_COPYMANAGEMENT_1		(0x0000027C)
    199#define MMSS_DP_AUDIO_COPYMANAGEMENT_2		(0x00000280)
    200#define MMSS_DP_AUDIO_COPYMANAGEMENT_3		(0x00000284)
    201#define MMSS_DP_AUDIO_COPYMANAGEMENT_4		(0x00000288)
    202#define MMSS_DP_AUDIO_COPYMANAGEMENT_5		(0x0000028C)
    203#define MMSS_DP_AUDIO_ISRC_0			(0x00000290)
    204#define MMSS_DP_AUDIO_ISRC_1			(0x00000294)
    205#define MMSS_DP_AUDIO_ISRC_2			(0x00000298)
    206#define MMSS_DP_AUDIO_ISRC_3			(0x0000029C)
    207#define MMSS_DP_AUDIO_ISRC_4			(0x000002A0)
    208#define MMSS_DP_AUDIO_ISRC_5			(0x000002A4)
    209#define MMSS_DP_AUDIO_INFOFRAME_0		(0x000002A8)
    210#define MMSS_DP_AUDIO_INFOFRAME_1		(0x000002AC)
    211#define MMSS_DP_AUDIO_INFOFRAME_2		(0x000002B0)
    212
    213#define MMSS_DP_GENERIC0_0			(0x00000300)
    214#define MMSS_DP_GENERIC0_1			(0x00000304)
    215#define MMSS_DP_GENERIC0_2			(0x00000308)
    216#define MMSS_DP_GENERIC0_3			(0x0000030C)
    217#define MMSS_DP_GENERIC0_4			(0x00000310)
    218#define MMSS_DP_GENERIC0_5			(0x00000314)
    219#define MMSS_DP_GENERIC0_6			(0x00000318)
    220#define MMSS_DP_GENERIC0_7			(0x0000031C)
    221#define MMSS_DP_GENERIC0_8			(0x00000320)
    222#define MMSS_DP_GENERIC0_9			(0x00000324)
    223#define MMSS_DP_GENERIC1_0			(0x00000328)
    224#define MMSS_DP_GENERIC1_1			(0x0000032C)
    225#define MMSS_DP_GENERIC1_2			(0x00000330)
    226#define MMSS_DP_GENERIC1_3			(0x00000334)
    227#define MMSS_DP_GENERIC1_4			(0x00000338)
    228#define MMSS_DP_GENERIC1_5			(0x0000033C)
    229#define MMSS_DP_GENERIC1_6			(0x00000340)
    230#define MMSS_DP_GENERIC1_7			(0x00000344)
    231#define MMSS_DP_GENERIC1_8			(0x00000348)
    232#define MMSS_DP_GENERIC1_9			(0x0000034C)
    233
    234#define MMSS_DP_VSCEXT_0			(0x000002D0)
    235#define MMSS_DP_VSCEXT_1			(0x000002D4)
    236#define MMSS_DP_VSCEXT_2			(0x000002D8)
    237#define MMSS_DP_VSCEXT_3			(0x000002DC)
    238#define MMSS_DP_VSCEXT_4			(0x000002E0)
    239#define MMSS_DP_VSCEXT_5			(0x000002E4)
    240#define MMSS_DP_VSCEXT_6			(0x000002E8)
    241#define MMSS_DP_VSCEXT_7			(0x000002EC)
    242#define MMSS_DP_VSCEXT_8			(0x000002F0)
    243#define MMSS_DP_VSCEXT_9			(0x000002F4)
    244
    245#define MMSS_DP_BIST_ENABLE			(0x00000000)
    246#define DP_BIST_ENABLE_DPBIST_EN		(0x00000001)
    247
    248#define MMSS_DP_TIMING_ENGINE_EN		(0x00000010)
    249#define DP_TIMING_ENGINE_EN_EN			(0x00000001)
    250
    251#define MMSS_DP_INTF_CONFIG			(0x00000014)
    252#define MMSS_DP_INTF_HSYNC_CTL			(0x00000018)
    253#define MMSS_DP_INTF_VSYNC_PERIOD_F0		(0x0000001C)
    254#define MMSS_DP_INTF_VSYNC_PERIOD_F1		(0x00000020)
    255#define MMSS_DP_INTF_VSYNC_PULSE_WIDTH_F0	(0x00000024)
    256#define MMSS_DP_INTF_VSYNC_PULSE_WIDTH_F1	(0x00000028)
    257#define MMSS_INTF_DISPLAY_V_START_F0		(0x0000002C)
    258#define MMSS_INTF_DISPLAY_V_START_F1		(0x00000030)
    259#define MMSS_DP_INTF_DISPLAY_V_END_F0		(0x00000034)
    260#define MMSS_DP_INTF_DISPLAY_V_END_F1		(0x00000038)
    261#define MMSS_DP_INTF_ACTIVE_V_START_F0		(0x0000003C)
    262#define MMSS_DP_INTF_ACTIVE_V_START_F1		(0x00000040)
    263#define MMSS_DP_INTF_ACTIVE_V_END_F0		(0x00000044)
    264#define MMSS_DP_INTF_ACTIVE_V_END_F1		(0x00000048)
    265#define MMSS_DP_INTF_DISPLAY_HCTL		(0x0000004C)
    266#define MMSS_DP_INTF_ACTIVE_HCTL		(0x00000050)
    267#define MMSS_DP_INTF_POLARITY_CTL		(0x00000058)
    268
    269#define MMSS_DP_TPG_MAIN_CONTROL		(0x00000060)
    270#define MMSS_DP_DSC_DTO				(0x0000007C)
    271#define DP_TPG_CHECKERED_RECT_PATTERN		(0x00000100)
    272
    273#define MMSS_DP_TPG_VIDEO_CONFIG		(0x00000064)
    274#define DP_TPG_VIDEO_CONFIG_BPP_8BIT		(0x00000001)
    275#define DP_TPG_VIDEO_CONFIG_RGB			(0x00000004)
    276
    277#define MMSS_DP_ASYNC_FIFO_CONFIG		(0x00000088)
    278
    279#define REG_DP_PHY_AUX_INTERRUPT_CLEAR          (0x0000004C)
    280#define REG_DP_PHY_AUX_BIST_CFG			(0x00000050)
    281#define REG_DP_PHY_AUX_INTERRUPT_STATUS         (0x000000BC)
    282
    283/* DP HDCP 1.3 registers */
    284#define DP_HDCP_CTRL                                   (0x0A0)
    285#define DP_HDCP_STATUS                                 (0x0A4)
    286#define DP_HDCP_SW_UPPER_AKSV                          (0x098)
    287#define DP_HDCP_SW_LOWER_AKSV                          (0x09C)
    288#define DP_HDCP_ENTROPY_CTRL0                          (0x350)
    289#define DP_HDCP_ENTROPY_CTRL1                          (0x35C)
    290#define DP_HDCP_SHA_STATUS                             (0x0C8)
    291#define DP_HDCP_RCVPORT_DATA2_0                        (0x0B0)
    292#define DP_HDCP_RCVPORT_DATA3                          (0x0A4)
    293#define DP_HDCP_RCVPORT_DATA4                          (0x0A8)
    294#define DP_HDCP_RCVPORT_DATA5                          (0x0C0)
    295#define DP_HDCP_RCVPORT_DATA6                          (0x0C4)
    296
    297#define HDCP_SEC_DP_TZ_HV_HLOS_HDCP_SHA_CTRL           (0x024)
    298#define HDCP_SEC_DP_TZ_HV_HLOS_HDCP_SHA_DATA           (0x028)
    299#define HDCP_SEC_DP_TZ_HV_HLOS_HDCP_RCVPORT_DATA0      (0x004)
    300#define HDCP_SEC_DP_TZ_HV_HLOS_HDCP_RCVPORT_DATA1      (0x008)
    301#define HDCP_SEC_DP_TZ_HV_HLOS_HDCP_RCVPORT_DATA7      (0x00C)
    302#define HDCP_SEC_DP_TZ_HV_HLOS_HDCP_RCVPORT_DATA8      (0x010)
    303#define HDCP_SEC_DP_TZ_HV_HLOS_HDCP_RCVPORT_DATA9      (0x014)
    304#define HDCP_SEC_DP_TZ_HV_HLOS_HDCP_RCVPORT_DATA10     (0x018)
    305#define HDCP_SEC_DP_TZ_HV_HLOS_HDCP_RCVPORT_DATA11     (0x01C)
    306#define HDCP_SEC_DP_TZ_HV_HLOS_HDCP_RCVPORT_DATA12     (0x020)
    307
    308#endif /* _DP_REG_H_ */