17#ifndef PLAT_PLDM_SENSOR_H
18#define PLAT_PLDM_SENSOR_H
22#define ADDR_UNKNOWN (0xFF >> 1)
25#define UBC1_ADDR (0x28 >> 1)
26#define UBC1_2ND_ADDR (0x3E >> 1)
27#define UBC2_ADDR (0x34 >> 1)
29#define TOP_INLET_TEMP_ADDR (0x92 >> 1)
30#define TOP_OUTLET_TEMP_ADDR (0x9E >> 1)
31#define BOT_INLET_TEMP_ADDR (0x94 >> 1)
32#define BOT_OUTLET_TEMP_ADDR (0X96 >> 1)
34#define ASIC_DIE_ATH_SENSOR_0_TEMP_TMP432_ADDR (0X98 >> 1)
35#define ASIC_DIE_ATH_SENSOR_1_TEMP_TMP432_ADDR (0X9A >> 1)
36#define ASIC_DIE_N_OWL_TEMP_TMP432_ADDR (0X98 >> 1)
37#define ASIC_DIE_S_OWL_TEMP_TMP432_ADDR (0X9A >> 1)
39#define ASIC_DIE_ATH_SENSOR_0_TEMP_EMC1413_ADDR (0XB8 >> 1)
40#define ASIC_DIE_ATH_SENSOR_1_TEMP_EMC1413_ADDR (0X38 >> 1)
41#define ASIC_DIE_N_OWL_TEMP_EMC1413_ADDR (0XB8 >> 1)
42#define ASIC_DIE_S_OWL_TEMP_EMC1413_ADDR (0X38 >> 1)
44#define VR_P3V3_MP2971_ADDR (0xF6 >> 1)
45#define VR_P3V3_MP2971_FAB3_ADDR (0xD6 >> 1)
46#define VR_P3V3_ISL69260_ADDR (0xC0 >> 1)
48#define VR_ASIC_P0V85_PVDD_MP2891_ADDR (0x4C >> 1)
49#define VR_ASIC_P0V85_PVDD_RAA228238_ADDR (0xE4 >> 1)
51#define VR_ASIC_P0V75_PVDD_CH_N_MP2971_ADDR (0xE0 >> 1)
52#define VR_ASIC_P0V75_PVDD_CH_N_ISL69260_ADDR (0xC0 >> 1)
54#define VR_ASIC_P0V75_MAX_PHY_N_MP2971_ADDR (0xE0 >> 1)
55#define VR_ASIC_P0V75_MAX_PHY_N_ISL69260_ADDR (0xC0 >> 1)
57#define VR_ASIC_P0V75_PVDD_CH_S_MP2971_ADDR (0xE2 >> 1)
58#define VR_ASIC_P0V75_PVDD_CH_S_ISL69260_ADDR (0xC2 >> 1)
60#define VR_ASIC_P0V75_MAX_PHY_S_MP2971_ADDR (0xE2 >> 1)
61#define VR_ASIC_P0V75_MAX_PHY_S_ISL69260_ADDR (0xC2 >> 1)
63#define VR_ASIC_P0V75_TRVDD_ZONEA_MP2971_ADDR (0xE6 >> 1)
64#define VR_ASIC_P0V75_TRVDD_ZONEA_ISL69260_ADDR (0xC4 >> 1)
66#define VR_ASIC_P1V8_VPP_HBM0_HBM2_HBM4_MP2971_ADDR (0xE6 >> 1)
67#define VR_ASIC_P1V8_VPP_HBM0_HBM2_HBM4_ISL69260_ADDR (0xC4 >> 1)
69#define VR_ASIC_P0V75_TRVDD_ZONEB_MP2971_ADDR (0xEC >> 1)
70#define VR_ASIC_P0V75_TRVDD_ZONEB_ISL69260_ADDR (0xC6 >> 1)
72#define VR_ASIC_P0V4_VDDQL_HBM0_HBM2_HBM4_MP2971_ADDR (0xEC >> 1)
73#define VR_ASIC_P0V4_VDDQL_HBM0_HBM2_HBM4_ISL69260_ADDR (0xC6 >> 1)
75#define VR_ASIC_P1V1_VDDC_HBM0_HBM2_HBM4_MP2971_ADDR (0xEA >> 1)
76#define VR_ASIC_P1V1_VDDC_HBM0_HBM2_HBM4_ISL69260_ADDR (0xE8 >> 1)
78#define VR_ASIC_P0V75_VDDPHY_HBM0_HBM2_HBM4_MP2971_ADDR (0xEA >> 1)
79#define VR_ASIC_P0V75_VDDPHY_HBM0_HBM2_HBM4_ISL69260_ADDR (0xE8 >> 1)
81#define VR_ASIC_P0V9_TRVDD_ZONEA_MP2971_ADDR (0xE4 >> 1)
82#define VR_ASIC_P0V9_TRVDD_ZONEA_ISL69260_ADDR (0xC0 >> 1)
84#define VR_ASIC_P1V8_VPP_HBM1_HBM3_HBM5_MP2971_ADDR (0xE4 >> 1)
85#define VR_ASIC_P1V8_VPP_HBM1_HBM3_HBM5_ISL69260_ADDR (0xC0 >> 1)
87#define VR_ASIC_P0V9_TRVDD_ZONEB_MP2971_ADDR (0xE8 >> 1)
88#define VR_ASIC_P0V9_TRVDD_ZONEB_ISL69260_ADDR (0xC2 >> 1)
90#define VR_ASIC_P0V4_VDDQL_HBM1_HBM3_HBM5_MP2971_ADDR (0xE8 >> 1)
91#define VR_ASIC_P0V4_VDDQL_HBM1_HBM3_HBM5_ISL69260_ADDR (0xC2 >> 1)
93#define VR_ASIC_P1V1_VDDC_HBM1_HBM3_HBM5_MP2971_ADDR (0xEE >> 1)
94#define VR_ASIC_P1V1_VDDC_HBM1_HBM3_HBM5_ISL69260_ADDR (0xC4 >> 1)
96#define VR_ASIC_P0V75_VDDPHY_HBM1_HBM3_HBM5_MP2971_ADDR (0xEE >> 1)
97#define VR_ASIC_P0V75_VDDPHY_HBM1_HBM3_HBM5_ISL69260_ADDR (0xC4 >> 1)
99#define VR_ASIC_P0V8_VDDA_PCIE_MP2971_ADDR (0xF2 >> 1)
100#define VR_ASIC_P0V8_VDDA_PCIE_MP2971_FAB3_ADDR (0xD2 >> 1)
101#define VR_ASIC_P0V8_VDDA_PCIE_ISL69260_ADDR (0xC6 >> 1)
103#define VR_ASIC_P1V2_VDDHTX_PCIE_MP2971_ADDR (0xF2 >> 1)
104#define VR_ASIC_P1V2_VDDHTX_PCIE_MP2971_FAB3_ADDR (0xD2 >> 1)
105#define VR_ASIC_P1V2_VDDHTX_PCIE_ISL69260_ADDR (0xC6 >> 1)
108#define UBC1_P12V_TEMP_C 0x01
109#define UBC1_P50V_INPUT_VOLT_V 0x02
110#define UBC1_P12V_OUTPUT_VOLT_V 0x03
111#define UBC1_P12V_CURR_A 0x04
112#define UBC1_P12V_PWR_W 0x05
114#define UBC2_P12V_TEMP_C 0x06
115#define UBC2_P50V_INPUT_VOLT_V 0x07
116#define UBC2_P12V_OUTPUT_VOLT_V 0x08
117#define UBC2_P12V_CURR_A 0x09
118#define UBC2_P12V_PWR_W 0x0A
120#define TOP_INLET_TEMP_C 0x0B
121#define TOP_OUTLET_TEMP_C 0x0C
122#define BOT_INLET_TEMP_C 0x0D
123#define BOT_OUTLET_TEMP_C 0x0E
124#define ASIC_DIE_ATH_SENSOR_0_TEMP_C 0x0F
125#define ASIC_DIE_ATH_SENSOR_1_TEMP_C 0x10
126#define ASIC_DIE_N_OWL_TEMP_C 0x11
127#define ASIC_DIE_S_OWL_TEMP_C 0x12
129#define VR_P3V3_TEMP_C 0x13
130#define VR_P3V3_VOLT_V 0x14
131#define VR_P3V3_CURR_A 0x15
132#define VR_P3V3_PWR_W 0x16
134#define VR_ASIC_P0V85_PVDD_TEMP_C 0x17
135#define VR_ASIC_P0V85_PVDD_VOLT_V 0x18
136#define VR_ASIC_P0V85_PVDD_CURR_A 0x19
137#define VR_ASIC_P0V85_PVDD_PWR_W 0x1A
139#define VR_ASIC_P0V75_PVDD_CH_N_TEMP_C 0x1B
140#define VR_ASIC_P0V75_PVDD_CH_N_VOLT_V 0x1C
141#define VR_ASIC_P0V75_PVDD_CH_N_CURR_A 0x1D
142#define VR_ASIC_P0V75_PVDD_CH_N_PWR_W 0x1E
143#define VR_ASIC_P0V75_MAX_PHY_N_TEMP_C 0x1F
144#define VR_ASIC_P0V75_MAX_PHY_N_VOLT_V 0x20
145#define VR_ASIC_P0V75_MAX_PHY_N_CURR_A 0x21
146#define VR_ASIC_P0V75_MAX_PHY_N_PWR_W 0x22
148#define VR_ASIC_P0V75_PVDD_CH_S_TEMP_C 0x23
149#define VR_ASIC_P0V75_PVDD_CH_S_VOLT_V 0x24
150#define VR_ASIC_P0V75_PVDD_CH_S_CURR_A 0x25
151#define VR_ASIC_P0V75_PVDD_CH_S_PWR_W 0x26
152#define VR_ASIC_P0V75_MAX_PHY_S_TEMP_C 0x27
153#define VR_ASIC_P0V75_MAX_PHY_S_VOLT_V 0x28
154#define VR_ASIC_P0V75_MAX_PHY_S_CURR_A 0x29
155#define VR_ASIC_P0V75_MAX_PHY_S_PWR_W 0x2A
157#define VR_ASIC_P0V75_TRVDD_ZONEA_TEMP_C 0x2B
158#define VR_ASIC_P0V75_TRVDD_ZONEA_VOLT_V 0x2C
159#define VR_ASIC_P0V75_TRVDD_ZONEA_CURR_A 0x2D
160#define VR_ASIC_P0V75_TRVDD_ZONEA_PWR_W 0x2E
161#define VR_ASIC_P1V8_VPP_HBM0_HBM2_HBM4_TEMP_C 0x2F
162#define VR_ASIC_P1V8_VPP_HBM0_HBM2_HBM4_VOLT_V 0x30
163#define VR_ASIC_P1V8_VPP_HBM0_HBM2_HBM4_CURR_A 0x31
164#define VR_ASIC_P1V8_VPP_HBM0_HBM2_HBM4_PWR_W 0x32
166#define VR_ASIC_P0V75_TRVDD_ZONEB_TEMP_C 0x33
167#define VR_ASIC_P0V75_TRVDD_ZONEB_VOLT_V 0x34
168#define VR_ASIC_P0V75_TRVDD_ZONEB_CURR_A 0x35
169#define VR_ASIC_P0V75_TRVDD_ZONEB_PWR_W 0x36
170#define VR_ASIC_P0V4_VDDQL_HBM0_HBM2_HBM4_TEMP_C 0x37
171#define VR_ASIC_P0V4_VDDQL_HBM0_HBM2_HBM4_VOLT_V 0x38
172#define VR_ASIC_P0V4_VDDQL_HBM0_HBM2_HBM4_CURR_A 0x39
173#define VR_ASIC_P0V4_VDDQL_HBM0_HBM2_HBM4_PWR_W 0x3A
175#define VR_ASIC_P1V1_VDDC_HBM0_HBM2_HBM4_TEMP_C 0x3B
176#define VR_ASIC_P1V1_VDDC_HBM0_HBM2_HBM4_VOLT_V 0x3C
177#define VR_ASIC_P1V1_VDDC_HBM0_HBM2_HBM4_CURR_A 0x3D
178#define VR_ASIC_P1V1_VDDC_HBM0_HBM2_HBM4_PWR_W 0x3E
179#define VR_ASIC_P0V75_VDDPHY_HBM0_HBM2_HBM4_TEMP_C 0x3F
180#define VR_ASIC_P0V75_VDDPHY_HBM0_HBM2_HBM4_VOLT_V 0x40
181#define VR_ASIC_P0V75_VDDPHY_HBM0_HBM2_HBM4_CURR_A 0x41
182#define VR_ASIC_P0V75_VDDPHY_HBM0_HBM2_HBM4_PWR_W 0x42
184#define VR_ASIC_P0V9_TRVDD_ZONEA_TEMP_C 0x43
185#define VR_ASIC_P0V9_TRVDD_ZONEA_VOLT_V 0x44
186#define VR_ASIC_P0V9_TRVDD_ZONEA_CURR_A 0x45
187#define VR_ASIC_P0V9_TRVDD_ZONEA_PWR_W 0x46
188#define VR_ASIC_P1V8_VPP_HBM1_HBM3_HBM5_TEMP_C 0x47
189#define VR_ASIC_P1V8_VPP_HBM1_HBM3_HBM5_VOLT_V 0x48
190#define VR_ASIC_P1V8_VPP_HBM1_HBM3_HBM5_CURR_A 0x49
191#define VR_ASIC_P1V8_VPP_HBM1_HBM3_HBM5_PWR_W 0x4A
193#define VR_ASIC_P0V9_TRVDD_ZONEB_TEMP_C 0x4B
194#define VR_ASIC_P0V9_TRVDD_ZONEB_VOLT_V 0x4C
195#define VR_ASIC_P0V9_TRVDD_ZONEB_CURR_A 0x4D
196#define VR_ASIC_P0V9_TRVDD_ZONEB_PWR_W 0x4E
197#define VR_ASIC_P0V4_VDDQL_HBM1_HBM3_HBM5_TEMP_C 0x4F
198#define VR_ASIC_P0V4_VDDQL_HBM1_HBM3_HBM5_VOLT_V 0x50
199#define VR_ASIC_P0V4_VDDQL_HBM1_HBM3_HBM5_CURR_A 0x51
200#define VR_ASIC_P0V4_VDDQL_HBM1_HBM3_HBM5_PWR_W 0x52
202#define VR_ASIC_P1V1_VDDC_HBM1_HBM3_HBM5_TEMP_C 0x53
203#define VR_ASIC_P1V1_VDDC_HBM1_HBM3_HBM5_VOLT_V 0x54
204#define VR_ASIC_P1V1_VDDC_HBM1_HBM3_HBM5_CURR_A 0x55
205#define VR_ASIC_P1V1_VDDC_HBM1_HBM3_HBM5_PWR_W 0x56
206#define VR_ASIC_P0V75_VDDPHY_HBM1_HBM3_HBM5_TEMP_C 0x57
207#define VR_ASIC_P0V75_VDDPHY_HBM1_HBM3_HBM5_VOLT_V 0x58
208#define VR_ASIC_P0V75_VDDPHY_HBM1_HBM3_HBM5_CURR_A 0x59
209#define VR_ASIC_P0V75_VDDPHY_HBM1_HBM3_HBM5_PWR_W 0x5A
211#define VR_ASIC_P0V8_VDDA_PCIE_TEMP_C 0x5B
212#define VR_ASIC_P0V8_VDDA_PCIE_VOLT_V 0x5C
213#define VR_ASIC_P0V8_VDDA_PCIE_CURR_A 0x5D
214#define VR_ASIC_P0V8_VDDA_PCIE_PWR_W 0x5E
215#define VR_ASIC_P1V2_VDDHTX_PCIE_TEMP_C 0x5F
216#define VR_ASIC_P1V2_VDDHTX_PCIE_VOLT_V 0x60
217#define VR_ASIC_P1V2_VDDHTX_PCIE_CURR_A 0x61
218#define VR_ASIC_P1V2_VDDHTX_PCIE_PWR_W 0x62
220#define PLAT_SENSOR_NUM_MAX 0x63
222#define TMP75_TEMP_OFFSET 0x00
223#define UPDATE_INTERVAL_1S 1
224#define UPDATE_INTERVAL_5S 5
225#define UPDATE_INTERVAL_60S 60
227#define ATH_VDD_INTERVAL_MS 10
265 uint8_t *sensor_dev);
uint_least16_t char16_t
Definition: libutil.h:86
PDR_numeric_sensor * numeric_sensor_table
Definition: pdr.c:32
PDR_numeric_sensor
Definition: pdr.h:134
uint16_t sensor_id
Definition: pldm_monitor.h:0
uint8_t sensor_num
Definition: storage_handler.h:6