| 1 | /* |
| 2 | * Copyright 2019 Advanced Micro Devices, Inc. |
| 3 | * |
| 4 | * Permission is hereby granted, free of charge, to any person obtaining a |
| 5 | * copy of this software and associated documentation files (the "Software"), |
| 6 | * to deal in the Software without restriction, including without limitation |
| 7 | * the rights to use, copy, modify, merge, publish, distribute, sublicense, |
| 8 | * and/or sell copies of the Software, and to permit persons to whom the |
| 9 | * Software is furnished to do so, subject to the following conditions: |
| 10 | * |
| 11 | * The above copyright notice and this permission notice shall be included in |
| 12 | * all copies or substantial portions of the Software. |
| 13 | * |
| 14 | * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR |
| 15 | * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, |
| 16 | * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL |
| 17 | * THE COPYRIGHT HOLDER(S) OR AUTHOR(S) BE LIABLE FOR ANY CLAIM, DAMAGES OR |
| 18 | * OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, |
| 19 | * ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR |
| 20 | * OTHER DEALINGS IN THE SOFTWARE. |
| 21 | */ |
| 22 | |
| 23 | #ifndef __SMU_TYPES_H__ |
| 24 | #define __SMU_TYPES_H__ |
| 25 | |
| 26 | #define SMU_MESSAGE_TYPES \ |
| 27 | __SMU_DUMMY_MAP(TestMessage), \ |
| 28 | __SMU_DUMMY_MAP(GetSmuVersion), \ |
| 29 | __SMU_DUMMY_MAP(GetDriverIfVersion), \ |
| 30 | __SMU_DUMMY_MAP(SetAllowedFeaturesMaskLow), \ |
| 31 | __SMU_DUMMY_MAP(SetAllowedFeaturesMaskHigh), \ |
| 32 | __SMU_DUMMY_MAP(EnableAllSmuFeatures), \ |
| 33 | __SMU_DUMMY_MAP(DisableAllSmuFeatures), \ |
| 34 | __SMU_DUMMY_MAP(EnableSmuFeaturesLow), \ |
| 35 | __SMU_DUMMY_MAP(EnableSmuFeaturesHigh), \ |
| 36 | __SMU_DUMMY_MAP(DisableSmuFeaturesLow), \ |
| 37 | __SMU_DUMMY_MAP(DisableSmuFeaturesHigh), \ |
| 38 | __SMU_DUMMY_MAP(GetEnabledSmuFeatures), \ |
| 39 | __SMU_DUMMY_MAP(GetEnabledSmuFeaturesLow), \ |
| 40 | __SMU_DUMMY_MAP(GetEnabledSmuFeaturesHigh), \ |
| 41 | __SMU_DUMMY_MAP(SetWorkloadMask), \ |
| 42 | __SMU_DUMMY_MAP(SetPptLimit), \ |
| 43 | __SMU_DUMMY_MAP(SetDriverDramAddrHigh), \ |
| 44 | __SMU_DUMMY_MAP(SetDriverDramAddrLow), \ |
| 45 | __SMU_DUMMY_MAP(SetToolsDramAddrHigh), \ |
| 46 | __SMU_DUMMY_MAP(SetToolsDramAddrLow), \ |
| 47 | __SMU_DUMMY_MAP(TransferTableSmu2Dram), \ |
| 48 | __SMU_DUMMY_MAP(TransferTableDram2Smu), \ |
| 49 | __SMU_DUMMY_MAP(UseDefaultPPTable), \ |
| 50 | __SMU_DUMMY_MAP(UseBackupPPTable), \ |
| 51 | __SMU_DUMMY_MAP(RunBtc), \ |
| 52 | __SMU_DUMMY_MAP(RequestI2CBus), \ |
| 53 | __SMU_DUMMY_MAP(ReleaseI2CBus), \ |
| 54 | __SMU_DUMMY_MAP(SetFloorSocVoltage), \ |
| 55 | __SMU_DUMMY_MAP(SoftReset), \ |
| 56 | __SMU_DUMMY_MAP(StartBacoMonitor), \ |
| 57 | __SMU_DUMMY_MAP(CancelBacoMonitor), \ |
| 58 | __SMU_DUMMY_MAP(EnterBaco), \ |
| 59 | __SMU_DUMMY_MAP(SetSoftMinByFreq), \ |
| 60 | __SMU_DUMMY_MAP(SetSoftMaxByFreq), \ |
| 61 | __SMU_DUMMY_MAP(SetHardMinByFreq), \ |
| 62 | __SMU_DUMMY_MAP(SetHardMaxByFreq), \ |
| 63 | __SMU_DUMMY_MAP(GetMinDpmFreq), \ |
| 64 | __SMU_DUMMY_MAP(GetMaxDpmFreq), \ |
| 65 | __SMU_DUMMY_MAP(GetDpmFreqByIndex), \ |
| 66 | __SMU_DUMMY_MAP(GetDpmClockFreq), \ |
| 67 | __SMU_DUMMY_MAP(GetSsVoltageByDpm), \ |
| 68 | __SMU_DUMMY_MAP(SetMemoryChannelConfig), \ |
| 69 | __SMU_DUMMY_MAP(SetGeminiMode), \ |
| 70 | __SMU_DUMMY_MAP(SetGeminiApertureHigh), \ |
| 71 | __SMU_DUMMY_MAP(SetGeminiApertureLow), \ |
| 72 | __SMU_DUMMY_MAP(SetMinLinkDpmByIndex), \ |
| 73 | __SMU_DUMMY_MAP(OverridePcieParameters), \ |
| 74 | __SMU_DUMMY_MAP(OverDriveSetPercentage), \ |
| 75 | __SMU_DUMMY_MAP(SetMinDeepSleepDcefclk), \ |
| 76 | __SMU_DUMMY_MAP(ReenableAcDcInterrupt), \ |
| 77 | __SMU_DUMMY_MAP(AllowIHHostInterrupt), \ |
| 78 | __SMU_DUMMY_MAP(NotifyPowerSource), \ |
| 79 | __SMU_DUMMY_MAP(SetUclkFastSwitch), \ |
| 80 | __SMU_DUMMY_MAP(SetUclkDownHyst), \ |
| 81 | __SMU_DUMMY_MAP(GfxDeviceDriverReset), \ |
| 82 | __SMU_DUMMY_MAP(GetCurrentRpm), \ |
| 83 | __SMU_DUMMY_MAP(SetVideoFps), \ |
| 84 | __SMU_DUMMY_MAP(SetTjMax), \ |
| 85 | __SMU_DUMMY_MAP(SetFanTemperatureTarget), \ |
| 86 | __SMU_DUMMY_MAP(PrepareMp1ForUnload), \ |
| 87 | __SMU_DUMMY_MAP(GetCTFLimit), \ |
| 88 | __SMU_DUMMY_MAP(DramLogSetDramAddrHigh), \ |
| 89 | __SMU_DUMMY_MAP(DramLogSetDramAddrLow), \ |
| 90 | __SMU_DUMMY_MAP(DramLogSetDramSize), \ |
| 91 | __SMU_DUMMY_MAP(SetFanMaxRpm), \ |
| 92 | __SMU_DUMMY_MAP(SetFanMinPwm), \ |
| 93 | __SMU_DUMMY_MAP(ConfigureGfxDidt), \ |
| 94 | __SMU_DUMMY_MAP(NumOfDisplays), \ |
| 95 | __SMU_DUMMY_MAP(RemoveMargins), \ |
| 96 | __SMU_DUMMY_MAP(ReadSerialNumTop32), \ |
| 97 | __SMU_DUMMY_MAP(ReadSerialNumBottom32), \ |
| 98 | __SMU_DUMMY_MAP(SetSystemVirtualDramAddrHigh), \ |
| 99 | __SMU_DUMMY_MAP(SetSystemVirtualDramAddrLow), \ |
| 100 | __SMU_DUMMY_MAP(WaflTest), \ |
| 101 | __SMU_DUMMY_MAP(SetFclkGfxClkRatio), \ |
| 102 | __SMU_DUMMY_MAP(AllowGfxOff), \ |
| 103 | __SMU_DUMMY_MAP(DisallowGfxOff), \ |
| 104 | __SMU_DUMMY_MAP(GetPptLimit), \ |
| 105 | __SMU_DUMMY_MAP(GetDcModeMaxDpmFreq), \ |
| 106 | __SMU_DUMMY_MAP(GetDebugData), \ |
| 107 | __SMU_DUMMY_MAP(SetXgmiMode), \ |
| 108 | __SMU_DUMMY_MAP(RunAfllBtc), \ |
| 109 | __SMU_DUMMY_MAP(ExitBaco), \ |
| 110 | __SMU_DUMMY_MAP(PrepareMp1ForReset), \ |
| 111 | __SMU_DUMMY_MAP(PrepareMp1ForShutdown), \ |
| 112 | __SMU_DUMMY_MAP(SetMGpuFanBoostLimitRpm), \ |
| 113 | __SMU_DUMMY_MAP(GetAVFSVoltageByDpm), \ |
| 114 | __SMU_DUMMY_MAP(PowerUpVcn), \ |
| 115 | __SMU_DUMMY_MAP(PowerDownVcn), \ |
| 116 | __SMU_DUMMY_MAP(PowerUpJpeg), \ |
| 117 | __SMU_DUMMY_MAP(PowerDownJpeg), \ |
| 118 | __SMU_DUMMY_MAP(PowerUpJpeg0), \ |
| 119 | __SMU_DUMMY_MAP(PowerDownJpeg0), \ |
| 120 | __SMU_DUMMY_MAP(PowerUpJpeg1), \ |
| 121 | __SMU_DUMMY_MAP(PowerDownJpeg1), \ |
| 122 | __SMU_DUMMY_MAP(BacoAudioD3PME), \ |
| 123 | __SMU_DUMMY_MAP(ArmD3), \ |
| 124 | __SMU_DUMMY_MAP(RunDcBtc), \ |
| 125 | __SMU_DUMMY_MAP(RunGfxDcBtc), \ |
| 126 | __SMU_DUMMY_MAP(RunSocDcBtc), \ |
| 127 | __SMU_DUMMY_MAP(SetMemoryChannelEnable), \ |
| 128 | __SMU_DUMMY_MAP(SetDfSwitchType), \ |
| 129 | __SMU_DUMMY_MAP(GetVoltageByDpm), \ |
| 130 | __SMU_DUMMY_MAP(GetVoltageByDpmOverdrive), \ |
| 131 | __SMU_DUMMY_MAP(PowerUpVcn0), \ |
| 132 | __SMU_DUMMY_MAP(PowerDownVcn0), \ |
| 133 | __SMU_DUMMY_MAP(PowerUpVcn1), \ |
| 134 | __SMU_DUMMY_MAP(PowerDownVcn1), \ |
| 135 | __SMU_DUMMY_MAP(PowerUpGfx), \ |
| 136 | __SMU_DUMMY_MAP(PowerDownIspByTile), \ |
| 137 | __SMU_DUMMY_MAP(PowerUpIspByTile), \ |
| 138 | __SMU_DUMMY_MAP(PowerDownSdma), \ |
| 139 | __SMU_DUMMY_MAP(PowerUpSdma), \ |
| 140 | __SMU_DUMMY_MAP(SetHardMinIspclkByFreq), \ |
| 141 | __SMU_DUMMY_MAP(SetHardMinVcn), \ |
| 142 | __SMU_DUMMY_MAP(SetHardMinVcn0), \ |
| 143 | __SMU_DUMMY_MAP(SetHardMinVcn1), \ |
| 144 | __SMU_DUMMY_MAP(SetAllowFclkSwitch), \ |
| 145 | __SMU_DUMMY_MAP(SetMinVideoGfxclkFreq), \ |
| 146 | __SMU_DUMMY_MAP(ActiveProcessNotify), \ |
| 147 | __SMU_DUMMY_MAP(SetCustomPolicy), \ |
| 148 | __SMU_DUMMY_MAP(QueryPowerLimit), \ |
| 149 | __SMU_DUMMY_MAP(SetGfxclkOverdriveByFreqVid), \ |
| 150 | __SMU_DUMMY_MAP(SetHardMinDcfclkByFreq), \ |
| 151 | __SMU_DUMMY_MAP(SetHardMinSocclkByFreq), \ |
| 152 | __SMU_DUMMY_MAP(ControlIgpuATS), \ |
| 153 | __SMU_DUMMY_MAP(SetMinVideoFclkFreq), \ |
| 154 | __SMU_DUMMY_MAP(SetMinDeepSleepDcfclk), \ |
| 155 | __SMU_DUMMY_MAP(ForcePowerDownGfx), \ |
| 156 | __SMU_DUMMY_MAP(SetPhyclkVoltageByFreq), \ |
| 157 | __SMU_DUMMY_MAP(SetDppclkVoltageByFreq), \ |
| 158 | __SMU_DUMMY_MAP(SetSoftMinVcn), \ |
| 159 | __SMU_DUMMY_MAP(SetSoftMinVcn0), \ |
| 160 | __SMU_DUMMY_MAP(SetSoftMinVcn1), \ |
| 161 | __SMU_DUMMY_MAP(EnablePostCode), \ |
| 162 | __SMU_DUMMY_MAP(GetGfxclkFrequency), \ |
| 163 | __SMU_DUMMY_MAP(GetFclkFrequency), \ |
| 164 | __SMU_DUMMY_MAP(GetMinGfxclkFrequency), \ |
| 165 | __SMU_DUMMY_MAP(GetMaxGfxclkFrequency), \ |
| 166 | __SMU_DUMMY_MAP(SetGfxCGPG), \ |
| 167 | __SMU_DUMMY_MAP(SetSoftMaxGfxClk), \ |
| 168 | __SMU_DUMMY_MAP(SetHardMinGfxClk), \ |
| 169 | __SMU_DUMMY_MAP(SetSoftMaxSocclkByFreq), \ |
| 170 | __SMU_DUMMY_MAP(SetSoftMaxFclkByFreq), \ |
| 171 | __SMU_DUMMY_MAP(SetSoftMaxVcn), \ |
| 172 | __SMU_DUMMY_MAP(SetSoftMaxVcn0), \ |
| 173 | __SMU_DUMMY_MAP(SetSoftMaxVcn1), \ |
| 174 | __SMU_DUMMY_MAP(PowerGateMmHub), \ |
| 175 | __SMU_DUMMY_MAP(UpdatePmeRestore), \ |
| 176 | __SMU_DUMMY_MAP(GpuChangeState), \ |
| 177 | __SMU_DUMMY_MAP(SetPowerLimitPercentage), \ |
| 178 | __SMU_DUMMY_MAP(ForceGfxContentSave), \ |
| 179 | __SMU_DUMMY_MAP(EnableTmdp48MHzRefclkPwrDown),\ |
| 180 | __SMU_DUMMY_MAP(PowerGateAtHub), \ |
| 181 | __SMU_DUMMY_MAP(SetSoftMinJpeg), \ |
| 182 | __SMU_DUMMY_MAP(SetHardMinFclkByFreq), \ |
| 183 | __SMU_DUMMY_MAP(DFCstateControl), \ |
| 184 | __SMU_DUMMY_MAP(GmiPwrDnControl), \ |
| 185 | __SMU_DUMMY_MAP(spare), \ |
| 186 | __SMU_DUMMY_MAP(SetNumBadHbmPagesRetired), \ |
| 187 | __SMU_DUMMY_MAP(GetGmiPwrDnHyst), \ |
| 188 | __SMU_DUMMY_MAP(SetGmiPwrDnHyst), \ |
| 189 | __SMU_DUMMY_MAP(EnterGfxoff), \ |
| 190 | __SMU_DUMMY_MAP(ExitGfxoff), \ |
| 191 | __SMU_DUMMY_MAP(SetExecuteDMATest), \ |
| 192 | __SMU_DUMMY_MAP(DAL_DISABLE_DUMMY_PSTATE_CHANGE), \ |
| 193 | __SMU_DUMMY_MAP(DAL_ENABLE_DUMMY_PSTATE_CHANGE), \ |
| 194 | __SMU_DUMMY_MAP(SET_DRIVER_DUMMY_TABLE_DRAM_ADDR_HIGH), \ |
| 195 | __SMU_DUMMY_MAP(SET_DRIVER_DUMMY_TABLE_DRAM_ADDR_LOW), \ |
| 196 | __SMU_DUMMY_MAP(GET_UMC_FW_WA), \ |
| 197 | __SMU_DUMMY_MAP(Mode1Reset), \ |
| 198 | __SMU_DUMMY_MAP(RlcPowerNotify), \ |
| 199 | __SMU_DUMMY_MAP(SetHardMinIspiclkByFreq), \ |
| 200 | __SMU_DUMMY_MAP(SetHardMinIspxclkByFreq), \ |
| 201 | __SMU_DUMMY_MAP(SetSoftMinSocclkByFreq), \ |
| 202 | __SMU_DUMMY_MAP(PowerUpCvip), \ |
| 203 | __SMU_DUMMY_MAP(PowerDownCvip), \ |
| 204 | __SMU_DUMMY_MAP(EnableGfxOff), \ |
| 205 | __SMU_DUMMY_MAP(DisableGfxOff), \ |
| 206 | __SMU_DUMMY_MAP(SetSoftMinGfxclk), \ |
| 207 | __SMU_DUMMY_MAP(SetSoftMinFclk), \ |
| 208 | __SMU_DUMMY_MAP(GetThermalLimit), \ |
| 209 | __SMU_DUMMY_MAP(GetCurrentTemperature), \ |
| 210 | __SMU_DUMMY_MAP(GetCurrentPower), \ |
| 211 | __SMU_DUMMY_MAP(GetCurrentVoltage), \ |
| 212 | __SMU_DUMMY_MAP(GetCurrentCurrent), \ |
| 213 | __SMU_DUMMY_MAP(GetAverageCpuActivity), \ |
| 214 | __SMU_DUMMY_MAP(GetAverageGfxActivity), \ |
| 215 | __SMU_DUMMY_MAP(GetAveragePower), \ |
| 216 | __SMU_DUMMY_MAP(GetAverageTemperature), \ |
| 217 | __SMU_DUMMY_MAP(SetAveragePowerTimeConstant), \ |
| 218 | __SMU_DUMMY_MAP(SetAverageActivityTimeConstant), \ |
| 219 | __SMU_DUMMY_MAP(SetAverageTemperatureTimeConstant), \ |
| 220 | __SMU_DUMMY_MAP(SetMitigationEndHysteresis), \ |
| 221 | __SMU_DUMMY_MAP(GetCurrentFreq), \ |
| 222 | __SMU_DUMMY_MAP(SetReducedPptLimit), \ |
| 223 | __SMU_DUMMY_MAP(SetReducedThermalLimit), \ |
| 224 | __SMU_DUMMY_MAP(DramLogSetDramAddr), \ |
| 225 | __SMU_DUMMY_MAP(StartDramLogging), \ |
| 226 | __SMU_DUMMY_MAP(StopDramLogging), \ |
| 227 | __SMU_DUMMY_MAP(SetSoftMinCclk), \ |
| 228 | __SMU_DUMMY_MAP(SetSoftMaxCclk), \ |
| 229 | __SMU_DUMMY_MAP(SetGpoFeaturePMask), \ |
| 230 | __SMU_DUMMY_MAP(DisallowGpo), \ |
| 231 | __SMU_DUMMY_MAP(Enable2ndUSB20Port), \ |
| 232 | __SMU_DUMMY_MAP(RequestActiveWgp), \ |
| 233 | __SMU_DUMMY_MAP(SetFastPPTLimit), \ |
| 234 | __SMU_DUMMY_MAP(SetSlowPPTLimit), \ |
| 235 | __SMU_DUMMY_MAP(GetFastPPTLimit), \ |
| 236 | __SMU_DUMMY_MAP(GetSlowPPTLimit), \ |
| 237 | __SMU_DUMMY_MAP(EnableDeterminism), \ |
| 238 | __SMU_DUMMY_MAP(DisableDeterminism), \ |
| 239 | __SMU_DUMMY_MAP(SetUclkDpmMode), \ |
| 240 | __SMU_DUMMY_MAP(LightSBR), \ |
| 241 | __SMU_DUMMY_MAP(GfxDriverResetRecovery), \ |
| 242 | __SMU_DUMMY_MAP(BoardPowerCalibration), \ |
| 243 | __SMU_DUMMY_MAP(RequestGfxclk), \ |
| 244 | __SMU_DUMMY_MAP(ForceGfxVid), \ |
| 245 | __SMU_DUMMY_MAP(Spare0), \ |
| 246 | __SMU_DUMMY_MAP(UnforceGfxVid), \ |
| 247 | __SMU_DUMMY_MAP(HeavySBR), \ |
| 248 | __SMU_DUMMY_MAP(SetBadHBMPagesRetiredFlagsPerChannel), \ |
| 249 | __SMU_DUMMY_MAP(EnableGfxImu), \ |
| 250 | __SMU_DUMMY_MAP(DriverMode2Reset), \ |
| 251 | __SMU_DUMMY_MAP(GetGfxOffStatus), \ |
| 252 | __SMU_DUMMY_MAP(GetGfxOffEntryCount), \ |
| 253 | __SMU_DUMMY_MAP(LogGfxOffResidency), \ |
| 254 | __SMU_DUMMY_MAP(SetNumBadMemoryPagesRetired), \ |
| 255 | __SMU_DUMMY_MAP(SetBadMemoryPagesRetiredFlagsPerChannel), \ |
| 256 | __SMU_DUMMY_MAP(AllowGpo), \ |
| 257 | __SMU_DUMMY_MAP(Mode2Reset), \ |
| 258 | __SMU_DUMMY_MAP(RequestI2cTransaction), \ |
| 259 | __SMU_DUMMY_MAP(GetMetricsTable), \ |
| 260 | __SMU_DUMMY_MAP(DALNotPresent), \ |
| 261 | __SMU_DUMMY_MAP(ClearMcaOnRead), \ |
| 262 | __SMU_DUMMY_MAP(QueryValidMcaCount), \ |
| 263 | __SMU_DUMMY_MAP(QueryValidMcaCeCount), \ |
| 264 | __SMU_DUMMY_MAP(McaBankDumpDW), \ |
| 265 | __SMU_DUMMY_MAP(McaBankCeDumpDW), \ |
| 266 | __SMU_DUMMY_MAP(SelectPLPDMode), \ |
| 267 | __SMU_DUMMY_MAP(PowerUpVpe), \ |
| 268 | __SMU_DUMMY_MAP(PowerDownVpe), \ |
| 269 | __SMU_DUMMY_MAP(PowerUpUmsch), \ |
| 270 | __SMU_DUMMY_MAP(PowerDownUmsch), \ |
| 271 | __SMU_DUMMY_MAP(SetSoftMaxVpe), \ |
| 272 | __SMU_DUMMY_MAP(SetSoftMinVpe), \ |
| 273 | __SMU_DUMMY_MAP(GetMetricsVersion), \ |
| 274 | __SMU_DUMMY_MAP(EnableUCLKShadow), \ |
| 275 | __SMU_DUMMY_MAP(RmaDueToBadPageThreshold), \ |
| 276 | __SMU_DUMMY_MAP(SetThrottlingPolicy), \ |
| 277 | __SMU_DUMMY_MAP(MALLPowerController), \ |
| 278 | __SMU_DUMMY_MAP(MALLPowerState), \ |
| 279 | __SMU_DUMMY_MAP(ResetSDMA), \ |
| 280 | __SMU_DUMMY_MAP(ResetVCN), \ |
| 281 | __SMU_DUMMY_MAP(GetStaticMetricsTable), \ |
| 282 | __SMU_DUMMY_MAP(GetSystemMetricsTable), \ |
| 283 | __SMU_DUMMY_MAP(GetRASTableVersion), \ |
| 284 | __SMU_DUMMY_MAP(GetBadPageCount), \ |
| 285 | __SMU_DUMMY_MAP(GetBadPageMcaAddr), \ |
| 286 | __SMU_DUMMY_MAP(SetTimestamp), \ |
| 287 | __SMU_DUMMY_MAP(GetTimestamp), \ |
| 288 | __SMU_DUMMY_MAP(GetBadPageIpid), \ |
| 289 | __SMU_DUMMY_MAP(EraseRasTable), \ |
| 290 | __SMU_DUMMY_MAP(SetFastPptLimit), \ |
| 291 | __SMU_DUMMY_MAP(GetFastPptLimit), |
| 292 | |
| 293 | #undef __SMU_DUMMY_MAP |
| 294 | #define __SMU_DUMMY_MAP(type) SMU_MSG_##type |
| 295 | enum smu_message_type { |
| 296 | SMU_MESSAGE_TYPES |
| 297 | SMU_MSG_MAX_COUNT, |
| 298 | }; |
| 299 | |
| 300 | enum smu_clk_type { |
| 301 | SMU_GFXCLK, |
| 302 | SMU_VCLK, |
| 303 | SMU_DCLK, |
| 304 | SMU_VCLK1, |
| 305 | SMU_DCLK1, |
| 306 | SMU_ECLK, |
| 307 | SMU_SOCCLK, |
| 308 | SMU_UCLK, |
| 309 | SMU_DCEFCLK, |
| 310 | SMU_DISPCLK, |
| 311 | SMU_PIXCLK, |
| 312 | SMU_PHYCLK, |
| 313 | SMU_FCLK, |
| 314 | SMU_SCLK, |
| 315 | SMU_MCLK, |
| 316 | SMU_PCIE, |
| 317 | SMU_LCLK, |
| 318 | SMU_ISPICLK, |
| 319 | SMU_ISPXCLK, |
| 320 | SMU_OD_CCLK, |
| 321 | SMU_OD_SCLK, |
| 322 | SMU_OD_MCLK, |
| 323 | SMU_OD_VDDC_CURVE, |
| 324 | SMU_OD_RANGE, |
| 325 | SMU_OD_VDDGFX_OFFSET, |
| 326 | SMU_OD_FAN_CURVE, |
| 327 | SMU_OD_ACOUSTIC_LIMIT, |
| 328 | SMU_OD_ACOUSTIC_TARGET, |
| 329 | SMU_OD_FAN_TARGET_TEMPERATURE, |
| 330 | SMU_OD_FAN_MINIMUM_PWM, |
| 331 | SMU_OD_FAN_ZERO_RPM_ENABLE, |
| 332 | SMU_OD_FAN_ZERO_RPM_STOP_TEMP, |
| 333 | SMU_CLK_COUNT, |
| 334 | }; |
| 335 | |
| 336 | #define SMU_FEATURE_MASKS \ |
| 337 | __SMU_DUMMY_MAP(DPM_PREFETCHER), \ |
| 338 | __SMU_DUMMY_MAP(DPM_GFXCLK), \ |
| 339 | __SMU_DUMMY_MAP(DPM_UCLK), \ |
| 340 | __SMU_DUMMY_MAP(DPM_SOCCLK), \ |
| 341 | __SMU_DUMMY_MAP(DPM_UVD), \ |
| 342 | __SMU_DUMMY_MAP(DPM_VCE), \ |
| 343 | __SMU_DUMMY_MAP(DPM_LCLK), \ |
| 344 | __SMU_DUMMY_MAP(ULV), \ |
| 345 | __SMU_DUMMY_MAP(DPM_MP0CLK), \ |
| 346 | __SMU_DUMMY_MAP(DPM_LINK), \ |
| 347 | __SMU_DUMMY_MAP(DPM_DCEFCLK), \ |
| 348 | __SMU_DUMMY_MAP(DPM_XGMI), \ |
| 349 | __SMU_DUMMY_MAP(DS_GFXCLK), \ |
| 350 | __SMU_DUMMY_MAP(DS_SOCCLK), \ |
| 351 | __SMU_DUMMY_MAP(DS_LCLK), \ |
| 352 | __SMU_DUMMY_MAP(PPT), \ |
| 353 | __SMU_DUMMY_MAP(TDC), \ |
| 354 | __SMU_DUMMY_MAP(THERMAL), \ |
| 355 | __SMU_DUMMY_MAP(GFX_PER_CU_CG), \ |
| 356 | __SMU_DUMMY_MAP(DATA_CALCULATIONS), \ |
| 357 | __SMU_DUMMY_MAP(RM), \ |
| 358 | __SMU_DUMMY_MAP(DS_DCEFCLK), \ |
| 359 | __SMU_DUMMY_MAP(ACDC), \ |
| 360 | __SMU_DUMMY_MAP(VR0HOT), \ |
| 361 | __SMU_DUMMY_MAP(VR1HOT), \ |
| 362 | __SMU_DUMMY_MAP(FW_CTF), \ |
| 363 | __SMU_DUMMY_MAP(LED_DISPLAY), \ |
| 364 | __SMU_DUMMY_MAP(FAN_CONTROL), \ |
| 365 | __SMU_DUMMY_MAP(GFX_EDC), \ |
| 366 | __SMU_DUMMY_MAP(GFXOFF), \ |
| 367 | __SMU_DUMMY_MAP(CG), \ |
| 368 | __SMU_DUMMY_MAP(DPM_FCLK), \ |
| 369 | __SMU_DUMMY_MAP(DS_FCLK), \ |
| 370 | __SMU_DUMMY_MAP(DS_MP1CLK), \ |
| 371 | __SMU_DUMMY_MAP(DS_MP0CLK), \ |
| 372 | __SMU_DUMMY_MAP(DS_MPIOCLK), \ |
| 373 | __SMU_DUMMY_MAP(XGMI_PER_LINK_PWR_DWN), \ |
| 374 | __SMU_DUMMY_MAP(DPM_GFX_PACE), \ |
| 375 | __SMU_DUMMY_MAP(MEM_VDDCI_SCALING), \ |
| 376 | __SMU_DUMMY_MAP(MEM_MVDD_SCALING), \ |
| 377 | __SMU_DUMMY_MAP(DS_UCLK), \ |
| 378 | __SMU_DUMMY_MAP(GFX_ULV), \ |
| 379 | __SMU_DUMMY_MAP(FW_DSTATE), \ |
| 380 | __SMU_DUMMY_MAP(BACO), \ |
| 381 | __SMU_DUMMY_MAP(VCN_PG), \ |
| 382 | __SMU_DUMMY_MAP(MM_DPM_PG), \ |
| 383 | __SMU_DUMMY_MAP(JPEG_PG), \ |
| 384 | __SMU_DUMMY_MAP(USB_PG), \ |
| 385 | __SMU_DUMMY_MAP(RSMU_SMN_CG), \ |
| 386 | __SMU_DUMMY_MAP(APCC_PLUS), \ |
| 387 | __SMU_DUMMY_MAP(GTHR), \ |
| 388 | __SMU_DUMMY_MAP(GFX_DCS), \ |
| 389 | __SMU_DUMMY_MAP(GFX_SS), \ |
| 390 | __SMU_DUMMY_MAP(OUT_OF_BAND_MONITOR), \ |
| 391 | __SMU_DUMMY_MAP(TEMP_DEPENDENT_VMIN), \ |
| 392 | __SMU_DUMMY_MAP(MMHUB_PG), \ |
| 393 | __SMU_DUMMY_MAP(ATHUB_PG), \ |
| 394 | __SMU_DUMMY_MAP(APCC_DFLL), \ |
| 395 | __SMU_DUMMY_MAP(DF_CSTATE), \ |
| 396 | __SMU_DUMMY_MAP(DPM_GFX_GPO), \ |
| 397 | __SMU_DUMMY_MAP(WAFL_CG), \ |
| 398 | __SMU_DUMMY_MAP(CCLK_DPM), \ |
| 399 | __SMU_DUMMY_MAP(FAN_CONTROLLER), \ |
| 400 | __SMU_DUMMY_MAP(VCN_DPM), \ |
| 401 | __SMU_DUMMY_MAP(LCLK_DPM), \ |
| 402 | __SMU_DUMMY_MAP(SHUBCLK_DPM), \ |
| 403 | __SMU_DUMMY_MAP(DCFCLK_DPM), \ |
| 404 | __SMU_DUMMY_MAP(DS_DCFCLK), \ |
| 405 | __SMU_DUMMY_MAP(S0I2), \ |
| 406 | __SMU_DUMMY_MAP(SMU_LOW_POWER), \ |
| 407 | __SMU_DUMMY_MAP(GFX_DEM), \ |
| 408 | __SMU_DUMMY_MAP(PSI), \ |
| 409 | __SMU_DUMMY_MAP(PROCHOT), \ |
| 410 | __SMU_DUMMY_MAP(CPUOFF), \ |
| 411 | __SMU_DUMMY_MAP(STAPM), \ |
| 412 | __SMU_DUMMY_MAP(S0I3), \ |
| 413 | __SMU_DUMMY_MAP(DF_CSTATES), \ |
| 414 | __SMU_DUMMY_MAP(PERF_LIMIT), \ |
| 415 | __SMU_DUMMY_MAP(CORE_DLDO), \ |
| 416 | __SMU_DUMMY_MAP(RSMU_LOW_POWER), \ |
| 417 | __SMU_DUMMY_MAP(SMN_LOW_POWER), \ |
| 418 | __SMU_DUMMY_MAP(THM_LOW_POWER), \ |
| 419 | __SMU_DUMMY_MAP(SMUIO_LOW_POWER), \ |
| 420 | __SMU_DUMMY_MAP(MP1_LOW_POWER), \ |
| 421 | __SMU_DUMMY_MAP(DS_VCN), \ |
| 422 | __SMU_DUMMY_MAP(CPPC), \ |
| 423 | __SMU_DUMMY_MAP(OS_CSTATES), \ |
| 424 | __SMU_DUMMY_MAP(ISP_DPM), \ |
| 425 | __SMU_DUMMY_MAP(A55_DPM), \ |
| 426 | __SMU_DUMMY_MAP(CVIP_DSP_DPM), \ |
| 427 | __SMU_DUMMY_MAP(MSMU_LOW_POWER), \ |
| 428 | __SMU_DUMMY_MAP(FUSE_CG), \ |
| 429 | __SMU_DUMMY_MAP(MP1_CG), \ |
| 430 | __SMU_DUMMY_MAP(SMUIO_CG), \ |
| 431 | __SMU_DUMMY_MAP(THM_CG), \ |
| 432 | __SMU_DUMMY_MAP(CLK_CG), \ |
| 433 | __SMU_DUMMY_MAP(DATA_CALCULATION), \ |
| 434 | __SMU_DUMMY_MAP(DPM_VCLK), \ |
| 435 | __SMU_DUMMY_MAP(DPM_DCLK), \ |
| 436 | __SMU_DUMMY_MAP(FW_DATA_READ), \ |
| 437 | __SMU_DUMMY_MAP(DPM_GFX_POWER_OPTIMIZER), \ |
| 438 | __SMU_DUMMY_MAP(DPM_DCN), \ |
| 439 | __SMU_DUMMY_MAP(VMEMP_SCALING), \ |
| 440 | __SMU_DUMMY_MAP(VDDIO_MEM_SCALING), \ |
| 441 | __SMU_DUMMY_MAP(MM_DPM), \ |
| 442 | __SMU_DUMMY_MAP(SOC_MPCLK_DS), \ |
| 443 | __SMU_DUMMY_MAP(BACO_MPCLK_DS), \ |
| 444 | __SMU_DUMMY_MAP(THROTTLERS), \ |
| 445 | __SMU_DUMMY_MAP(SMARTSHIFT), \ |
| 446 | __SMU_DUMMY_MAP(GFX_READ_MARGIN), \ |
| 447 | __SMU_DUMMY_MAP(GFX_IMU), \ |
| 448 | __SMU_DUMMY_MAP(GFX_PCC_DFLL), \ |
| 449 | __SMU_DUMMY_MAP(BOOT_TIME_CAL), \ |
| 450 | __SMU_DUMMY_MAP(BOOT_POWER_OPT), \ |
| 451 | __SMU_DUMMY_MAP(GFXCLK_SPREAD_SPECTRUM), \ |
| 452 | __SMU_DUMMY_MAP(SOC_PCC), \ |
| 453 | __SMU_DUMMY_MAP(OPTIMIZED_VMIN), \ |
| 454 | __SMU_DUMMY_MAP(CLOCK_POWER_DOWN_BYPASS), \ |
| 455 | __SMU_DUMMY_MAP(MEM_TEMP_READ), \ |
| 456 | __SMU_DUMMY_MAP(ATHUB_MMHUB_PG), \ |
| 457 | __SMU_DUMMY_MAP(BACO_CG), \ |
| 458 | __SMU_DUMMY_MAP(SOC_CG), \ |
| 459 | __SMU_DUMMY_MAP(LOW_POWER_DCNCLKS), \ |
| 460 | __SMU_DUMMY_MAP(WHISPER_MODE), \ |
| 461 | __SMU_DUMMY_MAP(EDC_PWRBRK), \ |
| 462 | __SMU_DUMMY_MAP(SOC_EDC_XVMIN), \ |
| 463 | __SMU_DUMMY_MAP(GFX_PSM_DIDT), \ |
| 464 | __SMU_DUMMY_MAP(APT_ALL_ENABLE), \ |
| 465 | __SMU_DUMMY_MAP(APT_SQ_THROTTLE), \ |
| 466 | __SMU_DUMMY_MAP(APT_PF_DCS), \ |
| 467 | __SMU_DUMMY_MAP(GFX_EDC_XVMIN), \ |
| 468 | __SMU_DUMMY_MAP(GFX_DIDT_XVMIN), \ |
| 469 | __SMU_DUMMY_MAP(FAN_ABNORMAL), \ |
| 470 | __SMU_DUMMY_MAP(PIT), \ |
| 471 | __SMU_DUMMY_MAP(HROM_EN), |
| 472 | |
| 473 | #undef __SMU_DUMMY_MAP |
| 474 | #define __SMU_DUMMY_MAP(feature) SMU_FEATURE_##feature##_BIT |
| 475 | enum smu_feature_mask { |
| 476 | SMU_FEATURE_MASKS |
| 477 | SMU_FEATURE_COUNT, |
| 478 | }; |
| 479 | |
| 480 | /* Message category flags */ |
| 481 | #define SMU_MSG_VF_FLAG (1U << 0) |
| 482 | #define SMU_MSG_RAS_PRI (1U << 1) |
| 483 | #define SMU_MSG_NO_PRECHECK (1U << 2) |
| 484 | |
| 485 | /* Firmware capability flags */ |
| 486 | #define SMU_FW_CAP_RAS_PRI (1U << 0) |
| 487 | |
| 488 | #endif |
| 489 | |