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