blob: 50b77f1f34e16d850026b28894c3979ddfedfe83 [file] [log] [blame]
George Keishinge7e91712021-09-03 11:28:44 -05001#!/usr/bin/env python3
George Keishingd2795d62018-02-04 23:12:23 -06002
3r"""
George Keishingdcf746b2018-02-06 12:43:44 -06004IPMI raw commands table:
George Keishingd2795d62018-02-04 23:12:23 -06005
6 - Define IPMI interface index, commands and expected output.
7
8"""
9
George Keishing45511e82019-10-15 01:26:55 -050010# The currently supported cipher list.
Joy Onyerikwu004ad3c2018-06-11 16:29:56 -050011# Refer:
12# openbmc/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipe
13# s-phosphor/ipmi/phosphor-ipmi-host/cipher_list.json
Rahul Maheshwari3aeae4e2020-04-03 07:45:50 -050014valid_ciphers = ['17']
George Keishing45511e82019-10-15 01:26:55 -050015unsupported_ciphers = ['1', '2', '15', '16']
George Keishing39967eb2018-04-30 11:36:23 -050016
George Keishingd2795d62018-02-04 23:12:23 -060017IPMI_RAW_CMD = {
18 # Interface name
19 'power_supply_redundancy':
20 {
21 # Command action type
22 'Get':
23 [
24 # raw command, expected output(s), comment
25 "0x04 0x2d 0x0b",
26 "00 00 01 00",
27 "Byte position 3rd LSB e.g. 01 indicates disabled",
28 "00 00 02 00",
29 "Byte position 3rd LSB e.g. 02 indicates enabled",
Steven Sombar27c1ad42018-09-11 14:44:25 -050030 "00 40 02 00",
31 "40 is scanning enabled and 02 indicates redundancy enabled",
George Keishingd2795d62018-02-04 23:12:23 -060032 ],
33 'Enabled':
34 [
35 # raw command, expected output, comment
36 "0x04 0x30 0x0b 0x00 0x00 0x02 0x00 0x00 0x00 0x00 0x00 0x00",
37 "none",
38 "Enabled nibble position 6th LSB e.g. 0x2",
39 ],
40 'Disabled':
41 [
42 # raw command, expected output, comment
43 "0x04 0x30 0x0b 0x00 0x00 0x01 0x00 0x00 0x00 0x00 0x00 0x00",
44 "none",
45 "Enabled nibble position 6th LSB e.g. 0x1",
46 ],
Rahul Maheshwariabe13af2018-02-15 22:42:08 -060047 },
48 'power_reading':
49 {
50 'Get':
51 [
52 # raw command, expected output(s), comment
53 "0x2c 0x02 0xdc 0x01 0x01 0x00",
54 "dc d5 00 d5 00 d5 00 d5 00 00 00 00 00 00 00 00 00 00",
55 "Byte position 2nd LSB e.g. d5 Instantaneous power readings",
56 ],
Rahul Maheshwari0eb33f02018-04-10 02:31:54 -050057 },
58 'conf_param':
59 {
60 'Enabled':
61 [
62 # raw command, expected output, comment
63 "0x2c 0x12 0xdc 0x02 0x00 0x01",
64 "dc",
65 "Enabled nibble position 6th LSB e.g. 0x01",
66 ],
67 'Disabled':
68 [
69 # raw command, expected output, comment
70 "0x2c 0x12 0xdc 0x02 0x00 0x00",
71 "dc",
72 "Disable nibble position 6th LSB e.g. 0x00",
73 ]
Tony Lee160aa872020-02-12 16:11:39 +080074 },
75 'SEL_entry':
76 {
Tony Lee160aa872020-02-12 16:11:39 +080077 'Reserve':
78 [
79 # raw command, expected output, comment
80 "0x0a 0x42",
81 "27 00",
82 "27 is Reservation ID, LSB, 00 Reservation ID, MSB ",
83 ]
Tony Lee3fdd31e2020-02-15 11:21:40 +080084 },
85 'Self_Test_Results':
86 {
87 'Get':
88 [
89 # raw command, expected output(s), comment
90 "0x06 0x04",
91 "56 00",
92 "56h = Self Test function not implemented in this controller.",
93 ]
94 },
95 'Device GUID':
96 {
97 'Get':
98 [
99 # raw command, expected output(s), comment
100 "0x06 0x08",
101 "01 70 9b ae da 6f dd 9c b4 4c 36 be 66 c8 49 28",
102 "Get GUID bytes 1 through 16.",
103
104 ]
Tony Leec03c8e22020-03-25 13:41:07 +0800105 },
106 'LAN_Config_Params':
107 {
108 'Get':
109 [
110 # raw command, expected output, comment
111 "0x0c 0x02",
112 "11 02",
113 "11 is Parameter revision, 02 is Configuration parameter data e.g. Cipher Suite Entry count",
114 ]
Tony Lee6c998f72020-03-09 18:28:35 +0800115 },
116 'Payload':
117 {
118 'Get_Payload_Activation_Status':
119 [
120 # raw command, expected output(s), comment
121 "0x06 0x4a 0x01",
122 "01 00 00",
123 "1st byte is instance capacity, last two bytes is activation status of instances",
124 ],
125 'Activate_Payload':
126 [
127 # raw command, expected output(s), comment
128 "0x06 0x48 0x01 0x01 0xc6 0x00 0x00 0x00",
129 "00 00 00 00 ff 00 ff 00 6f 02 ff ff",
130 "Last two bits are payload vlan number, - FFFFh if VLAN addressing is not used",
131 ],
132 'Deactivate_Payload':
133 [
134 # raw command, expected output(s), comment
135 "0x06 0x49 0x01 0x01 0x00 0x00 0x00 0x00",
136 "",
137 "Line feed only",
138 ],
139 'Get_Payload_Instance_Info':
140 [
141 # raw command, expected output(s), comment
142 "0x06 0x4b 0x01 0x01",
143 "00 00 00 00 00 00 00 00 00 00 00 00",
144 "When the payload is activated, the first four bytes are the session ID,"
145 "otherwise it should be 00."
146 ]
Nagarjune94e5402022-01-19 15:26:27 -0500147 },
148 'BIOS_POST_Code':
149 {
150 'Get':
151 [
152 # raw command, expected output, comment
153 "0x30 0xe9",
154 "",
155 "Response bytes will vary in length depending on state of system",
156 "0x89",
157 "error response byte when host is powered off"
158 ]
nagarjunb22cfb2c412022-03-15 15:49:27 +0530159 },
160 'Device ID':
161 {
162 'Get':
163 [
164 # raw command
165 "0x06 0x01"
166 ]
167 },
168 'Cold Reset':
169 {
170 'reset':
171 [
172 # raw command
173 "0x06 0x02"
174 ]
175 },
176 'lan_parameters':
177 {
178 'get_ip':
179 [
180 # raw command
181 "0x0c 0x02 0x01 0x03 0 0"
182 ],
183 'get_ip_src':
184 [
185 # raw command
186 "0x0c 0x02 0x01 0x04 0 0"
187 ],
188 'get_dot1q':
189 [
190 # raw command
191 "0x0c 0x02 0x01 0x14 0 0"
192 ]
193 },
194 'SDR_Info':
195 {
196 'get':
197 [
198 # raw command
199 "0x04 0x20 1"
200 ]
201 },
202 'Chassis_status':
203 {
204 'get':
205 [
206 # raw command
207 "0x00 0x01"
208 ]
209 },
210 'SEL_Info':
211 {
212 'get':
213 [
214 # raw command
215 "0x0a 0x40"
216 ]
217 },
George Keishingd2795d62018-02-04 23:12:23 -0600218}