0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017
0018
0019
0020
0021
0022
0023
0024 #ifndef _BTCD_H_
0025 #define _BTCD_H_
0026
0027
0028
0029 #define GENERAL_PWRMGT 0x63c
0030 # define GLOBAL_PWRMGT_EN (1 << 0)
0031 # define STATIC_PM_EN (1 << 1)
0032 # define THERMAL_PROTECTION_DIS (1 << 2)
0033 # define THERMAL_PROTECTION_TYPE (1 << 3)
0034 # define ENABLE_GEN2PCIE (1 << 4)
0035 # define ENABLE_GEN2XSP (1 << 5)
0036 # define SW_SMIO_INDEX(x) ((x) << 6)
0037 # define SW_SMIO_INDEX_MASK (3 << 6)
0038 # define SW_SMIO_INDEX_SHIFT 6
0039 # define LOW_VOLT_D2_ACPI (1 << 8)
0040 # define LOW_VOLT_D3_ACPI (1 << 9)
0041 # define VOLT_PWRMGT_EN (1 << 10)
0042 # define BACKBIAS_PAD_EN (1 << 18)
0043 # define BACKBIAS_VALUE (1 << 19)
0044 # define DYN_SPREAD_SPECTRUM_EN (1 << 23)
0045 # define AC_DC_SW (1 << 24)
0046
0047 #define TARGET_AND_CURRENT_PROFILE_INDEX 0x66c
0048 # define CURRENT_PROFILE_INDEX_MASK (0xf << 4)
0049 # define CURRENT_PROFILE_INDEX_SHIFT 4
0050
0051 #define CG_BIF_REQ_AND_RSP 0x7f4
0052 #define CG_CLIENT_REQ(x) ((x) << 0)
0053 #define CG_CLIENT_REQ_MASK (0xff << 0)
0054 #define CG_CLIENT_REQ_SHIFT 0
0055 #define CG_CLIENT_RESP(x) ((x) << 8)
0056 #define CG_CLIENT_RESP_MASK (0xff << 8)
0057 #define CG_CLIENT_RESP_SHIFT 8
0058 #define CLIENT_CG_REQ(x) ((x) << 16)
0059 #define CLIENT_CG_REQ_MASK (0xff << 16)
0060 #define CLIENT_CG_REQ_SHIFT 16
0061 #define CLIENT_CG_RESP(x) ((x) << 24)
0062 #define CLIENT_CG_RESP_MASK (0xff << 24)
0063 #define CLIENT_CG_RESP_SHIFT 24
0064
0065 #define SCLK_PSKIP_CNTL 0x8c0
0066 #define PSKIP_ON_ALLOW_STOP_HI(x) ((x) << 16)
0067 #define PSKIP_ON_ALLOW_STOP_HI_MASK (0xff << 16)
0068 #define PSKIP_ON_ALLOW_STOP_HI_SHIFT 16
0069
0070 #define CG_ULV_CONTROL 0x8c8
0071 #define CG_ULV_PARAMETER 0x8cc
0072
0073 #define MC_ARB_DRAM_TIMING 0x2774
0074 #define MC_ARB_DRAM_TIMING2 0x2778
0075
0076 #define MC_ARB_RFSH_RATE 0x27b0
0077 #define POWERMODE0(x) ((x) << 0)
0078 #define POWERMODE0_MASK (0xff << 0)
0079 #define POWERMODE0_SHIFT 0
0080 #define POWERMODE1(x) ((x) << 8)
0081 #define POWERMODE1_MASK (0xff << 8)
0082 #define POWERMODE1_SHIFT 8
0083 #define POWERMODE2(x) ((x) << 16)
0084 #define POWERMODE2_MASK (0xff << 16)
0085 #define POWERMODE2_SHIFT 16
0086 #define POWERMODE3(x) ((x) << 24)
0087 #define POWERMODE3_MASK (0xff << 24)
0088 #define POWERMODE3_SHIFT 24
0089
0090 #define MC_ARB_BURST_TIME 0x2808
0091 #define STATE0(x) ((x) << 0)
0092 #define STATE0_MASK (0x1f << 0)
0093 #define STATE0_SHIFT 0
0094 #define STATE1(x) ((x) << 5)
0095 #define STATE1_MASK (0x1f << 5)
0096 #define STATE1_SHIFT 5
0097 #define STATE2(x) ((x) << 10)
0098 #define STATE2_MASK (0x1f << 10)
0099 #define STATE2_SHIFT 10
0100 #define STATE3(x) ((x) << 15)
0101 #define STATE3_MASK (0x1f << 15)
0102 #define STATE3_SHIFT 15
0103
0104 #define MC_SEQ_RAS_TIMING 0x28a0
0105 #define MC_SEQ_CAS_TIMING 0x28a4
0106 #define MC_SEQ_MISC_TIMING 0x28a8
0107 #define MC_SEQ_MISC_TIMING2 0x28ac
0108
0109 #define MC_SEQ_RD_CTL_D0 0x28b4
0110 #define MC_SEQ_RD_CTL_D1 0x28b8
0111 #define MC_SEQ_WR_CTL_D0 0x28bc
0112 #define MC_SEQ_WR_CTL_D1 0x28c0
0113
0114 #define MC_PMG_AUTO_CFG 0x28d4
0115
0116 #define MC_SEQ_STATUS_M 0x29f4
0117 # define PMG_PWRSTATE (1 << 16)
0118
0119 #define MC_SEQ_MISC0 0x2a00
0120 #define MC_SEQ_MISC0_GDDR5_SHIFT 28
0121 #define MC_SEQ_MISC0_GDDR5_MASK 0xf0000000
0122 #define MC_SEQ_MISC0_GDDR5_VALUE 5
0123 #define MC_SEQ_MISC1 0x2a04
0124 #define MC_SEQ_RESERVE_M 0x2a08
0125 #define MC_PMG_CMD_EMRS 0x2a0c
0126
0127 #define MC_SEQ_MISC3 0x2a2c
0128
0129 #define MC_SEQ_MISC5 0x2a54
0130 #define MC_SEQ_MISC6 0x2a58
0131
0132 #define MC_SEQ_MISC7 0x2a64
0133
0134 #define MC_SEQ_CG 0x2a68
0135 #define CG_SEQ_REQ(x) ((x) << 0)
0136 #define CG_SEQ_REQ_MASK (0xff << 0)
0137 #define CG_SEQ_REQ_SHIFT 0
0138 #define CG_SEQ_RESP(x) ((x) << 8)
0139 #define CG_SEQ_RESP_MASK (0xff << 8)
0140 #define CG_SEQ_RESP_SHIFT 8
0141 #define SEQ_CG_REQ(x) ((x) << 16)
0142 #define SEQ_CG_REQ_MASK (0xff << 16)
0143 #define SEQ_CG_REQ_SHIFT 16
0144 #define SEQ_CG_RESP(x) ((x) << 24)
0145 #define SEQ_CG_RESP_MASK (0xff << 24)
0146 #define SEQ_CG_RESP_SHIFT 24
0147 #define MC_SEQ_RAS_TIMING_LP 0x2a6c
0148 #define MC_SEQ_CAS_TIMING_LP 0x2a70
0149 #define MC_SEQ_MISC_TIMING_LP 0x2a74
0150 #define MC_SEQ_MISC_TIMING2_LP 0x2a78
0151 #define MC_SEQ_WR_CTL_D0_LP 0x2a7c
0152 #define MC_SEQ_WR_CTL_D1_LP 0x2a80
0153 #define MC_SEQ_PMG_CMD_EMRS_LP 0x2a84
0154 #define MC_SEQ_PMG_CMD_MRS_LP 0x2a88
0155
0156 #define MC_PMG_CMD_MRS 0x2aac
0157
0158 #define MC_SEQ_RD_CTL_D0_LP 0x2b1c
0159 #define MC_SEQ_RD_CTL_D1_LP 0x2b20
0160
0161 #define MC_PMG_CMD_MRS1 0x2b44
0162 #define MC_SEQ_PMG_CMD_MRS1_LP 0x2b48
0163
0164 #define LB_SYNC_RESET_SEL 0x6b28
0165 #define LB_SYNC_RESET_SEL_MASK (3 << 0)
0166 #define LB_SYNC_RESET_SEL_SHIFT 0
0167
0168
0169 #define PCIE_LC_SPEED_CNTL 0xa4
0170 # define LC_GEN2_EN_STRAP (1 << 0)
0171 # define LC_TARGET_LINK_SPEED_OVERRIDE_EN (1 << 1)
0172 # define LC_FORCE_EN_HW_SPEED_CHANGE (1 << 5)
0173 # define LC_FORCE_DIS_HW_SPEED_CHANGE (1 << 6)
0174 # define LC_SPEED_CHANGE_ATTEMPTS_ALLOWED_MASK (0x3 << 8)
0175 # define LC_SPEED_CHANGE_ATTEMPTS_ALLOWED_SHIFT 3
0176 # define LC_CURRENT_DATA_RATE (1 << 11)
0177 # define LC_HW_VOLTAGE_IF_CONTROL(x) ((x) << 12)
0178 # define LC_HW_VOLTAGE_IF_CONTROL_MASK (3 << 12)
0179 # define LC_HW_VOLTAGE_IF_CONTROL_SHIFT 12
0180 # define LC_VOLTAGE_TIMER_SEL_MASK (0xf << 14)
0181 # define LC_CLR_FAILED_SPD_CHANGE_CNT (1 << 21)
0182 # define LC_OTHER_SIDE_EVER_SENT_GEN2 (1 << 23)
0183 # define LC_OTHER_SIDE_SUPPORTS_GEN2 (1 << 24)
0184
0185 #endif