root/drivers/gpu/drm/amd/powerplay/inc/vega20_ppsmc.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


   1 /*
   2  * Copyright 2018 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 
  24 #ifndef VEGA20_PP_SMC_H
  25 #define VEGA20_PP_SMC_H
  26 
  27 #pragma pack(push, 1)
  28 
  29 // SMU Response Codes:
  30 #define PPSMC_Result_OK                    0x1
  31 #define PPSMC_Result_Failed                0xFF
  32 #define PPSMC_Result_UnknownCmd            0xFE
  33 #define PPSMC_Result_CmdRejectedPrereq     0xFD
  34 #define PPSMC_Result_CmdRejectedBusy       0xFC
  35 
  36 // Message Definitions:
  37 #define PPSMC_MSG_TestMessage                    0x1
  38 #define PPSMC_MSG_GetSmuVersion                  0x2
  39 #define PPSMC_MSG_GetDriverIfVersion             0x3
  40 #define PPSMC_MSG_SetAllowedFeaturesMaskLow      0x4
  41 #define PPSMC_MSG_SetAllowedFeaturesMaskHigh     0x5
  42 #define PPSMC_MSG_EnableAllSmuFeatures           0x6
  43 #define PPSMC_MSG_DisableAllSmuFeatures          0x7
  44 #define PPSMC_MSG_EnableSmuFeaturesLow           0x8
  45 #define PPSMC_MSG_EnableSmuFeaturesHigh          0x9
  46 #define PPSMC_MSG_DisableSmuFeaturesLow          0xA
  47 #define PPSMC_MSG_DisableSmuFeaturesHigh         0xB
  48 #define PPSMC_MSG_GetEnabledSmuFeaturesLow       0xC
  49 #define PPSMC_MSG_GetEnabledSmuFeaturesHigh      0xD
  50 #define PPSMC_MSG_SetWorkloadMask                0xE
  51 #define PPSMC_MSG_SetPptLimit                    0xF
  52 #define PPSMC_MSG_SetDriverDramAddrHigh          0x10
  53 #define PPSMC_MSG_SetDriverDramAddrLow           0x11
  54 #define PPSMC_MSG_SetToolsDramAddrHigh           0x12
  55 #define PPSMC_MSG_SetToolsDramAddrLow            0x13
  56 #define PPSMC_MSG_TransferTableSmu2Dram          0x14
  57 #define PPSMC_MSG_TransferTableDram2Smu          0x15
  58 #define PPSMC_MSG_UseDefaultPPTable              0x16
  59 #define PPSMC_MSG_UseBackupPPTable               0x17
  60 #define PPSMC_MSG_RunBtc                         0x18
  61 #define PPSMC_MSG_RequestI2CBus                  0x19
  62 #define PPSMC_MSG_ReleaseI2CBus                  0x1A
  63 #define PPSMC_MSG_SetFloorSocVoltage             0x21
  64 #define PPSMC_MSG_SoftReset                      0x22
  65 #define PPSMC_MSG_StartBacoMonitor               0x23
  66 #define PPSMC_MSG_CancelBacoMonitor              0x24
  67 #define PPSMC_MSG_EnterBaco                      0x25
  68 #define PPSMC_MSG_SetSoftMinByFreq               0x26
  69 #define PPSMC_MSG_SetSoftMaxByFreq               0x27
  70 #define PPSMC_MSG_SetHardMinByFreq               0x28
  71 #define PPSMC_MSG_SetHardMaxByFreq               0x29
  72 #define PPSMC_MSG_GetMinDpmFreq                  0x2A
  73 #define PPSMC_MSG_GetMaxDpmFreq                  0x2B
  74 #define PPSMC_MSG_GetDpmFreqByIndex              0x2C
  75 #define PPSMC_MSG_GetDpmClockFreq                0x2D
  76 #define PPSMC_MSG_GetSsVoltageByDpm              0x2E
  77 #define PPSMC_MSG_SetMemoryChannelConfig         0x2F
  78 #define PPSMC_MSG_SetGeminiMode                  0x30
  79 #define PPSMC_MSG_SetGeminiApertureHigh          0x31
  80 #define PPSMC_MSG_SetGeminiApertureLow           0x32
  81 #define PPSMC_MSG_SetMinLinkDpmByIndex           0x33
  82 #define PPSMC_MSG_OverridePcieParameters         0x34
  83 #define PPSMC_MSG_OverDriveSetPercentage         0x35
  84 #define PPSMC_MSG_SetMinDeepSleepDcefclk         0x36
  85 #define PPSMC_MSG_ReenableAcDcInterrupt          0x37
  86 #define PPSMC_MSG_NotifyPowerSource              0x38
  87 #define PPSMC_MSG_SetUclkFastSwitch              0x39
  88 #define PPSMC_MSG_SetUclkDownHyst                0x3A
  89 //#define PPSMC_MSG_GfxDeviceDriverReset           0x3B
  90 #define PPSMC_MSG_GetCurrentRpm                  0x3C
  91 #define PPSMC_MSG_SetVideoFps                    0x3D
  92 #define PPSMC_MSG_SetTjMax                       0x3E
  93 #define PPSMC_MSG_SetFanTemperatureTarget        0x3F
  94 #define PPSMC_MSG_PrepareMp1ForUnload            0x40
  95 #define PPSMC_MSG_DramLogSetDramAddrHigh         0x41
  96 #define PPSMC_MSG_DramLogSetDramAddrLow          0x42
  97 #define PPSMC_MSG_DramLogSetDramSize             0x43
  98 #define PPSMC_MSG_SetFanMaxRpm                   0x44
  99 #define PPSMC_MSG_SetFanMinPwm                   0x45
 100 #define PPSMC_MSG_ConfigureGfxDidt               0x46
 101 #define PPSMC_MSG_NumOfDisplays                  0x47
 102 #define PPSMC_MSG_RemoveMargins                  0x48
 103 #define PPSMC_MSG_ReadSerialNumTop32             0x49
 104 #define PPSMC_MSG_ReadSerialNumBottom32          0x4A
 105 #define PPSMC_MSG_SetSystemVirtualDramAddrHigh   0x4B
 106 #define PPSMC_MSG_SetSystemVirtualDramAddrLow    0x4C
 107 #define PPSMC_MSG_WaflTest                       0x4D
 108 #define PPSMC_MSG_SetFclkGfxClkRatio             0x4E
 109 // Unused ID 0x4F to 0x50
 110 #define PPSMC_MSG_AllowGfxOff                    0x51
 111 #define PPSMC_MSG_DisallowGfxOff                 0x52
 112 #define PPSMC_MSG_GetPptLimit                    0x53
 113 #define PPSMC_MSG_GetDcModeMaxDpmFreq            0x54
 114 #define PPSMC_MSG_GetDebugData                   0x55
 115 #define PPSMC_MSG_SetXgmiMode                    0x56
 116 #define PPSMC_MSG_RunAfllBtc                     0x57
 117 #define PPSMC_MSG_ExitBaco                       0x58
 118 #define PPSMC_MSG_PrepareMp1ForReset             0x59
 119 #define PPSMC_MSG_PrepareMp1ForShutdown          0x5A
 120 #define PPSMC_MSG_SetMGpuFanBoostLimitRpm        0x5D
 121 #define PPSMC_MSG_GetAVFSVoltageByDpm            0x5F
 122 #define PPSMC_MSG_BacoWorkAroundFlushVDCI        0x60
 123 #define PPSMC_Message_Count                      0x61
 124 
 125 typedef uint32_t PPSMC_Result;
 126 typedef uint32_t PPSMC_Msg;
 127 
 128 #pragma pack(pop)
 129 
 130 #endif

/* [<][>][^][v][top][bottom][index][help] */