blob: 13c405c4dbd55240276ed5a5ba4723a21e781250 [file] [log] [blame]
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -05001# Romulus.py
2#
3
4SYSTEM_STATES = [
5 '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',
13]
14
15EXIT_STATE_DEPEND = {
Gunnar Millsdca35792018-03-26 10:05:38 -050016 'BASE_APPS': {
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -050017 '/org/openbmc/sensors': 0,
18 },
Gunnar Millsdca35792018-03-26 10:05:38 -050019 'BMC_STARTING': {
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -050020 '/org/openbmc/control/chassis0': 0,
Gunnar Millsdca35792018-03-26 10:05:38 -050021 '/org/openbmc/control/power0': 0,
22 '/org/openbmc/control/flash/bios': 0,
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -050023 },
24}
25
26INVENTORY_ROOT = '/org/openbmc/inventory'
27
28FRU_INSTANCES = {
Gunnar Millsdca35792018-03-26 10:05:38 -050029 '<inventory_root>/system': {'fru_type': 'SYSTEM', 'is_fru': True, 'present': "True"},
30 '<inventory_root>/system/bios': {'fru_type': 'SYSTEM', 'is_fru': True, 'present': "True"},
31 '<inventory_root>/system/misc': {'fru_type': 'SYSTEM', 'is_fru': False, },
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -050032
Gunnar Millsdca35792018-03-26 10:05:38 -050033 '<inventory_root>/system/chassis': {'fru_type': 'SYSTEM', 'is_fru': True, 'present': "True"},
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -050034
Gunnar Millsdca35792018-03-26 10:05:38 -050035 '<inventory_root>/system/chassis/motherboard': {'fru_type': 'MAIN_PLANAR', 'is_fru': True, },
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -050036
Gunnar Millsdca35792018-03-26 10:05:38 -050037 '<inventory_root>/system/systemevent': {'fru_type': 'SYSTEM_EVENT', 'is_fru': False, },
Joy Onyerikwu004ad3c2018-06-11 16:29:56 -050038 '<inventory_root>/system/chassis/motherboard/refclock': {'fru_type': 'MAIN_PLANAR',
39 'is_fru': False, },
40 '<inventory_root>/system/chassis/motherboard/pcieclock': {'fru_type': 'MAIN_PLANAR',
41 'is_fru': False, },
42 '<inventory_root>/system/chassis/motherboard/todclock': {'fru_type': 'MAIN_PLANAR',
43 'is_fru': False, },
44 '<inventory_root>/system/chassis/motherboard/apss': {'fru_type': 'MAIN_PLANAR',
45 'is_fru': False, },
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -050046
Gunnar Millsdca35792018-03-26 10:05:38 -050047 '<inventory_root>/system/chassis/fan0': {'fru_type': 'FAN', 'is_fru': True, },
48 '<inventory_root>/system/chassis/fan1': {'fru_type': 'FAN', 'is_fru': True, },
49 '<inventory_root>/system/chassis/fan2': {'fru_type': 'FAN', 'is_fru': True, },
50 '<inventory_root>/system/chassis/fan3': {'fru_type': 'FAN', 'is_fru': True, },
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -050051
Joy Onyerikwu004ad3c2018-06-11 16:29:56 -050052 '<inventory_root>/system/chassis/motherboard/bmc': {'fru_type': 'BMC', 'is_fru': False,
53 'manufacturer': 'ASPEED'},
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -050054
Gunnar Millsdca35792018-03-26 10:05:38 -050055 '<inventory_root>/system/chassis/motherboard/cpu0': {'fru_type': 'CPU', 'is_fru': True, },
56 '<inventory_root>/system/chassis/motherboard/cpu1': {'fru_type': 'CPU', 'is_fru': True, },
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -050057
Gunnar Millsdca35792018-03-26 10:05:38 -050058 '<inventory_root>/system/chassis/motherboard/cpu0/core0': {'fru_type': 'CORE', 'is_fru': False, },
59 '<inventory_root>/system/chassis/motherboard/cpu0/core1': {'fru_type': 'CORE', 'is_fru': False, },
60 '<inventory_root>/system/chassis/motherboard/cpu0/core2': {'fru_type': 'CORE', 'is_fru': False, },
61 '<inventory_root>/system/chassis/motherboard/cpu0/core3': {'fru_type': 'CORE', 'is_fru': False, },
62 '<inventory_root>/system/chassis/motherboard/cpu0/core4': {'fru_type': 'CORE', 'is_fru': False, },
63 '<inventory_root>/system/chassis/motherboard/cpu0/core5': {'fru_type': 'CORE', 'is_fru': False, },
64 '<inventory_root>/system/chassis/motherboard/cpu0/core6': {'fru_type': 'CORE', 'is_fru': False, },
65 '<inventory_root>/system/chassis/motherboard/cpu0/core7': {'fru_type': 'CORE', 'is_fru': False, },
66 '<inventory_root>/system/chassis/motherboard/cpu0/core8': {'fru_type': 'CORE', 'is_fru': False, },
67 '<inventory_root>/system/chassis/motherboard/cpu0/core9': {'fru_type': 'CORE', 'is_fru': False, },
68 '<inventory_root>/system/chassis/motherboard/cpu0/core10': {'fru_type': 'CORE', 'is_fru': False, },
69 '<inventory_root>/system/chassis/motherboard/cpu0/core11': {'fru_type': 'CORE', 'is_fru': False, },
70 '<inventory_root>/system/chassis/motherboard/cpu0/core12': {'fru_type': 'CORE', 'is_fru': False, },
71 '<inventory_root>/system/chassis/motherboard/cpu0/core13': {'fru_type': 'CORE', 'is_fru': False, },
72 '<inventory_root>/system/chassis/motherboard/cpu0/core14': {'fru_type': 'CORE', 'is_fru': False, },
73 '<inventory_root>/system/chassis/motherboard/cpu0/core15': {'fru_type': 'CORE', 'is_fru': False, },
74 '<inventory_root>/system/chassis/motherboard/cpu0/core16': {'fru_type': 'CORE', 'is_fru': False, },
75 '<inventory_root>/system/chassis/motherboard/cpu0/core17': {'fru_type': 'CORE', 'is_fru': False, },
76 '<inventory_root>/system/chassis/motherboard/cpu0/core18': {'fru_type': 'CORE', 'is_fru': False, },
77 '<inventory_root>/system/chassis/motherboard/cpu0/core19': {'fru_type': 'CORE', 'is_fru': False, },
78 '<inventory_root>/system/chassis/motherboard/cpu0/core20': {'fru_type': 'CORE', 'is_fru': False, },
79 '<inventory_root>/system/chassis/motherboard/cpu0/core21': {'fru_type': 'CORE', 'is_fru': False, },
80 '<inventory_root>/system/chassis/motherboard/cpu0/core22': {'fru_type': 'CORE', 'is_fru': False, },
81 '<inventory_root>/system/chassis/motherboard/cpu0/core23': {'fru_type': 'CORE', 'is_fru': False, },
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -050082
Gunnar Millsdca35792018-03-26 10:05:38 -050083 '<inventory_root>/system/chassis/motherboard/cpu1/core0': {'fru_type': 'CORE', 'is_fru': False, },
84 '<inventory_root>/system/chassis/motherboard/cpu1/core1': {'fru_type': 'CORE', 'is_fru': False, },
85 '<inventory_root>/system/chassis/motherboard/cpu1/core2': {'fru_type': 'CORE', 'is_fru': False, },
86 '<inventory_root>/system/chassis/motherboard/cpu1/core3': {'fru_type': 'CORE', 'is_fru': False, },
87 '<inventory_root>/system/chassis/motherboard/cpu1/core4': {'fru_type': 'CORE', 'is_fru': False, },
88 '<inventory_root>/system/chassis/motherboard/cpu1/core5': {'fru_type': 'CORE', 'is_fru': False, },
89 '<inventory_root>/system/chassis/motherboard/cpu1/core6': {'fru_type': 'CORE', 'is_fru': False, },
90 '<inventory_root>/system/chassis/motherboard/cpu1/core7': {'fru_type': 'CORE', 'is_fru': False, },
91 '<inventory_root>/system/chassis/motherboard/cpu1/core8': {'fru_type': 'CORE', 'is_fru': False, },
92 '<inventory_root>/system/chassis/motherboard/cpu1/core9': {'fru_type': 'CORE', 'is_fru': False, },
93 '<inventory_root>/system/chassis/motherboard/cpu1/core10': {'fru_type': 'CORE', 'is_fru': False, },
94 '<inventory_root>/system/chassis/motherboard/cpu1/core11': {'fru_type': 'CORE', 'is_fru': False, },
95 '<inventory_root>/system/chassis/motherboard/cpu1/core12': {'fru_type': 'CORE', 'is_fru': False, },
96 '<inventory_root>/system/chassis/motherboard/cpu1/core13': {'fru_type': 'CORE', 'is_fru': False, },
97 '<inventory_root>/system/chassis/motherboard/cpu1/core14': {'fru_type': 'CORE', 'is_fru': False, },
98 '<inventory_root>/system/chassis/motherboard/cpu1/core15': {'fru_type': 'CORE', 'is_fru': False, },
99 '<inventory_root>/system/chassis/motherboard/cpu1/core16': {'fru_type': 'CORE', 'is_fru': False, },
100 '<inventory_root>/system/chassis/motherboard/cpu1/core17': {'fru_type': 'CORE', 'is_fru': False, },
101 '<inventory_root>/system/chassis/motherboard/cpu1/core18': {'fru_type': 'CORE', 'is_fru': False, },
102 '<inventory_root>/system/chassis/motherboard/cpu1/core19': {'fru_type': 'CORE', 'is_fru': False, },
103 '<inventory_root>/system/chassis/motherboard/cpu1/core20': {'fru_type': 'CORE', 'is_fru': False, },
104 '<inventory_root>/system/chassis/motherboard/cpu1/core21': {'fru_type': 'CORE', 'is_fru': False, },
105 '<inventory_root>/system/chassis/motherboard/cpu1/core22': {'fru_type': 'CORE', 'is_fru': False, },
106 '<inventory_root>/system/chassis/motherboard/cpu1/core23': {'fru_type': 'CORE', 'is_fru': False, },
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500107
Gunnar Millsdca35792018-03-26 10:05:38 -0500108 '<inventory_root>/system/chassis/motherboard/dimm0': {'fru_type': 'DIMM', 'is_fru': True, },
109 '<inventory_root>/system/chassis/motherboard/dimm1': {'fru_type': 'DIMM', 'is_fru': True, },
110 '<inventory_root>/system/chassis/motherboard/dimm2': {'fru_type': 'DIMM', 'is_fru': True, },
111 '<inventory_root>/system/chassis/motherboard/dimm3': {'fru_type': 'DIMM', 'is_fru': True, },
112 '<inventory_root>/system/chassis/motherboard/dimm4': {'fru_type': 'DIMM', 'is_fru': True, },
113 '<inventory_root>/system/chassis/motherboard/dimm5': {'fru_type': 'DIMM', 'is_fru': True, },
114 '<inventory_root>/system/chassis/motherboard/dimm6': {'fru_type': 'DIMM', 'is_fru': True, },
115 '<inventory_root>/system/chassis/motherboard/dimm7': {'fru_type': 'DIMM', 'is_fru': True, },
116 '<inventory_root>/system/chassis/motherboard/dimm8': {'fru_type': 'DIMM', 'is_fru': True, },
117 '<inventory_root>/system/chassis/motherboard/dimm9': {'fru_type': 'DIMM', 'is_fru': True, },
118 '<inventory_root>/system/chassis/motherboard/dimm10': {'fru_type': 'DIMM', 'is_fru': True, },
119 '<inventory_root>/system/chassis/motherboard/dimm11': {'fru_type': 'DIMM', 'is_fru': True, },
120 '<inventory_root>/system/chassis/motherboard/dimm12': {'fru_type': 'DIMM', 'is_fru': True, },
121 '<inventory_root>/system/chassis/motherboard/dimm13': {'fru_type': 'DIMM', 'is_fru': True, },
122 '<inventory_root>/system/chassis/motherboard/dimm14': {'fru_type': 'DIMM', 'is_fru': True, },
123 '<inventory_root>/system/chassis/motherboard/dimm15': {'fru_type': 'DIMM', 'is_fru': True, },
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500124}
125
126ID_LOOKUP = {
Gunnar Millsdca35792018-03-26 10:05:38 -0500127 'FRU': {
128 0x01: '<inventory_root>/system/chassis/motherboard/cpu0',
129 0x02: '<inventory_root>/system/chassis/motherboard/cpu1',
130 0x03: '<inventory_root>/system/chassis/motherboard',
131 0x04: '<inventory_root>/system/chassis/motherboard/dimm0',
132 0x05: '<inventory_root>/system/chassis/motherboard/dimm1',
133 0x06: '<inventory_root>/system/chassis/motherboard/dimm2',
134 0x07: '<inventory_root>/system/chassis/motherboard/dimm3',
135 0x08: '<inventory_root>/system/chassis/motherboard/dimm4',
136 0x09: '<inventory_root>/system/chassis/motherboard/dimm5',
137 0x0a: '<inventory_root>/system/chassis/motherboard/dimm6',
138 0x0b: '<inventory_root>/system/chassis/motherboard/dimm7',
139 0x0c: '<inventory_root>/system/chassis/motherboard/dimm8',
140 0x0d: '<inventory_root>/system/chassis/motherboard/dimm9',
141 0x0e: '<inventory_root>/system/chassis/motherboard/dimm10',
142 0x0f: '<inventory_root>/system/chassis/motherboard/dimm11',
143 0x10: '<inventory_root>/system/chassis/motherboard/dimm12',
144 0x11: '<inventory_root>/system/chassis/motherboard/dimm13',
145 0x12: '<inventory_root>/system/chassis/motherboard/dimm14',
146 0x13: '<inventory_root>/system/chassis/motherboard/dimm15',
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500147 },
Gunnar Millsdca35792018-03-26 10:05:38 -0500148 'FRU_STR': {
149 'PRODUCT_0': '<inventory_root>/system/bios',
150 'BOARD_1': '<inventory_root>/system/chassis/motherboard/cpu0',
151 'BOARD_2': '<inventory_root>/system/chassis/motherboard/cpu1',
152 'CHASSIS_3': '<inventory_root>/system/chassis/motherboard',
153 'BOARD_3': '<inventory_root>/system/misc',
154 'PRODUCT_12': '<inventory_root>/system/chassis/motherboard/dimm0',
155 'PRODUCT_13': '<inventory_root>/system/chassis/motherboard/dimm1',
156 'PRODUCT_14': '<inventory_root>/system/chassis/motherboard/dimm2',
157 'PRODUCT_15': '<inventory_root>/system/chassis/motherboard/dimm3',
158 'PRODUCT_16': '<inventory_root>/system/chassis/motherboard/dimm4',
159 'PRODUCT_17': '<inventory_root>/system/chassis/motherboard/dimm5',
160 'PRODUCT_18': '<inventory_root>/system/chassis/motherboard/dimm6',
161 'PRODUCT_19': '<inventory_root>/system/chassis/motherboard/dimm7',
162 'PRODUCT_20': '<inventory_root>/system/chassis/motherboard/dimm8',
163 'PRODUCT_21': '<inventory_root>/system/chassis/motherboard/dimm9',
164 'PRODUCT_22': '<inventory_root>/system/chassis/motherboard/dimm10',
165 'PRODUCT_23': '<inventory_root>/system/chassis/motherboard/dimm11',
166 'PRODUCT_24': '<inventory_root>/system/chassis/motherboard/dimm12',
167 'PRODUCT_25': '<inventory_root>/system/chassis/motherboard/dimm13',
168 'PRODUCT_26': '<inventory_root>/system/chassis/motherboard/dimm14',
169 'PRODUCT_27': '<inventory_root>/system/chassis/motherboard/dimm15',
170 'PRODUCT_47': '<inventory_root>/system/misc',
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500171 },
Gunnar Millsdca35792018-03-26 10:05:38 -0500172 'SENSOR': {
173 0x01: '/org/openbmc/sensors/host/HostStatus',
174 0x02: '/org/openbmc/sensors/host/BootProgress',
175 0x03: '/org/openbmc/sensors/host/cpu0/OccStatus',
176 0x04: '/org/openbmc/sensors/host/cpu1/OccStatus',
177 0x08: '<inventory_root>/system/chassis/motherboard/cpu0',
178 0x09: '<inventory_root>/system/chassis/motherboard/cpu1',
179 0x0b: '<inventory_root>/system/chassis/motherboard/dimm0',
180 0x0c: '<inventory_root>/system/chassis/motherboard/dimm1',
181 0x0d: '<inventory_root>/system/chassis/motherboard/dimm2',
182 0x0e: '<inventory_root>/system/chassis/motherboard/dimm3',
183 0x0f: '<inventory_root>/system/chassis/motherboard/dimm4',
184 0x10: '<inventory_root>/system/chassis/motherboard/dimm5',
185 0x11: '<inventory_root>/system/chassis/motherboard/dimm6',
186 0x12: '<inventory_root>/system/chassis/motherboard/dimm7',
187 0x13: '<inventory_root>/system/chassis/motherboard/dimm8',
188 0x14: '<inventory_root>/system/chassis/motherboard/dimm9',
189 0x15: '<inventory_root>/system/chassis/motherboard/dimm10',
190 0x16: '<inventory_root>/system/chassis/motherboard/dimm11',
191 0x17: '<inventory_root>/system/chassis/motherboard/dimm12',
192 0x18: '<inventory_root>/system/chassis/motherboard/dimm13',
193 0x19: '<inventory_root>/system/chassis/motherboard/dimm14',
194 0x1a: '<inventory_root>/system/chassis/motherboard/dimm15',
195 0x2b: '<inventory_root>/system/chassis/motherboard/cpu0/core0',
196 0x2c: '<inventory_root>/system/chassis/motherboard/cpu0/core1',
197 0x2d: '<inventory_root>/system/chassis/motherboard/cpu0/core2',
198 0x2e: '<inventory_root>/system/chassis/motherboard/cpu0/core3',
199 0x2f: '<inventory_root>/system/chassis/motherboard/cpu0/core4',
200 0x30: '<inventory_root>/system/chassis/motherboard/cpu0/core5',
201 0x31: '<inventory_root>/system/chassis/motherboard/cpu0/core6',
202 0x32: '<inventory_root>/system/chassis/motherboard/cpu0/core7',
203 0x33: '<inventory_root>/system/chassis/motherboard/cpu0/core8',
204 0x34: '<inventory_root>/system/chassis/motherboard/cpu0/core9',
205 0x35: '<inventory_root>/system/chassis/motherboard/cpu0/core10',
206 0x36: '<inventory_root>/system/chassis/motherboard/cpu0/core11',
207 0x37: '<inventory_root>/system/chassis/motherboard/cpu0/core12',
208 0x38: '<inventory_root>/system/chassis/motherboard/cpu0/core13',
209 0x39: '<inventory_root>/system/chassis/motherboard/cpu0/core14',
210 0x3a: '<inventory_root>/system/chassis/motherboard/cpu0/core15',
211 0x3b: '<inventory_root>/system/chassis/motherboard/cpu0/core16',
212 0x3c: '<inventory_root>/system/chassis/motherboard/cpu0/core17',
213 0x3d: '<inventory_root>/system/chassis/motherboard/cpu0/core18',
214 0x3e: '<inventory_root>/system/chassis/motherboard/cpu0/core19',
215 0x3f: '<inventory_root>/system/chassis/motherboard/cpu0/core20',
216 0x40: '<inventory_root>/system/chassis/motherboard/cpu0/core21',
217 0x41: '<inventory_root>/system/chassis/motherboard/cpu0/core22',
218 0x42: '<inventory_root>/system/chassis/motherboard/cpu0/core23',
219 0x43: '<inventory_root>/system/chassis/motherboard/cpu1/core0',
220 0x44: '<inventory_root>/system/chassis/motherboard/cpu1/core1',
221 0x45: '<inventory_root>/system/chassis/motherboard/cpu1/core2',
222 0x46: '<inventory_root>/system/chassis/motherboard/cpu1/core3',
223 0x47: '<inventory_root>/system/chassis/motherboard/cpu1/core4',
224 0x48: '<inventory_root>/system/chassis/motherboard/cpu1/core5',
225 0x49: '<inventory_root>/system/chassis/motherboard/cpu1/core6',
226 0x4a: '<inventory_root>/system/chassis/motherboard/cpu1/core7',
227 0x4b: '<inventory_root>/system/chassis/motherboard/cpu1/core8',
228 0x4c: '<inventory_root>/system/chassis/motherboard/cpu1/core9',
229 0x4d: '<inventory_root>/system/chassis/motherboard/cpu1/core10',
230 0x4e: '<inventory_root>/system/chassis/motherboard/cpu1/core11',
231 0x4f: '<inventory_root>/system/chassis/motherboard/cpu1/core12',
232 0x50: '<inventory_root>/system/chassis/motherboard/cpu1/core13',
233 0x51: '<inventory_root>/system/chassis/motherboard/cpu1/core14',
234 0x52: '<inventory_root>/system/chassis/motherboard/cpu1/core15',
235 0x53: '<inventory_root>/system/chassis/motherboard/cpu1/core16',
236 0x54: '<inventory_root>/system/chassis/motherboard/cpu1/core17',
237 0x55: '<inventory_root>/system/chassis/motherboard/cpu1/core18',
238 0x56: '<inventory_root>/system/chassis/motherboard/cpu1/core19',
239 0x57: '<inventory_root>/system/chassis/motherboard/cpu1/core20',
240 0x58: '<inventory_root>/system/chassis/motherboard/cpu1/core21',
241 0x59: '<inventory_root>/system/chassis/motherboard/cpu1/core22',
242 0x5a: '<inventory_root>/system/chassis/motherboard/cpu1/core23',
243 0x8b: '/org/openbmc/sensors/host/BootCount',
244 0x8c: '<inventory_root>/system/chassis/motherboard',
245 0x8d: '<inventory_root>/system/chassis/motherboard/refclock',
246 0x8e: '<inventory_root>/system/chassis/motherboard/pcieclock',
247 0x8f: '<inventory_root>/system/chassis/motherboard/todclock',
248 0x90: '<inventory_root>/system/systemevent',
249 0x91: '/org/openbmc/sensors/host/OperatingSystemStatus',
250 0x92: '<inventory_root>/system/chassis/motherboard/pcielink',
251 # 0x08 : '<inventory_root>/system/powerlimit',
252 # 0x10 : '<inventory_root>/system/chassis/motherboard/apss',
253 # 0x06 : '/org/openbmc/sensors/host/powercap',
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500254 },
Gunnar Millsdca35792018-03-26 10:05:38 -0500255 'GPIO_PRESENT': {}
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500256}
257
258GPIO_CONFIG = {}
259GPIO_CONFIG['SOFTWARE_PGOOD'] = \
Gunnar Millsdca35792018-03-26 10:05:38 -0500260 {'gpio_pin': 'R1', 'direction': 'out'}
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500261GPIO_CONFIG['BMC_POWER_UP'] = \
Gunnar Millsdca35792018-03-26 10:05:38 -0500262 {'gpio_pin': 'D1', 'direction': 'out'}
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500263GPIO_CONFIG['SYS_PWROK_BUFF'] = \
Gunnar Millsdca35792018-03-26 10:05:38 -0500264 {'gpio_pin': 'D2', 'direction': 'in'}
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500265GPIO_CONFIG['BMC_WD_CLEAR_PULSE_N'] = \
Gunnar Millsdca35792018-03-26 10:05:38 -0500266 {'gpio_pin': 'N5', 'direction': 'out'}
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500267GPIO_CONFIG['CHECKSTOP'] = \
Gunnar Millsdca35792018-03-26 10:05:38 -0500268 {'gpio_pin': 'J2', 'direction': 'falling'}
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500269GPIO_CONFIG['BMC_CP0_RESET_N'] = \
Gunnar Millsdca35792018-03-26 10:05:38 -0500270 {'gpio_pin': 'A1', 'direction': 'out'}
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500271GPIO_CONFIG['BMC_CP0_PERST_ENABLE_R'] = \
Gunnar Millsdca35792018-03-26 10:05:38 -0500272 {'gpio_pin': 'A3', 'direction': 'out'}
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500273GPIO_CONFIG['FSI_DATA'] = \
Gunnar Millsdca35792018-03-26 10:05:38 -0500274 {'gpio_pin': 'AA2', 'direction': 'out'}
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500275GPIO_CONFIG['FSI_CLK'] = \
Gunnar Millsdca35792018-03-26 10:05:38 -0500276 {'gpio_pin': 'AA0', 'direction': 'out'}
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500277GPIO_CONFIG['FSI_ENABLE'] = \
Gunnar Millsdca35792018-03-26 10:05:38 -0500278 {'gpio_pin': 'D0', 'direction': 'out'}
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500279
280# DBG_CP0_MUX_SEL
281GPIO_CONFIG['CRONUS_SEL'] = \
Gunnar Millsdca35792018-03-26 10:05:38 -0500282 {'gpio_pin': 'A6', 'direction': 'out'}
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500283GPIO_CONFIG['BMC_THROTTLE'] = \
Gunnar Millsdca35792018-03-26 10:05:38 -0500284 {'gpio_pin': 'J3', 'direction': 'out'}
285GPIO_CONFIG['IDBTN'] = \
286 {'gpio_pin': 'Q7', 'direction': 'out'}
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500287
288# PM_FP_PWRBTN_IN_L
289GPIO_CONFIG['POWER_BUTTON'] = \
Gunnar Millsdca35792018-03-26 10:05:38 -0500290 {'gpio_pin': 'I3', 'direction': 'both'}
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500291
292# PM_NMIBTN_IN_L
293GPIO_CONFIG['RESET_BUTTON'] = \
Gunnar Millsdca35792018-03-26 10:05:38 -0500294 {'gpio_pin': 'J1', 'direction': 'both'}
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500295
296HWMON_CONFIG = {
Gunnar Millsdca35792018-03-26 10:05:38 -0500297 '4-0050': {
298 'names': {
Joy Onyerikwu004ad3c2018-06-11 16:29:56 -0500299 'caps_curr_powercap': {'object_path': 'powercap/curr_cap', 'poll_interval': 10000,
300 'scale': 1, 'units': 'W'},
301 'caps_curr_powerreading': {'object_path': 'powercap/system_power',
302 'poll_interval': 10000, 'scale': 1, 'units': 'W'},
303 'caps_max_powercap': {'object_path': 'powercap/max_cap', 'poll_interval': 10000,
304 'scale': 1, 'units': 'W'},
305 'caps_min_powercap': {'object_path': 'powercap/min_cap', 'poll_interval': 10000,
306 'scale': 1, 'units': 'W'},
307 'caps_norm_powercap': {'object_path': 'powercap/n_cap', 'poll_interval': 10000,
308 'scale': 1, 'units': 'W'},
309 'caps_user_powerlimit': {'object_path': 'powercap/user_cap', 'poll_interval': 10000,
310 'scale': 1, 'units': 'W'},
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500311 },
Gunnar Millsdca35792018-03-26 10:05:38 -0500312 'labels': {
Joy Onyerikwu004ad3c2018-06-11 16:29:56 -0500313 '176': {'object_path': 'temperature/cpu0/core0', 'poll_interval': 5000, 'scale': -3,
314 'units': 'C',
315 'critical_upper': 100, 'critical_lower': -100, 'warning_upper': 90,
316 'warning_lower': -99, 'emergency_enabled': True},
317 '177': {'object_path': 'temperature/cpu0/core1', 'poll_interval': 5000, 'scale': -3,
318 'units': 'C',
319 'critical_upper': 100, 'critical_lower': -100, 'warning_upper': 90,
320 'warning_lower': -99, 'emergency_enabled': True},
321 '178': {'object_path': 'temperature/cpu0/core2', 'poll_interval': 5000, 'scale': -3,
322 'units': 'C',
323 'critical_upper': 100, 'critical_lower': -100, 'warning_upper': 90,
324 'warning_lower': -99, 'emergency_enabled': True},
325 '179': {'object_path': 'temperature/cpu0/core3', 'poll_interval': 5000, 'scale': -3,
326 'units': 'C',
327 'critical_upper': 100, 'critical_lower': -100, 'warning_upper': 90,
328 'warning_lower': -99, 'emergency_enabled': True},
329 '180': {'object_path': 'temperature/cpu0/core4', 'poll_interval': 5000, 'scale': -3,
330 'units': 'C',
331 'critical_upper': 100, 'critical_lower': -100, 'warning_upper': 90,
332 'warning_lower': -99, 'emergency_enabled': True},
333 '181': {'object_path': 'temperature/cpu0/core5', 'poll_interval': 5000, 'scale': -3,
334 'units': 'C',
335 'critical_upper': 100, 'critical_lower': -100, 'warning_upper': 90,
336 'warning_lower': -99, 'emergency_enabled': True},
337 '182': {'object_path': 'temperature/cpu0/core6', 'poll_interval': 5000, 'scale': -3,
338 'units': 'C',
339 'critical_upper': 100, 'critical_lower': -100, 'warning_upper': 90,
340 'warning_lower': -99, 'emergency_enabled': True},
341 '183': {'object_path': 'temperature/cpu0/core7', 'poll_interval': 5000, 'scale': -3,
342 'units': 'C',
343 'critical_upper': 100, 'critical_lower': -100, 'warning_upper': 90,
344 'warning_lower': -99, 'emergency_enabled': True},
345 '184': {'object_path': 'temperature/cpu0/core8', 'poll_interval': 5000, 'scale': -3,
346 'units': 'C',
347 'critical_upper': 100, 'critical_lower': -100, 'warning_upper': 90,
348 'warning_lower': -99, 'emergency_enabled': True},
349 '185': {'object_path': 'temperature/cpu0/core9', 'poll_interval': 5000, 'scale': -3,
350 'units': 'C',
351 'critical_upper': 100, 'critical_lower': -100, 'warning_upper': 90,
352 'warning_lower': -99, 'emergency_enabled': True},
353 '186': {'object_path': 'temperature/cpu0/core10', 'poll_interval': 5000, 'scale': -3,
354 'units': 'C',
355 'critical_upper': 100, 'critical_lower': -100, 'warning_upper': 90,
356 'warning_lower': -99, 'emergency_enabled': True},
357 '187': {'object_path': 'temperature/cpu0/core11', 'poll_interval': 5000, 'scale': -3,
358 'units': 'C',
359 'critical_upper': 100, 'critical_lower': -100, 'warning_upper': 90,
360 'warning_lower': -99, 'emergency_enabled': True},
361 '102': {'object_path': 'temperature/dimm0', 'poll_interval': 5000, 'scale': -3,
362 'units': 'C'},
363 '103': {'object_path': 'temperature/dimm1', 'poll_interval': 5000, 'scale': -3,
364 'units': 'C'},
365 '104': {'object_path': 'temperature/dimm2', 'poll_interval': 5000, 'scale': -3,
366 'units': 'C'},
367 '105': {'object_path': 'temperature/dimm3', 'poll_interval': 5000, 'scale': -3,
368 'units': 'C'},
369 '106': {'object_path': 'temperature/dimm4', 'poll_interval': 5000, 'scale': -3,
370 'units': 'C'},
371 '107': {'object_path': 'temperature/dimm5', 'poll_interval': 5000, 'scale': -3,
372 'units': 'C'},
373 '108': {'object_path': 'temperature/dimm6', 'poll_interval': 5000, 'scale': -3,
374 'units': 'C'},
375 '109': {'object_path': 'temperature/dimm7', 'poll_interval': 5000, 'scale': -3,
376 'units': 'C'},
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500377 }
378 },
Gunnar Millsdca35792018-03-26 10:05:38 -0500379 '5-0050': {
Joy Onyerikwu004ad3c2018-06-11 16:29:56 -0500380 'labels': {
381 '188': {'object_path': 'temperature/cpu1/core0', 'poll_interval': 5000, 'scale': -3,
382 'units': 'C',
383 'critical_upper': 100, 'critical_lower': -100, 'warning_upper': 90,
384 'warning_lower': -99, 'emergency_enabled': True},
385 '189': {'object_path': 'temperature/cpu1/core1', 'poll_interval': 5000, 'scale': -3,
386 'units': 'C',
387 'critical_upper': 100, 'critical_lower': -100, 'warning_upper': 90,
388 'warning_lower': -99, 'emergency_enabled': True},
389 '190': {'object_path': 'temperature/cpu1/core2', 'poll_interval': 5000, 'scale': -3,
390 'units': 'C',
391 'critical_upper': 100, 'critical_lower': -100, 'warning_upper': 90,
392 'warning_lower': -99, 'emergency_enabled': True},
393 '191': {'object_path': 'temperature/cpu1/core3', 'poll_interval': 5000, 'scale': -3,
394 'units': 'C',
395 'critical_upper': 100, 'critical_lower': -100, 'warning_upper': 90,
396 'warning_lower': -99, 'emergency_enabled': True},
397 '192': {'object_path': 'temperature/cpu1/core4', 'poll_interval': 5000, 'scale': -3,
398 'units': 'C',
399 'critical_upper': 100, 'critical_lower': -100, 'warning_upper': 90,
400 'warning_lower': -99, 'emergency_enabled': True},
401 '193': {'object_path': 'temperature/cpu1/core5', 'poll_interval': 5000, 'scale': -3,
402 'units': 'C',
403 'critical_upper': 100, 'critical_lower': -100, 'warning_upper': 90,
404 'warning_lower': -99, 'emergency_enabled': True},
405 '194': {'object_path': 'temperature/cpu1/core6', 'poll_interval': 5000, 'scale': -3,
406 'units': 'C',
407 'critical_upper': 100, 'critical_lower': -100, 'warning_upper': 90,
408 'warning_lower': -99, 'emergency_enabled': True},
409 '195': {'object_path': 'temperature/cpu1/core7', 'poll_interval': 5000, 'scale': -3,
410 'units': 'C',
411 'critical_upper': 100, 'critical_lower': -100, 'warning_upper': 90,
412 'warning_lower': -99, 'emergency_enabled': True},
413 '196': {'object_path': 'temperature/cpu1/core8', 'poll_interval': 5000, 'scale': -3,
414 'units': 'C',
415 'critical_upper': 100, 'critical_lower': -100, 'warning_upper': 90,
416 'warning_lower': -99, 'emergency_enabled': True},
417 '197': {'object_path': 'temperature/cpu1/core9', 'poll_interval': 5000, 'scale': -3,
418 'units': 'C',
419 'critical_upper': 100, 'critical_lower': -100, 'warning_upper': 90,
420 'warning_lower': -99, 'emergency_enabled': True},
421 '198': {'object_path': 'temperature/cpu1/core10', 'poll_interval': 5000, 'scale': -3,
422 'units': 'C',
423 'critical_upper': 100, 'critical_lower': -100, 'warning_upper': 90,
424 'warning_lower': -99, 'emergency_enabled': True},
425 '199': {'object_path': 'temperature/cpu1/core11', 'poll_interval': 5000, 'scale': -3,
426 'units': 'C',
427 'critical_upper': 100, 'critical_lower': -100, 'warning_upper': 90,
428 'warning_lower': -99, 'emergency_enabled': True},
429 '110': {'object_path': 'temperature/dimm8', 'poll_interval': 5000, 'scale': -3,
430 'units': 'C'},
431 '111': {'object_path': 'temperature/dimm9', 'poll_interval': 5000, 'scale': -3,
432 'units': 'C'},
433 '112': {'object_path': 'temperature/dimm10', 'poll_interval': 5000, 'scale': -3,
434 'units': 'C'},
435 '113': {'object_path': 'temperature/dimm11', 'poll_interval': 5000, 'scale': -3,
436 'units': 'C'},
437 '114': {'object_path': 'temperature/dimm12', 'poll_interval': 5000, 'scale': -3,
438 'units': 'C'},
439 '115': {'object_path': 'temperature/dimm13', 'poll_interval': 5000, 'scale': -3,
440 'units': 'C'},
441 '116': {'object_path': 'temperature/dimm14', 'poll_interval': 5000, 'scale': -3,
442 'units': 'C'},
443 '117': {'object_path': 'temperature/dimm15', 'poll_interval': 5000, 'scale': -3,
444 'units': 'C'},
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500445 }
446 },
447}
448
449
450GPIO_CONFIGS = {
Gunnar Millsdca35792018-03-26 10:05:38 -0500451 'power_config': {
452 'power_good_in': 'SYS_PWROK_BUFF',
453 'power_up_outs': [
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500454 ('SOFTWARE_PGOOD', True),
455 ('BMC_POWER_UP', True),
456 ],
Gunnar Millsdca35792018-03-26 10:05:38 -0500457 'reset_outs': [
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500458 ('BMC_CP0_RESET_N', False),
459 ('BMC_CP0_PERST_ENABLE_R', False),
460 ],
461 },
Gunnar Millsdca35792018-03-26 10:05:38 -0500462 'hostctl_config': {
463 'fsi_data': 'FSI_DATA',
464 'fsi_clk': 'FSI_CLK',
465 'fsi_enable': 'FSI_ENABLE',
466 'cronus_sel': 'CRONUS_SEL',
467 'optionals': [
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500468 ],
469 },
470}
471
472
473# Miscellaneous non-poll sensor with system specific properties.
474# The sensor id is the same as those defined in ID_LOOKUP['SENSOR'].
475MISC_SENSORS = {
Gunnar Millsdca35792018-03-26 10:05:38 -0500476 0x8b: {'class': 'BootCountSensor'},
477 0x02: {'class': 'BootProgressSensor'},
478 # OCC active sensors aren't in the P9 XML yet. These are wrong.
479 0x03: {'class': 'OccStatusSensor',
480 'os_path': '/sys/bus/i2c/devices/3-0050/online'},
481 0x04: {'class': 'OccStatusSensor',
482 'os_path': '/sys/bus/i2c/devices/3-0051/online'},
483 0x91: {'class': 'OperatingSystemStatusSensor'},
484 # 0x06 : { 'class' : 'PowerCap',
Rahul Maheshwariefb92cd2017-06-11 21:54:39 -0500485 # 'os_path' : '/sys/class/hwmon/hwmon3/user_powercap' },
486}
487
488# vim: tabstop=8 expandtab shiftwidth=4 softtabstop=4