diff options
Diffstat (limited to 'src/occ_405/amec/amec_sys.h')
-rwxr-xr-x | src/occ_405/amec/amec_sys.h | 27 |
1 files changed, 23 insertions, 4 deletions
diff --git a/src/occ_405/amec/amec_sys.h b/src/occ_405/amec/amec_sys.h index c19cd53..f17b42b 100755 --- a/src/occ_405/amec/amec_sys.h +++ b/src/occ_405/amec/amec_sys.h @@ -146,6 +146,7 @@ typedef struct amec_cent_mem_speed_t last_mem_speed_sent; } amec_portpair_t; +// bit masks for fru_temp_t flags #define FRU_SENSOR_STATUS_STALLED 0x01 #define FRU_SENSOR_STATUS_ERROR 0x02 #define FRU_SENSOR_STATUS_VALID_OLD 0x04 @@ -154,6 +155,12 @@ typedef struct #define FRU_TEMP_FAST_CHANGE 0x20 #define FRU_SENSOR_CENT_NEST_FIR6 0x40 //centaur only +// OpenCAPI memory only bit masks for fru_temp_t dts_type_mask +#define OCM_DTS_TYPE_DIMM_MASK 0x01 +#define OCM_DTS_TYPE_MEMCTRL_DRAM_MASK 0x02 +#define OCM_DTS_TYPE_PMIC_MASK 0x04 +#define OCM_DTS_TYPE_MEMCTRL_EXT_MASK 0x08 + typedef struct { uint8_t cur_temp; @@ -161,6 +168,10 @@ typedef struct uint8_t flags; // Sensor ID for reporting temperature to BMC and FSP uint32_t temp_sid; + // Indicates what eConfigDataFruType this temperature is for + uint8_t temp_fru_type; + // Indicates what this temperature is for + uint8_t dts_type_mask; }fru_temp_t; typedef struct @@ -191,7 +202,6 @@ typedef struct // Sensor ID for reporting temperature to BMC and FSP uint32_t temp_sid; - } amec_centaur_t; typedef struct @@ -469,8 +479,11 @@ typedef struct vectorSensor_t util_vector; // Memory Summary Sensors - sensor_t tempcent; - sensor_t tempdimmthrm; + sensor_t tempcent; // hottest of all DATA_FRU_CENTAUR monitored by this OCC + sensor_t tempdimmthrm; // hottest of all DATA_FRU_DIMM monitored by this OCC + sensor_t tempmcdimmthrm; // hottest of all DATA_FRU_MEMCTRL_DRAM monitored by this OCC + sensor_t temppmicthrm; // hottest of all DATA_FRU_PMIC monitored by this OCC + sensor_t tempmcextthrm; // hottest of all DATA_FRU_MEMCTRL_EXT monitored by this OCC sensor_t mempwrthrot; sensor_t memotthrot; @@ -628,10 +641,16 @@ typedef struct //--------------------------------------------------------- // Thermal Controller based on processor temperatures amec_controller_t thermalproc; - // Thermal Controller based on Centaur temperatures + // Thermal Controller based on Centaur (internal mc) temperatures amec_controller_t thermalcent; // Thermal Controller based on DIMM temperatures amec_controller_t thermaldimm; + // Thermal Controller based on temperature sensors covering both Memctrl+DIMM + amec_controller_t thermalmcdimm; + // Thermal Controller based on PMIC temperatures + amec_controller_t thermalpmic; + // Thermal Controller based on external mem controller temperatures + amec_controller_t thermalmcext; // Thermal Controller based on VRM Vdd temperatures amec_controller_t thermalvdd; |