]> git.proxmox.com Git - mirror_edk2.git/blob - EdkCompatibilityPkg/Compatibility/PiSmbiosRecordOnDataHubSmbiosRecordThunk/ConvTable.c
MdeModulePkg/UsbMassStorageDxe: Enhance Request Sense Handling
[mirror_edk2.git] / EdkCompatibilityPkg / Compatibility / PiSmbiosRecordOnDataHubSmbiosRecordThunk / ConvTable.c
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 };