#define ATOM_TONGA_PP_THERMALCONTROLLER_ADT7473_WITH_INTERNAL 0x89 /* ADT7473 Fan Control + Internal Thermal Controller */
#define ATOM_TONGA_PP_THERMALCONTROLLER_EMC2103_WITH_INTERNAL 0x8D /* EMC2103 Fan Control + Internal Thermal Controller */
/*/* ATOM_TONGA_POWERPLAYTABLE::ulPlatformCaps */
#define ATOM_TONGA_PP_PLATFORM_CAP_VDDGFX_CONTROL 0x1 /* This cap indicates whether vddgfx will be a separated power rail. */
#define ATOM_TONGA_PP_PLATFORM_CAP_POWERPLAY 0x2 /* This cap indicates whether this is a mobile part and CCC need to show Powerplay page. */
#define ATOM_TONGA_PP_PLATFORM_CAP_SBIOSPOWERSOURCE 0x4 /* This cap indicates whether power source notificaiton is done by SBIOS directly. */
#define ATOM_TONGA_PP_PLATFORM_CAP_DISABLE_VOLTAGE_ISLAND 0x8 /* Enable the option to overwrite voltage island feature to be disabled, regardless of VddGfx power rail support. */
#define ____RETIRE16____ 0x10
#define ATOM_TONGA_PP_PLATFORM_CAP_HARDWAREDC 0x20 /* This cap indicates whether power source notificaiton is done by GPIO directly. */
#define ____RETIRE64____ 0x40
#define ____RETIRE128____ 0x80
#define ____RETIRE256____ 0x100
#define ____RETIRE512____ 0x200
#define ____RETIRE1024____ 0x400
#define ____RETIRE2048____ 0x800
#define ATOM_TONGA_PP_PLATFORM_CAP_MVDD_CONTROL 0x1000 /* This cap indicates dynamic MVDD is required. Uncheck to disable it. */
#define ____RETIRE2000____ 0x2000
#define ____RETIRE4000____ 0x4000
#define ATOM_TONGA_PP_PLATFORM_CAP_VDDCI_CONTROL 0x8000 /* This cap indicates dynamic VDDCI is required. Uncheck to disable it. */
#define ____RETIRE10000____ 0x10000
#define ATOM_TONGA_PP_PLATFORM_CAP_BACO 0x20000 /* Enable to indicate the driver supports BACO state. */
#define ATOM_TONGA_PP_PLATFORM_CAP_OUTPUT_THERMAL2GPIO17 0x100000 /* Enable to indicate the driver supports thermal2GPIO17. */
#define ATOM_TONGA_PP_PLATFORM_COMBINE_PCC_WITH_THERMAL_SIGNAL 0x1000000 /* Enable to indicate if thermal and PCC are sharing the same GPIO */
UCHARucRevId;/* Change this if the table format changes or version changes so that the other fields are not the same. */
UCHARucTHyst;/* Temperature hysteresis. Integer. */
USHORTusTMin;/* The temperature, in 0.01 centigrades, below which we just run at a minimal PWM. */
USHORTusTMed;/* The middle temperature where we change slopes. */
USHORTusTHigh;/* The high point above TMed for adjusting the second slope. */
USHORTusPWMMin;/* The minimum PWM value in percent (0.01% increments). */
USHORTusPWMMed;/* The PWM value (in percent) at TMed. */
USHORTusPWMHigh;/* The PWM value at THigh. */
USHORTusTMax;/* The max temperature */
UCHARucFanControlMode;/* Legacy or Fuzzy Fan mode */
USHORTusFanPWMMax;/* Maximum allowed fan power in percent */
USHORTusFanOutputSensitivity;/* Sensitivity of fan reaction to temepature changes */
USHORTusFanRPMMax;/* The default value in RPM */
ULONGulMinFanSCLKAcousticLimit;/* Minimum Fan Controller SCLK Frequency Acoustic Limit. */
UCHARucTargetTemperature;/* Advanced fan controller target temperature. */
UCHARucMinimumPWMLimit;/* The minimum PWM that the advanced fan controller can set. This should be set to the highest PWM that will run the fan at its lowest RPM. */
USHORTusReserved;
}ATOM_Tonga_Fan_Table;
typedefstruct_ATOM_Fiji_Fan_Table{
UCHARucRevId;/* Change this if the table format changes or version changes so that the other fields are not the same. */
UCHARucTHyst;/* Temperature hysteresis. Integer. */
USHORTusTMin;/* The temperature, in 0.01 centigrades, below which we just run at a minimal PWM. */
USHORTusTMed;/* The middle temperature where we change slopes. */
USHORTusTHigh;/* The high point above TMed for adjusting the second slope. */
USHORTusPWMMin;/* The minimum PWM value in percent (0.01% increments). */
USHORTusPWMMed;/* The PWM value (in percent) at TMed. */
USHORTusPWMHigh;/* The PWM value at THigh. */
USHORTusTMax;/* The max temperature */
UCHARucFanControlMode;/* Legacy or Fuzzy Fan mode */
USHORTusFanPWMMax;/* Maximum allowed fan power in percent */
USHORTusFanOutputSensitivity;/* Sensitivity of fan reaction to temepature changes */
USHORTusFanRPMMax;/* The default value in RPM */
ULONGulMinFanSCLKAcousticLimit;/* Minimum Fan Controller SCLK Frequency Acoustic Limit. */
UCHARucTargetTemperature;/* Advanced fan controller target temperature. */
UCHARucMinimumPWMLimit;/* The minimum PWM that the advanced fan controller can set. This should be set to the highest PWM that will run the fan at its lowest RPM. */
USHORTusFanGainEdge;
USHORTusFanGainHotspot;
USHORTusFanGainLiquid;
USHORTusFanGainVrVddc;
USHORTusFanGainVrMvdd;
USHORTusFanGainPlx;
USHORTusFanGainHbm;
USHORTusReserved;
}ATOM_Fiji_Fan_Table;
typedefstruct_ATOM_Tonga_Thermal_Controller{
UCHARucRevId;
UCHARucType;/* one of ATOM_TONGA_PP_THERMALCONTROLLER_* */
UCHARucI2cLine;/* as interpreted by DAL I2C */
UCHARucI2cAddress;
UCHARucFanParameters;/* Fan Control Parameters. */
UCHARucFanMinRPM;/* Fan Minimum RPM (hundreds) -- for display purposes only. */
UCHARucFanMaxRPM;/* Fan Maximum RPM (hundreds) -- for display purposes only. */
UCHARucReserved;
UCHARucFlags;/* to be defined */
}ATOM_Tonga_Thermal_Controller;
typedefstruct_ATOM_Tonga_VCE_State_Record{
UCHARucVCEClockIndex;/*index into usVCEDependencyTableOffset of 'ATOM_Tonga_MM_Dependency_Table' type */