1 /** @file 2 The conversion table that guides the generation of the Smbios struture list. 3 4 Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved.<BR> 5 This program and the accompanying materials 6 are licensed and made available under the terms and conditions of the BSD License 7 which accompanies this distribution. The full text of the license may be found at 8 http://opensource.org/licenses/bsd-license.php 9 10 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 11 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 12 13 **/ 14 15 #include "Thunk.h" 16 17 /// 18 /// The minimal length includes last two zero bytes. 19 /// 20 SMBIOS_TYPE_INFO_TABLE_ENTRY mTypeInfoTable[] = { 21 // 22 // Type 0: Bios Information 23 // 24 { 25 0, 26 0x1a, 27 TRUE, 28 FALSE 29 }, // size includes wo extension bytes 30 // 31 // Type 1: System Information 32 // 33 { 34 1, 35 0x1d, 36 TRUE, 37 FALSE 38 }, 39 // 40 // Type 2: Base Board Information 41 // 42 { 43 2, 44 0x12, 45 FALSE, 46 FALSE 47 }, 48 // 49 // Type 3: System Enclosure or Chassis 50 // 51 { 52 3, 53 0x17, // 0x13 covers till OEM-defined, not right 54 TRUE, 55 FALSE 56 }, 57 // 58 // Type 4: Processor 59 // 60 { 61 4, 62 0x2C, 63 TRUE, 64 FALSE 65 }, 66 // 67 // Type 5: Memory Controller 68 // 69 { 70 5, 71 0x12, 72 FALSE, 73 FALSE 74 }, 75 // 76 // Type 6: Memory 77 // 78 { 79 6, 80 0x0E, 81 FALSE, 82 FALSE 83 }, 84 // 85 // Type 7: Cache 86 // 87 { 88 7, 89 0x15, 90 TRUE, 91 FALSE 92 }, 93 // 94 // Type 8: Port Connector Information 95 // 96 { 97 8, 98 0x0B, 99 FALSE, 100 FALSE 101 }, 102 // 103 // Type 9: System Slots 104 // 105 { 106 9, 107 0x0f, 108 TRUE, 109 FALSE 110 }, 111 // 112 // Type 10: On Board Device Information 113 // 114 { 115 10, 116 0x8, 117 FALSE, 118 FALSE 119 }, 120 // 121 // Type 11: OEM Strings 122 // 123 { 124 11, 125 0x7, 126 FALSE, 127 FALSE 128 }, 129 // 130 // Type 12: System Configuration Options 131 // 132 { 133 12, 134 0x7, 135 FALSE, 136 FALSE 137 }, 138 // 139 // Type 13: BIOS Language Information 140 // 141 { 142 13, 143 0x18, 144 FALSE, 145 FALSE 146 }, 147 // 148 // Type 15: System Event Log 149 // 150 { 151 15, 152 0x19, 153 FALSE, 154 FALSE 155 }, 156 // 157 // Type 16: Physical Memory Array 158 // 159 { 160 16, 161 0x11, 162 TRUE, 163 FALSE 164 }, 165 // 166 // Type 17: Memory Device 167 // 168 { 169 17, 170 0x1d, 171 TRUE, 172 FALSE 173 }, 174 // 175 // Type 18: 32 bit Memory Error Information 176 // 177 { 178 18, 179 0x19, 180 FALSE, 181 FALSE 182 }, 183 // 184 // Type 19: Memory Array Mapped Address 185 // 186 { 187 19, 188 0x11, 189 TRUE, 190 FALSE 191 }, 192 // 193 // Type 20: Memory Device Mapped Address 194 // 195 { 196 20, 197 0x15, 198 TRUE, 199 FALSE 200 }, 201 // 202 // Type 21: Pointing Device 203 // 204 { 205 21, 206 0x9, 207 FALSE, 208 FALSE 209 }, 210 // 211 // Type 22: Portable Battery 212 // 213 { 214 22, 215 0x1c, 216 FALSE, 217 FALSE 218 }, 219 // 220 // Type 23: System Reset 221 // 222 { 223 23, 224 0x0f, 225 FALSE, 226 FALSE 227 }, 228 // 229 // Type 24: Hardware Security 230 // 231 { 232 24, 233 0x07, 234 FALSE, 235 FALSE 236 }, 237 // 238 // Type 25: System Power Controls 239 // 240 { 241 25, 242 0x0b, 243 FALSE, 244 FALSE 245 }, 246 // 247 // Type 26: Voltage Probe 248 // 249 { 250 26, 251 0x18, 252 FALSE, 253 FALSE 254 }, 255 // 256 // Type 27: Cooling Device 257 // 258 { 259 27, 260 0x10, 261 FALSE, 262 FALSE 263 }, 264 // 265 // Type 28: Temperature Probe 266 // 267 { 268 28, 269 0x18, 270 FALSE, 271 FALSE 272 }, 273 // 274 // Type 29: Electrical Current Probe 275 // 276 { 277 29, 278 0x18, 279 FALSE, 280 FALSE 281 }, 282 // 283 // Type 30: Out-of-Band Remote Access 284 // 285 { 286 30, 287 0x08, 288 FALSE, 289 FALSE 290 }, 291 // 292 // Type 31: BIS Entry Point 293 // 294 { 295 31, 296 0x1c, 297 FALSE, 298 FALSE 299 }, 300 // 301 // Type 32: System Boot Information 302 // 303 { 304 32, 305 0x16, 306 TRUE, 307 FALSE 308 }, 309 // 310 // Type 33: 64 bit Memory Error Information 311 // 312 { 313 33, 314 0x21, 315 FALSE, 316 FALSE 317 }, 318 // 319 // Type 34: Management Device 320 // 321 { 322 34, 323 0x0d, 324 FALSE, 325 FALSE 326 }, 327 // 328 // Type 35: Management Device Component 329 // 330 { 331 35, 332 0x0d, 333 FALSE, 334 FALSE 335 }, 336 // 337 // Type 36: Management Device Threshold 338 // 339 { 340 36, 341 0x12, 342 FALSE, 343 FALSE 344 }, 345 // 346 // Type 37: Memory Channel 347 // 348 { 349 37, 350 0x0c, 351 FALSE, 352 FALSE 353 }, 354 // 355 // Type 38: IPMI device info 356 // 357 { 358 38, 359 0x12, 360 TRUE, 361 FALSE 362 }, 363 // 364 // Type 39: Power supply 365 // 366 { 367 39, 368 0x18, 369 FALSE, 370 FALSE 371 }, 372 // 373 // Type 0x80-0xFF: OEM type 374 // 375 { 376 0x80, 377 0x6, 378 FALSE, 379 FALSE 380 }, 381 // 382 // Type 127: End of Table 383 // 384 { 385 127, 386 0x6, 387 FALSE, 388 FALSE 389 }, 390 // 391 // Terminator 392 // 393 { 394 0, 395 0 396 } 397 }; 398 399 SMBIOS_CONVERSION_TABLE_ENTRY mConversionTable[] = { 400 401 { 402 // 403 // Processor Sub Class -- Record Type 1: Frequency 404 // 405 EFI_PROCESSOR_SUBCLASS_GUID, 406 ProcessorCoreFrequencyRecordType, 407 4, 408 BySubclassInstanceSubinstanceProducer, 409 ByFunctionWithOffsetSpecified, 410 0x16, 411 SmbiosFldBase10ToWordWithMega 412 }, 413 414 { 415 // 416 // Processor SubClass -- Record Type 2: Bus Frequency 417 // 418 EFI_PROCESSOR_SUBCLASS_GUID, 419 ProcessorFsbFrequencyRecordType, 420 4, 421 BySubclassInstanceSubinstanceProducer, 422 ByFunctionWithOffsetSpecified, 423 0x12, 424 SmbiosFldBase10ToWordWithMega 425 }, 426 427 { 428 // 429 // Processor SubClass -- Record Type 3: Version 430 // 431 EFI_PROCESSOR_SUBCLASS_GUID, 432 ProcessorVersionRecordType, 433 4, 434 BySubclassInstanceSubinstanceProducer, 435 ByFunctionWithOffsetSpecified, 436 0x10, 437 SmbiosFldString 438 }, 439 440 { 441 // 442 // Processor SubClass -- Record Type 4: Manufacturor 443 // 444 EFI_PROCESSOR_SUBCLASS_GUID, 445 ProcessorManufacturerRecordType, 446 4, 447 BySubclassInstanceSubinstanceProducer, 448 ByFunctionWithOffsetSpecified, 449 0x7, 450 SmbiosFldString 451 }, 452 453 { 454 // 455 // Processor SubClass -- Record Type 5: Serial Number 456 // 457 EFI_PROCESSOR_SUBCLASS_GUID, 458 ProcessorSerialNumberRecordType, 459 4, 460 BySubclassInstanceSubinstanceProducer, 461 ByFunctionWithOffsetSpecified, 462 0x20, 463 SmbiosFldString 464 }, 465 466 { 467 // 468 // Processor SubClass -- Record Type 6: ID 469 // 470 EFI_PROCESSOR_SUBCLASS_GUID, 471 ProcessorIdRecordType, 472 4, 473 BySubclassInstanceSubinstanceProducer, 474 ByFunctionWithOffsetSpecified, 475 0x08, 476 SmbiosFldProcessorType6 477 }, 478 479 { 480 // 481 // Processor SubClass -- Record Type 7: Type 482 // 483 EFI_PROCESSOR_SUBCLASS_GUID, 484 ProcessorTypeRecordType, 485 4, 486 BySubclassInstanceSubinstanceProducer, 487 ByFunctionWithOffsetSpecified, 488 0x05, 489 SmbiosFldTruncateToByte 490 }, 491 492 { 493 // 494 // Processor SubClass -- Record Type 8: Family 495 // 496 EFI_PROCESSOR_SUBCLASS_GUID, 497 ProcessorFamilyRecordType, 498 4, 499 BySubclassInstanceSubinstanceProducer, 500 ByFunctionWithOffsetSpecified, 501 0x06, 502 SmbiosFldTruncateToByte 503 }, 504 505 { 506 // 507 // Processor SubClass -- Record Type 9: Voltage 508 // 509 EFI_PROCESSOR_SUBCLASS_GUID, 510 ProcessorVoltageRecordType, 511 4, 512 BySubclassInstanceSubinstanceProducer, 513 ByFunctionWithOffsetSpecified, 514 0x11, 515 SmbiosFldProcessorType9 516 }, 517 518 { 519 // 520 // Processor SubClass -- Record Type 14: Status 521 // 522 EFI_PROCESSOR_SUBCLASS_GUID, 523 ProcessorStatusRecordType, 524 4, 525 BySubclassInstanceSubinstanceProducer, 526 ByFunctionWithOffsetSpecified, 527 0x18, 528 SmbiosFldTruncateToByte 529 }, 530 531 { 532 // 533 // Processor SubClass -- Record Type 15: Socket Type 534 // 535 EFI_PROCESSOR_SUBCLASS_GUID, 536 ProcessorSocketTypeRecordType, 537 4, 538 BySubclassInstanceSubinstanceProducer, 539 ByFunctionWithOffsetSpecified, 540 0x19, 541 SmbiosFldTruncateToByte 542 }, 543 544 { 545 // 546 // Processor SubClass -- Record Type 16: Socket Name 547 // 548 EFI_PROCESSOR_SUBCLASS_GUID, 549 ProcessorSocketNameRecordType, 550 4, 551 BySubclassInstanceSubinstanceProducer, 552 ByFunctionWithOffsetSpecified, 553 0x04, 554 SmbiosFldString 555 }, 556 557 { 558 // 559 // Processor SubClass -- Record Type 17: Cache Associtation 560 // 561 EFI_PROCESSOR_SUBCLASS_GUID, 562 CacheAssociationRecordType, 563 4, 564 BySubClassInstanceProducer, 565 ByFunctionWithWholeDataRecord, 566 0, 567 SmbiosFldProcessorType17 568 }, 569 570 { 571 // 572 // Processor Sub Class -- Record Type 18: MaxFrequency 573 // 574 EFI_PROCESSOR_SUBCLASS_GUID, 575 ProcessorMaxCoreFrequencyRecordType, 576 4, 577 BySubclassInstanceSubinstanceProducer, 578 ByFunctionWithOffsetSpecified, 579 0x14, 580 SmbiosFldBase10ToWordWithMega 581 }, 582 583 { 584 // 585 // Processor SubClass -- Record Type 19: Asset Tag 586 // 587 EFI_PROCESSOR_SUBCLASS_GUID, 588 ProcessorAssetTagRecordType, 589 4, 590 BySubclassInstanceSubinstanceProducer, 591 ByFunctionWithOffsetSpecified, 592 0x21, 593 SmbiosFldString 594 }, 595 596 { 597 // 598 // Processor Sub Class -- Record Type 25: Core Count 599 // 600 EFI_PROCESSOR_SUBCLASS_GUID, 601 ProcessorCoreCountRecordType, 602 4, 603 BySubclassInstanceSubinstanceProducer, 604 ByFunctionWithOffsetSpecified, 605 0x23, 606 SmbiosFldTruncateToByte 607 }, 608 609 { 610 // 611 // Processor Sub Class -- Record Type 26: Enabled Core Count 612 // 613 EFI_PROCESSOR_SUBCLASS_GUID, 614 ProcessorEnabledCoreCountRecordType, 615 4, 616 BySubclassInstanceSubinstanceProducer, 617 ByFunctionWithOffsetSpecified, 618 0x24, 619 SmbiosFldTruncateToByte 620 }, 621 622 { 623 // 624 // Processor Sub Class -- Record Type 27: Thread Count 625 // 626 EFI_PROCESSOR_SUBCLASS_GUID, 627 ProcessorThreadCountRecordType, 628 4, 629 BySubclassInstanceSubinstanceProducer, 630 ByFunctionWithOffsetSpecified, 631 0x25, 632 SmbiosFldTruncateToByte 633 }, 634 635 { 636 // 637 // Processor Sub Class -- Record Type 28: Processor Characteristics 638 // 639 EFI_PROCESSOR_SUBCLASS_GUID, 640 ProcessorCharacteristicsRecordType, 641 4, 642 BySubclassInstanceSubinstanceProducer, 643 ByFunctionWithOffsetSpecified, 644 0x26, 645 SmbiosFldTruncateToWord 646 }, 647 648 { 649 // 650 // Processor Sub Class -- Record Type 29: Family 2 651 // 652 EFI_PROCESSOR_SUBCLASS_GUID, 653 ProcessorFamily2RecordType, 654 4, 655 BySubclassInstanceSubinstanceProducer, 656 ByFunctionWithOffsetSpecified, 657 0x28, 658 SmbiosFldTruncateToWord 659 }, 660 661 { 662 // 663 // Processor Sub Class -- Record Type 30: Part Number 664 // 665 EFI_PROCESSOR_SUBCLASS_GUID, 666 ProcessorPartNumberRecordType, 667 4, 668 BySubclassInstanceSubinstanceProducer, 669 ByFunctionWithOffsetSpecified, 670 0x22, 671 SmbiosFldString 672 }, 673 674 { 675 // 676 // Cache SubClass -- Record Type 1: Size 677 // 678 EFI_CACHE_SUBCLASS_GUID, 679 CacheSizeRecordType, 680 7, 681 BySubclassInstanceSubinstanceProducer, 682 ByFunctionWithOffsetSpecified, 683 0x09, 684 SmbiosFldBase2ToWordWithKilo 685 }, 686 687 { 688 // 689 // Cache SubClass -- Record Type 2: Max Size 690 // 691 EFI_CACHE_SUBCLASS_GUID, 692 MaximumSizeCacheRecordType, 693 7, 694 BySubclassInstanceSubinstanceProducer, 695 ByFunctionWithOffsetSpecified, 696 0x07, 697 SmbiosFldBase2ToWordWithKilo 698 }, 699 700 { 701 // 702 // Cache SubClass -- Record Type 3: Speed 703 // 704 EFI_CACHE_SUBCLASS_GUID, 705 CacheSpeedRecordType, 706 7, 707 BySubclassInstanceSubinstanceProducer, 708 ByFunctionWithOffsetSpecified, 709 0x0f, 710 SmbiosFldBase10ToByteWithNano 711 }, 712 713 { 714 // 715 // Cache SubClass -- Record Type 4: Socket 716 // 717 EFI_CACHE_SUBCLASS_GUID, 718 CacheSocketRecordType, 719 7, 720 BySubclassInstanceSubinstanceProducer, 721 ByFunctionWithOffsetSpecified, 722 0x04, 723 SmbiosFldString 724 }, 725 726 { 727 // 728 // Cache SubClass -- Record Type 5: Supported SRAM type 729 // 730 EFI_CACHE_SUBCLASS_GUID, 731 CacheSramTypeRecordType, 732 7, 733 BySubclassInstanceSubinstanceProducer, 734 ByFunctionWithOffsetSpecified, 735 0x0b, 736 SmbiosFldCacheType5 // Asynchronous and Synchronous are reversed 737 }, 738 739 { 740 // 741 // Cache SubClass -- Record Type 6: Installed SRAM type 742 // 743 EFI_CACHE_SUBCLASS_GUID, 744 CacheInstalledSramTypeRecordType, 745 7, 746 BySubclassInstanceSubinstanceProducer, 747 ByFunctionWithOffsetSpecified, 748 0x0d, 749 SmbiosFldCacheType5 750 }, 751 752 { 753 // 754 // Cache SubClass -- Record Type 7: error correction type 755 // 756 EFI_CACHE_SUBCLASS_GUID, 757 CacheErrorTypeRecordType, 758 7, 759 BySubclassInstanceSubinstanceProducer, 760 ByFunctionWithOffsetSpecified, 761 0x10, 762 SmbiosFldTruncateToByte 763 }, 764 765 { 766 // 767 // Cache SubClass -- Record Type 8: cache type 768 // 769 EFI_CACHE_SUBCLASS_GUID, 770 CacheTypeRecordType, 771 7, 772 BySubclassInstanceSubinstanceProducer, 773 ByFunctionWithOffsetSpecified, 774 0x11, 775 SmbiosFldTruncateToByte 776 }, 777 778 { 779 // 780 // Cache SubClass -- Record Type 9: Associativity 781 // 782 EFI_CACHE_SUBCLASS_GUID, 783 CacheAssociativityRecordType, 784 7, 785 BySubclassInstanceSubinstanceProducer, 786 ByFunctionWithOffsetSpecified, 787 0x12, 788 SmbiosFldTruncateToByte 789 }, 790 791 { 792 // 793 // Cache SubClass -- Record Type 10: Cache configuration 794 // 795 EFI_CACHE_SUBCLASS_GUID, 796 CacheConfigRecordType, 797 7, 798 BySubclassInstanceSubinstanceProducer, 799 ByFunctionWithOffsetSpecified, 800 0x05, 801 SmbiosFldCacheType10 802 }, 803 804 { 805 // 806 // Memory SubClass -- Record Type 2: Physical Memory Array 807 // 808 EFI_MEMORY_SUBCLASS_GUID, 809 EFI_MEMORY_ARRAY_LOCATION_RECORD_NUMBER, 810 16, 811 BySubclassInstanceSubinstanceProducer, 812 ByFunction, 813 0, 814 SmbiosFldMemoryType2 815 }, 816 817 { 818 // 819 // Memory SubClass -- Record Type 3: Memory Device to SMBIOS type 6 820 // 821 EFI_MEMORY_SUBCLASS_GUID, 822 EFI_MEMORY_ARRAY_LINK_RECORD_NUMBER, 823 6, 824 BySubclassInstanceSubinstanceProducer, 825 ByFunction, 826 0, 827 SmbiosFldSMBIOSType6 828 }, 829 830 { 831 // 832 // Memory SubClass -- Record Type 3: Memory Device to SMBIOS type 17 833 // 834 EFI_MEMORY_SUBCLASS_GUID, 835 EFI_MEMORY_ARRAY_LINK_RECORD_NUMBER, 836 17, 837 BySubclassInstanceSubinstanceProducer, 838 ByFunction, 839 0, 840 SmbiosFldMemoryType3 841 }, 842 843 { 844 // 845 // Memory SubClass -- Record Type 4: Memory Array Mapped Address 846 // 847 EFI_MEMORY_SUBCLASS_GUID, 848 EFI_MEMORY_ARRAY_START_ADDRESS_RECORD_NUMBER, 849 19, 850 BySubclassInstanceSubinstanceProducer, 851 ByFunction, 852 0, 853 SmbiosFldMemoryType4 854 }, 855 856 { 857 // 858 // Memory SubClass -- Record Type 5: Memory Device Mapped Address 859 // 860 EFI_MEMORY_SUBCLASS_GUID, 861 EFI_MEMORY_DEVICE_START_ADDRESS_RECORD_NUMBER, 862 20, 863 BySubclassInstanceSubinstanceProducer, 864 ByFunction, 865 0, 866 SmbiosFldMemoryType5 867 }, 868 869 { 870 // 871 // Memory SubClass -- Record Type 6: Memory Channel Type 872 // 873 EFI_MEMORY_SUBCLASS_GUID, 874 EFI_MEMORY_CHANNEL_TYPE_RECORD_NUMBER, 875 37, 876 BySubclassInstanceSubinstanceProducer, 877 ByFunction, 878 0, 879 SmbiosFldMemoryType6 880 }, 881 882 { 883 // 884 // Memory SubClass -- Record Type 7: Memory Channel Device 885 // 886 EFI_MEMORY_SUBCLASS_GUID, 887 EFI_MEMORY_CHANNEL_DEVICE_RECORD_NUMBER, 888 37, 889 BySubclassInstanceSubinstanceProducer, 890 ByFunction, 891 0, 892 SmbiosFldMemoryType7 893 }, 894 895 { 896 // 897 // Memory SubClass -- Record Type 8: Memory Controller information 898 // 899 EFI_MEMORY_SUBCLASS_GUID, 900 EFI_MEMORY_CONTROLLER_INFORMATION_RECORD_NUMBER, 901 5, 902 BySubclassInstanceSubinstanceProducer, 903 ByFunction, 904 0, 905 SmbiosFldMemoryType8 906 }, 907 908 { 909 // 910 // Memory SubClass -- Record Type 9: Memory 32 Bit Error Information 911 // 912 EFI_MEMORY_SUBCLASS_GUID, 913 EFI_MEMORY_32BIT_ERROR_INFORMATION_RECORD_NUMBER, 914 18, 915 BySubclassInstanceSubinstanceProducer, 916 ByFunction, 917 0, 918 SmbiosFldMemoryType9 919 }, 920 921 { 922 // 923 // Memory SubClass -- Record Type 10: Memory 64 Bit Error Information 924 // 925 EFI_MEMORY_SUBCLASS_GUID, 926 EFI_MEMORY_64BIT_ERROR_INFORMATION_RECORD_NUMBER, 927 33, 928 BySubclassInstanceSubinstanceProducer, 929 ByFunction, 930 0, 931 SmbiosFldMemoryType10 932 }, 933 934 { 935 // 936 // Misc SubClass -- Record Type 2: Bios Information (SMBIOS Type 0) 937 // 938 EFI_MISC_SUBCLASS_GUID, 939 EFI_MISC_BIOS_VENDOR_RECORD_NUMBER, // 0, 940 0, // smbios Type 0 941 BySubclassInstanceSubinstanceProducer, 942 ByFunction, 943 0, 944 SmbiosFldMiscType0 945 }, 946 947 { 948 // 949 // Misc SubClass -- Record Type 3: System Information (SMBIOS Type 1) 950 // 951 EFI_MISC_SUBCLASS_GUID, 952 EFI_MISC_SYSTEM_MANUFACTURER_RECORD_NUMBER, // 1, 953 1, 954 BySubclassInstanceSubinstanceProducer, 955 ByFunction, 956 0, 957 SmbiosFldMiscType1 958 }, 959 960 { 961 // 962 // Misc SubClass -- Record Type 4: Base Board Manufacturer (SMBIOS Type 2) 963 // 964 EFI_MISC_SUBCLASS_GUID, 965 EFI_MISC_BASE_BOARD_MANUFACTURER_RECORD_NUMBER, // 2, 966 2, // SMBIOS Type 2 967 BySubclassInstanceSubinstanceProducer, 968 ByFunction, 969 0, 970 SmbiosFldMiscType2 971 }, 972 973 { 974 // 975 // Misc SubClass -- Record Type 5: System Enclosure or Chassis (SMBIOS Type 3) 976 // 977 EFI_MISC_SUBCLASS_GUID, 978 EFI_MISC_CHASSIS_MANUFACTURER_RECORD_NUMBER, // 3, 979 3, 980 BySubclassInstanceSubinstanceProducer, 981 ByFunction, 982 0, 983 SmbiosFldMiscType3 984 }, 985 986 { 987 // 988 // Misc SubClass -- Record Type 6: Port Connector (SMBIOS Type 8) 989 // 990 EFI_MISC_SUBCLASS_GUID, 991 EFI_MISC_PORT_INTERNAL_CONNECTOR_DESIGNATOR_RECORD_NUMBER, // 8, 992 8, 993 BySubclassInstanceSubinstanceProducer, 994 ByFunction, 995 0, 996 SmbiosFldMiscType8 997 }, 998 999 { 1000 // 1001 // Misc SubClass -- Record Type 7: System Slots (SMBIOS Type 9) 1002 // 1003 EFI_MISC_SUBCLASS_GUID, 1004 EFI_MISC_SYSTEM_SLOT_DESIGNATION_RECORD_NUMBER, // 9, 1005 9, 1006 BySubclassInstanceSubinstanceProducer, 1007 ByFunction, 1008 0, 1009 SmbiosFldMiscType9 1010 }, 1011 1012 { 1013 // 1014 // Misc SubClass -- Record Type 8: Onboard Device (SMBIOS Type 10) 1015 // 1016 EFI_MISC_SUBCLASS_GUID, 1017 EFI_MISC_ONBOARD_DEVICE_RECORD_NUMBER, // 10, 1018 10, 1019 BySubclassInstanceSubinstanceProducer, 1020 ByFunction, 1021 0, 1022 SmbiosFldMiscType10 1023 }, 1024 1025 { 1026 // 1027 // Misc Subclass -- Record Type 9: OEM strings (SMBIOS Type 11) 1028 // 1029 EFI_MISC_SUBCLASS_GUID, 1030 EFI_MISC_OEM_STRING_RECORD_NUMBER, // 11, 1031 11, 1032 BySubclassInstanceSubinstanceProducer, 1033 ByFunction, 1034 0, 1035 SmbiosFldMiscType11 1036 }, 1037 1038 { 1039 // 1040 // Misc SubClass -- Record Type 0A: System Options (SMBIOS Type 12) 1041 // 1042 EFI_MISC_SUBCLASS_GUID, 1043 EFI_MISC_SYSTEM_OPTION_STRING_RECORD_NUMBER, // 12, 1044 12, 1045 BySubclassInstanceSubinstanceProducer, 1046 ByFunction, 1047 0, 1048 SmbiosFldMiscType12 1049 }, 1050 1051 { 1052 // 1053 // Misc SubClass -- Record Type 0B: Number of Installable Languages (SMBIOS Type 13) 1054 // 1055 EFI_MISC_SUBCLASS_GUID, 1056 EFI_MISC_NUMBER_OF_INSTALLABLE_LANGUAGES_RECORD_NUMBER, // 13, 1057 13, 1058 BySubclassInstanceSubinstanceProducer, 1059 ByFunction, 1060 0, 1061 SmbiosFldMiscType13 1062 }, 1063 1064 { 1065 // 1066 // Misc SubClass -- Record Type 0C: Installable Languages (SMBIOS Type 13) 1067 // 1068 EFI_MISC_SUBCLASS_GUID, 1069 EFI_MISC_SYSTEM_LANGUAGE_STRING_RECORD_NUMBER, // 13, 1070 13, 1071 BySubclassInstanceSubinstanceProducer, 1072 ByFunction, 1073 0, 1074 SmbiosFldMiscType14 1075 }, 1076 1077 { 1078 // 1079 // Misc SubClass -- Record Type 20: System Event Log (SMBIOS Type 15) 1080 // 1081 EFI_MISC_SUBCLASS_GUID, 1082 EFI_MISC_SYSTEM_EVENT_LOG_RECORD_NUMBER, // 15, 1083 15, 1084 BySubclassInstanceSubinstanceProducer, 1085 ByFunction, 1086 0, 1087 SmbiosFldMiscType15 1088 }, 1089 1090 { 1091 // 1092 // Misc SubClass -- Record Type 0F: Pointing Device (SMBIOS Type 21) 1093 // 1094 EFI_MISC_SUBCLASS_GUID, 1095 EFI_MISC_POINTING_DEVICE_TYPE_RECORD_NUMBER, // 21, 1096 21, 1097 BySubclassInstanceSubinstanceProducer, 1098 ByFunction, 1099 0, 1100 SmbiosFldMiscType21 1101 }, 1102 1103 { 1104 // 1105 // Misc SubClass -- Record Type 10: Portable Battery (SMBIOS Type 22) 1106 // 1107 EFI_MISC_SUBCLASS_GUID, 1108 EFI_MISC_PORTABLE_BATTERY_RECORD_NUMBER, // 22, 1109 22, 1110 BySubclassInstanceSubinstanceProducer, 1111 ByFunction, 1112 0, 1113 SmbiosFldMiscType22 1114 }, 1115 1116 { 1117 // 1118 // Misc SubClass -- Record Type 0x11: Reset Capabilities (SMBIOS Type 23) 1119 // 1120 EFI_MISC_SUBCLASS_GUID, 1121 EFI_MISC_RESET_CAPABILITIES_RECORD_NUMBER, // 23, 1122 23, 1123 BySubclassInstanceSubinstanceProducer, 1124 ByFunction, 1125 0, 1126 SmbiosFldMiscType23 1127 }, 1128 1129 { 1130 // 1131 // Misc SubClass -- Record Type 0x12: Hardware Security (SMBIOS Type 24) 1132 // 1133 EFI_MISC_SUBCLASS_GUID, 1134 EFI_MISC_HARDWARE_SECURITY_SETTINGS_DATA_RECORD_NUMBER, // 24, 1135 24, 1136 BySubclassInstanceSubinstanceProducer, 1137 ByFunction, 1138 0, 1139 SmbiosFldMiscType24 1140 }, 1141 1142 { 1143 // 1144 // Misc SubClass -- Record Type 0x13: System Power Controls (SMBIOS Type 25) 1145 // 1146 EFI_MISC_SUBCLASS_GUID, 1147 EFI_MISC_SCHEDULED_POWER_ON_MONTH_RECORD_NUMBER, // 25, 1148 25, 1149 BySubclassInstanceSubinstanceProducer, 1150 ByFunction, 1151 0, 1152 SmbiosFldMiscType25 1153 }, 1154 1155 { 1156 // 1157 // Misc SubClass -- Record Type 0x14: System Power Controls (SMBIOS Type 26) 1158 // 1159 EFI_MISC_SUBCLASS_GUID, 1160 EFI_MISC_VOLTAGE_PROBE_DESCRIPTION_RECORD_NUMBER, // 26, 1161 26, 1162 BySubclassInstanceSubinstanceProducer, 1163 ByFunction, 1164 0, 1165 SmbiosFldMiscType26 1166 }, 1167 1168 { 1169 // 1170 // Misc SubClass -- Record Type 0x15: Cooling Device (SMBIOS Type 27) 1171 // 1172 EFI_MISC_SUBCLASS_GUID, 1173 EFI_MISC_COOLING_DEVICE_TEMP_LINK_RECORD_NUMBER, // 27, 1174 27, 1175 BySubclassInstanceSubinstanceProducer, 1176 ByFunction, 1177 0, 1178 SmbiosFldMiscType27 1179 }, 1180 1181 { 1182 // 1183 // Misc SubClass -- Record Type 0x16: Temperature Probe (SMBIOS Type 28) 1184 // 1185 EFI_MISC_SUBCLASS_GUID, 1186 EFI_MISC_TEMPERATURE_PROBE_DESCRIPTION_RECORD_NUMBER, // 28, 1187 28, 1188 BySubclassInstanceSubinstanceProducer, 1189 ByFunction, 1190 0, 1191 SmbiosFldMiscType28 1192 }, 1193 1194 { 1195 // 1196 // Misc SubClass -- Record Type 0x17: Electrical Current Probe (SMBIOS Type 29) 1197 // 1198 EFI_MISC_SUBCLASS_GUID, 1199 EFI_MISC_ELECTRICAL_CURRENT_PROBE_DESCRIPTION_RECORD_NUMBER, // 29, 1200 29, 1201 BySubclassInstanceSubinstanceProducer, 1202 ByFunction, 1203 0, 1204 SmbiosFldMiscType29 1205 }, 1206 1207 { 1208 // 1209 // Misc SubClass -- Record Type 0x18: Temperature Probe (SMBIOS Type 30) 1210 // 1211 EFI_MISC_SUBCLASS_GUID, 1212 EFI_MISC_REMOTE_ACCESS_MANUFACTURER_DESCRIPTION_RECORD_NUMBER, // 30, 1213 30, 1214 BySubclassInstanceSubinstanceProducer, 1215 ByFunction, 1216 0, 1217 SmbiosFldMiscType30 1218 }, 1219 1220 { 1221 // 1222 // Misc SubClass -- Record Type 0x1A: Boot Information (SMBIOS Type 32) 1223 // 1224 EFI_MISC_SUBCLASS_GUID, 1225 EFI_MISC_BOOT_INFORMATION_STATUS_RECORD_NUMBER, // 32, 1226 32, 1227 BySubclassInstanceSubinstanceProducer, 1228 ByFunction, 1229 0, 1230 SmbiosFldMiscType32 1231 }, 1232 1233 { 1234 // 1235 // Misc SubClass -- Record Type 0x1B: Management Device (SMBIOS Type 34) 1236 // 1237 EFI_MISC_SUBCLASS_GUID, 1238 EFI_MISC_MANAGEMENT_DEVICE_DESCRIPTION_RECORD_NUMBER, // 34, 1239 34, 1240 BySubclassInstanceSubinstanceProducer, 1241 ByFunction, 1242 0, 1243 SmbiosFldMiscType34 1244 }, 1245 1246 { 1247 // 1248 // Misc SubClass -- Record Type 0x1C: Management Device Component (SMBIOS Type 35) 1249 // 1250 EFI_MISC_SUBCLASS_GUID, 1251 EFI_MISC_MANAGEMENT_DEVICE_COMPONENT_DESCRIPTION_RECORD_NUMBER, // 35, 1252 35, 1253 BySubclassInstanceSubinstanceProducer, 1254 ByFunction, 1255 0, 1256 SmbiosFldMiscType35 1257 }, 1258 1259 { 1260 // 1261 // Misc SubClass -- Record Type 0x21: Management Device Threshold (SMBIOS Type 36) 1262 // 1263 EFI_MISC_SUBCLASS_GUID, 1264 EFI_MISC_MANAGEMENT_DEVICE_THRESHOLD_RECORD_NUMBER, // 36, 1265 36, 1266 BySubclassInstanceSubinstanceProducer, 1267 ByFunction, 1268 0, 1269 SmbiosFldMiscType36 1270 }, 1271 1272 { 1273 // 1274 // Misc SubClass -- Record Type 0x1D: Boot Information (SMBIOS Type 38) 1275 // 1276 EFI_MISC_SUBCLASS_GUID, 1277 EFI_MISC_IPMI_INTERFACE_TYPE_RECORD_NUMBER, // 38, 1278 38, 1279 BySubclassInstanceSubinstanceProducer, 1280 ByFunction, 1281 0, 1282 SmbiosFldMiscType38 1283 }, 1284 1285 { 1286 // 1287 // Misc SubClass -- Record Type 0x1E: Power supply (SMBIOS Type 39) 1288 // 1289 EFI_MISC_SUBCLASS_GUID, 1290 EFI_MISC_SYSTEM_POWER_SUPPLY_RECORD_NUMBER, // 39, 1291 39, 1292 BySubclassInstanceSubinstanceProducer, 1293 ByFunction, 1294 0, 1295 SmbiosFldMiscType39 1296 }, 1297 1298 { 1299 // 1300 // Misc SubClass -- Record Type 0x80-0xFF: OEM type 1301 // 1302 EFI_MISC_SUBCLASS_GUID, 1303 EFI_MISC_SMBIOS_STRUCT_ENCAP_RECORD_NUMBER, // 0x80, 1304 0x80, 1305 BySubclassInstanceSubinstanceProducer, 1306 ByFunction, 1307 0, 1308 SmbiosFldMiscTypeOEM 1309 }, 1310 1311 { 1312 // 1313 // End-of-Table -- Record Type 127 1314 // 1315 EFI_MISC_SUBCLASS_GUID, 1316 127, 1317 127, 1318 BySubclassInstanceSubinstanceProducer, 1319 ByFunction, 1320 0, 1321 SmbiosFldMiscType127 1322 }, 1323 // 1324 // Table Terminator 1325 // 1326 { 1327 {0, 0, 0, {0, 0, 0, 0, 0, 0, 0, 0}}, 1328 0, 1329 0, 1330 (SMBIOS_STRUCTURE_LOCATING_METHOD) 0, 1331 (SMBIOS_FIELD_FILLING_METHOD) 0, 1332 0, 1333 0 1334 } 1335 }; 1336