blob: 6b753d60756bbee298fa9c292fce086a410784b8 [file] [log] [blame]
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -05001# Romulus.py
2#
3
4SYSTEM_STATES = [
Patrick Williams20f38712022-12-08 06:18:26 -06005 "BASE_APPS",
6 "BMC_STARTING",
7 "BMC_READY",
8 "HOST_POWERING_ON",
9 "HOST_POWERED_ON",
10 "HOST_BOOTING",
11 "HOST_BOOTED",
12 "HOST_POWERED_OFF",
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -050013]
14
15EXIT_STATE_DEPEND = {
Patrick Williams20f38712022-12-08 06:18:26 -060016 "BASE_APPS": {
17 "/org/openbmc/sensors": 0,
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -050018 },
Patrick Williams20f38712022-12-08 06:18:26 -060019 "BMC_STARTING": {
20 "/org/openbmc/control/chassis0": 0,
21 "/org/openbmc/control/power0": 0,
22 "/org/openbmc/control/flash/bios": 0,
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -050023 },
24}
25
Patrick Williams20f38712022-12-08 06:18:26 -060026INVENTORY_ROOT = "/org/openbmc/inventory"
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -050027
28FRU_INSTANCES = {
Patrick Williams20f38712022-12-08 06:18:26 -060029 "<inventory_root>/system": {
30 "fru_type": "SYSTEM",
31 "is_fru": True,
32 "present": "True",
33 },
34 "<inventory_root>/system/bios": {
35 "fru_type": "SYSTEM",
36 "is_fru": True,
37 "present": "True",
38 },
39 "<inventory_root>/system/misc": {
40 "fru_type": "SYSTEM",
41 "is_fru": False,
42 },
43 "<inventory_root>/system/chassis": {
44 "fru_type": "SYSTEM",
45 "is_fru": True,
46 "present": "True",
47 },
48 "<inventory_root>/system/chassis/motherboard": {
49 "fru_type": "MAIN_PLANAR",
50 "is_fru": True,
51 },
52 "<inventory_root>/system/systemevent": {
53 "fru_type": "SYSTEM_EVENT",
54 "is_fru": False,
55 },
56 "<inventory_root>/system/chassis/motherboard/refclock": {
57 "fru_type": "MAIN_PLANAR",
58 "is_fru": False,
59 },
60 "<inventory_root>/system/chassis/motherboard/pcieclock": {
61 "fru_type": "MAIN_PLANAR",
62 "is_fru": False,
63 },
64 "<inventory_root>/system/chassis/motherboard/todclock": {
65 "fru_type": "MAIN_PLANAR",
66 "is_fru": False,
67 },
68 "<inventory_root>/system/chassis/motherboard/apss": {
69 "fru_type": "MAIN_PLANAR",
70 "is_fru": False,
71 },
72 "<inventory_root>/system/chassis/fan0": {
73 "fru_type": "FAN",
74 "is_fru": True,
75 },
76 "<inventory_root>/system/chassis/fan1": {
77 "fru_type": "FAN",
78 "is_fru": True,
79 },
80 "<inventory_root>/system/chassis/fan2": {
81 "fru_type": "FAN",
82 "is_fru": True,
83 },
84 "<inventory_root>/system/chassis/fan3": {
85 "fru_type": "FAN",
86 "is_fru": True,
87 },
88 "<inventory_root>/system/chassis/motherboard/bmc": {
89 "fru_type": "BMC",
90 "is_fru": False,
91 "manufacturer": "ASPEED",
92 },
93 "<inventory_root>/system/chassis/motherboard/cpu0": {
94 "fru_type": "CPU",
95 "is_fru": True,
96 },
97 "<inventory_root>/system/chassis/motherboard/cpu1": {
98 "fru_type": "CPU",
99 "is_fru": True,
100 },
101 "<inventory_root>/system/chassis/motherboard/cpu0/core0": {
102 "fru_type": "CORE",
103 "is_fru": False,
104 },
105 "<inventory_root>/system/chassis/motherboard/cpu0/core1": {
106 "fru_type": "CORE",
107 "is_fru": False,
108 },
109 "<inventory_root>/system/chassis/motherboard/cpu0/core2": {
110 "fru_type": "CORE",
111 "is_fru": False,
112 },
113 "<inventory_root>/system/chassis/motherboard/cpu0/core3": {
114 "fru_type": "CORE",
115 "is_fru": False,
116 },
117 "<inventory_root>/system/chassis/motherboard/cpu0/core4": {
118 "fru_type": "CORE",
119 "is_fru": False,
120 },
121 "<inventory_root>/system/chassis/motherboard/cpu0/core5": {
122 "fru_type": "CORE",
123 "is_fru": False,
124 },
125 "<inventory_root>/system/chassis/motherboard/cpu0/core6": {
126 "fru_type": "CORE",
127 "is_fru": False,
128 },
129 "<inventory_root>/system/chassis/motherboard/cpu0/core7": {
130 "fru_type": "CORE",
131 "is_fru": False,
132 },
133 "<inventory_root>/system/chassis/motherboard/cpu0/core8": {
134 "fru_type": "CORE",
135 "is_fru": False,
136 },
137 "<inventory_root>/system/chassis/motherboard/cpu0/core9": {
138 "fru_type": "CORE",
139 "is_fru": False,
140 },
141 "<inventory_root>/system/chassis/motherboard/cpu0/core10": {
142 "fru_type": "CORE",
143 "is_fru": False,
144 },
145 "<inventory_root>/system/chassis/motherboard/cpu0/core11": {
146 "fru_type": "CORE",
147 "is_fru": False,
148 },
149 "<inventory_root>/system/chassis/motherboard/cpu0/core12": {
150 "fru_type": "CORE",
151 "is_fru": False,
152 },
153 "<inventory_root>/system/chassis/motherboard/cpu0/core13": {
154 "fru_type": "CORE",
155 "is_fru": False,
156 },
157 "<inventory_root>/system/chassis/motherboard/cpu0/core14": {
158 "fru_type": "CORE",
159 "is_fru": False,
160 },
161 "<inventory_root>/system/chassis/motherboard/cpu0/core15": {
162 "fru_type": "CORE",
163 "is_fru": False,
164 },
165 "<inventory_root>/system/chassis/motherboard/cpu0/core16": {
166 "fru_type": "CORE",
167 "is_fru": False,
168 },
169 "<inventory_root>/system/chassis/motherboard/cpu0/core17": {
170 "fru_type": "CORE",
171 "is_fru": False,
172 },
173 "<inventory_root>/system/chassis/motherboard/cpu0/core18": {
174 "fru_type": "CORE",
175 "is_fru": False,
176 },
177 "<inventory_root>/system/chassis/motherboard/cpu0/core19": {
178 "fru_type": "CORE",
179 "is_fru": False,
180 },
181 "<inventory_root>/system/chassis/motherboard/cpu0/core20": {
182 "fru_type": "CORE",
183 "is_fru": False,
184 },
185 "<inventory_root>/system/chassis/motherboard/cpu0/core21": {
186 "fru_type": "CORE",
187 "is_fru": False,
188 },
189 "<inventory_root>/system/chassis/motherboard/cpu0/core22": {
190 "fru_type": "CORE",
191 "is_fru": False,
192 },
193 "<inventory_root>/system/chassis/motherboard/cpu0/core23": {
194 "fru_type": "CORE",
195 "is_fru": False,
196 },
197 "<inventory_root>/system/chassis/motherboard/cpu1/core0": {
198 "fru_type": "CORE",
199 "is_fru": False,
200 },
201 "<inventory_root>/system/chassis/motherboard/cpu1/core1": {
202 "fru_type": "CORE",
203 "is_fru": False,
204 },
205 "<inventory_root>/system/chassis/motherboard/cpu1/core2": {
206 "fru_type": "CORE",
207 "is_fru": False,
208 },
209 "<inventory_root>/system/chassis/motherboard/cpu1/core3": {
210 "fru_type": "CORE",
211 "is_fru": False,
212 },
213 "<inventory_root>/system/chassis/motherboard/cpu1/core4": {
214 "fru_type": "CORE",
215 "is_fru": False,
216 },
217 "<inventory_root>/system/chassis/motherboard/cpu1/core5": {
218 "fru_type": "CORE",
219 "is_fru": False,
220 },
221 "<inventory_root>/system/chassis/motherboard/cpu1/core6": {
222 "fru_type": "CORE",
223 "is_fru": False,
224 },
225 "<inventory_root>/system/chassis/motherboard/cpu1/core7": {
226 "fru_type": "CORE",
227 "is_fru": False,
228 },
229 "<inventory_root>/system/chassis/motherboard/cpu1/core8": {
230 "fru_type": "CORE",
231 "is_fru": False,
232 },
233 "<inventory_root>/system/chassis/motherboard/cpu1/core9": {
234 "fru_type": "CORE",
235 "is_fru": False,
236 },
237 "<inventory_root>/system/chassis/motherboard/cpu1/core10": {
238 "fru_type": "CORE",
239 "is_fru": False,
240 },
241 "<inventory_root>/system/chassis/motherboard/cpu1/core11": {
242 "fru_type": "CORE",
243 "is_fru": False,
244 },
245 "<inventory_root>/system/chassis/motherboard/cpu1/core12": {
246 "fru_type": "CORE",
247 "is_fru": False,
248 },
249 "<inventory_root>/system/chassis/motherboard/cpu1/core13": {
250 "fru_type": "CORE",
251 "is_fru": False,
252 },
253 "<inventory_root>/system/chassis/motherboard/cpu1/core14": {
254 "fru_type": "CORE",
255 "is_fru": False,
256 },
257 "<inventory_root>/system/chassis/motherboard/cpu1/core15": {
258 "fru_type": "CORE",
259 "is_fru": False,
260 },
261 "<inventory_root>/system/chassis/motherboard/cpu1/core16": {
262 "fru_type": "CORE",
263 "is_fru": False,
264 },
265 "<inventory_root>/system/chassis/motherboard/cpu1/core17": {
266 "fru_type": "CORE",
267 "is_fru": False,
268 },
269 "<inventory_root>/system/chassis/motherboard/cpu1/core18": {
270 "fru_type": "CORE",
271 "is_fru": False,
272 },
273 "<inventory_root>/system/chassis/motherboard/cpu1/core19": {
274 "fru_type": "CORE",
275 "is_fru": False,
276 },
277 "<inventory_root>/system/chassis/motherboard/cpu1/core20": {
278 "fru_type": "CORE",
279 "is_fru": False,
280 },
281 "<inventory_root>/system/chassis/motherboard/cpu1/core21": {
282 "fru_type": "CORE",
283 "is_fru": False,
284 },
285 "<inventory_root>/system/chassis/motherboard/cpu1/core22": {
286 "fru_type": "CORE",
287 "is_fru": False,
288 },
289 "<inventory_root>/system/chassis/motherboard/cpu1/core23": {
290 "fru_type": "CORE",
291 "is_fru": False,
292 },
293 "<inventory_root>/system/chassis/motherboard/dimm0": {
294 "fru_type": "DIMM",
295 "is_fru": True,
296 },
297 "<inventory_root>/system/chassis/motherboard/dimm1": {
298 "fru_type": "DIMM",
299 "is_fru": True,
300 },
301 "<inventory_root>/system/chassis/motherboard/dimm2": {
302 "fru_type": "DIMM",
303 "is_fru": True,
304 },
305 "<inventory_root>/system/chassis/motherboard/dimm3": {
306 "fru_type": "DIMM",
307 "is_fru": True,
308 },
309 "<inventory_root>/system/chassis/motherboard/dimm4": {
310 "fru_type": "DIMM",
311 "is_fru": True,
312 },
313 "<inventory_root>/system/chassis/motherboard/dimm5": {
314 "fru_type": "DIMM",
315 "is_fru": True,
316 },
317 "<inventory_root>/system/chassis/motherboard/dimm6": {
318 "fru_type": "DIMM",
319 "is_fru": True,
320 },
321 "<inventory_root>/system/chassis/motherboard/dimm7": {
322 "fru_type": "DIMM",
323 "is_fru": True,
324 },
325 "<inventory_root>/system/chassis/motherboard/dimm8": {
326 "fru_type": "DIMM",
327 "is_fru": True,
328 },
329 "<inventory_root>/system/chassis/motherboard/dimm9": {
330 "fru_type": "DIMM",
331 "is_fru": True,
332 },
333 "<inventory_root>/system/chassis/motherboard/dimm10": {
334 "fru_type": "DIMM",
335 "is_fru": True,
336 },
337 "<inventory_root>/system/chassis/motherboard/dimm11": {
338 "fru_type": "DIMM",
339 "is_fru": True,
340 },
341 "<inventory_root>/system/chassis/motherboard/dimm12": {
342 "fru_type": "DIMM",
343 "is_fru": True,
344 },
345 "<inventory_root>/system/chassis/motherboard/dimm13": {
346 "fru_type": "DIMM",
347 "is_fru": True,
348 },
349 "<inventory_root>/system/chassis/motherboard/dimm14": {
350 "fru_type": "DIMM",
351 "is_fru": True,
352 },
353 "<inventory_root>/system/chassis/motherboard/dimm15": {
354 "fru_type": "DIMM",
355 "is_fru": True,
356 },
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500357}
358
359ID_LOOKUP = {
Patrick Williams20f38712022-12-08 06:18:26 -0600360 "FRU": {
361 0x01: "<inventory_root>/system/chassis/motherboard/cpu0",
362 0x02: "<inventory_root>/system/chassis/motherboard/cpu1",
363 0x03: "<inventory_root>/system/chassis/motherboard",
364 0x04: "<inventory_root>/system/chassis/motherboard/dimm0",
365 0x05: "<inventory_root>/system/chassis/motherboard/dimm1",
366 0x06: "<inventory_root>/system/chassis/motherboard/dimm2",
367 0x07: "<inventory_root>/system/chassis/motherboard/dimm3",
368 0x08: "<inventory_root>/system/chassis/motherboard/dimm4",
369 0x09: "<inventory_root>/system/chassis/motherboard/dimm5",
370 0x0A: "<inventory_root>/system/chassis/motherboard/dimm6",
371 0x0B: "<inventory_root>/system/chassis/motherboard/dimm7",
372 0x0C: "<inventory_root>/system/chassis/motherboard/dimm8",
373 0x0D: "<inventory_root>/system/chassis/motherboard/dimm9",
374 0x0E: "<inventory_root>/system/chassis/motherboard/dimm10",
375 0x0F: "<inventory_root>/system/chassis/motherboard/dimm11",
376 0x10: "<inventory_root>/system/chassis/motherboard/dimm12",
377 0x11: "<inventory_root>/system/chassis/motherboard/dimm13",
378 0x12: "<inventory_root>/system/chassis/motherboard/dimm14",
379 0x13: "<inventory_root>/system/chassis/motherboard/dimm15",
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500380 },
Patrick Williams20f38712022-12-08 06:18:26 -0600381 "FRU_STR": {
382 "PRODUCT_0": "<inventory_root>/system/bios",
383 "BOARD_1": "<inventory_root>/system/chassis/motherboard/cpu0",
384 "BOARD_2": "<inventory_root>/system/chassis/motherboard/cpu1",
385 "CHASSIS_3": "<inventory_root>/system/chassis/motherboard",
386 "BOARD_3": "<inventory_root>/system/misc",
387 "PRODUCT_12": "<inventory_root>/system/chassis/motherboard/dimm0",
388 "PRODUCT_13": "<inventory_root>/system/chassis/motherboard/dimm1",
389 "PRODUCT_14": "<inventory_root>/system/chassis/motherboard/dimm2",
390 "PRODUCT_15": "<inventory_root>/system/chassis/motherboard/dimm3",
391 "PRODUCT_16": "<inventory_root>/system/chassis/motherboard/dimm4",
392 "PRODUCT_17": "<inventory_root>/system/chassis/motherboard/dimm5",
393 "PRODUCT_18": "<inventory_root>/system/chassis/motherboard/dimm6",
394 "PRODUCT_19": "<inventory_root>/system/chassis/motherboard/dimm7",
395 "PRODUCT_20": "<inventory_root>/system/chassis/motherboard/dimm8",
396 "PRODUCT_21": "<inventory_root>/system/chassis/motherboard/dimm9",
397 "PRODUCT_22": "<inventory_root>/system/chassis/motherboard/dimm10",
398 "PRODUCT_23": "<inventory_root>/system/chassis/motherboard/dimm11",
399 "PRODUCT_24": "<inventory_root>/system/chassis/motherboard/dimm12",
400 "PRODUCT_25": "<inventory_root>/system/chassis/motherboard/dimm13",
401 "PRODUCT_26": "<inventory_root>/system/chassis/motherboard/dimm14",
402 "PRODUCT_27": "<inventory_root>/system/chassis/motherboard/dimm15",
403 "PRODUCT_47": "<inventory_root>/system/misc",
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500404 },
Patrick Williams20f38712022-12-08 06:18:26 -0600405 "SENSOR": {
406 0x01: "/org/openbmc/sensors/host/HostStatus",
407 0x02: "/org/openbmc/sensors/host/BootProgress",
408 0x03: "/org/openbmc/sensors/host/cpu0/OccStatus",
409 0x04: "/org/openbmc/sensors/host/cpu1/OccStatus",
410 0x08: "<inventory_root>/system/chassis/motherboard/cpu0",
411 0x09: "<inventory_root>/system/chassis/motherboard/cpu1",
412 0x0B: "<inventory_root>/system/chassis/motherboard/dimm0",
413 0x0C: "<inventory_root>/system/chassis/motherboard/dimm1",
414 0x0D: "<inventory_root>/system/chassis/motherboard/dimm2",
415 0x0E: "<inventory_root>/system/chassis/motherboard/dimm3",
416 0x0F: "<inventory_root>/system/chassis/motherboard/dimm4",
417 0x10: "<inventory_root>/system/chassis/motherboard/dimm5",
418 0x11: "<inventory_root>/system/chassis/motherboard/dimm6",
419 0x12: "<inventory_root>/system/chassis/motherboard/dimm7",
420 0x13: "<inventory_root>/system/chassis/motherboard/dimm8",
421 0x14: "<inventory_root>/system/chassis/motherboard/dimm9",
422 0x15: "<inventory_root>/system/chassis/motherboard/dimm10",
423 0x16: "<inventory_root>/system/chassis/motherboard/dimm11",
424 0x17: "<inventory_root>/system/chassis/motherboard/dimm12",
425 0x18: "<inventory_root>/system/chassis/motherboard/dimm13",
426 0x19: "<inventory_root>/system/chassis/motherboard/dimm14",
427 0x1A: "<inventory_root>/system/chassis/motherboard/dimm15",
428 0x2B: "<inventory_root>/system/chassis/motherboard/cpu0/core0",
429 0x2C: "<inventory_root>/system/chassis/motherboard/cpu0/core1",
430 0x2D: "<inventory_root>/system/chassis/motherboard/cpu0/core2",
431 0x2E: "<inventory_root>/system/chassis/motherboard/cpu0/core3",
432 0x2F: "<inventory_root>/system/chassis/motherboard/cpu0/core4",
433 0x30: "<inventory_root>/system/chassis/motherboard/cpu0/core5",
434 0x31: "<inventory_root>/system/chassis/motherboard/cpu0/core6",
435 0x32: "<inventory_root>/system/chassis/motherboard/cpu0/core7",
436 0x33: "<inventory_root>/system/chassis/motherboard/cpu0/core8",
437 0x34: "<inventory_root>/system/chassis/motherboard/cpu0/core9",
438 0x35: "<inventory_root>/system/chassis/motherboard/cpu0/core10",
439 0x36: "<inventory_root>/system/chassis/motherboard/cpu0/core11",
440 0x37: "<inventory_root>/system/chassis/motherboard/cpu0/core12",
441 0x38: "<inventory_root>/system/chassis/motherboard/cpu0/core13",
442 0x39: "<inventory_root>/system/chassis/motherboard/cpu0/core14",
443 0x3A: "<inventory_root>/system/chassis/motherboard/cpu0/core15",
444 0x3B: "<inventory_root>/system/chassis/motherboard/cpu0/core16",
445 0x3C: "<inventory_root>/system/chassis/motherboard/cpu0/core17",
446 0x3D: "<inventory_root>/system/chassis/motherboard/cpu0/core18",
447 0x3E: "<inventory_root>/system/chassis/motherboard/cpu0/core19",
448 0x3F: "<inventory_root>/system/chassis/motherboard/cpu0/core20",
449 0x40: "<inventory_root>/system/chassis/motherboard/cpu0/core21",
450 0x41: "<inventory_root>/system/chassis/motherboard/cpu0/core22",
451 0x42: "<inventory_root>/system/chassis/motherboard/cpu0/core23",
452 0x43: "<inventory_root>/system/chassis/motherboard/cpu1/core0",
453 0x44: "<inventory_root>/system/chassis/motherboard/cpu1/core1",
454 0x45: "<inventory_root>/system/chassis/motherboard/cpu1/core2",
455 0x46: "<inventory_root>/system/chassis/motherboard/cpu1/core3",
456 0x47: "<inventory_root>/system/chassis/motherboard/cpu1/core4",
457 0x48: "<inventory_root>/system/chassis/motherboard/cpu1/core5",
458 0x49: "<inventory_root>/system/chassis/motherboard/cpu1/core6",
459 0x4A: "<inventory_root>/system/chassis/motherboard/cpu1/core7",
460 0x4B: "<inventory_root>/system/chassis/motherboard/cpu1/core8",
461 0x4C: "<inventory_root>/system/chassis/motherboard/cpu1/core9",
462 0x4D: "<inventory_root>/system/chassis/motherboard/cpu1/core10",
463 0x4E: "<inventory_root>/system/chassis/motherboard/cpu1/core11",
464 0x4F: "<inventory_root>/system/chassis/motherboard/cpu1/core12",
465 0x50: "<inventory_root>/system/chassis/motherboard/cpu1/core13",
466 0x51: "<inventory_root>/system/chassis/motherboard/cpu1/core14",
467 0x52: "<inventory_root>/system/chassis/motherboard/cpu1/core15",
468 0x53: "<inventory_root>/system/chassis/motherboard/cpu1/core16",
469 0x54: "<inventory_root>/system/chassis/motherboard/cpu1/core17",
470 0x55: "<inventory_root>/system/chassis/motherboard/cpu1/core18",
471 0x56: "<inventory_root>/system/chassis/motherboard/cpu1/core19",
472 0x57: "<inventory_root>/system/chassis/motherboard/cpu1/core20",
473 0x58: "<inventory_root>/system/chassis/motherboard/cpu1/core21",
474 0x59: "<inventory_root>/system/chassis/motherboard/cpu1/core22",
475 0x5A: "<inventory_root>/system/chassis/motherboard/cpu1/core23",
476 0x8B: "/org/openbmc/sensors/host/BootCount",
477 0x8C: "<inventory_root>/system/chassis/motherboard",
478 0x8D: "<inventory_root>/system/chassis/motherboard/refclock",
479 0x8E: "<inventory_root>/system/chassis/motherboard/pcieclock",
480 0x8F: "<inventory_root>/system/chassis/motherboard/todclock",
481 0x90: "<inventory_root>/system/systemevent",
482 0x91: "/org/openbmc/sensors/host/OperatingSystemStatus",
483 0x92: "<inventory_root>/system/chassis/motherboard/pcielink",
Gunnar Millsdca35792018-03-26 10:05:38 -0500484 # 0x08 : '<inventory_root>/system/powerlimit',
485 # 0x10 : '<inventory_root>/system/chassis/motherboard/apss',
486 # 0x06 : '/org/openbmc/sensors/host/powercap',
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500487 },
Patrick Williams20f38712022-12-08 06:18:26 -0600488 "GPIO_PRESENT": {},
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500489}
490
491GPIO_CONFIG = {}
Patrick Williams20f38712022-12-08 06:18:26 -0600492GPIO_CONFIG["SOFTWARE_PGOOD"] = {"gpio_pin": "R1", "direction": "out"}
493GPIO_CONFIG["BMC_POWER_UP"] = {"gpio_pin": "D1", "direction": "out"}
494GPIO_CONFIG["SYS_PWROK_BUFF"] = {"gpio_pin": "D2", "direction": "in"}
495GPIO_CONFIG["BMC_WD_CLEAR_PULSE_N"] = {"gpio_pin": "N5", "direction": "out"}
496GPIO_CONFIG["CHECKSTOP"] = {"gpio_pin": "J2", "direction": "falling"}
497GPIO_CONFIG["BMC_CP0_RESET_N"] = {"gpio_pin": "A1", "direction": "out"}
498GPIO_CONFIG["BMC_CP0_PERST_ENABLE_R"] = {"gpio_pin": "A3", "direction": "out"}
499GPIO_CONFIG["FSI_DATA"] = {"gpio_pin": "AA2", "direction": "out"}
500GPIO_CONFIG["FSI_CLK"] = {"gpio_pin": "AA0", "direction": "out"}
501GPIO_CONFIG["FSI_ENABLE"] = {"gpio_pin": "D0", "direction": "out"}
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500502
503# DBG_CP0_MUX_SEL
Patrick Williams20f38712022-12-08 06:18:26 -0600504GPIO_CONFIG["CRONUS_SEL"] = {"gpio_pin": "A6", "direction": "out"}
505GPIO_CONFIG["BMC_THROTTLE"] = {"gpio_pin": "J3", "direction": "out"}
506GPIO_CONFIG["IDBTN"] = {"gpio_pin": "Q7", "direction": "out"}
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500507
508# PM_FP_PWRBTN_IN_L
Patrick Williams20f38712022-12-08 06:18:26 -0600509GPIO_CONFIG["POWER_BUTTON"] = {"gpio_pin": "I3", "direction": "both"}
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500510
511# PM_NMIBTN_IN_L
Patrick Williams20f38712022-12-08 06:18:26 -0600512GPIO_CONFIG["RESET_BUTTON"] = {"gpio_pin": "J1", "direction": "both"}
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500513
514HWMON_CONFIG = {
Patrick Williams20f38712022-12-08 06:18:26 -0600515 "4-0050": {
516 "names": {
517 "caps_curr_powercap": {
518 "object_path": "powercap/curr_cap",
519 "poll_interval": 10000,
520 "scale": 1,
521 "units": "W",
522 },
523 "caps_curr_powerreading": {
524 "object_path": "powercap/system_power",
525 "poll_interval": 10000,
526 "scale": 1,
527 "units": "W",
528 },
529 "caps_max_powercap": {
530 "object_path": "powercap/max_cap",
531 "poll_interval": 10000,
532 "scale": 1,
533 "units": "W",
534 },
535 "caps_min_powercap": {
536 "object_path": "powercap/min_cap",
537 "poll_interval": 10000,
538 "scale": 1,
539 "units": "W",
540 },
541 "caps_norm_powercap": {
542 "object_path": "powercap/n_cap",
543 "poll_interval": 10000,
544 "scale": 1,
545 "units": "W",
546 },
547 "caps_user_powerlimit": {
548 "object_path": "powercap/user_cap",
549 "poll_interval": 10000,
550 "scale": 1,
551 "units": "W",
552 },
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500553 },
Patrick Williams20f38712022-12-08 06:18:26 -0600554 "labels": {
555 "176": {
556 "object_path": "temperature/cpu0/core0",
557 "poll_interval": 5000,
558 "scale": -3,
559 "units": "C",
560 "critical_upper": 100,
561 "critical_lower": -100,
562 "warning_upper": 90,
563 "warning_lower": -99,
564 "emergency_enabled": True,
565 },
566 "177": {
567 "object_path": "temperature/cpu0/core1",
568 "poll_interval": 5000,
569 "scale": -3,
570 "units": "C",
571 "critical_upper": 100,
572 "critical_lower": -100,
573 "warning_upper": 90,
574 "warning_lower": -99,
575 "emergency_enabled": True,
576 },
577 "178": {
578 "object_path": "temperature/cpu0/core2",
579 "poll_interval": 5000,
580 "scale": -3,
581 "units": "C",
582 "critical_upper": 100,
583 "critical_lower": -100,
584 "warning_upper": 90,
585 "warning_lower": -99,
586 "emergency_enabled": True,
587 },
588 "179": {
589 "object_path": "temperature/cpu0/core3",
590 "poll_interval": 5000,
591 "scale": -3,
592 "units": "C",
593 "critical_upper": 100,
594 "critical_lower": -100,
595 "warning_upper": 90,
596 "warning_lower": -99,
597 "emergency_enabled": True,
598 },
599 "180": {
600 "object_path": "temperature/cpu0/core4",
601 "poll_interval": 5000,
602 "scale": -3,
603 "units": "C",
604 "critical_upper": 100,
605 "critical_lower": -100,
606 "warning_upper": 90,
607 "warning_lower": -99,
608 "emergency_enabled": True,
609 },
610 "181": {
611 "object_path": "temperature/cpu0/core5",
612 "poll_interval": 5000,
613 "scale": -3,
614 "units": "C",
615 "critical_upper": 100,
616 "critical_lower": -100,
617 "warning_upper": 90,
618 "warning_lower": -99,
619 "emergency_enabled": True,
620 },
621 "182": {
622 "object_path": "temperature/cpu0/core6",
623 "poll_interval": 5000,
624 "scale": -3,
625 "units": "C",
626 "critical_upper": 100,
627 "critical_lower": -100,
628 "warning_upper": 90,
629 "warning_lower": -99,
630 "emergency_enabled": True,
631 },
632 "183": {
633 "object_path": "temperature/cpu0/core7",
634 "poll_interval": 5000,
635 "scale": -3,
636 "units": "C",
637 "critical_upper": 100,
638 "critical_lower": -100,
639 "warning_upper": 90,
640 "warning_lower": -99,
641 "emergency_enabled": True,
642 },
643 "184": {
644 "object_path": "temperature/cpu0/core8",
645 "poll_interval": 5000,
646 "scale": -3,
647 "units": "C",
648 "critical_upper": 100,
649 "critical_lower": -100,
650 "warning_upper": 90,
651 "warning_lower": -99,
652 "emergency_enabled": True,
653 },
654 "185": {
655 "object_path": "temperature/cpu0/core9",
656 "poll_interval": 5000,
657 "scale": -3,
658 "units": "C",
659 "critical_upper": 100,
660 "critical_lower": -100,
661 "warning_upper": 90,
662 "warning_lower": -99,
663 "emergency_enabled": True,
664 },
665 "186": {
666 "object_path": "temperature/cpu0/core10",
667 "poll_interval": 5000,
668 "scale": -3,
669 "units": "C",
670 "critical_upper": 100,
671 "critical_lower": -100,
672 "warning_upper": 90,
673 "warning_lower": -99,
674 "emergency_enabled": True,
675 },
676 "187": {
677 "object_path": "temperature/cpu0/core11",
678 "poll_interval": 5000,
679 "scale": -3,
680 "units": "C",
681 "critical_upper": 100,
682 "critical_lower": -100,
683 "warning_upper": 90,
684 "warning_lower": -99,
685 "emergency_enabled": True,
686 },
687 "102": {
688 "object_path": "temperature/dimm0",
689 "poll_interval": 5000,
690 "scale": -3,
691 "units": "C",
692 },
693 "103": {
694 "object_path": "temperature/dimm1",
695 "poll_interval": 5000,
696 "scale": -3,
697 "units": "C",
698 },
699 "104": {
700 "object_path": "temperature/dimm2",
701 "poll_interval": 5000,
702 "scale": -3,
703 "units": "C",
704 },
705 "105": {
706 "object_path": "temperature/dimm3",
707 "poll_interval": 5000,
708 "scale": -3,
709 "units": "C",
710 },
711 "106": {
712 "object_path": "temperature/dimm4",
713 "poll_interval": 5000,
714 "scale": -3,
715 "units": "C",
716 },
717 "107": {
718 "object_path": "temperature/dimm5",
719 "poll_interval": 5000,
720 "scale": -3,
721 "units": "C",
722 },
723 "108": {
724 "object_path": "temperature/dimm6",
725 "poll_interval": 5000,
726 "scale": -3,
727 "units": "C",
728 },
729 "109": {
730 "object_path": "temperature/dimm7",
731 "poll_interval": 5000,
732 "scale": -3,
733 "units": "C",
734 },
735 },
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500736 },
Patrick Williams20f38712022-12-08 06:18:26 -0600737 "5-0050": {
738 "labels": {
739 "188": {
740 "object_path": "temperature/cpu1/core0",
741 "poll_interval": 5000,
742 "scale": -3,
743 "units": "C",
744 "critical_upper": 100,
745 "critical_lower": -100,
746 "warning_upper": 90,
747 "warning_lower": -99,
748 "emergency_enabled": True,
749 },
750 "189": {
751 "object_path": "temperature/cpu1/core1",
752 "poll_interval": 5000,
753 "scale": -3,
754 "units": "C",
755 "critical_upper": 100,
756 "critical_lower": -100,
757 "warning_upper": 90,
758 "warning_lower": -99,
759 "emergency_enabled": True,
760 },
761 "190": {
762 "object_path": "temperature/cpu1/core2",
763 "poll_interval": 5000,
764 "scale": -3,
765 "units": "C",
766 "critical_upper": 100,
767 "critical_lower": -100,
768 "warning_upper": 90,
769 "warning_lower": -99,
770 "emergency_enabled": True,
771 },
772 "191": {
773 "object_path": "temperature/cpu1/core3",
774 "poll_interval": 5000,
775 "scale": -3,
776 "units": "C",
777 "critical_upper": 100,
778 "critical_lower": -100,
779 "warning_upper": 90,
780 "warning_lower": -99,
781 "emergency_enabled": True,
782 },
783 "192": {
784 "object_path": "temperature/cpu1/core4",
785 "poll_interval": 5000,
786 "scale": -3,
787 "units": "C",
788 "critical_upper": 100,
789 "critical_lower": -100,
790 "warning_upper": 90,
791 "warning_lower": -99,
792 "emergency_enabled": True,
793 },
794 "193": {
795 "object_path": "temperature/cpu1/core5",
796 "poll_interval": 5000,
797 "scale": -3,
798 "units": "C",
799 "critical_upper": 100,
800 "critical_lower": -100,
801 "warning_upper": 90,
802 "warning_lower": -99,
803 "emergency_enabled": True,
804 },
805 "194": {
806 "object_path": "temperature/cpu1/core6",
807 "poll_interval": 5000,
808 "scale": -3,
809 "units": "C",
810 "critical_upper": 100,
811 "critical_lower": -100,
812 "warning_upper": 90,
813 "warning_lower": -99,
814 "emergency_enabled": True,
815 },
816 "195": {
817 "object_path": "temperature/cpu1/core7",
818 "poll_interval": 5000,
819 "scale": -3,
820 "units": "C",
821 "critical_upper": 100,
822 "critical_lower": -100,
823 "warning_upper": 90,
824 "warning_lower": -99,
825 "emergency_enabled": True,
826 },
827 "196": {
828 "object_path": "temperature/cpu1/core8",
829 "poll_interval": 5000,
830 "scale": -3,
831 "units": "C",
832 "critical_upper": 100,
833 "critical_lower": -100,
834 "warning_upper": 90,
835 "warning_lower": -99,
836 "emergency_enabled": True,
837 },
838 "197": {
839 "object_path": "temperature/cpu1/core9",
840 "poll_interval": 5000,
841 "scale": -3,
842 "units": "C",
843 "critical_upper": 100,
844 "critical_lower": -100,
845 "warning_upper": 90,
846 "warning_lower": -99,
847 "emergency_enabled": True,
848 },
849 "198": {
850 "object_path": "temperature/cpu1/core10",
851 "poll_interval": 5000,
852 "scale": -3,
853 "units": "C",
854 "critical_upper": 100,
855 "critical_lower": -100,
856 "warning_upper": 90,
857 "warning_lower": -99,
858 "emergency_enabled": True,
859 },
860 "199": {
861 "object_path": "temperature/cpu1/core11",
862 "poll_interval": 5000,
863 "scale": -3,
864 "units": "C",
865 "critical_upper": 100,
866 "critical_lower": -100,
867 "warning_upper": 90,
868 "warning_lower": -99,
869 "emergency_enabled": True,
870 },
871 "110": {
872 "object_path": "temperature/dimm8",
873 "poll_interval": 5000,
874 "scale": -3,
875 "units": "C",
876 },
877 "111": {
878 "object_path": "temperature/dimm9",
879 "poll_interval": 5000,
880 "scale": -3,
881 "units": "C",
882 },
883 "112": {
884 "object_path": "temperature/dimm10",
885 "poll_interval": 5000,
886 "scale": -3,
887 "units": "C",
888 },
889 "113": {
890 "object_path": "temperature/dimm11",
891 "poll_interval": 5000,
892 "scale": -3,
893 "units": "C",
894 },
895 "114": {
896 "object_path": "temperature/dimm12",
897 "poll_interval": 5000,
898 "scale": -3,
899 "units": "C",
900 },
901 "115": {
902 "object_path": "temperature/dimm13",
903 "poll_interval": 5000,
904 "scale": -3,
905 "units": "C",
906 },
907 "116": {
908 "object_path": "temperature/dimm14",
909 "poll_interval": 5000,
910 "scale": -3,
911 "units": "C",
912 },
913 "117": {
914 "object_path": "temperature/dimm15",
915 "poll_interval": 5000,
916 "scale": -3,
917 "units": "C",
918 },
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500919 }
920 },
921}
922
923
924GPIO_CONFIGS = {
Patrick Williams20f38712022-12-08 06:18:26 -0600925 "power_config": {
926 "power_good_in": "SYS_PWROK_BUFF",
927 "power_up_outs": [
928 ("SOFTWARE_PGOOD", True),
929 ("BMC_POWER_UP", True),
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500930 ],
Patrick Williams20f38712022-12-08 06:18:26 -0600931 "reset_outs": [
932 ("BMC_CP0_RESET_N", False),
933 ("BMC_CP0_PERST_ENABLE_R", False),
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500934 ],
935 },
Patrick Williams20f38712022-12-08 06:18:26 -0600936 "hostctl_config": {
937 "fsi_data": "FSI_DATA",
938 "fsi_clk": "FSI_CLK",
939 "fsi_enable": "FSI_ENABLE",
940 "cronus_sel": "CRONUS_SEL",
941 "optionals": [],
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500942 },
943}
944
945
946# Miscellaneous non-poll sensor with system specific properties.
947# The sensor id is the same as those defined in ID_LOOKUP['SENSOR'].
948MISC_SENSORS = {
Patrick Williams20f38712022-12-08 06:18:26 -0600949 0x8B: {"class": "BootCountSensor"},
950 0x02: {"class": "BootProgressSensor"},
Gunnar Millsdca35792018-03-26 10:05:38 -0500951 # OCC active sensors aren't in the P9 XML yet. These are wrong.
Patrick Williams20f38712022-12-08 06:18:26 -0600952 0x03: {
953 "class": "OccStatusSensor",
954 "os_path": "/sys/bus/i2c/devices/3-0050/online",
955 },
956 0x04: {
957 "class": "OccStatusSensor",
958 "os_path": "/sys/bus/i2c/devices/3-0051/online",
959 },
960 0x91: {"class": "OperatingSystemStatusSensor"},
Gunnar Millsdca35792018-03-26 10:05:38 -0500961 # 0x06 : { 'class' : 'PowerCap',
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500962 # 'os_path' : '/sys/class/hwmon/hwmon3/user_powercap' },
963}
964
965# vim: tabstop=8 expandtab shiftwidth=4 softtabstop=4