xref: /openbmc/openbmc-test-automation/data/ipmi_raw_cmd_table.py (revision 1499c918d91da0c733a2c7737a658c69e38322f3)
1e7e9171eSGeorge Keishing#!/usr/bin/env python3
2d2795d6eSGeorge Keishing
3d2795d6eSGeorge Keishingr"""
4dcf746bcSGeorge KeishingIPMI raw commands table:
5d2795d6eSGeorge Keishing
6d2795d6eSGeorge Keishing   - Define IPMI interface index, commands and expected output.
7d2795d6eSGeorge Keishing
8d2795d6eSGeorge Keishing"""
9dee719b8SNagarjun B
10dee719b8SNagarjun Bfrom robot.libraries.BuiltIn import BuiltIn
11dee719b8SNagarjun B
1245511e8dSGeorge Keishing# The currently supported cipher list.
13004ad3c9SJoy Onyerikwu# Refer:
14004ad3c9SJoy Onyerikwu# openbmc/meta-openbmc-machines/meta-openpower/meta-ibm/meta-witherspoon/recipe
15004ad3c9SJoy Onyerikwu# s-phosphor/ipmi/phosphor-ipmi-host/cipher_list.json
1620f38712SPatrick Williamsvalid_ciphers = ["17"]
1720f38712SPatrick Williamsunsupported_ciphers = ["1", "2", "15", "16"]
1839967ebcSGeorge Keishing
19d2795d6eSGeorge KeishingIPMI_RAW_CMD = {
20d2795d6eSGeorge Keishing    # Interface name
2120f38712SPatrick Williams    "power_supply_redundancy": {
22d2795d6eSGeorge Keishing        # Command action type
2320f38712SPatrick Williams        "Get": [
24d2795d6eSGeorge Keishing            # raw command, expected output(s), comment
25d2795d6eSGeorge Keishing            "0x04 0x2d 0x0b",
26d2795d6eSGeorge Keishing            "00 00 01 00",
27d2795d6eSGeorge Keishing            "Byte position 3rd LSB e.g. 01 indicates disabled",
28d2795d6eSGeorge Keishing            "00 00 02 00",
29d2795d6eSGeorge Keishing            "Byte position 3rd LSB e.g. 02 indicates enabled",
3027c1ad4eSSteven Sombar            "00 40 02 00",
3127c1ad4eSSteven Sombar            "40 is scanning enabled and 02 indicates redundancy enabled",
32d2795d6eSGeorge Keishing        ],
3320f38712SPatrick Williams        "Enabled": [
34d2795d6eSGeorge Keishing            # raw command, expected output, comment
35d2795d6eSGeorge Keishing            "0x04 0x30 0x0b 0x00 0x00 0x02 0x00 0x00 0x00 0x00 0x00 0x00",
36d2795d6eSGeorge Keishing            "none",
37d2795d6eSGeorge Keishing            "Enabled nibble position 6th LSB e.g. 0x2",
38d2795d6eSGeorge Keishing        ],
3920f38712SPatrick Williams        "Disabled": [
40d2795d6eSGeorge Keishing            # raw command, expected output, comment
41d2795d6eSGeorge Keishing            "0x04 0x30 0x0b 0x00 0x00 0x01 0x00 0x00 0x00 0x00 0x00 0x00",
42d2795d6eSGeorge Keishing            "none",
43d2795d6eSGeorge Keishing            "Enabled nibble position 6th LSB e.g. 0x1",
44d2795d6eSGeorge Keishing        ],
45abe13afdSRahul Maheshwari    },
4620f38712SPatrick Williams    "power_reading": {
4720f38712SPatrick Williams        "Get": [
48abe13afdSRahul Maheshwari            # raw command, expected output(s), comment
49abe13afdSRahul Maheshwari            "0x2c 0x02 0xdc 0x01 0x01 0x00",
50abe13afdSRahul Maheshwari            "dc d5 00 d5 00 d5 00 d5 00 00 00 00 00 00 00 00 00 00",
51abe13afdSRahul Maheshwari            "Byte position 2nd LSB e.g. d5 Instantaneous power readings",
52abe13afdSRahul Maheshwari        ],
530eb33f09SRahul Maheshwari    },
5420f38712SPatrick Williams    "conf_param": {
5520f38712SPatrick Williams        "Enabled": [
560eb33f09SRahul Maheshwari            # raw command, expected output, comment
570eb33f09SRahul Maheshwari            "0x2c 0x12 0xdc 0x02 0x00 0x01",
580eb33f09SRahul Maheshwari            "dc",
590eb33f09SRahul Maheshwari            "Enabled nibble position 6th LSB e.g. 0x01",
600eb33f09SRahul Maheshwari        ],
6120f38712SPatrick Williams        "Disabled": [
620eb33f09SRahul Maheshwari            # raw command, expected output, comment
630eb33f09SRahul Maheshwari            "0x2c 0x12 0xdc 0x02 0x00 0x00",
640eb33f09SRahul Maheshwari            "dc",
650eb33f09SRahul Maheshwari            "Disable nibble position 6th LSB e.g. 0x00",
6620f38712SPatrick Williams        ],
67160aa87eSTony Lee    },
6820f38712SPatrick Williams    "SEL_entry": {
6920f38712SPatrick Williams        "Reserve": [
70160aa87eSTony Lee            # raw command, expected output, comment
71160aa87eSTony Lee            "0x0a 0x42",
72160aa87eSTony Lee            "27 00",
73160aa87eSTony Lee            "27 is Reservation ID, LSB, 00 Reservation ID, MSB ",
740a8c8787Schithrag        ],
7520f38712SPatrick Williams        "Get_SEL_Time": [
760a8c8787Schithrag            # raw command
7720f38712SPatrick Williams            "0x0a 0x48",
780a8c8787Schithrag        ],
7920f38712SPatrick Williams        "Set_SEL_Time": [
80d7e009b6Schithrag            # raw command, expected output(s)
8120f38712SPatrick Williams            "0x0a 0x49",
8220f38712SPatrick Williams            "rsp=0xd5",
8320f38712SPatrick Williams            "not supported in present state",
8420f38712SPatrick Williams            "rsp=0xc7",
8520f38712SPatrick Williams            "Request data length invalid",
86d7e009b6Schithrag        ],
8720f38712SPatrick Williams        "Clear_SEL": [
88d7e009b6Schithrag            # raw command, expected output(s)
89d7e009b6Schithrag            "0x0a 0x47",
90d7e009b6Schithrag            "0x43 0x4c 0x52 0xaa",
91d7e009b6Schithrag            "sel clear",
92d7e009b6Schithrag            "Clearing SEL",
93d7e009b6Schithrag            "rsp=0xc5",
94d7e009b6Schithrag            "Reservation cancelled or invalid",
95d7e009b6Schithrag            "0x43 0x4c 0x52 0x00",
96d7e009b6Schithrag        ],
9720f38712SPatrick Williams        "SEL_info": [
98d7e009b6Schithrag            # raw command
99d7e009b6Schithrag            "0x0a 0x40"
1000a8c8787Schithrag        ],
10120f38712SPatrick Williams        "Create_SEL": [
102a8aee234Sganesanb            # raw command, expected output, comment
103a8aee234Sganesanb            "0x0a 0x44 0x00 0x00 0x02 0x00 0x00 0x00 0x00",
104a8aee234Sganesanb            "0x04",
1050a8c8787Schithrag            "0x00 0xa0 0x04 0x07",
1060a8c8787Schithrag        ],
10720f38712SPatrick Williams        "Get_SEL_Entry": [
108d7e009b6Schithrag            # raw command
109d7e009b6Schithrag            "0x0a 0x43 0x00 0x00",
110d7e009b6Schithrag            "0x00 0xff",
111d7e009b6Schithrag        ],
1123fdd31e5STony Lee    },
11320f38712SPatrick Williams    "Self_Test_Results": {
11420f38712SPatrick Williams        "Get": [
1153fdd31e5STony Lee            # raw command, expected output(s), comment
1163fdd31e5STony Lee            "0x06 0x04",
1173fdd31e5STony Lee            "56 00",
1183fdd31e5STony Lee            "56h = Self Test function not implemented in this controller.",
1193fdd31e5STony Lee        ]
1203fdd31e5STony Lee    },
12120f38712SPatrick Williams    "Device GUID": {
12220f38712SPatrick Williams        "Get": [
1233fdd31e5STony Lee            # raw command, expected output(s), comment
1243fdd31e5STony Lee            "0x06 0x08",
1253fdd31e5STony Lee            "01 70 9b ae da 6f dd 9c b4 4c 36 be 66 c8 49 28",
1263fdd31e5STony Lee            "Get GUID bytes 1 through 16.",
1273fdd31e5STony Lee        ]
128c03c8e21STony Lee    },
12920f38712SPatrick Williams    "LAN_Config_Params": {
13020f38712SPatrick Williams        "Get": [
131c03c8e21STony Lee            # raw command, expected output, comment
132c03c8e21STony Lee            "0x0c 0x02",
133c03c8e21STony Lee            "11 02",
13420f38712SPatrick Williams            (
13520f38712SPatrick Williams                "11 is Parameter revision, 02 is Configuration parameter data"
13620f38712SPatrick Williams                " e.g. Cipher Suite Entry count"
13720f38712SPatrick Williams            ),
1384ad123acSchithrag        ],
13920f38712SPatrick Williams        "Set": [
1404ad123acSchithrag            # raw command, expected output, error response
1414ad123acSchithrag            "0x0c 0x01",
1424ad123acSchithrag            "11 00",
1434ad123acSchithrag            "Unknown (0x82)",
1444ad123acSchithrag            "Invalid data field in request",
1454ad123acSchithrag        ],
1466c998f75STony Lee    },
14720f38712SPatrick Williams    "Payload": {
14820f38712SPatrick Williams        "Get_Payload_Activation_Status": [
1496c998f75STony Lee            # raw command, expected output(s), comment
1506c998f75STony Lee            "0x06 0x4a 0x01",
1516c998f75STony Lee            "01 00 00",
15220f38712SPatrick Williams            (
15320f38712SPatrick Williams                "1st byte is instance capacity, last two bytes is activation"
15420f38712SPatrick Williams                " status of instances"
15520f38712SPatrick Williams            ),
1566c998f75STony Lee        ],
15720f38712SPatrick Williams        "Activate_Payload": [
1586c998f75STony Lee            # raw command, expected output(s), comment
1596c998f75STony Lee            "0x06 0x48 0x01 0x01 0xc6 0x00 0x00 0x00",
1606c998f75STony Lee            "00 00 00 00 ff 00 ff 00 6f 02 ff ff",
16120f38712SPatrick Williams            (
16220f38712SPatrick Williams                "Last two bits are payload vlan number, - FFFFh if VLAN"
16320f38712SPatrick Williams                " addressing is not used"
16420f38712SPatrick Williams            ),
1656c998f75STony Lee        ],
16620f38712SPatrick Williams        "Deactivate_Payload": [
1676c998f75STony Lee            # raw command, expected output(s), comment
1686c998f75STony Lee            "0x06 0x49 0x01 0x01 0x00 0x00 0x00 0x00",
1696c998f75STony Lee            "",
1706c998f75STony Lee            "Line feed only",
1716c998f75STony Lee        ],
17220f38712SPatrick Williams        "Get_Payload_Instance_Info": [
1736c998f75STony Lee            # raw command, expected output(s), comment
1746c998f75STony Lee            "0x06 0x4b 0x01 0x01",
1756c998f75STony Lee            "00 00 00 00 00 00 00 00 00 00 00 00",
17620f38712SPatrick Williams            (
17720f38712SPatrick Williams                "When the payload is activated, the first four bytes are the"
17820f38712SPatrick Williams                " session ID,otherwise it should be 00."
17920f38712SPatrick Williams            ),
180a2255de5Snagarjunb22        ],
18120f38712SPatrick Williams        "Get_User_Access_Payload": [
182a2255de5Snagarjunb22            # raw command,
183a2255de5Snagarjunb22            "0x06 0x4d"
184a2255de5Snagarjunb22        ],
18520f38712SPatrick Williams        "Set_User_Access_Payload": [
186a2255de5Snagarjunb22            # raw command,
187a2255de5Snagarjunb22            "0x06 0x4c"
188a2255de5Snagarjunb22        ],
18920f38712SPatrick Williams        "Get_Channel_Payload_Version": [
19093e6e242Snagarjunb22            # raw command,
19193e6e242Snagarjunb22            "0x06 0x4F"
19293e6e242Snagarjunb22        ],
19320f38712SPatrick Williams        "Get_Channel_Payload_Support": [
19493e6e242Snagarjunb22            # raw command,
19593e6e242Snagarjunb22            "0x06 0x4E"
19693e6e242Snagarjunb22        ],
197e94e5401SNagarjun    },
19820f38712SPatrick Williams    "BIOS_POST_Code": {
19920f38712SPatrick Williams        "Get": [
200e94e5401SNagarjun            # raw command, expected output, comment
201e94e5401SNagarjun            "0x30 0xe9",
202e94e5401SNagarjun            "",
203e94e5401SNagarjun            "Response bytes will vary in length depending on state of system",
204e94e5401SNagarjun            "0x89",
20520f38712SPatrick Williams            "error response byte when host is powered off",
206e94e5401SNagarjun        ]
207cfb2c415Snagarjunb22    },
20820f38712SPatrick Williams    "Device ID": {
20920f38712SPatrick Williams        "Get": [
2108a17c49cSchithrag            # raw command, error response, error code
2118a17c49cSchithrag            "0x06 0x01",
2128a17c49cSchithrag            "Error: Unable to establish IPMI v2 / RMCP+ session",
2138a17c49cSchithrag            "0xc7",
214cfb2c415Snagarjunb22        ]
215cfb2c415Snagarjunb22    },
21620f38712SPatrick Williams    "Cold Reset": {
21720f38712SPatrick Williams        "reset": [
218cfb2c415Snagarjunb22            # raw command
219cfb2c415Snagarjunb22            "0x06 0x02"
220cfb2c415Snagarjunb22        ]
221cfb2c415Snagarjunb22    },
22220f38712SPatrick Williams    "lan_parameters": {
22320f38712SPatrick Williams        "get_ip": [
224cfb2c415Snagarjunb22            # raw command
225dee719b8SNagarjun B            "0x0c 0x02 0x"
226dee719b8SNagarjun B            + BuiltIn().get_variable_value("${CHANNEL_NUMBER}")
227dee719b8SNagarjun B            + " 0x03 0 0",
228cfb2c415Snagarjunb22        ],
22920f38712SPatrick Williams        "get_ip_src": [
230cfb2c415Snagarjunb22            # raw command
231dee719b8SNagarjun B            "0x0c 0x02 0x"
232dee719b8SNagarjun B            + BuiltIn().get_variable_value("${CHANNEL_NUMBER}")
233dee719b8SNagarjun B            + " 0x04 0 0",
234cfb2c415Snagarjunb22        ],
23520f38712SPatrick Williams        "get_dot1q": [
236cfb2c415Snagarjunb22            # raw command
237dee719b8SNagarjun B            "0x0c 0x02 0x"
238dee719b8SNagarjun B            + BuiltIn().get_variable_value("${CHANNEL_NUMBER}")
239dee719b8SNagarjun B            + " 0x14 0 0",
24020f38712SPatrick Williams        ],
241cfb2c415Snagarjunb22    },
24220f38712SPatrick Williams    "SDR_Info": {
24320f38712SPatrick Williams        "get": [
244cfb2c415Snagarjunb22            # raw command
245cfb2c415Snagarjunb22            "0x04 0x20 1"
246cfb2c415Snagarjunb22        ]
247cfb2c415Snagarjunb22    },
24820f38712SPatrick Williams    "Chassis_status": {
24920f38712SPatrick Williams        "get": [
250cfb2c415Snagarjunb22            # raw command
251cfb2c415Snagarjunb22            "0x00 0x01"
252cfb2c415Snagarjunb22        ]
253cfb2c415Snagarjunb22    },
25420f38712SPatrick Williams    "SEL_Info": {
25520f38712SPatrick Williams        "get": [
256cfb2c415Snagarjunb22            # raw command
257cfb2c415Snagarjunb22            "0x0a 0x40"
258cfb2c415Snagarjunb22        ]
259cfb2c415Snagarjunb22    },
26020f38712SPatrick Williams    "Watchdog": {
261de9356efSleet        # Command action type
26220f38712SPatrick Williams        "Get": [
263de9356efSleet            # raw command, expected output(s), comment
264de9356efSleet            "0x06 0x25",
265de9356efSleet            "05 00 00 00 64 00",
266de9356efSleet            "don't log bit enabled",
267de9356efSleet            "85 00 00 00 64 00",
268de9356efSleet            "don't log bit disabled",
269de9356efSleet            "05 00 00 00 64 00",
270de9356efSleet            "stop bit stop",
271de9356efSleet            "45 00 00 00 64 00",
272de9356efSleet            "stop bit resume",
273de9356efSleet            "01 00 00 00 64 00",
274de9356efSleet            "timer use FRB2",
275de9356efSleet            "02 00 00 00 64 00",
276de9356efSleet            "timer use POST",
277de9356efSleet            "03 00 00 00 64 00",
278de9356efSleet            "timer use OS",
279de9356efSleet            "04 00 00 00 64 00",
280de9356efSleet            "timer use SMS",
281de9356efSleet            "05 00 00 00 64 00",
282de9356efSleet            "timer use OEM",
283de9356efSleet            "05 00 00 00 64 00",
284de9356efSleet            "pre-timeout interrupt None",
285de9356efSleet            "05 20 00 00 64 00",
286de9356efSleet            "pre-timeout interrupt NMI",
287de9356efSleet            "05 00 00 00 64 00",
288de9356efSleet            "timeout action None",
289de9356efSleet            "05 01 00 00 64 00",
290de9356efSleet            "timeout action Reset",
291de9356efSleet            "05 02 00 00 64 00",
292de9356efSleet            "timeout action PowerDown",
293de9356efSleet            "05 03 00 00 64 00",
294de9356efSleet            "timeout action PowerCycle",
295de9356efSleet            "01 00 00 02 00 00",
296de9356efSleet            "timeout flag FRB2",
297de9356efSleet            "02 00 00 04 00 00",
298de9356efSleet            "timeout flag POST",
299de9356efSleet            "03 00 00 08 00 00",
300de9356efSleet            "timeout flag OS",
301de9356efSleet            "04 00 00 10 00 00",
302de9356efSleet            "timeout flag SMS",
303de9356efSleet            "05 00 00 20 00 00",
304de9356efSleet            "timeout flag OEM",
305de9356efSleet            "05 00 00 00 30 35 30 35",
306de9356efSleet            "Get should return 13.6 seconds",
307de9356efSleet            "05 00 00 00 ff ff ff ff",
308de9356efSleet            "Bit 6 not set when timer stopped",
309de9356efSleet            "0x06 0x25 0x00",
310de9356efSleet            "Get with one extra byte",
311de9356efSleet        ],
31220f38712SPatrick Williams        "Set": [
313de9356efSleet            # raw command, expected output, comment
314de9356efSleet            "0x06 0x24 0x05 0x00 0x00 0x00 0x64 0x00",
315de9356efSleet            "none",
316de9356efSleet            "don't log bit enabled",
317de9356efSleet            "0x06 0x24 0x85 0x00 0x00 0x00 0x64 0x00",
318de9356efSleet            "none",
319de9356efSleet            "don't log bit disabled",
320de9356efSleet            "0x06 0x24 0x05 0x00 0x00 0x00 0x64 0x00",
321de9356efSleet            "none",
322de9356efSleet            "stop bit stop",
323de9356efSleet            "0x06 0x24 0x45 0x00 0x00 0x00 0x64 0x00",
324de9356efSleet            "none",
325de9356efSleet            "stop bit resume",
326de9356efSleet            "0x06 0x24 0x01 0x00 0x00 0x00 0x64 0x00",
327de9356efSleet            "none",
328de9356efSleet            "timer use FRB2",
329de9356efSleet            "0x06 0x24 0x02 0x00 0x00 0x00 0x64 0x00",
330de9356efSleet            "none",
331de9356efSleet            "timer use POST",
332de9356efSleet            "0x06 0x24 0x03 0x00 0x00 0x00 0x64 0x00",
333de9356efSleet            "none",
334de9356efSleet            "timer use OS",
335de9356efSleet            "0x06 0x24 0x04 0x00 0x00 0x00 0x64 0x00",
336de9356efSleet            "none",
337de9356efSleet            "timer use SMS",
338de9356efSleet            "0x06 0x24 0x05 0x00 0x00 0x00 0x64 0x00",
339de9356efSleet            "none",
340de9356efSleet            "timer use OEM",
341de9356efSleet            "0x06 0x24 0x05 0x00 0x00 0x00 0x64 0x00",
342de9356efSleet            "none",
343de9356efSleet            "pre-timeout interrupt None",
344de9356efSleet            "0x06 0x24 0x05 0x20 0x00 0x00 0x64 0x00",
345de9356efSleet            "none",
346de9356efSleet            "pre-timeout interrupt NMI",
347de9356efSleet            "0x06 0x24 0x05 0x00 0x00 0x00 0x64 0x00",
348de9356efSleet            "none",
349de9356efSleet            "timeout action None",
350de9356efSleet            "0x06 0x24 0x05 0x01 0x00 0x00 0x64 0x00",
351de9356efSleet            "none",
352de9356efSleet            "timeout action Reset",
353de9356efSleet            "0x06 0x24 0x05 0x02 0x00 0x00 0x64 0x00",
354de9356efSleet            "none",
355de9356efSleet            "timeout action PowerDown",
356de9356efSleet            "0x06 0x24 0x05 0x03 0x00 0x00 0x64 0x00",
357de9356efSleet            "none",
358de9356efSleet            "timeout action PowerCycle",
359de9356efSleet            "0x06 0x24 0x01 0x00 0x00 0x3e 0x00 0x00",
360de9356efSleet            "none",
361de9356efSleet            "timeout flag FRB2",
362de9356efSleet            "0x06 0x24 0x02 0x00 0x00 0x3e 0x00 0x00",
363de9356efSleet            "none",
364de9356efSleet            "timeout flag POST",
365de9356efSleet            "0x06 0x24 0x03 0x00 0x00 0x3e 0x00 0x00",
366de9356efSleet            "none",
367de9356efSleet            "timeout flag OS",
368de9356efSleet            "0x06 0x24 0x04 0x00 0x00 0x3e 0x00 0x00",
369de9356efSleet            "none",
370de9356efSleet            "timeout flag SMS",
371de9356efSleet            "0x06 0x24 0x05 0x00 0x00 0x3e 0x00 0x00",
372de9356efSleet            "none",
373de9356efSleet            "timeout flag OEM",
374de9356efSleet            "0x06 0x24 0x01 0x02 0x00 0x00 0x20 0x00",
375de9356efSleet            "none",
376de9356efSleet            "Power down",
377de9356efSleet            "0x06 0x24 0x01 0x01 0x00 0x00 0x20 0x00",
378de9356efSleet            "none",
379de9356efSleet            "Hard reset",
380de9356efSleet            "0x06 0x24 0x01 0x03 0x00 0x00 0x20 0x00",
381de9356efSleet            "none",
382de9356efSleet            "Power cycle",
383de9356efSleet            "0x06 0x24 0x01 0x00 0x00 0x00 0x20 0x00",
384de9356efSleet            "none",
385de9356efSleet            "No action",
386de9356efSleet            "0x06 0x24 0x05 0x00 0x00 0x3e 0x30 0x35",
387de9356efSleet            "none",
388de9356efSleet            "Set for 13.6 seconds",
389de9356efSleet            "0x06 0x24 0x05 0x00 0x07 0x00 0x50 0x00",
390de9356efSleet            "none",
391de9356efSleet            "Pre-timeout interval passes",
392de9356efSleet            "0x06 0x24 0x05 0x00 0x04 0x00 0x0A 0x00",
393de9356efSleet            "none",
394de9356efSleet            "Pre-timeout interval fails",
395de9356efSleet            "0x06 0x24 0x05 0x00 0x00 0x20 0xFF 0xFF",
396de9356efSleet            "none",
397de9356efSleet            "Bit 6 not set when timer stopped",
398de9356efSleet            "0x06 0x24 0x05 0x00 0x08 0x00 0x64",
399de9356efSleet            "none",
400de9356efSleet            "Set with one less byte",
401de9356efSleet            "0x06 0x24 0x05 0x00 0x08 0x00 0x64 0x00 0x00",
402de9356efSleet            "none",
403de9356efSleet            "Set with one extra byte",
404de9356efSleet        ],
40520f38712SPatrick Williams        "Reset": [
406de9356efSleet            # raw command, expected output, comment
407de9356efSleet            "0x06 0x22",
408de9356efSleet            "none",
409de9356efSleet            "Reset watchdog timer",
410de9356efSleet            "0x06 0x22 0x00",
411de9356efSleet            "none",
412de9356efSleet            "Reset watchdog timer with extra byte",
413de9356efSleet            "0x06 0x22",
414de9356efSleet            "none",
415de9356efSleet            "Reset watchdog timer without initialized watchdog",
41620f38712SPatrick Williams        ],
417782ad284Schithrag    },
41820f38712SPatrick Williams    "SOL": {
41920f38712SPatrick Williams        "Set_SOL": [
420e635ddc0SGeorge Keishing            # raw command, expected output(s), comment
42120f38712SPatrick Williams            "Invalid value",
42220f38712SPatrick Williams            "Valid values are serial, 9.6 19.2, 38.4, 57.6 and 115.2",
423e635ddc0SGeorge Keishing        ]
424e635ddc0SGeorge Keishing    },
42520f38712SPatrick Williams    "Get SDR": {
42620f38712SPatrick Williams        "Get": [
427782ad284Schithrag            # Get SDR raw command without Reservation ID.
428782ad284Schithrag            "0x0a 0x23 0x00 0x00 0x00 0x00 0x00 0xff",
429782ad284Schithrag            # Netfunction and cmd.
430782ad284Schithrag            "0x0a 0x23",
431782ad284Schithrag            # Record ID offset and bytes to read.
4328ea859eeSnagarjunb22            "0x01 0x0f",
433782ad284Schithrag            #  Raw command To Get SDR Partial without Reservation ID.
43420f38712SPatrick Williams            "0x0a 0x23 0x00 0x00 0x00 0x00 0x01 0x0f",
435dc5679e2Schithrag        ],
436a6be41edSchithrag    },
43720f38712SPatrick Williams    "Get": {
43820f38712SPatrick Williams        "POH_Counter": [
439a6be41edSchithrag            # raw command, error response
44020f38712SPatrick Williams            "0x00 0x0f",
44120f38712SPatrick Williams            "Error: Unable to establish IPMI v2 / RMCP+ session",
442a6be41edSchithrag        ]
443782ad284Schithrag    },
44420f38712SPatrick Williams    "Device_SDR": {
44520f38712SPatrick Williams        "Get_Info": [
446782ad284Schithrag            # raw command, expected output(s), comment
447782ad284Schithrag            "0x04 0x20 0x00",
448782ad284Schithrag            "0x04 0x20 0x01",
449782ad284Schithrag            "rsp=0xc7",
450782ad284Schithrag            "Request data length invalid",
451782ad284Schithrag            "rsp=0xd4",
452782ad284Schithrag            "Insufficient privilege level",
453782ad284Schithrag        ],
45420f38712SPatrick Williams        "Get": [
455782ad284Schithrag            # raw command, expected output(s), comment
456782ad284Schithrag            "0x04 0x21",
457782ad284Schithrag            "0x00 0x00 0x00 0xff",
458782ad284Schithrag            "rsp=0xc7",
459782ad284Schithrag            "Request data length invalid",
460782ad284Schithrag        ],
46120f38712SPatrick Williams        "Reserve_Repository": [
462782ad284Schithrag            # raw command, expected output(s), comment
463782ad284Schithrag            "0x04 0x22",
464782ad284Schithrag            "rsp=0xc7",
465782ad284Schithrag            "Request data length invalid",
466782ad284Schithrag            "rsp=0xd4",
467782ad284Schithrag            "Insufficient privilege level",
468782ad284Schithrag            "Reservation cancelled or invalid",
46920f38712SPatrick Williams        ],
470015f787cSchithrag    },
47120f38712SPatrick Williams    "System_Info": {
47220f38712SPatrick Williams        "param0_Set_In_Progress": {
47320f38712SPatrick Williams            "Get": [
474015f787cSchithrag                # raw command, expected output(s)
475015f787cSchithrag                "0x06 0x59 0x00 0x00 0x00 0x00",
476015f787cSchithrag                "Request data length invalid",
477015f787cSchithrag            ],
47820f38712SPatrick Williams            "Set": [
479015f787cSchithrag                # raw command, expected output(s)
480fc0c35a2Sganesanb                "0x06 0x58 0x00",
481015f787cSchithrag                "Request data length invalid",
482015f787cSchithrag                "Invalid data field in request",
483015f787cSchithrag            ],
484015f787cSchithrag        },
48520f38712SPatrick Williams        "param1_System_Firmware_Version": {
48620f38712SPatrick Williams            "Get": [
487015f787cSchithrag                # raw command, expected output(s)
488015f787cSchithrag                "0x06 0x59 0x00 0x01 0x00 0x00",
489015f787cSchithrag                "Request data length invalid",
490015f787cSchithrag            ],
49120f38712SPatrick Williams            "Set": [
492015f787cSchithrag                # raw command, expected output(s)
493015f787cSchithrag                "0x06 0x58 0x01 0x00 0x00 0x0e",
494015f787cSchithrag                "Invalid data field in request",
495015f787cSchithrag            ],
496015f787cSchithrag        },
49720f38712SPatrick Williams        "param2_System_Name": {
49820f38712SPatrick Williams            "Get": [
499015f787cSchithrag                # raw command, expected output(s)
500015f787cSchithrag                "0x06 0x59 0x00 0x02 0x00 0x00",
501015f787cSchithrag                "Request data length invalid",
502015f787cSchithrag            ],
50320f38712SPatrick Williams            "Set": [
504015f787cSchithrag                # raw command, expected output(s)
505015f787cSchithrag                "0x06 0x58 0x02 0x00 0x00 0x0e",
506015f787cSchithrag                "Invalid data field in request",
507015f787cSchithrag            ],
508015f787cSchithrag        },
50920f38712SPatrick Williams        "param3_Primary_Operating_System_Name": {
51020f38712SPatrick Williams            "Get": [
511015f787cSchithrag                # raw command, expected output(s)
512015f787cSchithrag                "0x06 0x59 0x00 0x03 0x00 0x00",
513015f787cSchithrag                "Request data length invalid",
514015f787cSchithrag            ],
51520f38712SPatrick Williams            "Set": [
516015f787cSchithrag                # raw command, expected output(s)
517015f787cSchithrag                "0x06 0x58 0x03 0x00 0x00 0x0e",
518015f787cSchithrag                "Invalid data field in request",
519015f787cSchithrag            ],
520015f787cSchithrag        },
52120f38712SPatrick Williams        "param4_Operating_System_Name": {
52220f38712SPatrick Williams            "Get": [
523015f787cSchithrag                # raw command, expected output(s)
524015f787cSchithrag                "0x06 0x59 0x00 0x04 0x00 0x00",
525015f787cSchithrag                "Request data length invalid",
526015f787cSchithrag            ],
52720f38712SPatrick Williams            "Set": [
528015f787cSchithrag                # raw command, expected output(s)
529015f787cSchithrag                "0x06 0x58 0x04 0x00 0x00 0x0e",
530015f787cSchithrag                "Invalid data field in request",
531015f787cSchithrag            ],
532015f787cSchithrag        },
53320f38712SPatrick Williams        "param5_Present_OS_Version_number": {
53420f38712SPatrick Williams            "Get": [
535015f787cSchithrag                # raw command, expected output(s)
536015f787cSchithrag                "0x06 0x59 0x00 0x05 0x00 0x00",
537015f787cSchithrag                "Request data length invalid",
538015f787cSchithrag            ],
53920f38712SPatrick Williams            "Set": [
540015f787cSchithrag                # raw command, expected output(s)
541015f787cSchithrag                "0x06 0x58 0x05 0x00 0x00 0x0e",
542015f787cSchithrag                "Invalid data field in request",
54320f38712SPatrick Williams            ],
5449845074aSnagarjunb22        },
54520f38712SPatrick Williams    },
54620f38712SPatrick Williams    "Get Channel Auth Cap": {
54720f38712SPatrick Williams        "get": [
5489845074aSnagarjunb22            # raw command
5499845074aSnagarjunb22            "0x06 0x38",
5509845074aSnagarjunb22        ]
5519845074aSnagarjunb22    },
55220f38712SPatrick Williams    "Cipher Suite": {
55320f38712SPatrick Williams        "get": [
5547fabf794Snagarjunb22            # raw command, supported algorithm
5557fabf794Snagarjunb22            "0x06 0x54",
5567fabf794Snagarjunb22            "03 44 81",
5577fabf794Snagarjunb22            # 03 - HMAC-SHA256
5587fabf794Snagarjunb22            # 44 - sha256_128
5597fabf794Snagarjunb22            # 81 - aes_cbc_128
5607fabf794Snagarjunb22        ]
5617fabf794Snagarjunb22    },
56220f38712SPatrick Williams    "SDR": {
56320f38712SPatrick Williams        "Get": [
56487138e6fSnagarjunb22            # Get SDR raw command without Reservation ID.
56587138e6fSnagarjunb22            "0x0a 0x23 0x00 0x00 0x00 0x00 0x00 0xff",
56687138e6fSnagarjunb22            # Netfunction and command.
56787138e6fSnagarjunb22            "0x0a 0x23",
56887138e6fSnagarjunb22            # Record ID offset and bytes to read.
56987138e6fSnagarjunb22            "0x00 0x00 0x01 0x0f",
57087138e6fSnagarjunb22            #  Raw command To Get SDR Partial without reservation ID.
57120f38712SPatrick Williams            "0x0a 0x23 0x00 0x00 0x00 0x00 0x01 0x0f",
57287138e6fSnagarjunb22        ],
57320f38712SPatrick Williams        "Reserve SDR Repository": [
57487138e6fSnagarjunb22            # raw command, expected output(s), comment
57587138e6fSnagarjunb22            "0x0a 0x22",
57687138e6fSnagarjunb22        ],
57720f38712SPatrick Williams        "SDR Repository Info": [
57887138e6fSnagarjunb22            # raw command.
57987138e6fSnagarjunb22            "0x0a 0x20",
58087138e6fSnagarjunb22        ],
58120f38712SPatrick Williams        "Get SDR allocation Info": [
58287138e6fSnagarjunb22            # raw command.
58387138e6fSnagarjunb22            "0x0a 0x21"
58487138e6fSnagarjunb22        ],
58520f38712SPatrick Williams        "Delete SDR": [
58687138e6fSnagarjunb22            # raw command.
58787138e6fSnagarjunb22            "0x0a 0x26"
58887138e6fSnagarjunb22        ],
58920f38712SPatrick Williams        "Partially Add SDR": [
59087138e6fSnagarjunb22            # raw command.
59187138e6fSnagarjunb22            "0x0a 0x25"
59220f38712SPatrick Williams        ],
59387138e6fSnagarjunb22    },
59420f38712SPatrick Williams    "FRU": {
59520f38712SPatrick Williams        "Inventory_Area_Info": [
596c288affeSganesanb            # raw command, expected output(s), comment
597c288affeSganesanb            "0x0a 0x10",
598c288affeSganesanb            "Invalid data field in request",
59920f38712SPatrick Williams            "Request data length invalid",
600c288affeSganesanb        ],
60120f38712SPatrick Williams        "Read": [
602c288affeSganesanb            # raw command
603c288affeSganesanb            "0x0a 0x11",
604c288affeSganesanb        ],
60520f38712SPatrick Williams        "Write": [
606c288affeSganesanb            # raw command
607c288affeSganesanb            "0x0a 0x12",
608c288affeSganesanb        ],
609c288affeSganesanb    },
610*1499c918SNagarjun B    "Chassis Capabilities": {
611*1499c918SNagarjun B        "Get": [
612*1499c918SNagarjun B            # raw command, invalid data length
613*1499c918SNagarjun B            "0x00 0x00",
614*1499c918SNagarjun B            "0x00 0x00 0x01",
615*1499c918SNagarjun B        ]
616*1499c918SNagarjun B    },
617d2795d6eSGeorge Keishing}
618