xref: /openbmc/ipmitool/lib/ipmi_strings.c (revision 0caa6811)
1c18ec02fSPetter Reinholdtsen /*
2c18ec02fSPetter Reinholdtsen  * Copyright (c) 2003 Sun Microsystems, Inc.  All Rights Reserved.
3c18ec02fSPetter Reinholdtsen  *
4c18ec02fSPetter Reinholdtsen  * Redistribution and use in source and binary forms, with or without
5c18ec02fSPetter Reinholdtsen  * modification, are permitted provided that the following conditions
6c18ec02fSPetter Reinholdtsen  * are met:
7c18ec02fSPetter Reinholdtsen  *
8c18ec02fSPetter Reinholdtsen  * Redistribution of source code must retain the above copyright
9c18ec02fSPetter Reinholdtsen  * notice, this list of conditions and the following disclaimer.
10c18ec02fSPetter Reinholdtsen  *
11c18ec02fSPetter Reinholdtsen  * Redistribution in binary form must reproduce the above copyright
12c18ec02fSPetter Reinholdtsen  * notice, this list of conditions and the following disclaimer in the
13c18ec02fSPetter Reinholdtsen  * documentation and/or other materials provided with the distribution.
14c18ec02fSPetter Reinholdtsen  *
15c18ec02fSPetter Reinholdtsen  * Neither the name of Sun Microsystems, Inc. or the names of
16c18ec02fSPetter Reinholdtsen  * contributors may be used to endorse or promote products derived
17c18ec02fSPetter Reinholdtsen  * from this software without specific prior written permission.
18c18ec02fSPetter Reinholdtsen  *
19c18ec02fSPetter Reinholdtsen  * This software is provided "AS IS," without a warranty of any kind.
20c18ec02fSPetter Reinholdtsen  * ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES,
21c18ec02fSPetter Reinholdtsen  * INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A
22c18ec02fSPetter Reinholdtsen  * PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED.
23c18ec02fSPetter Reinholdtsen  * SUN MICROSYSTEMS, INC. ("SUN") AND ITS LICENSORS SHALL NOT BE LIABLE
24c18ec02fSPetter Reinholdtsen  * FOR ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING
25c18ec02fSPetter Reinholdtsen  * OR DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES.  IN NO EVENT WILL
26c18ec02fSPetter Reinholdtsen  * SUN OR ITS LICENSORS BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA,
27c18ec02fSPetter Reinholdtsen  * OR FOR DIRECT, INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL OR
28c18ec02fSPetter Reinholdtsen  * PUNITIVE DAMAGES, HOWEVER CAUSED AND REGARDLESS OF THE THEORY OF
29c18ec02fSPetter Reinholdtsen  * LIABILITY, ARISING OUT OF THE USE OF OR INABILITY TO USE THIS SOFTWARE,
30c18ec02fSPetter Reinholdtsen  * EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
31c18ec02fSPetter Reinholdtsen  */
32c18ec02fSPetter Reinholdtsen 
33c18ec02fSPetter Reinholdtsen #include <stddef.h>
34c18ec02fSPetter Reinholdtsen #include <ipmitool/ipmi_strings.h>
35c18ec02fSPetter Reinholdtsen #include <ipmitool/ipmi_constants.h>
36c18ec02fSPetter Reinholdtsen #include <ipmitool/ipmi_sensor.h>
37c18ec02fSPetter Reinholdtsen #include <ipmitool/ipmi_sel.h>  /* for IPMI_OEM */
38c18ec02fSPetter Reinholdtsen 
39c18ec02fSPetter Reinholdtsen const struct valstr ipmi_oem_info[] = {
40c18ec02fSPetter Reinholdtsen 
41c18ec02fSPetter Reinholdtsen    { IPMI_OEM_UNKNOWN,                "Unknown" },
42c18ec02fSPetter Reinholdtsen    { IPMI_OEM_HP,                     "Hewlett-Packard" },
43c18ec02fSPetter Reinholdtsen    { IPMI_OEM_SUN,                    "Sun Microsystems" },
44c18ec02fSPetter Reinholdtsen    { IPMI_OEM_INTEL,                  "Intel Corporation" },
45c18ec02fSPetter Reinholdtsen    { IPMI_OEM_LMC,                    "LMC" },
46c18ec02fSPetter Reinholdtsen    { IPMI_OEM_RADISYS,                "RadiSys Corporation" },
47c18ec02fSPetter Reinholdtsen    { IPMI_OEM_TYAN,                   "Tyan Computer Corporation" },
48c18ec02fSPetter Reinholdtsen    { IPMI_OEM_NEWISYS,                "Newisys" },
49c18ec02fSPetter Reinholdtsen    { IPMI_OEM_SUPERMICRO,             "Supermicro" },
50c18ec02fSPetter Reinholdtsen    { IPMI_OEM_GOOGLE,                 "Google" },
51c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON,                "Kontron" },
52c18ec02fSPetter Reinholdtsen    { IPMI_OEM_NOKIA,                  "Nokia" },
53c18ec02fSPetter Reinholdtsen    { IPMI_OEM_PICMG,                  "PICMG" },
54c18ec02fSPetter Reinholdtsen    { IPMI_OEM_PEPPERCON,              "Peppercon AG" },
55c18ec02fSPetter Reinholdtsen    { IPMI_OEM_DELL,                   "DELL Inc" },
56c18ec02fSPetter Reinholdtsen    { IPMI_OEM_NEC,                    "NEC" },
57c18ec02fSPetter Reinholdtsen    { IPMI_OEM_MAGNUM,                 "Magnum Technologies" },
58c18ec02fSPetter Reinholdtsen    { IPMI_OEM_FUJITSU_SIEMENS,        "Fujitsu Siemens" },
59c18ec02fSPetter Reinholdtsen    { IPMI_OEM_TATUNG,                 "Tatung" },
60c18ec02fSPetter Reinholdtsen    { IPMI_OEM_AMI,                    "AMI" },
61c18ec02fSPetter Reinholdtsen    { IPMI_OEM_RARITAN,                "Raritan" },
62c18ec02fSPetter Reinholdtsen    { IPMI_OEM_AVOCENT,                "Avocent" },
63c18ec02fSPetter Reinholdtsen    { IPMI_OEM_OSA,                    "OSA" },
64c18ec02fSPetter Reinholdtsen    { IPMI_OEM_TOSHIBA,                "Toshiba" },
65c18ec02fSPetter Reinholdtsen    { IPMI_OEM_HITACHI_116,            "Hitachi" },
66c18ec02fSPetter Reinholdtsen    { IPMI_OEM_HITACHI_399,            "Hitachi" },
67c18ec02fSPetter Reinholdtsen    { IPMI_OEM_NOKIA_SIEMENS_NETWORKS, "Nokia Siemens Networks" },
68c18ec02fSPetter Reinholdtsen    { IPMI_OEM_BULL,                   "Bull Company" },
69c18ec02fSPetter Reinholdtsen    { IPMI_OEM_PPS,                    "Pigeon Point Systems" },
70c18ec02fSPetter Reinholdtsen    { IPMI_OEM_BROADCOM,               "Broadcom Corporation" },
719caa78beSParthasarathy Bhuvaragan    { IPMI_OEM_ERICSSON,               "Ericsson AB"},
72d874267eSZdenek Styblik    { IPMI_OEM_QUANTA,                 "Quanta" },
73*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH,              "Advantech" },
74c18ec02fSPetter Reinholdtsen    { 0xffff , NULL },
75c18ec02fSPetter Reinholdtsen };
76c18ec02fSPetter Reinholdtsen 
77c18ec02fSPetter Reinholdtsen const struct oemvalstr ipmi_oem_product_info[] = {
78c18ec02fSPetter Reinholdtsen    /* Keep OEM grouped together */
79c18ec02fSPetter Reinholdtsen    /* Intel stuff, thanks to Tim Bell */
80c18ec02fSPetter Reinholdtsen    { IPMI_OEM_INTEL, 0x000C, "TSRLT2" },
81c18ec02fSPetter Reinholdtsen    { IPMI_OEM_INTEL, 0x001B, "TIGPR2U" },
82c18ec02fSPetter Reinholdtsen    { IPMI_OEM_INTEL, 0x0022, "TIGI2U" },
83c18ec02fSPetter Reinholdtsen    { IPMI_OEM_INTEL, 0x0026, "Bridgeport" },
84c18ec02fSPetter Reinholdtsen    { IPMI_OEM_INTEL, 0x0028, "S5000PAL" },
85c18ec02fSPetter Reinholdtsen    { IPMI_OEM_INTEL, 0x0029, "S5000PSL" },
86c18ec02fSPetter Reinholdtsen    { IPMI_OEM_INTEL, 0x0100, "Tiger4" },
87c18ec02fSPetter Reinholdtsen    { IPMI_OEM_INTEL, 0x0103, "McCarran" },
88c18ec02fSPetter Reinholdtsen    { IPMI_OEM_INTEL, 0x0800, "ZT5504" },
89c18ec02fSPetter Reinholdtsen    { IPMI_OEM_INTEL, 0x0808, "MPCBL0001" },
90c18ec02fSPetter Reinholdtsen    { IPMI_OEM_INTEL, 0x0811, "TIGW1U" },
91c18ec02fSPetter Reinholdtsen    { IPMI_OEM_INTEL, 0x4311, "NSI2U" },
92c18ec02fSPetter Reinholdtsen    /* Kontron */
93c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON,4000, "AM4000 AdvancedMC" },
94c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON,4001, "AM4001 AdvancedMC" },
95c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON,4002, "AM4002 AdvancedMC" },
96c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON,4010, "AM4010 AdvancedMC" },
97c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON,5503, "AM4500/4520 AdvancedMC" },
98c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON,5504, "AM4300 AdvancedMC" },
99c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON,5507, "AM4301 AdvancedMC" },
100c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON,5508, "AM4330 AdvancedMC" },
101c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON,5520, "KTC5520/EATX" },
102c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON,5703, "RTM8020" },
103c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON,5704, "RTM8030" },
104c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON,5705, "RTM8050" },
105c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON,6000, "CP6000" },
106c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON,6006, "DT-64" },
107c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON,6010, "CP6010" },
108c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON,6011, "CP6011" },
109c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON,6012, "CP6012" },
110c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON,6014, "CP6014" },
111c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON,5002, "AT8001" },
112c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON,5003, "AT8010" },
113c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON,5004, "AT8020" },
114c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON,5006, "AT8030 IPMC" },
115c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON,2025, "AT8030 MMC" },
116c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON,5007, "AT8050" },
117c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON,5301, "AT8400" },
118c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON,5303, "AT8901" },
119c18ec02fSPetter Reinholdtsen    /* Broadcom */
120c18ec02fSPetter Reinholdtsen    { IPMI_OEM_BROADCOM, 5725, "BCM5725" },
1219caa78beSParthasarathy Bhuvaragan    /* Ericsson */
1229caa78beSParthasarathy Bhuvaragan    { IPMI_OEM_ERICSSON, 0x0054, "Phantom" },
123*0caa6811SAlexander Rube    /* Advantech */
124*0caa6811SAlexander Rube    /* ATCA Blades */
125*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x3393, "MIC-3393" },
126*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x3395, "MIC-3395" },
127*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x3396, "MIC-3396" },
128*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5302, "MIC-5302" },
129*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5304, "MIC-5304" },
130*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5320, "MIC-5320" },
131*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5321, "MIC-5321" },
132*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5322, "MIC-5322" },
133*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5332, "MIC-5332" },
134*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5333, "MIC-5333" },
135*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5342, "MIC-5342" },
136*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5343, "MIC-5343" },
137*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5344, "MIC-5344" },
138*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5345, "MIC-5345" },
139*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5201, "MIC-5201 Dual 10GE AMC"},
140*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5203, "MIC-5203 Quad GbE AMC"},
141*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5212, "MIC-5212 Dual 10GE AMC"},
142*0caa6811SAlexander Rube    /* AdvancedMC */
143*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5401, "MIC-5401" },
144*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5601, "MIC-5601" },
145*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5602, "MIC-5602" },
146*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5604, "MIC-5604" },
147*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5603, "MIC-5603" },
148*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x6311, "MIC-6311" },
149*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x6313, "MIC-6313" },
150*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x8301, "MIC-8301" },
151*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x8302, "MIC-8302" },
152*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x8304, "MIC-8304" },
153*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5101, "RTM-5101" },
154*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5102, "RTM-5102" },
155*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5106, "RTM-5106" },
156*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5107, "RTM-5107" },
157*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5210, "RTM-5210" },
158*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5220, "RTM-5220" },
159*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5104, "RTM-5104" },
160*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5500, "UTCA-5500"},
161*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5503, "UTCA-5503"},
162*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5504, "UTCA-5504"},
163*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5801, "UTCA-5801"},
164*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x2210, "NCPB-2210"},
165*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x2305, "NCPB-2305"},
166*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x2320, "NCPB-2320"},
167*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x3109, "NCP-3109" },
168*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x3110, "NCP-3110" },
169*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x3200, "NCP-3200" },
170*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5060, "SMM-5060" },
171*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x3210, "FWA-3210" },
172*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x3220, "FWA-3220" },
173*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x3221, "FWA-3221" },
174*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x3230, "FWA-3230" },
175*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x3231, "FWA-3231" },
176*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x3233, "FWA-3233" },
177*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x3250, "FWA-3250" },
178*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x3260, "FWA-3260" },
179*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x5020, "FWA-5020" },
180*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x6510, "FWA-6510" },
181*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x6511, "FWA-6511" },
182*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x6512, "FWA-6512" },
183*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x6520, "FWA-6520" },
184*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x6521, "FWA-6521" },
185*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x6522, "FWA-6522" },
186*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x7310, "ATCA-7310"},
187*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x7330, "ATCA-7330"},
188*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x7410, "ATCA-7410"},
189*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x9023, "ATCA-9023"},
190*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x9112, "ATCA-9112"},
191*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x4201, "AMC-4201" },
192*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x4202, "AMC-4202" },
193*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x3211, "NAMB-3211"},
194*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x1207, "CPCI-1207"},
195*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x120E, "CPCI-1207 Test Board"},
196*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x1304, "CPCI-1304"},
197*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x7001, "CPCI-7001"},
198*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x8220, "CPCI-8220"},
199*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x9001, "ESP-9001" },
200*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x9002, "ESP-9002" },
201*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x9012, "ESP-9012" },
202*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x9212, "ESP-9212" },
203*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x6000, "CGS-6000" },
204*0caa6811SAlexander Rube    { IPMI_OEM_ADVANTECH, 0x6010, "CGS-6010" },
205c18ec02fSPetter Reinholdtsen 
206c18ec02fSPetter Reinholdtsen    { 0xffffff        , 0xffff , NULL },
207c18ec02fSPetter Reinholdtsen  };
208c18ec02fSPetter Reinholdtsen 
209c18ec02fSPetter Reinholdtsen const struct oemvalstr ipmi_oem_sdr_type_vals[] = {
210c18ec02fSPetter Reinholdtsen    /* Keep OEM grouped together */
211c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON , 0xC0 , "OEM Firmware Info" },
212c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON , 0xC2 , "OEM Init Agent" },
213c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON , 0xC3 , "OEM IPMBL Link State" },
214c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON , 0xC4 , "OEM Board Reset" },
215c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON , 0xC5 , "OEM FRU Information Agent" },
216c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON , 0xC6 , "OEM POST Value Sensor" },
217c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON , 0xC7 , "OEM FWUM Status" },
218c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON , 0xC8 , "OEM Switch Mngt Software Status" },
219c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON , 0xC9 , "OEM OEM Diagnostic Status" },
220c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON , 0xCA , "OEM Component Firmware Upgrade" },
221c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON , 0xCB , "OEM FRU Over Current" },
222c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON , 0xCC , "OEM FRU Sensor Error" },
223c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON , 0xCD , "OEM FRU Power Denied" },
224c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON , 0xCE , "OEM Reserved" },
225c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON , 0xCF , "OEM Board Reset" },
226c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON , 0xD0 , "OEM Clock Resource Control" },
227c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON , 0xD1 , "OEM Power State" },
228c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON , 0xD2 , "OEM FRU Mngt Power Failure" },
229c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON , 0xD3 , "OEM Jumper Status" },
230c18ec02fSPetter Reinholdtsen    { IPMI_OEM_KONTRON , 0xF2 , "OEM RTM Module Hotswap" },
231c18ec02fSPetter Reinholdtsen 
232c18ec02fSPetter Reinholdtsen    { IPMI_OEM_PICMG   , 0xF0 , "PICMG FRU Hotswap" },
233c18ec02fSPetter Reinholdtsen    { IPMI_OEM_PICMG   , 0xF1 , "PICMG IPMB0 Link State" },
234c18ec02fSPetter Reinholdtsen    { IPMI_OEM_PICMG   , 0xF2 , "PICMG Module Hotswap" },
235c18ec02fSPetter Reinholdtsen 
236c18ec02fSPetter Reinholdtsen    { 0xffffff,            0x00,  NULL }
237c18ec02fSPetter Reinholdtsen };
238c18ec02fSPetter Reinholdtsen 
239c18ec02fSPetter Reinholdtsen const struct valstr ipmi_netfn_vals[] = {
240c18ec02fSPetter Reinholdtsen 	{ IPMI_NETFN_CHASSIS,	"Chassis" },
241c18ec02fSPetter Reinholdtsen 	{ IPMI_NETFN_BRIDGE,	"Bridge" },
242c18ec02fSPetter Reinholdtsen 	{ IPMI_NETFN_SE,	"SensorEvent" },
243c18ec02fSPetter Reinholdtsen 	{ IPMI_NETFN_APP,	"Application" },
244c18ec02fSPetter Reinholdtsen 	{ IPMI_NETFN_FIRMWARE,	"Firmware" },
245c18ec02fSPetter Reinholdtsen 	{ IPMI_NETFN_STORAGE,	"Storage" },
246c18ec02fSPetter Reinholdtsen 	{ IPMI_NETFN_TRANSPORT,	"Transport" },
247c18ec02fSPetter Reinholdtsen 	{ 0xff,			NULL },
248c18ec02fSPetter Reinholdtsen };
249c18ec02fSPetter Reinholdtsen 
250c18ec02fSPetter Reinholdtsen /*
251c18ec02fSPetter Reinholdtsen  * From table 26-4 of the IPMI v2 specification
252c18ec02fSPetter Reinholdtsen  */
253c18ec02fSPetter Reinholdtsen const struct valstr ipmi_bit_rate_vals[] = {
254c18ec02fSPetter Reinholdtsen 	{ 0x00, "IPMI-Over-Serial-Setting"}, /* Using the value in the IPMI Over Serial Config */
255c18ec02fSPetter Reinholdtsen 	{ 0x06, "9.6" },
256c18ec02fSPetter Reinholdtsen 	{ 0x07, "19.2" },
257c18ec02fSPetter Reinholdtsen 	{ 0x08, "38.4" },
258c18ec02fSPetter Reinholdtsen 	{ 0x09, "57.6" },
259c18ec02fSPetter Reinholdtsen 	{ 0x0A, "115.2" },
260c18ec02fSPetter Reinholdtsen 	{ 0x00, NULL },
261c18ec02fSPetter Reinholdtsen };
262c18ec02fSPetter Reinholdtsen 
263c18ec02fSPetter Reinholdtsen const struct valstr ipmi_channel_activity_type_vals[] = {
264c18ec02fSPetter Reinholdtsen 	{ 0, "IPMI Messaging session active" },
265c18ec02fSPetter Reinholdtsen 	{ 1, "Callback Messaging session active" },
266c18ec02fSPetter Reinholdtsen 	{ 2, "Dial-out Alert active" },
267c18ec02fSPetter Reinholdtsen 	{ 3, "TAP Page Active" },
268c18ec02fSPetter Reinholdtsen 	{ 0x00, NULL },
269c18ec02fSPetter Reinholdtsen };
270c18ec02fSPetter Reinholdtsen 
271c18ec02fSPetter Reinholdtsen 
272c18ec02fSPetter Reinholdtsen const struct valstr ipmi_privlvl_vals[] = {
273c18ec02fSPetter Reinholdtsen 	{ IPMI_SESSION_PRIV_CALLBACK,   "CALLBACK" },
274c18ec02fSPetter Reinholdtsen 	{ IPMI_SESSION_PRIV_USER,    	"USER" },
275c18ec02fSPetter Reinholdtsen 	{ IPMI_SESSION_PRIV_OPERATOR,	"OPERATOR" },
276c18ec02fSPetter Reinholdtsen 	{ IPMI_SESSION_PRIV_ADMIN,	    "ADMINISTRATOR" },
277c18ec02fSPetter Reinholdtsen 	{ IPMI_SESSION_PRIV_OEM,    	"OEM" },
278c18ec02fSPetter Reinholdtsen 	{ 0xF,	        		    	"NO ACCESS" },
279c18ec02fSPetter Reinholdtsen 	{ 0xFF,			             	NULL },
280c18ec02fSPetter Reinholdtsen };
281c18ec02fSPetter Reinholdtsen 
282c18ec02fSPetter Reinholdtsen 
283c18ec02fSPetter Reinholdtsen const struct valstr ipmi_set_in_progress_vals[] = {
284c18ec02fSPetter Reinholdtsen 	{ IPMI_SET_IN_PROGRESS_SET_COMPLETE, "set-complete"    },
285c18ec02fSPetter Reinholdtsen 	{ IPMI_SET_IN_PROGRESS_IN_PROGRESS,  "set-in-progress" },
286c18ec02fSPetter Reinholdtsen 	{ IPMI_SET_IN_PROGRESS_COMMIT_WRITE, "commit-write"    },
287c18ec02fSPetter Reinholdtsen 	{ 0,                            NULL },
288c18ec02fSPetter Reinholdtsen };
289c18ec02fSPetter Reinholdtsen 
290c18ec02fSPetter Reinholdtsen 
291c18ec02fSPetter Reinholdtsen const struct valstr ipmi_authtype_session_vals[] = {
292c18ec02fSPetter Reinholdtsen 	{ IPMI_SESSION_AUTHTYPE_NONE,     "NONE" },
293c18ec02fSPetter Reinholdtsen 	{ IPMI_SESSION_AUTHTYPE_MD2,      "MD2" },
294c18ec02fSPetter Reinholdtsen 	{ IPMI_SESSION_AUTHTYPE_MD5,      "MD5" },
295c18ec02fSPetter Reinholdtsen 	{ IPMI_SESSION_AUTHTYPE_PASSWORD, "PASSWORD" },
296c18ec02fSPetter Reinholdtsen 	{ IPMI_SESSION_AUTHTYPE_OEM,      "OEM" },
297c18ec02fSPetter Reinholdtsen 	{ IPMI_SESSION_AUTHTYPE_RMCP_PLUS,"RMCP+" },
298c18ec02fSPetter Reinholdtsen 	{ 0xFF,                           NULL },
299c18ec02fSPetter Reinholdtsen };
300c18ec02fSPetter Reinholdtsen 
301c18ec02fSPetter Reinholdtsen 
302c18ec02fSPetter Reinholdtsen const struct valstr ipmi_authtype_vals[] = {
303c18ec02fSPetter Reinholdtsen 	{ IPMI_1_5_AUTH_TYPE_BIT_NONE,     "NONE" },
304c18ec02fSPetter Reinholdtsen 	{ IPMI_1_5_AUTH_TYPE_BIT_MD2,      "MD2" },
305c18ec02fSPetter Reinholdtsen 	{ IPMI_1_5_AUTH_TYPE_BIT_MD5,      "MD5" },
306c18ec02fSPetter Reinholdtsen 	{ IPMI_1_5_AUTH_TYPE_BIT_PASSWORD, "PASSWORD" },
307c18ec02fSPetter Reinholdtsen 	{ IPMI_1_5_AUTH_TYPE_BIT_OEM,      "OEM" },
308c18ec02fSPetter Reinholdtsen 	{ 0,                               NULL },
309c18ec02fSPetter Reinholdtsen };
310c18ec02fSPetter Reinholdtsen 
311c18ec02fSPetter Reinholdtsen const struct valstr entity_id_vals[] = {
312c18ec02fSPetter Reinholdtsen 	{ 0x00, "Unspecified" },
313c18ec02fSPetter Reinholdtsen 	{ 0x01, "Other" },
314c18ec02fSPetter Reinholdtsen 	{ 0x02, "Unknown" },
315c18ec02fSPetter Reinholdtsen 	{ 0x03, "Processor" },
316c18ec02fSPetter Reinholdtsen 	{ 0x04, "Disk or Disk Bay" },
317c18ec02fSPetter Reinholdtsen 	{ 0x05, "Peripheral Bay" },
318c18ec02fSPetter Reinholdtsen 	{ 0x06, "System Management Module" },
319c18ec02fSPetter Reinholdtsen 	{ 0x07, "System Board" },
320c18ec02fSPetter Reinholdtsen 	{ 0x08, "Memory Module" },
321c18ec02fSPetter Reinholdtsen 	{ 0x09, "Processor Module" },
322c18ec02fSPetter Reinholdtsen 	{ 0x0a, "Power Supply" },
323c18ec02fSPetter Reinholdtsen 	{ 0x0b, "Add-in Card" },
324c18ec02fSPetter Reinholdtsen 	{ 0x0c, "Front Panel Board" },
325c18ec02fSPetter Reinholdtsen 	{ 0x0d, "Back Panel Board" },
326c18ec02fSPetter Reinholdtsen 	{ 0x0e, "Power System Board" },
327c18ec02fSPetter Reinholdtsen 	{ 0x0f, "Drive Backplane" },
328c18ec02fSPetter Reinholdtsen 	{ 0x10, "System Internal Expansion Board" },
329c18ec02fSPetter Reinholdtsen 	{ 0x11, "Other System Board" },
330c18ec02fSPetter Reinholdtsen 	{ 0x12, "Processor Board" },
331c18ec02fSPetter Reinholdtsen 	{ 0x13, "Power Unit" },
332c18ec02fSPetter Reinholdtsen 	{ 0x14, "Power Module" },
333c18ec02fSPetter Reinholdtsen 	{ 0x15, "Power Management" },
334c18ec02fSPetter Reinholdtsen 	{ 0x16, "Chassis Back Panel Board" },
335c18ec02fSPetter Reinholdtsen 	{ 0x17, "System Chassis" },
336c18ec02fSPetter Reinholdtsen 	{ 0x18, "Sub-Chassis" },
337c18ec02fSPetter Reinholdtsen 	{ 0x19, "Other Chassis Board" },
338c18ec02fSPetter Reinholdtsen 	{ 0x1a, "Disk Drive Bay" },
339c18ec02fSPetter Reinholdtsen 	{ 0x1b, "Peripheral Bay" },
340c18ec02fSPetter Reinholdtsen 	{ 0x1c, "Device Bay" },
341c18ec02fSPetter Reinholdtsen 	{ 0x1d, "Fan Device" },
342c18ec02fSPetter Reinholdtsen 	{ 0x1e, "Cooling Unit" },
343c18ec02fSPetter Reinholdtsen 	{ 0x1f, "Cable/Interconnect" },
344c18ec02fSPetter Reinholdtsen 	{ 0x20, "Memory Device" },
345c18ec02fSPetter Reinholdtsen 	{ 0x21, "System Management Software" },
346c18ec02fSPetter Reinholdtsen 	{ 0x22, "BIOS" },
347c18ec02fSPetter Reinholdtsen 	{ 0x23, "Operating System" },
348c18ec02fSPetter Reinholdtsen 	{ 0x24, "System Bus" },
349c18ec02fSPetter Reinholdtsen 	{ 0x25, "Group" },
350c18ec02fSPetter Reinholdtsen 	{ 0x26, "Remote Management Device" },
351c18ec02fSPetter Reinholdtsen 	{ 0x27, "External Environment" },
352c18ec02fSPetter Reinholdtsen 	{ 0x28, "Battery" },
353c18ec02fSPetter Reinholdtsen 	{ 0x29, "Processing Blade" },
354c18ec02fSPetter Reinholdtsen 	{ 0x2A, "Connectivity Switch" },
355c18ec02fSPetter Reinholdtsen 	{ 0x2B, "Processor/Memory Module" },
356c18ec02fSPetter Reinholdtsen 	{ 0x2C, "I/O Module" },
357c18ec02fSPetter Reinholdtsen 	{ 0x2D, "Processor/IO Module" },
358c18ec02fSPetter Reinholdtsen 	{ 0x2E, "Management Controller Firmware" },
359c18ec02fSPetter Reinholdtsen 	{ 0x2F, "IPMI Channel" },
360c18ec02fSPetter Reinholdtsen 	{ 0x30, "PCI Bus" },
361c18ec02fSPetter Reinholdtsen 	{ 0x31, "PCI Express Bus" },
362c18ec02fSPetter Reinholdtsen 	{ 0x32, "SCSI Bus (parallel)" },
363c18ec02fSPetter Reinholdtsen 	{ 0x33, "SATA/SAS Bus" },
364c18ec02fSPetter Reinholdtsen 	{ 0x34, "Processor/Front-Side Bus" },
365c18ec02fSPetter Reinholdtsen 	{ 0x35, "Real Time Clock(RTC)" },
366c18ec02fSPetter Reinholdtsen 	{ 0x36, "Reserved" },
367c18ec02fSPetter Reinholdtsen 	{ 0x37, "Air Inlet" },
368c18ec02fSPetter Reinholdtsen 	{ 0x38, "Reserved" },
369c18ec02fSPetter Reinholdtsen 	{ 0x39, "Reserved" },
370c18ec02fSPetter Reinholdtsen 	{ 0x3A, "Reserved" },
371c18ec02fSPetter Reinholdtsen 	{ 0x3B, "Reserved" },
372c18ec02fSPetter Reinholdtsen 	{ 0x3C, "Reserved" },
373c18ec02fSPetter Reinholdtsen 	{ 0x3D, "Reserved" },
374c18ec02fSPetter Reinholdtsen 	{ 0x3E, "Reserved" },
375c18ec02fSPetter Reinholdtsen 	{ 0x3F, "Reserved" },
376c18ec02fSPetter Reinholdtsen 	{ 0x40, "Air Inlet" },
377c18ec02fSPetter Reinholdtsen 	{ 0x41, "Processor" },
378c18ec02fSPetter Reinholdtsen 	{ 0x42, "Baseboard/Main System Board" },
379c18ec02fSPetter Reinholdtsen 	/* PICMG */
380c18ec02fSPetter Reinholdtsen 	{ 0xA0, "PICMG Front Board" },
381c18ec02fSPetter Reinholdtsen 	{ 0xC0, "PICMG Rear Transition Module" },
382c18ec02fSPetter Reinholdtsen 	{ 0xC1, "PICMG AdvancedMC Module" },
383c18ec02fSPetter Reinholdtsen 	{ 0xF0, "PICMG Shelf Management Controller" },
384c18ec02fSPetter Reinholdtsen 	{ 0xF1, "PICMG Filtration Unit" },
385c18ec02fSPetter Reinholdtsen 	{ 0xF2, "PICMG Shelf FRU Information" },
386c18ec02fSPetter Reinholdtsen 	{ 0xF3, "PICMG Alarm Panel" },
387c18ec02fSPetter Reinholdtsen 	{ 0x00, NULL },
388c18ec02fSPetter Reinholdtsen };
389c18ec02fSPetter Reinholdtsen 
390c18ec02fSPetter Reinholdtsen const struct valstr entity_device_type_vals[] = {
391c18ec02fSPetter Reinholdtsen 	{ 0x00, "Reserved" },
392c18ec02fSPetter Reinholdtsen 	{ 0x01, "Reserved" },
393c18ec02fSPetter Reinholdtsen 	{ 0x02, "DS1624 temperature sensor" },
394c18ec02fSPetter Reinholdtsen 	{ 0x03, "DS1621 temperature sensor" },
395c18ec02fSPetter Reinholdtsen 	{ 0x04, "LM75 Temperature Sensor" },
396c18ec02fSPetter Reinholdtsen 	{ 0x05, "Heceta ASIC" },
397c18ec02fSPetter Reinholdtsen 	{ 0x06, "Reserved" },
398c18ec02fSPetter Reinholdtsen 	{ 0x07, "Reserved" },
399c18ec02fSPetter Reinholdtsen 	{ 0x08, "EEPROM, 24C01" },
400c18ec02fSPetter Reinholdtsen 	{ 0x09, "EEPROM, 24C02" },
401c18ec02fSPetter Reinholdtsen 	{ 0x0a, "EEPROM, 24C04" },
402c18ec02fSPetter Reinholdtsen 	{ 0x0b, "EEPROM, 24C08" },
403c18ec02fSPetter Reinholdtsen 	{ 0x0c, "EEPROM, 24C16" },
404c18ec02fSPetter Reinholdtsen 	{ 0x0d, "EEPROM, 24C17" },
405c18ec02fSPetter Reinholdtsen 	{ 0x0e, "EEPROM, 24C32" },
406c18ec02fSPetter Reinholdtsen 	{ 0x0f, "EEPROM, 24C64" },
407c18ec02fSPetter Reinholdtsen 	{ 0x1000, "IPMI FRU Inventory" },
408c18ec02fSPetter Reinholdtsen 	{ 0x1001, "DIMM Memory ID" },
409c18ec02fSPetter Reinholdtsen 	{ 0x1002, "IPMI FRU Inventory" },
410c18ec02fSPetter Reinholdtsen 	{ 0x1003, "System Processor Cartridge FRU" },
411c18ec02fSPetter Reinholdtsen 	{ 0x11, "Reserved" },
412c18ec02fSPetter Reinholdtsen 	{ 0x12, "Reserved" },
413c18ec02fSPetter Reinholdtsen 	{ 0x13, "Reserved" },
414c18ec02fSPetter Reinholdtsen 	{ 0x14, "PCF 8570 256 byte RAM" },
415c18ec02fSPetter Reinholdtsen 	{ 0x15, "PCF 8573 clock/calendar" },
416c18ec02fSPetter Reinholdtsen 	{ 0x16, "PCF 8574A I/O Port" },
417c18ec02fSPetter Reinholdtsen 	{ 0x17, "PCF 8583 clock/calendar" },
418c18ec02fSPetter Reinholdtsen 	{ 0x18, "PCF 8593 clock/calendar" },
419c18ec02fSPetter Reinholdtsen 	{ 0x19, "Clock calendar" },
420c18ec02fSPetter Reinholdtsen 	{ 0x1a, "PCF 8591 A/D, D/A Converter" },
421c18ec02fSPetter Reinholdtsen 	{ 0x1b, "I/O Port" },
422c18ec02fSPetter Reinholdtsen 	{ 0x1c, "A/D Converter" },
423c18ec02fSPetter Reinholdtsen 	{ 0x1d, "D/A Converter" },
424c18ec02fSPetter Reinholdtsen 	{ 0x1e, "A/D, D/A Converter" },
425c18ec02fSPetter Reinholdtsen 	{ 0x1f, "LCD Controller/Driver" },
426c18ec02fSPetter Reinholdtsen 	{ 0x20, "Core Logic (Chip set) Device" },
427c18ec02fSPetter Reinholdtsen 	{ 0x21, "LMC6874 Intelligent Battery controller" },
428c18ec02fSPetter Reinholdtsen 	{ 0x22, "Intelligent Batter controller" },
429c18ec02fSPetter Reinholdtsen 	{ 0x23, "Combo Management ASIC" },
430c18ec02fSPetter Reinholdtsen 	{ 0x24, "Maxim 1617 Temperature Sensor" },
431c18ec02fSPetter Reinholdtsen 	{ 0xbf, "Other/Unspecified" },
432c18ec02fSPetter Reinholdtsen 	{ 0x00, NULL },
433c18ec02fSPetter Reinholdtsen };
434c18ec02fSPetter Reinholdtsen 
435c18ec02fSPetter Reinholdtsen const struct valstr ipmi_channel_protocol_vals[] = {
436c18ec02fSPetter Reinholdtsen 	{ 0x00, "reserved" },
437c18ec02fSPetter Reinholdtsen 	{ 0x01, "IPMB-1.0" },
438c18ec02fSPetter Reinholdtsen 	{ 0x02, "ICMB-1.0" },
439c18ec02fSPetter Reinholdtsen 	{ 0x03, "reserved" },
440c18ec02fSPetter Reinholdtsen 	{ 0x04, "IPMI-SMBus" },
441c18ec02fSPetter Reinholdtsen 	{ 0x05, "KCS" },
442c18ec02fSPetter Reinholdtsen 	{ 0x06, "SMIC" },
443c18ec02fSPetter Reinholdtsen 	{ 0x07, "BT-10" },
444c18ec02fSPetter Reinholdtsen 	{ 0x08, "BT-15" },
445c18ec02fSPetter Reinholdtsen 	{ 0x09, "TMode" },
446c18ec02fSPetter Reinholdtsen 	{ 0x1c, "OEM 1" },
447c18ec02fSPetter Reinholdtsen 	{ 0x1d, "OEM 2" },
448c18ec02fSPetter Reinholdtsen 	{ 0x1e, "OEM 3" },
449c18ec02fSPetter Reinholdtsen 	{ 0x1f, "OEM 4" },
450c18ec02fSPetter Reinholdtsen 	{ 0x00, NULL },
451c18ec02fSPetter Reinholdtsen };
452c18ec02fSPetter Reinholdtsen 
453c18ec02fSPetter Reinholdtsen 
454c18ec02fSPetter Reinholdtsen const struct valstr ipmi_channel_medium_vals[] = {
455c18ec02fSPetter Reinholdtsen 	{ IPMI_CHANNEL_MEDIUM_RESERVED,	"reserved" },
456c18ec02fSPetter Reinholdtsen 	{ IPMI_CHANNEL_MEDIUM_IPMB_I2C,	"IPMB (I2C)" },
457c18ec02fSPetter Reinholdtsen 	{ IPMI_CHANNEL_MEDIUM_ICMB_1,	"ICMB v1.0" },
458c18ec02fSPetter Reinholdtsen 	{ IPMI_CHANNEL_MEDIUM_ICMB_09,	"ICMB v0.9" },
459c18ec02fSPetter Reinholdtsen 	{ IPMI_CHANNEL_MEDIUM_LAN,	"802.3 LAN" },
460c18ec02fSPetter Reinholdtsen 	{ IPMI_CHANNEL_MEDIUM_SERIAL,	"Serial/Modem" },
461c18ec02fSPetter Reinholdtsen 	{ IPMI_CHANNEL_MEDIUM_LAN_OTHER,"Other LAN" },
462c18ec02fSPetter Reinholdtsen 	{ IPMI_CHANNEL_MEDIUM_SMBUS_PCI,"PCI SMBus" },
463c18ec02fSPetter Reinholdtsen 	{ IPMI_CHANNEL_MEDIUM_SMBUS_1,	"SMBus v1.0/v1.1" },
464c18ec02fSPetter Reinholdtsen 	{ IPMI_CHANNEL_MEDIUM_SMBUS_2,	"SMBus v2.0" },
465c18ec02fSPetter Reinholdtsen 	{ IPMI_CHANNEL_MEDIUM_USB_1,	"USB 1.x" },
466c18ec02fSPetter Reinholdtsen 	{ IPMI_CHANNEL_MEDIUM_USB_2,	"USB 2.x" },
467c18ec02fSPetter Reinholdtsen 	{ IPMI_CHANNEL_MEDIUM_SYSTEM,	"System Interface" },
468c18ec02fSPetter Reinholdtsen 	{ 0x00, NULL },
469c18ec02fSPetter Reinholdtsen };
470c18ec02fSPetter Reinholdtsen 
471c18ec02fSPetter Reinholdtsen const struct valstr completion_code_vals[] = {
472c18ec02fSPetter Reinholdtsen 	{ 0x00, "Command completed normally" },
473c18ec02fSPetter Reinholdtsen 	{ 0xc0, "Node busy" },
474c18ec02fSPetter Reinholdtsen 	{ 0xc1, "Invalid command" },
475c18ec02fSPetter Reinholdtsen 	{ 0xc2, "Invalid command on LUN" },
476c18ec02fSPetter Reinholdtsen 	{ 0xc3, "Timeout" },
477c18ec02fSPetter Reinholdtsen 	{ 0xc4, "Out of space" },
478c18ec02fSPetter Reinholdtsen 	{ 0xc5, "Reservation cancelled or invalid" },
479c18ec02fSPetter Reinholdtsen 	{ 0xc6, "Request data truncated" },
480c18ec02fSPetter Reinholdtsen 	{ 0xc7, "Request data length invalid" },
481c18ec02fSPetter Reinholdtsen 	{ 0xc8, "Request data field length limit exceeded" },
482c18ec02fSPetter Reinholdtsen 	{ 0xc9, "Parameter out of range" },
483c18ec02fSPetter Reinholdtsen 	{ 0xca, "Cannot return number of requested data bytes" },
484c18ec02fSPetter Reinholdtsen 	{ 0xcb, "Requested sensor, data, or record not found" },
485c18ec02fSPetter Reinholdtsen 	{ 0xcc, "Invalid data field in request" },
486c18ec02fSPetter Reinholdtsen 	{ 0xcd, "Command illegal for specified sensor or record type" },
487c18ec02fSPetter Reinholdtsen 	{ 0xce, "Command response could not be provided" },
488c18ec02fSPetter Reinholdtsen 	{ 0xcf, "Cannot execute duplicated request" },
489c18ec02fSPetter Reinholdtsen 	{ 0xd0, "SDR Repository in update mode" },
490c18ec02fSPetter Reinholdtsen 	{ 0xd1, "Device firmeware in update mode" },
491c18ec02fSPetter Reinholdtsen 	{ 0xd2, "BMC initialization in progress" },
492c18ec02fSPetter Reinholdtsen 	{ 0xd3, "Destination unavailable" },
493c18ec02fSPetter Reinholdtsen 	{ 0xd4, "Insufficient privilege level" },
494c18ec02fSPetter Reinholdtsen 	{ 0xd5, "Command not supported in present state" },
495c18ec02fSPetter Reinholdtsen 	{ 0xd6, "Cannot execute command, command disabled" },
496c18ec02fSPetter Reinholdtsen 	{ 0xff, "Unspecified error" },
497c18ec02fSPetter Reinholdtsen 	{ 0x00, NULL }
498c18ec02fSPetter Reinholdtsen };
499c18ec02fSPetter Reinholdtsen 
500c18ec02fSPetter Reinholdtsen const struct valstr ipmi_chassis_power_control_vals[] = {
501c18ec02fSPetter Reinholdtsen 	{ IPMI_CHASSIS_CTL_POWER_DOWN,   "Down/Off" },
502c18ec02fSPetter Reinholdtsen 	{ IPMI_CHASSIS_CTL_POWER_UP,     "Up/On" },
503c18ec02fSPetter Reinholdtsen 	{ IPMI_CHASSIS_CTL_POWER_CYCLE,  "Cycle" },
504c18ec02fSPetter Reinholdtsen 	{ IPMI_CHASSIS_CTL_HARD_RESET,   "Reset" },
505c18ec02fSPetter Reinholdtsen 	{ IPMI_CHASSIS_CTL_PULSE_DIAG,   "Diag" },
506c18ec02fSPetter Reinholdtsen 	{ IPMI_CHASSIS_CTL_ACPI_SOFT,    "Soft" },
507c18ec02fSPetter Reinholdtsen 	{ 0x00, NULL },
508c18ec02fSPetter Reinholdtsen };
509c18ec02fSPetter Reinholdtsen 
510c18ec02fSPetter Reinholdtsen const struct valstr ipmi_auth_algorithms[] = {
511c18ec02fSPetter Reinholdtsen 	{ IPMI_AUTH_RAKP_NONE,      "none"      },
512c18ec02fSPetter Reinholdtsen 	{ IPMI_AUTH_RAKP_HMAC_SHA1, "hmac_sha1" },
513c18ec02fSPetter Reinholdtsen 	{ IPMI_AUTH_RAKP_HMAC_MD5,  "hmac_md5"  },
514c18ec02fSPetter Reinholdtsen 	{ 0x00, NULL }
515c18ec02fSPetter Reinholdtsen };
516c18ec02fSPetter Reinholdtsen 
517c18ec02fSPetter Reinholdtsen const struct valstr ipmi_integrity_algorithms[] = {
518c18ec02fSPetter Reinholdtsen 	{ IPMI_INTEGRITY_NONE,         "none" },
519c18ec02fSPetter Reinholdtsen 	{ IPMI_INTEGRITY_HMAC_SHA1_96, "hmac_sha1_96" },
520c18ec02fSPetter Reinholdtsen 	{ IPMI_INTEGRITY_HMAC_MD5_128, "hmac_md5_128" },
521c18ec02fSPetter Reinholdtsen 	{ IPMI_INTEGRITY_MD5_128 ,     "md5_128"      },
522c18ec02fSPetter Reinholdtsen 	{ 0x00, NULL }
523c18ec02fSPetter Reinholdtsen };
524c18ec02fSPetter Reinholdtsen 
525c18ec02fSPetter Reinholdtsen const struct valstr ipmi_encryption_algorithms[] = {
526c18ec02fSPetter Reinholdtsen 	{ IPMI_CRYPT_NONE,        "none"        },
527c18ec02fSPetter Reinholdtsen 	{ IPMI_CRYPT_AES_CBC_128, "aes_cbc_128" },
528c18ec02fSPetter Reinholdtsen 	{ IPMI_CRYPT_XRC4_128,    "xrc4_128"    },
529c18ec02fSPetter Reinholdtsen 	{ IPMI_CRYPT_XRC4_40,     "xrc4_40"     },
530c18ec02fSPetter Reinholdtsen 	{ 0x00, NULL }
531c18ec02fSPetter Reinholdtsen };
532c18ec02fSPetter Reinholdtsen 
533c18ec02fSPetter Reinholdtsen const struct valstr picmg_frucontrol_vals[] = {
534c18ec02fSPetter Reinholdtsen 	{ 0, "Cold Reset" },
535c18ec02fSPetter Reinholdtsen 	{ 1, "Warm Reset"  },
536c18ec02fSPetter Reinholdtsen 	{ 2, "Graceful Reboot" },
537c18ec02fSPetter Reinholdtsen 	{ 3, "Issue Diagnostic Interrupt" },
538c18ec02fSPetter Reinholdtsen 	{ 4, "Quiesce" },
539c18ec02fSPetter Reinholdtsen 	{ 5, NULL },
540c18ec02fSPetter Reinholdtsen };
541c18ec02fSPetter Reinholdtsen 
542c18ec02fSPetter Reinholdtsen const struct valstr picmg_clk_family_vals[] = {
543c18ec02fSPetter Reinholdtsen 	{ 0x00, "Unspecified" },
544c18ec02fSPetter Reinholdtsen 	{ 0x01, "SONET/SDH/PDH" },
545c18ec02fSPetter Reinholdtsen 	{ 0x02, "Reserved for PCI Express" },
546c18ec02fSPetter Reinholdtsen 	{ 0x03, "Reserved" }, /* from 03h to C8h */
547c18ec02fSPetter Reinholdtsen 	{ 0xC9, "Vendor defined clock family" }, /* from C9h to FFh */
548c18ec02fSPetter Reinholdtsen 	{ 0x00, NULL },
549c18ec02fSPetter Reinholdtsen };
550c18ec02fSPetter Reinholdtsen 
551c18ec02fSPetter Reinholdtsen const struct oemvalstr picmg_clk_accuracy_vals[] = {
552c18ec02fSPetter Reinholdtsen 	{ 0x01, 10, "PRS" },
553c18ec02fSPetter Reinholdtsen 	{ 0x01, 20, "STU" },
554c18ec02fSPetter Reinholdtsen 	{ 0x01, 30, "ST2" },
555c18ec02fSPetter Reinholdtsen 	{ 0x01, 40, "TNC" },
556c18ec02fSPetter Reinholdtsen 	{ 0x01, 50, "ST3E" },
557c18ec02fSPetter Reinholdtsen 	{ 0x01, 60, "ST3" },
558c18ec02fSPetter Reinholdtsen 	{ 0x01, 70, "SMC" },
559c18ec02fSPetter Reinholdtsen 	{ 0x01, 80, "ST4" },
560c18ec02fSPetter Reinholdtsen 	{ 0x01, 90, "DUS" },
561c18ec02fSPetter Reinholdtsen    { 0x02, 0xE0, "PCI Express Generation 2" },
562c18ec02fSPetter Reinholdtsen    { 0x02, 0xF0, "PCI Express Generation 1" },
563c18ec02fSPetter Reinholdtsen    { 0xffffff, 0x00,  NULL }
564c18ec02fSPetter Reinholdtsen };
565c18ec02fSPetter Reinholdtsen 
566c18ec02fSPetter Reinholdtsen const struct oemvalstr picmg_clk_resource_vals[] = {
567c18ec02fSPetter Reinholdtsen 	{ 0x0, 0, "On-Carrier Device 0" },
568c18ec02fSPetter Reinholdtsen 	{ 0x0, 1, "On-Carrier Device 1" },
569c18ec02fSPetter Reinholdtsen 	{ 0x1, 1, "AMC Site 1 - A1" },
570c18ec02fSPetter Reinholdtsen 	{ 0x1, 2, "AMC Site 1 - A2" },
571c18ec02fSPetter Reinholdtsen 	{ 0x1, 3, "AMC Site 1 - A3" },
572c18ec02fSPetter Reinholdtsen 	{ 0x1, 4, "AMC Site 1 - A4" },
573c18ec02fSPetter Reinholdtsen 	{ 0x1, 5, "AMC Site 1 - B1" },
574c18ec02fSPetter Reinholdtsen 	{ 0x1, 6, "AMC Site 1 - B2" },
575c18ec02fSPetter Reinholdtsen 	{ 0x1, 7, "AMC Site 1 - B3" },
576c18ec02fSPetter Reinholdtsen 	{ 0x1, 8, "AMC Site 1 - B4" },
577c18ec02fSPetter Reinholdtsen    { 0x2, 0, "ATCA Backplane" },
578c18ec02fSPetter Reinholdtsen    { 0xffffff, 0x00,  NULL }
579c18ec02fSPetter Reinholdtsen };
580c18ec02fSPetter Reinholdtsen 
581c18ec02fSPetter Reinholdtsen const struct oemvalstr picmg_clk_id_vals[] = {
582c18ec02fSPetter Reinholdtsen 	{ 0x0, 0, "Clock 0" },
583c18ec02fSPetter Reinholdtsen 	{ 0x0, 1, "Clock 1" },
584c18ec02fSPetter Reinholdtsen 	{ 0x0, 2, "Clock 2" },
585c18ec02fSPetter Reinholdtsen 	{ 0x0, 3, "Clock 3" },
586c18ec02fSPetter Reinholdtsen 	{ 0x0, 4, "Clock 4" },
587c18ec02fSPetter Reinholdtsen 	{ 0x0, 5, "Clock 5" },
588c18ec02fSPetter Reinholdtsen 	{ 0x0, 6, "Clock 6" },
589c18ec02fSPetter Reinholdtsen 	{ 0x0, 7, "Clock 7" },
590c18ec02fSPetter Reinholdtsen 	{ 0x0, 8, "Clock 8" },
591c18ec02fSPetter Reinholdtsen 	{ 0x0, 9, "Clock 9" },
592c18ec02fSPetter Reinholdtsen 	{ 0x0, 10, "Clock 10" },
593c18ec02fSPetter Reinholdtsen 	{ 0x0, 11, "Clock 11" },
594c18ec02fSPetter Reinholdtsen 	{ 0x0, 12, "Clock 12" },
595c18ec02fSPetter Reinholdtsen 	{ 0x0, 13, "Clock 13" },
596c18ec02fSPetter Reinholdtsen 	{ 0x0, 14, "Clock 14" },
597c18ec02fSPetter Reinholdtsen 	{ 0x0, 15, "Clock 15" },
598c18ec02fSPetter Reinholdtsen 	{ 0x1, 1, "TCLKA" },
599c18ec02fSPetter Reinholdtsen 	{ 0x1, 2, "TCLKB" },
600c18ec02fSPetter Reinholdtsen 	{ 0x1, 3, "TCLKC" },
601c18ec02fSPetter Reinholdtsen 	{ 0x1, 4, "TCLKD" },
602c18ec02fSPetter Reinholdtsen 	{ 0x1, 5, "FLCKA" },
603c18ec02fSPetter Reinholdtsen    { 0x2, 1, "CLK1A" },
604c18ec02fSPetter Reinholdtsen    { 0x2, 2, "CLK1A" },
605c18ec02fSPetter Reinholdtsen    { 0x2, 3, "CLK1A" },
606c18ec02fSPetter Reinholdtsen    { 0x2, 4, "CLK1A" },
607c18ec02fSPetter Reinholdtsen    { 0x2, 5, "CLK1A" },
608c18ec02fSPetter Reinholdtsen    { 0x2, 6, "CLK1A" },
609c18ec02fSPetter Reinholdtsen    { 0x2, 7, "CLK1A" },
610c18ec02fSPetter Reinholdtsen    { 0x2, 8, "CLK1A" },
611c18ec02fSPetter Reinholdtsen    { 0x2, 9, "CLK1A" },
612c18ec02fSPetter Reinholdtsen    { 0xffffff, 0x00,  NULL }
613c18ec02fSPetter Reinholdtsen };
614c18ec02fSPetter Reinholdtsen 
615c18ec02fSPetter Reinholdtsen const struct valstr picmg_busres_id_vals[] = {
616c18ec02fSPetter Reinholdtsen    { 0x0, "Metallic Test Bus pair #1" },
617c18ec02fSPetter Reinholdtsen    { 0x1, "Metallic Test Bus pair #2" },
618c18ec02fSPetter Reinholdtsen    { 0x2, "Synch clock group 1 (CLK1)" },
619c18ec02fSPetter Reinholdtsen    { 0x3, "Synch clock group 2 (CLK2)" },
620c18ec02fSPetter Reinholdtsen    { 0x4, "Synch clock group 3 (CLK3)" },
621c18ec02fSPetter Reinholdtsen 	{ 0x5, NULL }
622c18ec02fSPetter Reinholdtsen };
623c18ec02fSPetter Reinholdtsen const struct valstr picmg_busres_board_cmd_vals[] = {
624c18ec02fSPetter Reinholdtsen   { 0x0, "Query" },
625c18ec02fSPetter Reinholdtsen   { 0x1, "Release" },
626c18ec02fSPetter Reinholdtsen   { 0x2, "Force" },
627c18ec02fSPetter Reinholdtsen   { 0x3, "Bus Free" },
628c18ec02fSPetter Reinholdtsen   { 0x4, NULL }
629c18ec02fSPetter Reinholdtsen };
630c18ec02fSPetter Reinholdtsen 
631c18ec02fSPetter Reinholdtsen const struct valstr picmg_busres_shmc_cmd_vals[] = {
632c18ec02fSPetter Reinholdtsen   { 0x0, "Request" },
633c18ec02fSPetter Reinholdtsen   { 0x1, "Relinquish" },
634c18ec02fSPetter Reinholdtsen   { 0x2, "Notify" },
635c18ec02fSPetter Reinholdtsen   { 0x3, NULL }
636c18ec02fSPetter Reinholdtsen };
637c18ec02fSPetter Reinholdtsen 
638c18ec02fSPetter Reinholdtsen const struct oemvalstr picmg_busres_board_status_vals[] = {
639c18ec02fSPetter Reinholdtsen  { 0x0, 0x0, "In control" },
640c18ec02fSPetter Reinholdtsen  { 0x0, 0x1, "No control" },
641c18ec02fSPetter Reinholdtsen  { 0x1, 0x0, "Ack" },
642c18ec02fSPetter Reinholdtsen  { 0x1, 0x1, "Refused" },
643c18ec02fSPetter Reinholdtsen  { 0x1, 0x2, "No control" },
644c18ec02fSPetter Reinholdtsen  { 0x2, 0x0, "Ack" },
645c18ec02fSPetter Reinholdtsen  { 0x2, 0x1, "No control" },
646c18ec02fSPetter Reinholdtsen  { 0x3, 0x0, "Accept" },
647c18ec02fSPetter Reinholdtsen  { 0x3, 0x1, "Not Needed" },
648c18ec02fSPetter Reinholdtsen  { 0xffffff, 0x00,  NULL }
649c18ec02fSPetter Reinholdtsen };
650c18ec02fSPetter Reinholdtsen 
651c18ec02fSPetter Reinholdtsen const struct oemvalstr picmg_busres_shmc_status_vals[] = {
652c18ec02fSPetter Reinholdtsen  { 0x0, 0x0, "Grant" },
653c18ec02fSPetter Reinholdtsen  { 0x0, 0x1, "Busy" },
654c18ec02fSPetter Reinholdtsen  { 0x0, 0x2, "Defer" },
655c18ec02fSPetter Reinholdtsen  { 0x0, 0x3, "Deny" },
656c18ec02fSPetter Reinholdtsen 
657c18ec02fSPetter Reinholdtsen  { 0x1, 0x0, "Ack" },
658c18ec02fSPetter Reinholdtsen  { 0x1, 0x1, "Error" },
659c18ec02fSPetter Reinholdtsen 
660c18ec02fSPetter Reinholdtsen  { 0x2, 0x0, "Ack" },
661c18ec02fSPetter Reinholdtsen  { 0x2, 0x1, "Error" },
662c18ec02fSPetter Reinholdtsen  { 0x2, 0x2, "Deny" },
663c18ec02fSPetter Reinholdtsen 
664c18ec02fSPetter Reinholdtsen  { 0xffffff, 0x00,  NULL }
665c18ec02fSPetter Reinholdtsen };
666