]> git.proxmox.com Git - mirror_edk2.git/blame - ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/QueryTable.c
ShellPkg: Replace BSD License with BSD+Patent License
[mirror_edk2.git] / ShellPkg / Library / UefiShellDebug1CommandsLib / SmbiosView / QueryTable.c
CommitLineData
5d73d92f 1/** @file\r
2 Build a table, each item is (Key, Info) pair.\r
3 And give a interface of query a string out of a table.\r
4\r
ba0014b9 5 Copyright (c) 2005 - 2018, Intel Corporation. All rights reserved.<BR>\r
e9f0be02 6 (C) Copyright 2016-2017 Hewlett Packard Enterprise Development LP<BR>\r
56ba3746 7 SPDX-License-Identifier: BSD-2-Clause-Patent\r
5d73d92f 8\r
9**/\r
10\r
8a765da2 11#include "UefiShellDebug1CommandsLib.h"\r
5d73d92f 12#include "QueryTable.h"\r
13#include "PrintInfo.h"\r
14\r
15TABLE_ITEM SystemWakeupTypeTable[] = {\r
16 {\r
17 0x0,\r
18 L" Reserved"\r
19 },\r
20 {\r
21 0x1,\r
22 L" Other"\r
23 },\r
24 {\r
25 0x2,\r
26 L" Unknown"\r
27 },\r
28 {\r
29 0x3,\r
30 L" APM Timer"\r
31 },\r
32 {\r
33 0x4,\r
34 L" Modem Ring"\r
35 },\r
36 {\r
37 0x5,\r
38 L" LAN Remote"\r
39 },\r
40 {\r
41 0x6,\r
42 L" Power Switch"\r
43 },\r
44 {\r
45 0x7,\r
46 L" AC Power Restored"\r
47 }\r
48};\r
49\r
187cb3dd
SZ
50TABLE_ITEM BaseBoardFeatureFlagsTable[] = {\r
51 {\r
52 0,\r
53 L" Hosting board"\r
54 },\r
55 {\r
56 1,\r
57 L" Requires at least one daughter board or auxiliary card"\r
58 },\r
59 {\r
60 2,\r
61 L" Removable"\r
62 },\r
63 {\r
64 3,\r
65 L" Replaceable"\r
66 },\r
67 {\r
68 4,\r
69 L" Hot swappable"\r
70 }\r
71};\r
72\r
73TABLE_ITEM BaseBoardBoardTypeTable[] = {\r
74 {\r
75 0x01,\r
76 L" Unknown"\r
77 },\r
78 {\r
79 0x02,\r
80 L" Other"\r
81 },\r
82 {\r
83 0x03,\r
84 L" Server Blade"\r
85 },\r
86 {\r
87 0x04,\r
88 L" Connectivity Switch"\r
89 },\r
90 {\r
91 0x05,\r
92 L" System Management Module"\r
93 },\r
94 {\r
95 0x06,\r
96 L" Processor Module"\r
97 },\r
98 {\r
99 0x07,\r
100 L" I/O Module"\r
101 },\r
102 {\r
103 0x08,\r
104 L" Memory Module"\r
105 },\r
106 {\r
107 0x09,\r
108 L" Daughter board"\r
109 },\r
110 {\r
111 0x0A,\r
112 L" Motherboard"\r
113 },\r
114 {\r
115 0x0B,\r
116 L" Processor/Memory Module"\r
117 },\r
118 {\r
119 0x0C,\r
120 L" Processor/IO Module"\r
121 },\r
122 {\r
123 0x0D,\r
124 L" Interconnect Board"\r
125 }\r
126};\r
127\r
5d73d92f 128TABLE_ITEM SystemEnclosureTypeTable[] = {\r
129 {\r
130 0x01,\r
187cb3dd 131 L" Other"\r
5d73d92f 132 },\r
133 {\r
134 0x02,\r
135 L" Unknown"\r
136 },\r
137 {\r
138 0x03,\r
139 L" Desktop"\r
140 },\r
141 {\r
142 0x04,\r
143 L" Low Profile Desktop"\r
144 },\r
145 {\r
146 0x05,\r
147 L" Pizza Box"\r
148 },\r
149 {\r
150 0x06,\r
151 L" Mini Tower"\r
152 },\r
153 {\r
154 0x07,\r
155 L" Tower"\r
156 },\r
157 {\r
158 0x08,\r
159 L" Portable"\r
160 },\r
161 {\r
162 0x09,\r
33bed756 163 L" Laptop"\r
5d73d92f 164 },\r
165 {\r
166 0x0A,\r
167 L" Notebook"\r
168 },\r
169 {\r
170 0x0B,\r
171 L" Hand Held"\r
172 },\r
173 {\r
174 0x0C,\r
175 L" Docking Station"\r
176 },\r
177 {\r
178 0x0D,\r
179 L" All in One"\r
180 },\r
181 {\r
182 0x0E,\r
183 L" Sub Notebook"\r
184 },\r
185 {\r
186 0x0F,\r
187 L" Space-saving"\r
188 },\r
189 {\r
190 0x10,\r
191 L" Main Server Chassis"\r
192 },\r
193 {\r
194 0x11,\r
195 L" Expansion Chassis"\r
196 },\r
197 {\r
198 0x12,\r
199 L" SubChassis"\r
200 },\r
201 {\r
202 0x13,\r
203 L" Sub Notebook"\r
204 },\r
205 {\r
206 0x14,\r
207 L" Bus Expansion Chassis"\r
208 },\r
209 {\r
210 0x15,\r
211 L" Peripheral Chassis"\r
212 },\r
213 {\r
214 0x16,\r
215 L" RAID Chassis"\r
216 },\r
217 {\r
218 0x17,\r
219 L" Rack Mount Chassis"\r
220 },\r
221 {\r
222 0x18,\r
223 L" Sealed-case PC"\r
224 },\r
225 {\r
226 0x19,\r
227 L" Multi-system Chassis"\r
228 },\r
229 {\r
230 0x1A,\r
231 L" CompactPCI"\r
232 },\r
233 {\r
234 0x1B,\r
235 L" AdvancedTCA"\r
236 },\r
237 {\r
238 0x1C,\r
239 L" Blade"\r
240 },\r
241 {\r
242 0x1D,\r
243 L" Blade Enclosure"\r
244 },\r
c326e078
SZ
245 {\r
246 0x1E,\r
247 L" Tablet"\r
248 },\r
249 {\r
250 0x1F,\r
251 L" Convertible"\r
252 },\r
253 {\r
254 0x20,\r
255 L" Detachable"\r
256 },\r
44175ee7
SZ
257 {\r
258 0x21,\r
259 L" IoT Gateway"\r
260 },\r
261 {\r
262 0x22,\r
263 L" Embedded PC"\r
264 },\r
265 {\r
266 0x23,\r
267 L" Mini PC"\r
268 },\r
269 {\r
270 0x24,\r
271 L" Stick PC"\r
272 },\r
5d73d92f 273};\r
274\r
275TABLE_ITEM SystemEnclosureStatusTable[] = {\r
276 {\r
277 0x1,\r
278 L" Other"\r
279 },\r
280 {\r
281 0x2,\r
282 L" Unknown"\r
283 },\r
284 {\r
285 0x3,\r
286 L" Safe"\r
287 },\r
288 {\r
289 0x4,\r
290 L" Warning"\r
291 },\r
292 {\r
293 0x5,\r
294 L" Critical"\r
295 },\r
296 {\r
297 0x6,\r
298 L" Non-recoverable"\r
299 }\r
300};\r
301\r
302TABLE_ITEM SESecurityStatusTable[] = {\r
303 {\r
304 0x1,\r
305 L" Other"\r
306 },\r
307 {\r
308 0x2,\r
309 L" Unknown"\r
310 },\r
311 {\r
312 0x3,\r
313 L" None"\r
314 },\r
315 {\r
316 0x4,\r
317 L" External interface locked out"\r
318 },\r
319 {\r
320 0x5,\r
321 L" External interface enabled"\r
322 }\r
323};\r
324\r
325TABLE_ITEM ProcessorTypeTable[] = {\r
326 {\r
327 0x1,\r
328 L" Other"\r
329 },\r
330 {\r
331 0x2,\r
332 L" Unknown"\r
333 },\r
334 {\r
335 0x3,\r
336 L" Central Processor"\r
337 },\r
338 {\r
339 0x4,\r
340 L" Math Processor"\r
341 },\r
342 {\r
343 0x5,\r
344 L" DSP Processor"\r
345 },\r
346 {\r
347 0x6,\r
348 L" Video Processor "\r
349 },\r
350};\r
351\r
352TABLE_ITEM ProcessorUpgradeTable[] = {\r
353 {\r
354 0x01,\r
355 L"Other"\r
356 },\r
357 {\r
358 0x02,\r
359 L"Unknown"\r
360 },\r
361 {\r
362 0x03,\r
363 L"Daughter Board"\r
364 },\r
365 {\r
366 0x04,\r
367 L"ZIF Socket"\r
368 },\r
369 {\r
370 0x05,\r
371 L"Replaceable Piggy Back"\r
372 },\r
373 {\r
374 0x06,\r
375 L"None"\r
376 },\r
377 {\r
378 0x07,\r
379 L"LIF Socket"\r
380 },\r
381 {\r
382 0x08,\r
383 L"Slot 1"\r
384 },\r
385 {\r
386 0x09,\r
387 L"Slot 2"\r
388 },\r
389 {\r
390 0x0A,\r
391 L"370-pin socket"\r
392 },\r
393 {\r
394 0x0B,\r
395 L"Slot A"\r
396 },\r
397 {\r
398 0x0C,\r
399 L"Slot M"\r
400 },\r
401 {\r
402 0x0D,\r
403 L"Socket 423"\r
404 },\r
405 {\r
406 0x0E,\r
407 L"Socket A"\r
408 },\r
409 {\r
410 0x0F,\r
411 L"Socket 478"\r
412 },\r
413 {\r
414 0x10,\r
415 L"Socket 754"\r
416 },\r
417 {\r
418 0x11,\r
419 L"Socket 940"\r
420 },\r
421 {\r
422 0x12,\r
423 L"Socket 939"\r
424 },\r
425 {\r
426 0x13,\r
427 L"Socket mPGA604"\r
428 },\r
429 {\r
430 0x14,\r
431 L"Socket LGA771"\r
432 },\r
433 {\r
434 0x15,\r
435 L"Socket LGA775"\r
436 },\r
437 {\r
438 0x16,\r
439 L"Socket S1"\r
440 },\r
441 {\r
442 0x17,\r
443 L"Socket AM2"\r
444 },\r
445 {\r
446 0x18,\r
447 L"Socket F"\r
448 },\r
449 {\r
450 0x19,\r
451 L"Socket LGA1366"\r
187cb3dd
SZ
452 },\r
453 {\r
454 0x1A,\r
455 L"Socket G34"\r
456 },\r
457 {\r
458 0x1B,\r
459 L"Socket AM3"\r
460 },\r
461 {\r
462 0x1C,\r
463 L"Socket C32"\r
464 },\r
465 {\r
466 0x1D,\r
467 L"Socket LGA1156"\r
468 },\r
469 {\r
470 0x1E,\r
471 L"Socket LGA1567"\r
472 },\r
473 {\r
474 0x1F,\r
475 L"Socket PGA988A"\r
476 },\r
477 {\r
478 0x20,\r
479 L"Socket BGA1288"\r
480 },\r
481 {\r
482 0x21,\r
483 L"Socket rPGA988B"\r
484 },\r
485 {\r
486 0x22,\r
487 L"Socket BGA1023"\r
488 },\r
489 {\r
490 0x23,\r
491 L"Socket BGA1224"\r
492 },\r
493 {\r
494 0x24,\r
073fe587 495 L"Socket LGA1155"\r
187cb3dd
SZ
496 },\r
497 {\r
498 0x25,\r
499 L"Socket LGA1356"\r
500 },\r
501 {\r
502 0x26,\r
503 L"Socket LGA2011"\r
504 },\r
505 {\r
506 0x27,\r
507 L"Socket FS1"\r
508 },\r
509 {\r
510 0x28,\r
511 L"Socket FS2"\r
512 },\r
513 {\r
514 0x29,\r
515 L"Socket FM1"\r
516 },\r
517 {\r
518 0x2A,\r
519 L"Socket FM2"\r
073fe587
SEHM
520 },\r
521 {\r
522 0x2B,\r
523 L"Socket LGA2011-3"\r
524 },\r
525 {\r
526 0x2C,\r
527 L"Socket LGA1356-3"\r
c326e078
SZ
528 },\r
529 {\r
530 0x2D,\r
531 L"Socket LGA1150"\r
532 },\r
533 {\r
534 0x2E,\r
535 L"Socket BGA1168"\r
536 },\r
537 {\r
538 0x2F,\r
539 L"Socket BGA1234"\r
540 },\r
541 {\r
542 0x30,\r
543 L"Socket BGA1364"\r
44175ee7
SZ
544 },\r
545 {\r
546 0x31,\r
547 L"Socket AM4"\r
548 },\r
549 {\r
550 0x32,\r
551 L"Socket LGA1151"\r
552 },\r
553 {\r
554 0x33,\r
555 L"Socket BGA1356"\r
556 },\r
557 {\r
558 0x34,\r
559 L"Socket BGA1440"\r
560 },\r
561 {\r
562 0x35,\r
563 L"Socket BGA1515"\r
564 },\r
565 {\r
566 0x36,\r
567 L"Socket LGA3647-1"\r
568 },\r
569 {\r
570 0x37,\r
571 L"Socket SP3"\r
5734d486
SZ
572 },\r
573 {\r
574 0x38,\r
575 L"Socket SP3r2"\r
7475ac51
DB
576 },\r
577 {\r
578 0x39,\r
579 L"Socket LGA2066"\r
580 },\r
581 {\r
582 0x3A,\r
583 L"Socket BGA1392"\r
584 },\r
585 {\r
586 0x3B,\r
587 L"Socket BGA1510"\r
588 },\r
589 {\r
590 0x3C,\r
591 L"Socket BGA1528"\r
187cb3dd 592 }\r
5d73d92f 593};\r
594\r
187cb3dd
SZ
595TABLE_ITEM ProcessorCharacteristicsTable[] = {\r
596 {\r
597 1,\r
598 L" Unknown"\r
599 },\r
600 {\r
601 2,\r
602 L" 64-bit Capable"\r
603 },\r
604 {\r
605 3,\r
606 L" Multi-Core"\r
607 },\r
608 {\r
609 4,\r
610 L" Hardware Thread"\r
611 },\r
612 {\r
613 5,\r
614 L" Execute Protection"\r
615 },\r
616 {\r
617 6,\r
618 L" Enhanced Virtualization"\r
619 },\r
620 {\r
621 7,\r
622 L" Power/Performance Control"\r
623 }\r
624};\r
625\r
626\r
5d73d92f 627TABLE_ITEM McErrorDetectMethodTable[] = {\r
628 {\r
629 0x01,\r
630 L"Other"\r
631 },\r
632 {\r
633 0x02,\r
634 L"Unknown"\r
635 },\r
636 {\r
637 0x03,\r
638 L"None"\r
639 },\r
640 {\r
641 0x04,\r
642 L"8-bit Parity"\r
643 },\r
644 {\r
645 0x05,\r
646 L"32-bit ECC"\r
647 },\r
648 {\r
649 0x06,\r
650 L"64-bit ECC"\r
651 },\r
652 {\r
653 0x07,\r
654 L"128-bit ECC"\r
655 },\r
656 {\r
657 0x08,\r
658 L"CRC"\r
659 },\r
660};\r
661\r
662TABLE_ITEM McErrorCorrectCapabilityTable[] = {\r
663 {\r
664 0,\r
665 L"Other"\r
666 },\r
667 {\r
668 1,\r
669 L"Unknown"\r
670 },\r
671 {\r
672 2,\r
673 L"None"\r
674 },\r
675 {\r
676 3,\r
677 L"Single Bit Error Correcting"\r
678 },\r
679 {\r
680 4,\r
681 L"Double Bit Error Correcting"\r
682 },\r
683 {\r
684 5,\r
685 L"Error Scrubbing"\r
686 },\r
687};\r
688\r
689TABLE_ITEM McInterleaveSupportTable[] = {\r
690 {\r
691 0x01,\r
692 L"Other"\r
693 },\r
694 {\r
695 0x02,\r
696 L"Unknown"\r
697 },\r
698 {\r
699 0x03,\r
700 L"One Way Interleave"\r
701 },\r
702 {\r
703 0x04,\r
704 L"Two Way Interleave"\r
705 },\r
706 {\r
707 0x05,\r
708 L"Four Way Interleave"\r
709 },\r
710 {\r
711 0x06,\r
712 L"Eight Way Interleave"\r
713 },\r
714 {\r
715 0x07,\r
716 L"Sixteen Way Interleave"\r
717 }\r
718};\r
719\r
720TABLE_ITEM McMemorySpeedsTable[] = {\r
721 {\r
722 0,\r
723 L" Other"\r
724 },\r
725 {\r
726 1,\r
727 L" Unknown"\r
728 },\r
729 {\r
730 2,\r
731 L" 70ns"\r
732 },\r
733 {\r
734 3,\r
735 L" 60ns"\r
736 },\r
737 {\r
738 4,\r
739 L" 50ns"\r
740 },\r
741};\r
742\r
743TABLE_ITEM MemoryModuleVoltageTable[] = {\r
744 {\r
745 0,\r
746 L" 5V"\r
747 },\r
748 {\r
749 1,\r
750 L" 3.3V"\r
751 },\r
752 {\r
753 2,\r
754 L" 2.9V"\r
755 },\r
756};\r
757\r
758TABLE_ITEM MmMemoryTypeTable[] = {\r
759 {\r
760 0,\r
761 L" Other"\r
762 },\r
763 {\r
764 1,\r
765 L" Unknown"\r
766 },\r
767 {\r
768 2,\r
769 L" Standard"\r
770 },\r
771 {\r
772 3,\r
773 L" Fast Page Mode"\r
774 },\r
775 {\r
776 4,\r
777 L" EDO"\r
778 },\r
779 {\r
780 5,\r
781 L" Parity"\r
782 },\r
783 {\r
784 6,\r
785 L" ECC "\r
786 },\r
787 {\r
788 7,\r
789 L" SIMM"\r
790 },\r
791 {\r
792 8,\r
793 L" DIMM"\r
794 },\r
795 {\r
796 9,\r
797 L" Burst EDO"\r
798 },\r
799 {\r
800 10,\r
801 L" SDRAM"\r
802 }\r
803};\r
804\r
805TABLE_ITEM MmErrorStatusTable[] = {\r
806 {\r
807 0,\r
808 L" Uncorrectable errors received"\r
809 },\r
810 {\r
811 1,\r
812 L" Correctable errors received"\r
813 },\r
814 {\r
815 2,\r
816 L" Error Status obtained from the event log"\r
817 }\r
818};\r
819\r
820TABLE_ITEM CacheSRAMTypeTable[] = {\r
821 {\r
822 0,\r
823 L" Other"\r
824 },\r
825 {\r
826 1,\r
827 L" Unknown"\r
828 },\r
829 {\r
830 2,\r
831 L" Non-Burst"\r
832 },\r
833 {\r
834 3,\r
835 L" Burst"\r
836 },\r
837 {\r
838 4,\r
839 L" Pipeline Burst"\r
840 },\r
841 {\r
842 5,\r
843 L" Synchronous"\r
844 },\r
845 {\r
846 6,\r
847 L" Asynchronous"\r
848 },\r
849};\r
850\r
851TABLE_ITEM CacheErrCorrectingTypeTable[] = {\r
852 {\r
853 0x01,\r
854 L"Other"\r
855 },\r
856 {\r
857 0x02,\r
858 L"Unknown"\r
859 },\r
860 {\r
861 0x03,\r
862 L"None"\r
863 },\r
864 {\r
865 0x04,\r
866 L"Parity"\r
867 },\r
868 {\r
869 0x05,\r
870 L"Single-bit ECC"\r
871 },\r
872 {\r
873 0x06,\r
874 L"Multi-bit ECC"\r
5d73d92f 875 }\r
876};\r
877\r
878TABLE_ITEM CacheSystemCacheTypeTable[] = {\r
879 {\r
880 0x01,\r
881 L"Other"\r
882 },\r
883 {\r
884 0x02,\r
885 L"Unknown"\r
886 },\r
887 {\r
888 0x03,\r
889 L"Instruction"\r
890 },\r
891 {\r
892 0x04,\r
893 L"Data"\r
894 },\r
895 {\r
896 0x05,\r
897 L"Unified"\r
898 }\r
899};\r
900\r
901TABLE_ITEM CacheAssociativityTable[] = {\r
902 {\r
903 0x01,\r
904 L"Other"\r
905 },\r
906 {\r
907 0x02,\r
908 L"Unknown"\r
909 },\r
910 {\r
911 0x03,\r
912 L"Direct Mapped"\r
913 },\r
914 {\r
915 0x04,\r
916 L"2-way Set-Associative"\r
917 },\r
918 {\r
919 0x05,\r
920 L"4-way Set-Associative"\r
921 },\r
922 {\r
923 0x06,\r
924 L"Fully Associative"\r
925 },\r
926 {\r
927 0x07,\r
928 L"8-way Set-Associative"\r
929 },\r
930 {\r
931 0x08,\r
932 L"16-way Set-Associative"\r
933 },\r
934 {\r
935 0x09,\r
936 L"12-way Set-Associative"\r
937 },\r
938 {\r
939 0x0A,\r
940 L"24-way Set-Associative"\r
941 },\r
942 {\r
943 0x0B,\r
944 L"32-way Set-Associative"\r
945 },\r
946 {\r
947 0x0C,\r
948 L"48-way Set-Associative"\r
949 },\r
950 {\r
951 0x0D,\r
952 L"64-way Set-Associative"\r
187cb3dd
SZ
953 },\r
954 {\r
955 0x0E,\r
956 L"20-way Set-Associative"\r
5d73d92f 957 }\r
958};\r
959\r
960TABLE_ITEM PortConnectorTypeTable[] = {\r
961 {\r
962 0x00,\r
963 L"None"\r
964 },\r
965 {\r
966 0x01,\r
967 L"Centronics"\r
968 },\r
969 {\r
970 0x02,\r
971 L"Mini Centronics"\r
972 },\r
973 {\r
974 0x03,\r
975 L"Proprietary"\r
976 },\r
977 {\r
978 0x04,\r
979 L"DB-25 pin male"\r
980 },\r
981 {\r
982 0x05,\r
983 L"DB-25 pin female"\r
984 },\r
985 {\r
986 0x06,\r
987 L"DB-15 pin male"\r
988 },\r
989 {\r
990 0x07,\r
991 L"DB-15 pin female"\r
992 },\r
993 {\r
994 0x08,\r
995 L"DB-9 pin male"\r
996 },\r
997 {\r
998 0x09,\r
999 L"DB-9 pin female"\r
1000 },\r
1001 {\r
1002 0x0A,\r
1003 L"RJ-11"\r
1004 },\r
1005 {\r
1006 0x0B,\r
1007 L"RJ-45"\r
1008 },\r
1009 {\r
1010 0x0C,\r
1011 L"50 Pin MiniSCSI"\r
1012 },\r
1013 {\r
1014 0x0D,\r
1015 L"Mini-DIN"\r
1016 },\r
1017 {\r
1018 0x0E,\r
1019 L"Micro-DIN"\r
1020 },\r
1021 {\r
1022 0x0F,\r
1023 L"PS/2"\r
1024 },\r
1025 {\r
1026 0x10,\r
1027 L"Infrared"\r
1028 },\r
1029 {\r
1030 0x11,\r
1031 L"HP-HIL"\r
1032 },\r
1033 {\r
1034 0x12,\r
1035 L"Access Bus (USB)"\r
1036 },\r
1037 {\r
1038 0x13,\r
1039 L"SSA SCSI"\r
1040 },\r
1041 {\r
1042 0x14,\r
1043 L"Circular DIN-8 male"\r
1044 },\r
1045 {\r
1046 0x15,\r
1047 L"Circular DIN-8 female"\r
1048 },\r
1049 {\r
1050 0x16,\r
1051 L"On Board IDE"\r
1052 },\r
1053 {\r
1054 0x17,\r
1055 L"On Board Floppy"\r
1056 },\r
1057 {\r
1058 0x18,\r
1059 L"9 Pin Dual Inline (pin 10 cut)"\r
1060 },\r
1061 {\r
1062 0x19,\r
1063 L"25 Pin Dual Inline (pin 26 cut)"\r
1064 },\r
1065 {\r
1066 0x1A,\r
1067 L"50 Pin Dual Inline"\r
1068 },\r
1069 {\r
1070 0x1B,\r
1071 L"68 Pin Dual Inline"\r
1072 },\r
1073 {\r
1074 0x1C,\r
1075 L"On Board Sound Input from CD-ROM"\r
1076 },\r
1077 {\r
1078 0x1D,\r
1079 L"Mini-Centronics Type-14"\r
1080 },\r
1081 {\r
1082 0x1E,\r
1083 L"Mini-Centronics Type-26"\r
1084 },\r
1085 {\r
1086 0x1F,\r
1087 L"Mini-jack (headphones)"\r
1088 },\r
1089 {\r
1090 0x20,\r
1091 L"BNC"\r
1092 },\r
1093 {\r
1094 0x21,\r
1095 L"1394"\r
1096 },\r
1097 {\r
1098 0x22,\r
1099 L"SAS/SATA Plug Receptacle"\r
1100 },\r
7475ac51
DB
1101 {\r
1102 0x23,\r
1103 L"USB Type-C Receptacle"\r
1104 },\r
5d73d92f 1105 {\r
1106 0xA0,\r
1107 L"PC-98"\r
1108 },\r
1109 {\r
1110 0xA1,\r
1111 L"PC-98Hireso"\r
1112 },\r
1113 {\r
1114 0xA2,\r
1115 L"PC-H98"\r
1116 },\r
1117 {\r
1118 0xA3,\r
1119 L"PC-98Note"\r
1120 },\r
1121 {\r
1122 0xA4,\r
1123 L"PC-98Full"\r
1124 },\r
1125 {\r
1126 0xFF,\r
1127 L"Other"\r
1128 },\r
1129};\r
1130\r
1131TABLE_ITEM PortTypeTable[] = {\r
1132 {\r
1133 0x00,\r
1134 L"None"\r
1135 },\r
1136 {\r
1137 0x01,\r
1138 L"Parallel Port XT/AT Compatible"\r
1139 },\r
1140 {\r
1141 0x02,\r
1142 L"Parallel Port PS/2"\r
1143 },\r
1144 {\r
1145 0x03,\r
1146 L"Parallel Port ECP"\r
1147 },\r
1148 {\r
1149 0x04,\r
1150 L"Parallel Port EPP"\r
1151 },\r
1152 {\r
1153 0x05,\r
1154 L"Parallel Port ECP/EPP"\r
1155 },\r
1156 {\r
1157 0x06,\r
1158 L"Serial Port XT/AT Compatible"\r
1159 },\r
1160 {\r
1161 0x07,\r
1162 L"Serial Port 16450 Compatible"\r
1163 },\r
1164 {\r
1165 0x08,\r
1166 L"Serial Port 16550 Compatible"\r
1167 },\r
1168 {\r
1169 0x09,\r
1170 L"Serial Port 16550A Compatible"\r
1171 },\r
1172 {\r
1173 0x0A,\r
1174 L"SCSI Port"\r
1175 },\r
1176 {\r
1177 0x0B,\r
1178 L"MIDI Port"\r
1179 },\r
1180 {\r
1181 0x0C,\r
1182 L"Joy Stick Port"\r
1183 },\r
1184 {\r
1185 0x0D,\r
1186 L"Keyboard Port"\r
1187 },\r
1188 {\r
1189 0x0E,\r
1190 L"Mouse Port"\r
1191 },\r
1192 {\r
1193 0x0F,\r
1194 L"SSA SCSI"\r
1195 },\r
1196 {\r
1197 0x10,\r
1198 L"USB"\r
1199 },\r
1200 {\r
1201 0x11,\r
1202 L"FireWire (IEEE P1394)"\r
1203 },\r
1204 {\r
1205 0x12,\r
1206 L"PCMCIA Type II"\r
1207 },\r
1208 {\r
1209 0x13,\r
1210 L"PCMCIA Type II"\r
1211 },\r
1212 {\r
1213 0x14,\r
1214 L"PCMCIA Type III"\r
1215 },\r
1216 {\r
1217 0x15,\r
1218 L"Cardbus"\r
1219 },\r
1220 {\r
1221 0x16,\r
1222 L"Access Bus Port"\r
1223 },\r
1224 {\r
1225 0x17,\r
1226 L"SCSI II"\r
1227 },\r
1228 {\r
1229 0x18,\r
1230 L"SCSI Wide"\r
1231 },\r
1232 {\r
1233 0x19,\r
1234 L"PC-98"\r
1235 },\r
1236 {\r
1237 0x1A,\r
1238 L"PC-98-Hireso"\r
1239 },\r
1240 {\r
1241 0x1B,\r
1242 L"PC-H98"\r
1243 },\r
1244 {\r
1245 0x1C,\r
1246 L"Video Port"\r
1247 },\r
1248 {\r
1249 0x1D,\r
1250 L"Audio Port"\r
1251 },\r
1252 {\r
1253 0x1E,\r
1254 L"Modem Port"\r
1255 },\r
1256 {\r
1257 0x1F,\r
1258 L"Network Port"\r
1259 },\r
1260 {\r
1261 0x20,\r
1262 L"SATA Port"\r
1263 },\r
1264 {\r
1265 0x21,\r
1266 L"SAS Port"\r
1267 },\r
7475ac51
DB
1268 {\r
1269 0x22,\r
1270 L"Multi-Function Display Port (MFDP)"\r
1271 },\r
1272 {\r
1273 0x23,\r
1274 L"Thunderbolt"\r
1275 },\r
5d73d92f 1276 {\r
1277 0xA0,\r
1278 L"8251 Compatible"\r
1279 },\r
1280 {\r
1281 0xA1,\r
1282 L"8251 FIFO Compatible"\r
1283 },\r
1284 {\r
1285 0xFF,\r
1286 L"Other "\r
1287 },\r
1288};\r
1289\r
1290TABLE_ITEM SystemSlotTypeTable[] = {\r
1291 {\r
1292 0x01,\r
1293 L"Other"\r
1294 },\r
1295 {\r
1296 0x02,\r
1297 L"Unknown"\r
1298 },\r
1299 {\r
1300 0x03,\r
1301 L"ISA"\r
1302 },\r
1303 {\r
1304 0x04,\r
1305 L"MCA"\r
1306 },\r
1307 {\r
1308 0x05,\r
1309 L"EISA"\r
1310 },\r
1311 {\r
1312 0x06,\r
1313 L"PCI"\r
1314 },\r
1315 {\r
1316 0x07,\r
1317 L"PC Card (PCMCIA)"\r
1318 },\r
1319 {\r
1320 0x08,\r
1321 L"VL-VESA"\r
1322 },\r
1323 {\r
1324 0x09,\r
1325 L"Proprietary"\r
1326 },\r
1327 {\r
1328 0x0A,\r
1329 L"Processor Card Slot"\r
1330 },\r
1331 {\r
1332 0x0B,\r
1333 L"Proprietary Memory Card Slot"\r
1334 },\r
1335 {\r
1336 0x0C,\r
1337 L"I/O Riser Card Slot"\r
1338 },\r
1339 {\r
1340 0x0D,\r
1341 L"NuBus"\r
1342 },\r
1343 {\r
1344 0x0E,\r
1345 L"PCI - 66MHz Capable"\r
1346 },\r
1347 {\r
1348 0x0F,\r
1349 L"AGP"\r
1350 },\r
1351 {\r
1352 0x10,\r
1353 L"AGP 2X"\r
1354 },\r
1355 {\r
1356 0x11,\r
1357 L"AGP 4X"\r
1358 },\r
1359 {\r
1360 0x12,\r
1361 L"PCI-X"\r
1362 },\r
5ab0ffc9
SZ
1363 {\r
1364 0x13,\r
1365 L"AGP 8X"\r
1366 },\r
c326e078
SZ
1367 {\r
1368 0x14,\r
1369 L"M.2 Socket 1-DP (Mechanical Key A)"\r
1370 },\r
1371 {\r
1372 0x15,\r
1373 L"M.2 Socket 1-SD (Mechanical Key E)"\r
1374 },\r
1375 {\r
1376 0x16,\r
1377 L"M.2 Socket 2 (Mechanical Key B)"\r
1378 },\r
1379 {\r
1380 0x17,\r
1381 L"M.2 Socket 3 (Mechanical Key M)"\r
1382 },\r
1383 {\r
1384 0x18,\r
1385 L"MXM Type I"\r
1386 },\r
1387 {\r
1388 0x19,\r
1389 L"MXM Type II"\r
1390 },\r
1391 {\r
1392 0x1A,\r
1393 L"MXM Type III (standard connector)"\r
1394 },\r
1395 {\r
1396 0x1B,\r
1397 L"MXM Type III (HE connector)"\r
1398 },\r
1399 {\r
1400 0x1C,\r
1401 L"MXM Type IV"\r
1402 },\r
1403 {\r
1404 0x1D,\r
1405 L"MXM 3.0 Type A"\r
1406 },\r
1407 {\r
1408 0x1E,\r
1409 L"MXM 3.0 Type B"\r
1410 },\r
1411 {\r
1412 0x1F,\r
1413 L"PCI Express Gen 2 SFF-8639"\r
1414 },\r
1415 {\r
1416 0x20,\r
1417 L"PCI Express Gen 3 SFF-8639"\r
1418 },\r
44175ee7
SZ
1419 {\r
1420 0x21,\r
1421 L"PCI Express Mini 52-pin (CEM spec. 2.0) with bottom-side keep-outs"\r
1422 },\r
1423 {\r
1424 0x22,\r
1425 L"PCI Express Mini 52-pin (CEM spec. 2.0) without bottom-side keep-outs"\r
1426 },\r
1427 {\r
1428 0x23,\r
1429 L"PCI Express Mini 76-pin (CEM spec. 2.0) Corresponds to Display-Mini card"\r
1430 },\r
5d73d92f 1431 {\r
1432 0xA0,\r
1433 L"PC-98/C20 "\r
1434 },\r
1435 {\r
1436 0xA1,\r
1437 L"PC-98/C24 "\r
1438 },\r
1439 {\r
1440 0xA2,\r
1441 L"PC-98/E "\r
1442 },\r
1443 {\r
1444 0xA3,\r
1445 L"PC-98/Local Bus "\r
1446 },\r
1447 {\r
1448 0xA4,\r
1449 L"PC-98/Card "\r
1450 },\r
1451 {\r
1452 0xA5,\r
1453 L"PCI Express "\r
1454 },\r
1455 {\r
1456 0xA6,\r
1457 L"PCI Express X1"\r
1458 },\r
1459 {\r
1460 0xA7,\r
1461 L"PCI Express X2"\r
1462 },\r
1463 {\r
1464 0xA8,\r
1465 L"PCI Express X4"\r
1466 },\r
1467 {\r
1468 0xA9,\r
1469 L"PCI Express X8"\r
1470 },\r
1471 {\r
1472 0xAA,\r
1473 L"PCI Express X16"\r
1474 },\r
1475 {\r
1476 0xAB,\r
187cb3dd 1477 L"PCI Express Gen 2"\r
5d73d92f 1478 },\r
1479 {\r
1480 0xAC,\r
1481 L"PCI Express Gen 2 X1"\r
1482 },\r
1483 {\r
1484 0xAD,\r
1485 L"PCI Express Gen 2 X2"\r
1486 },\r
1487 {\r
1488 0xAE,\r
1489 L"PCI Express Gen 2 X4"\r
1490 },\r
1491 {\r
1492 0xAF,\r
1493 L"PCI Express Gen 2 X8"\r
1494 },\r
1495 {\r
1496 0xB0,\r
1497 L"PCI Express Gen 2 X16"\r
187cb3dd
SZ
1498 },\r
1499 {\r
1500 0xB1,\r
1501 L"PCI Express Gen 3"\r
1502 },\r
1503 {\r
1504 0xB2,\r
1505 L"PCI Express Gen 3 X1"\r
1506 },\r
1507 {\r
1508 0xB3,\r
1509 L"PCI Express Gen 3 X2"\r
1510 },\r
1511 {\r
1512 0xB4,\r
1513 L"PCI Express Gen 3 X4"\r
1514 },\r
1515 {\r
1516 0xB5,\r
1517 L"PCI Express Gen 3 X8"\r
1518 },\r
1519 {\r
1520 0xB6,\r
1521 L"PCI Express Gen 3 X16"\r
5d73d92f 1522 }\r
1523};\r
1524\r
1525TABLE_ITEM SystemSlotDataBusWidthTable[] = {\r
1526 {\r
1527 0x01,\r
1528 L" Other"\r
1529 },\r
1530 {\r
1531 0x02,\r
1532 L" Unknown"\r
1533 },\r
1534 {\r
1535 0x03,\r
1536 L" 8 bit"\r
1537 },\r
1538 {\r
1539 0x04,\r
1540 L" 16 bit"\r
1541 },\r
1542 {\r
1543 0x05,\r
1544 L" 32 bit"\r
1545 },\r
1546 {\r
1547 0x06,\r
1548 L" 64 bit"\r
1549 },\r
1550 {\r
1551 0x07,\r
1552 L" 128 bit"\r
1553 },\r
187cb3dd
SZ
1554 {\r
1555 0x08,\r
1556 L" 1x or x1"\r
1557 },\r
1558 {\r
1559 0x09,\r
1560 L" 2x or x2"\r
1561 },\r
1562 {\r
1563 0x0A,\r
1564 L" 4x or x4"\r
1565 },\r
1566 {\r
1567 0x0B,\r
1568 L" 8x or x8"\r
1569 },\r
1570 {\r
1571 0x0C,\r
1572 L" 12x or x12"\r
1573 },\r
1574 {\r
1575 0x0D,\r
1576 L" 16x or x16"\r
1577 },\r
1578 {\r
1579 0x0E,\r
1580 L" 32x or x32"\r
1581 }\r
5d73d92f 1582};\r
1583\r
1584TABLE_ITEM SystemSlotCurrentUsageTable[] = {\r
1585 {\r
1586 0x01,\r
1587 L" Other"\r
1588 },\r
1589 {\r
1590 0x02,\r
1591 L" Unknown"\r
1592 },\r
1593 {\r
1594 0x03,\r
1595 L" Available"\r
1596 },\r
1597 {\r
1598 0x04,\r
1599 L" In use"\r
1600 },\r
7475ac51
DB
1601 {\r
1602 0x05,\r
1603 L" Unavailable"\r
1604 }\r
5d73d92f 1605};\r
1606\r
1607TABLE_ITEM SystemSlotLengthTable[] = {\r
1608 {\r
1609 0x01,\r
1610 L" Other"\r
1611 },\r
1612 {\r
1613 0x02,\r
1614 L" Unknown"\r
1615 },\r
1616 {\r
1617 0x03,\r
1618 L" Short length"\r
1619 },\r
1620 {\r
1621 0x04,\r
1622 L" Long Length"\r
1623 },\r
1624};\r
1625\r
1626TABLE_ITEM SlotCharacteristics1Table[] = {\r
1627 {\r
1628 0,\r
1629 L" Characteristics Unknown"\r
1630 },\r
1631 {\r
1632 1,\r
1633 L" Provides 5.0 Volts"\r
1634 },\r
1635 {\r
1636 2,\r
1637 L" Provides 3.3 Volts"\r
1638 },\r
1639 {\r
1640 3,\r
1641 L" Slot's opening is shared with another slot, e.g. PCI/EISA shared slot."\r
1642 },\r
1643\r
1644 {\r
1645 4,\r
1646 L" PC Card slot supports PC Card-16"\r
1647 },\r
1648 {\r
1649 5,\r
1650 L" PC Card slot supports CardBus"\r
1651 },\r
1652 {\r
1653 6,\r
1654 L" PC Card slot supports Zoom Video "\r
1655 },\r
1656 {\r
1657 7,\r
1658 L" PC Card slot supports Modem Ring Resume "\r
1659 }\r
1660};\r
1661\r
1662TABLE_ITEM SlotCharacteristics2Table[] = {\r
1663 {\r
1664 0,\r
1665 L" PCI slot supports Power Management Enable (PME#) signal"\r
1666 },\r
1667 {\r
1668 1,\r
1669 L" Slot supports hot-plug devices"\r
1670 },\r
1671 {\r
1672 2,\r
1673 L" PCI slot supports SMBus signal"\r
7475ac51
DB
1674 },\r
1675 {\r
1676 3,\r
1677 L" PCIe slot supports bifurcation"\r
5d73d92f 1678 }\r
1679};\r
1680\r
1681TABLE_ITEM OnboardDeviceTypesTable[] = {\r
1682 {\r
1683 0x01,\r
1684 L" Other"\r
1685 },\r
1686 {\r
1687 0x02,\r
1688 L" Unknown"\r
1689 },\r
1690 {\r
1691 0x03,\r
1692 L" Video"\r
1693 },\r
1694 {\r
1695 0x04,\r
1696 L" SCSI Controller"\r
1697 },\r
1698 {\r
1699 0x05,\r
1700 L" Ethernet"\r
1701 },\r
1702 {\r
1703 0x06,\r
1704 L" Token Ring"\r
1705 },\r
1706 {\r
1707 0x07,\r
1708 L" Sound"\r
1709 },\r
1710 {\r
1711 0x08,\r
1712 L" Pata Controller"\r
1713 },\r
1714 {\r
1715 0x09,\r
1716 L" Sata Controller"\r
1717 },\r
1718 {\r
1719 0x0A,\r
1720 L" Sas Controller"\r
1721 },\r
1722};\r
1723\r
1724TABLE_ITEM SELTypesTable[] = {\r
1725 {\r
1726 0x00,\r
1727 L" Reserved."\r
1728 },\r
1729 {\r
1730 0x01,\r
1731 L" Single-bit ECC memory error"\r
1732 },\r
1733 {\r
1734 0x02,\r
1735 L" Multi-bit ECC memory error"\r
1736 },\r
1737 {\r
1738 0x03,\r
1739 L" Parity memory error"\r
1740 },\r
1741 {\r
1742 0x04,\r
1743 L" Bus time-out"\r
1744 },\r
1745 {\r
1746 0x05,\r
1747 L" I/O Channel Check"\r
1748 },\r
1749 {\r
1750 0x06,\r
1751 L" Software NMI"\r
1752 },\r
1753 {\r
1754 0x07,\r
1755 L" POST Memory Resize"\r
1756 },\r
1757 {\r
1758 0x08,\r
1759 L" POST Error"\r
1760 },\r
1761 {\r
1762 0x09,\r
1763 L" PCI Parity Error"\r
1764 },\r
1765 {\r
1766 0x0A,\r
1767 L" PCI System Error"\r
1768 },\r
1769 {\r
1770 0x0B,\r
1771 L" CPU Failure"\r
1772 },\r
1773 {\r
1774 0x0C,\r
1775 L" EISA FailSafe Timer time-out"\r
1776 },\r
1777 {\r
1778 0x0D,\r
1779 L" Correctable memory log disabled"\r
1780 },\r
1781 {\r
1782 0x0E,\r
1783 L" Logging disabled for a specific Event Type"\r
1784 },\r
1785 {\r
1786 0x0F,\r
1787 L" Reserved"\r
1788 },\r
1789 {\r
1790 0x10,\r
1791 L" System Limit Exceeded"\r
1792 },\r
1793 {\r
1794 0x11,\r
1795 L" Asynchronous hardware timer expired and issued a system reset"\r
1796 },\r
1797 {\r
1798 0x12,\r
1799 L" System configuration information"\r
1800 },\r
1801 {\r
1802 0x13,\r
1803 L" Hard-disk information"\r
1804 },\r
1805 {\r
1806 0x14,\r
1807 L" System reconfigured"\r
1808 },\r
1809 {\r
1810 0x15,\r
1811 L" Uncorrectable CPU-complex error"\r
1812 },\r
1813 {\r
1814 0x16,\r
1815 L" Log Area Reset/Cleared"\r
1816 },\r
1817 {\r
1818 0x17,\r
1819 L" System boot"\r
1820 },\r
1821 {\r
1822 0x7F18,\r
1823 L" Unused by SMBIOS specification"\r
1824 },\r
1825 {\r
1826 0xFE80,\r
1827 L" System and OEM specified"\r
1828 },\r
1829 {\r
1830 0xFF,\r
1831 L" End-of-log"\r
1832 },\r
1833};\r
1834\r
1835TABLE_ITEM SELVarDataFormatTypeTable[] = {\r
1836 {\r
1837 0x00,\r
1838 L" None "\r
1839 },\r
1840 {\r
1841 0x01,\r
1842 L" Handle "\r
1843 },\r
1844 {\r
1845 0x02,\r
1846 L" Multiple-Event "\r
1847 },\r
1848 {\r
1849 0x03,\r
1850 L" Multiple-Event Handle "\r
1851 },\r
1852 {\r
1853 0x04,\r
1854 L" POST Results Bitmap "\r
1855 },\r
1856 //\r
1857 // Defined below\r
1858 //\r
1859 {\r
1860 0x05,\r
1861 L" System Management Type"\r
1862 },\r
1863 //\r
1864 // Defined below\r
1865 //\r
1866 {\r
1867 0x06,\r
1868 L" Multiple-Event System Management Type "\r
1869 },\r
1870 {\r
1871 0x7F07,\r
1872 L" Unused "\r
1873 },\r
1874 {\r
1875 0xFF80,\r
1876 L" OEM assigned "\r
1877 },\r
1878};\r
1879\r
1880TABLE_ITEM PostResultsBitmapDw1Table[] = {\r
1881 {\r
1882 0,\r
1883 L" Channel 2 Timer error "\r
1884 },\r
1885 {\r
1886 1,\r
1887 L" Master PIC (8259 #1) error "\r
1888 },\r
1889 {\r
1890 2,\r
1891 L" Slave PIC (8259 #2) error "\r
1892 },\r
1893 {\r
1894 3,\r
1895 L" CMOS Battery Failure "\r
1896 },\r
1897 {\r
1898 4,\r
1899 L" CMOS System Options Not Set "\r
1900 },\r
1901 {\r
1902 5,\r
1903 L" CMOS Checksum Error "\r
1904 },\r
1905 {\r
1906 6,\r
1907 L" CMOS Configuration Error "\r
1908 },\r
1909 {\r
1910 7,\r
1911 L" Mouse and Keyboard Swapped "\r
1912 },\r
1913 {\r
1914 8,\r
1915 L" Keyboard Locked "\r
1916 },\r
1917 {\r
1918 9,\r
1919 L" Keyboard Not Functional "\r
1920 },\r
1921 {\r
1922 10,\r
1923 L" Keyboard Controller Not Functional "\r
1924 },\r
1925 {\r
1926 11,\r
1927 L" CMOS Memory Size Different "\r
1928 },\r
1929 {\r
1930 12,\r
1931 L" Memory Decreased in Size "\r
1932 },\r
1933 {\r
1934 13,\r
1935 L" Cache Memory Error "\r
1936 },\r
1937 {\r
1938 14,\r
1939 L" Floppy Drive 0 Error "\r
1940 },\r
1941 {\r
1942 15,\r
1943 L" Floppy Drive 1 Error "\r
1944 },\r
1945 {\r
1946 16,\r
1947 L" Floppy Controller Failure "\r
1948 },\r
1949 {\r
1950 17,\r
1951 L" Number of ATA Drives Reduced Error "\r
1952 },\r
1953 {\r
1954 18,\r
1955 L" CMOS Time Not Set "\r
1956 },\r
1957 {\r
1958 19,\r
1959 L" DDC Monitor Configuration Change "\r
1960 },\r
1961 {\r
1962 20,\r
1963 L" Reserved, set to 0 "\r
1964 },\r
1965 {\r
1966 21,\r
1967 L" Reserved, set to 0 "\r
1968 },\r
1969 {\r
1970 22,\r
1971 L" Reserved, set to 0 "\r
1972 },\r
1973 {\r
1974 23,\r
1975 L" Reserved, set to 0 "\r
1976 },\r
1977 {\r
1978 24,\r
1979 L" Second DWORD has valid data "\r
1980 },\r
1981 {\r
1982 25,\r
1983 L" Reserved, set to 0 "\r
1984 },\r
1985 {\r
1986 26,\r
1987 L" Reserved, set to 0 "\r
1988 },\r
1989 {\r
1990 27,\r
1991 L" Reserved, set to 0 "\r
1992 },\r
1993 {\r
1994 28,\r
1995 L" Normally 0; available for OEM assignment "\r
1996 },\r
1997 {\r
1998 29,\r
1999 L" Normally 0; available for OEM assignment "\r
2000 },\r
2001 {\r
2002 30,\r
2003 L" Normally 0; available for OEM assignment "\r
2004 },\r
2005 {\r
2006 31,\r
2007 L" Normally 0; available for OEM assignment "\r
2008 },\r
2009};\r
2010\r
2011TABLE_ITEM PostResultsBitmapDw2Table[] = {\r
2012 {\r
2013 0,\r
2014 L" Normally 0; available for OEM assignment "\r
2015 },\r
2016 {\r
2017 1,\r
2018 L" Normally 0; available for OEM assignment "\r
2019 },\r
2020 {\r
2021 2,\r
2022 L" Normally 0; available for OEM assignment "\r
2023 },\r
2024 {\r
2025 3,\r
2026 L" Normally 0; available for OEM assignment "\r
2027 },\r
2028 {\r
2029 4,\r
2030 L" Normally 0; available for OEM assignment "\r
2031 },\r
2032 {\r
2033 5,\r
2034 L" Normally 0; available for OEM assignment "\r
2035 },\r
2036 {\r
2037 6,\r
2038 L" Normally 0; available for OEM assignment "\r
2039 },\r
2040 {\r
2041 7,\r
2042 L" PCI Memory Conflict "\r
2043 },\r
2044 {\r
2045 8,\r
2046 L" PCI I/O Conflict "\r
2047 },\r
2048 {\r
2049 9,\r
2050 L" PCI IRQ Conflict "\r
2051 },\r
2052 {\r
2053 10,\r
2054 L" PNP Memory Conflict "\r
2055 },\r
2056 {\r
2057 11,\r
2058 L" PNP 32 bit Memory Conflict "\r
2059 },\r
2060 {\r
2061 12,\r
2062 L" PNP I/O Conflict "\r
2063 },\r
2064 {\r
2065 13,\r
2066 L" PNP IRQ Conflict "\r
2067 },\r
2068 {\r
2069 14,\r
2070 L" PNP DMA Conflict "\r
2071 },\r
2072 {\r
2073 15,\r
2074 L" Bad PNP Serial ID Checksum "\r
2075 },\r
2076 {\r
2077 16,\r
2078 L" Bad PNP Resource Data Checksum "\r
2079 },\r
2080 {\r
2081 17,\r
2082 L" Static Resource Conflict "\r
2083 },\r
2084 {\r
2085 18,\r
2086 L" NVRAM Checksum Error, NVRAM Cleared "\r
2087 },\r
2088 {\r
2089 19,\r
2090 L" System Board Device Resource Conflict "\r
2091 },\r
2092 {\r
2093 20,\r
2094 L" Primary Output Device Not Found "\r
2095 },\r
2096 {\r
2097 21,\r
2098 L" Primary Input Device Not Found "\r
2099 },\r
2100 {\r
2101 22,\r
2102 L" Primary Boot Device Not Found "\r
2103 },\r
2104 {\r
2105 23,\r
2106 L" NVRAM Cleared By Jumper "\r
2107 },\r
2108 {\r
2109 24,\r
2110 L" NVRAM Data Invalid, NVRAM Cleared "\r
2111 },\r
2112 {\r
2113 25,\r
2114 L" FDC Resource Conflict "\r
2115 },\r
2116 {\r
2117 26,\r
2118 L" Primary ATA Controller Resource Conflict "\r
2119 },\r
2120 {\r
2121 27,\r
2122 L" Secondary ATA Controller Resource Conflict "\r
2123 },\r
2124 {\r
2125 28,\r
2126 L" Parallel Port Resource Conflict "\r
2127 },\r
2128 {\r
2129 29,\r
2130 L" Serial Port 1 Resource Conflict "\r
2131 },\r
2132 {\r
2133 30,\r
2134 L" Serial Port 2 Resource Conflict "\r
2135 },\r
2136 {\r
2137 31,\r
2138 L" Audio Resource Conflict "\r
2139 },\r
2140};\r
2141\r
2142TABLE_ITEM SELSysManagementTypesTable[] = {\r
2143 {\r
2144 0x01,\r
2145 L" +2.5V Out of range, #2 "\r
2146 },\r
2147 {\r
2148 0x02,\r
2149 L" +3.3V Out of range "\r
2150 },\r
2151 {\r
2152 0x03,\r
2153 L" +5V Out of range "\r
2154 },\r
2155 {\r
2156 0x04,\r
2157 L" -5V Out of range "\r
2158 },\r
2159 {\r
2160 0x05,\r
2161 L" +12V Out of range "\r
2162 },\r
2163 {\r
2164 0x06,\r
2165 L" -12V Out of range "\r
2166 },\r
2167 {\r
2168 0x0F07,\r
2169 L" Reserved for future out-of-range voltage levels "\r
2170 },\r
2171 {\r
2172 0x10,\r
2173 L" System board temperature out of range "\r
2174 },\r
2175 {\r
2176 0x11,\r
2177 L" Processor #1 temperature out of range "\r
2178 },\r
2179 {\r
2180 0x12,\r
2181 L" Processor #2 temperature out of range "\r
2182 },\r
2183 {\r
2184 0x13,\r
2185 L" Processor #3 temperature out of range "\r
2186 },\r
2187 {\r
2188 0x14,\r
2189 L" Processor #4 temperature out of range "\r
2190 },\r
2191 {\r
2192 0x1F15,\r
2193 L" Reserved for future out-of-range temperatures"\r
2194 },\r
2195 {\r
2196 0x2720,\r
2197 L" Fan n (n = 0 to 7) Out of range "\r
2198 },\r
2199 {\r
2200 0x2F28,\r
2201 L" Reserved for future assignment via this specification "\r
2202 },\r
2203 {\r
2204 0x30,\r
2205 L" Chassis secure switch activated "\r
2206 },\r
2207};\r
2208\r
2209TABLE_ITEM PMALocationTable[] = {\r
2210 {\r
2211 0x01,\r
2212 L" Other"\r
2213 },\r
2214 {\r
2215 0x02,\r
2216 L" Unknown"\r
2217 },\r
2218 {\r
2219 0x03,\r
2220 L" System board or motherboard"\r
2221 },\r
2222 {\r
2223 0x04,\r
2224 L" ISA add-on card"\r
2225 },\r
2226 {\r
2227 0x05,\r
2228 L" EISA add-on card"\r
2229 },\r
2230 {\r
2231 0x06,\r
2232 L" PCI add-on card"\r
2233 },\r
2234 {\r
2235 0x07,\r
2236 L" MCA add-on card"\r
2237 },\r
2238 {\r
2239 0x08,\r
2240 L" PCMCIA add-on card"\r
2241 },\r
2242 {\r
2243 0x09,\r
2244 L" Proprietary add-on card"\r
2245 },\r
2246 {\r
2247 0x0A,\r
2248 L" NuBus"\r
2249 },\r
2250 {\r
2251 0xA0,\r
2252 L" PC-98/C20 add-on card"\r
2253 },\r
2254 {\r
2255 0xA1,\r
2256 L" PC-98/C24 add-on card"\r
2257 },\r
2258 {\r
2259 0xA2,\r
2260 L" PC-98/E add-on card"\r
2261 },\r
2262 {\r
2263 0xA3,\r
2264 L" PC-98/Local bus add-on card"\r
2265 }\r
2266};\r
2267\r
2268TABLE_ITEM PMAUseTable[] = {\r
2269 {\r
2270 0x01,\r
2271 L" Other"\r
2272 },\r
2273 {\r
2274 0x02,\r
2275 L" Unknown"\r
2276 },\r
2277 {\r
2278 0x03,\r
2279 L" System memory"\r
2280 },\r
2281 {\r
2282 0x04,\r
2283 L" Video memory"\r
2284 },\r
2285 {\r
2286 0x05,\r
2287 L" Flash memory"\r
2288 },\r
2289 {\r
2290 0x06,\r
2291 L" Non-volatile RAM"\r
2292 },\r
2293 {\r
2294 0x07,\r
2295 L" Cache memory"\r
2296 }\r
2297};\r
2298\r
2299TABLE_ITEM PMAErrorCorrectionTypesTable[] = {\r
2300 {\r
2301 0x01,\r
2302 L" Other"\r
2303 },\r
2304 {\r
2305 0x02,\r
2306 L" Unknown"\r
2307 },\r
2308 {\r
2309 0x03,\r
2310 L" None"\r
2311 },\r
2312 {\r
2313 0x04,\r
2314 L" Parity"\r
2315 },\r
2316 {\r
2317 0x05,\r
2318 L" Single-bit ECC"\r
2319 },\r
2320 {\r
2321 0x06,\r
2322 L" Multi-bit ECC"\r
2323 },\r
2324 {\r
2325 0x07,\r
2326 L" CRC"\r
2327 }\r
2328};\r
2329\r
2330TABLE_ITEM MemoryDeviceFormFactorTable[] = {\r
2331 {\r
2332 0x01,\r
2333 L" Other"\r
2334 },\r
2335 {\r
2336 0x02,\r
2337 L" Unknown"\r
2338 },\r
2339 {\r
2340 0x03,\r
2341 L" SIMM"\r
2342 },\r
2343 {\r
2344 0x04,\r
2345 L" SIP"\r
2346 },\r
2347 {\r
2348 0x05,\r
2349 L" Chip"\r
2350 },\r
2351 {\r
2352 0x06,\r
2353 L" DIP"\r
2354 },\r
2355 {\r
2356 0x07,\r
2357 L" ZIP"\r
2358 },\r
2359 {\r
2360 0x08,\r
2361 L" Proprietary Card"\r
2362 },\r
2363 {\r
2364 0x09,\r
2365 L" DIMM"\r
2366 },\r
2367 {\r
2368 0x0A,\r
2369 L" TSOP"\r
2370 },\r
2371 {\r
2372 0x0B,\r
2373 L" Row of chips"\r
2374 },\r
2375 {\r
2376 0x0C,\r
2377 L" RIMM"\r
2378 },\r
2379 {\r
2380 0x0D,\r
2381 L" SODIMM"\r
2382 },\r
2383 {\r
2384 0x0E,\r
2385 L" SRIMM"\r
2386 },\r
2387 {\r
2388 0x0F,\r
2389 L" FB-DIMM"\r
2390 }\r
2391};\r
2392\r
2393TABLE_ITEM MemoryDeviceTypeTable[] = {\r
2394 {\r
2395 0x01,\r
2396 L" Other"\r
2397 },\r
2398 {\r
2399 0x02,\r
2400 L" Unknown"\r
2401 },\r
2402 {\r
2403 0x03,\r
2404 L" DRAM"\r
2405 },\r
2406 {\r
2407 0x04,\r
2408 L" EDRAM"\r
2409 },\r
2410 {\r
2411 0x05,\r
2412 L" VRAM"\r
2413 },\r
2414 {\r
2415 0x06,\r
2416 L" SRAM"\r
2417 },\r
2418 {\r
2419 0x07,\r
2420 L" RAM"\r
2421 },\r
2422 {\r
2423 0x08,\r
2424 L" ROM"\r
2425 },\r
2426 {\r
2427 0x09,\r
2428 L" FLASH"\r
2429 },\r
2430 {\r
2431 0x0A,\r
2432 L" EEPROM"\r
2433 },\r
2434 {\r
2435 0x0B,\r
2436 L" FEPROM"\r
2437 },\r
2438 {\r
2439 0x0C,\r
2440 L" EPROM"\r
2441 },\r
2442 {\r
2443 0x0D,\r
2444 L" CDRAM"\r
2445 },\r
2446 {\r
2447 0x0E,\r
2448 L" 3DRAM"\r
2449 },\r
2450 {\r
2451 0x0F,\r
2452 L" SDRAM"\r
2453 },\r
2454 {\r
2455 0x10,\r
2456 L" SGRAM"\r
2457 },\r
2458 {\r
2459 0x11,\r
2460 L" RDRAM"\r
2461 },\r
2462 {\r
2463 0x12,\r
2464 L" DDR"\r
2465 },\r
2466 {\r
2467 0x13,\r
2468 L" DDR2"\r
2469 },\r
2470 {\r
2471 0x14,\r
2472 L" DDR2 FB-DIMM"\r
2473 },\r
2474 {\r
2475 0x18,\r
2476 L" DDR3"\r
2477 },\r
2478 {\r
2479 0x19,\r
2480 L" FBD2"\r
9b7143c9
LG
2481 },\r
2482 {\r
2483 0x1A,\r
2484 L" DDR4"\r
2485 },\r
2486 {\r
2487 0x1B,\r
2488 L" LPDDR"\r
2489 },\r
2490 {\r
2491 0x1C,\r
2492 L" LPDDR2"\r
2493 },\r
2494 {\r
2495 0x1D,\r
2496 L" LPDDR3"\r
2497 },\r
2498 {\r
2499 0x1E,\r
2500 L" LPDDR4"\r
7475ac51
DB
2501 },\r
2502 {\r
2503 0x1F,\r
2504 L" Logical non-volatile device"\r
5d73d92f 2505 }\r
2506};\r
2507\r
2508TABLE_ITEM MemoryDeviceTypeDetailTable[] = {\r
2509 {\r
2510 1,\r
2511 L" Other"\r
2512 },\r
2513 {\r
2514 2,\r
2515 L" Unknown"\r
2516 },\r
2517 {\r
2518 3,\r
2519 L" Fast-paged"\r
2520 },\r
2521 {\r
2522 4,\r
2523 L" Static column"\r
2524 },\r
2525 {\r
2526 5,\r
2527 L" Pseudo-STATIC"\r
2528 },\r
2529 {\r
2530 6,\r
2531 L" RAMBUS "\r
2532 },\r
2533 {\r
2534 7,\r
2535 L" Synchronous"\r
2536 },\r
2537 {\r
2538 8,\r
2539 L" CMOS"\r
2540 },\r
2541 {\r
2542 9,\r
2543 L" EDO"\r
2544 },\r
2545 {\r
2546 10,\r
2547 L" Window DRAM"\r
2548 },\r
2549 {\r
2550 11,\r
2551 L" Cache DRAM"\r
2552 },\r
2553 {\r
2554 12,\r
2555 L" Non-volatile"\r
2556 },\r
187cb3dd
SZ
2557 {\r
2558 13,\r
2559 L" Registered(Buffered)"\r
2560 },\r
2561 {\r
2562 14,\r
2563 L" Unbuffered(Unregistered)"\r
2564 }\r
5d73d92f 2565};\r
2566\r
7475ac51
DB
2567TABLE_ITEM MemoryDeviceMemoryTechnologyTable[] = {\r
2568 {\r
2569 0x01,\r
2570 L" Other"\r
2571 },\r
2572 {\r
2573 0x02,\r
2574 L" Unknown"\r
2575 },\r
2576 {\r
2577 0x03,\r
2578 L" DRAM"\r
2579 },\r
2580 {\r
2581 0x04,\r
2582 L" NVDIMM-N"\r
2583 },\r
2584 {\r
2585 0x05,\r
2586 L" NVDIMM-F"\r
2587 },\r
2588 {\r
2589 0x06,\r
2590 L" NVDIMM-P"\r
2591 },\r
2592 {\r
2593 0x07,\r
2594 L" Intel persistent memory"\r
2595 }\r
2596};\r
2597\r
2598TABLE_ITEM MemoryDeviceMemoryOperatingModeCapabilityTable[] = {\r
2599 {\r
2600 1,\r
2601 L" Other"\r
2602 },\r
2603 {\r
2604 2,\r
2605 L" Unknown"\r
2606 },\r
2607 {\r
2608 3,\r
2609 L" Volatile memory"\r
2610 },\r
2611 {\r
2612 4,\r
2613 L" Byte-accessible persistent memory"\r
2614 },\r
2615 {\r
2616 5,\r
2617 L" Block-accessible persistent memory"\r
2618 }\r
2619};\r
2620\r
2621\r
5d73d92f 2622TABLE_ITEM MemoryErrorTypeTable[] = {\r
2623 {\r
2624 0x01,\r
2625 L" Other"\r
2626 },\r
2627 {\r
2628 0x02,\r
2629 L" Unknown"\r
2630 },\r
2631 {\r
2632 0x03,\r
2633 L" OK"\r
2634 },\r
2635 {\r
2636 0x04,\r
2637 L" Bad read"\r
2638 },\r
2639 {\r
2640 0x05,\r
2641 L" Parity error"\r
2642 },\r
2643 {\r
2644 0x06,\r
2645 L" Single-bit error"\r
2646 },\r
2647 {\r
2648 0x07,\r
2649 L" Double-bit error"\r
2650 },\r
2651 {\r
2652 0x08,\r
2653 L" Multi-bit error"\r
2654 },\r
2655 {\r
2656 0x09,\r
2657 L" Nibble error"\r
2658 },\r
2659 {\r
2660 0x0A,\r
2661 L" Checksum error"\r
2662 },\r
2663 {\r
2664 0x0B,\r
2665 L" CRC error"\r
2666 },\r
2667 {\r
2668 0x0C,\r
2669 L" Corrected single-bit error"\r
2670 },\r
2671 {\r
2672 0x0D,\r
2673 L" Corrected error"\r
2674 },\r
2675 {\r
2676 0x0E,\r
2677 L" Uncorrectable error"\r
2678 },\r
2679};\r
2680\r
2681TABLE_ITEM MemoryErrorGranularityTable[] = {\r
2682 {\r
2683 0x01,\r
2684 L" Other"\r
2685 },\r
2686 {\r
2687 0x02,\r
2688 L" Unknown"\r
2689 },\r
2690 {\r
2691 0x03,\r
2692 L" Device level"\r
2693 },\r
2694 {\r
2695 0x04,\r
2696 L" Memory partition level"\r
2697 },\r
2698};\r
2699\r
2700TABLE_ITEM MemoryErrorOperationTable[] = {\r
2701 {\r
2702 0x01,\r
2703 L" Other"\r
2704 },\r
2705 {\r
2706 0x02,\r
2707 L" Unknown"\r
2708 },\r
2709 {\r
2710 0x03,\r
2711 L" Read"\r
2712 },\r
2713 {\r
2714 0x04,\r
2715 L" Write"\r
2716 },\r
2717 {\r
2718 0x05,\r
2719 L" Partial Write"\r
2720 },\r
2721};\r
2722\r
2723TABLE_ITEM PointingDeviceTypeTable[] = {\r
2724 {\r
2725 0x01,\r
2726 L" Other"\r
2727 },\r
2728 {\r
2729 0x02,\r
2730 L" Unknown"\r
2731 },\r
2732 {\r
2733 0x03,\r
2734 L" Mouse"\r
2735 },\r
2736 {\r
2737 0x04,\r
2738 L" Track Ball"\r
2739 },\r
2740 {\r
2741 0x05,\r
2742 L" Track Point"\r
2743 },\r
2744 {\r
2745 0x06,\r
2746 L" Glide Point"\r
2747 },\r
2748 {\r
2749 0x07,\r
2750 L" Touch Pad"\r
2751 },\r
2752};\r
2753\r
2754TABLE_ITEM PointingDeviceInterfaceTable[] = {\r
2755 {\r
2756 0x01,\r
2757 L" Other"\r
2758 },\r
2759 {\r
2760 0x02,\r
2761 L" Unknown"\r
2762 },\r
2763 {\r
2764 0x03,\r
2765 L" Serial"\r
2766 },\r
2767 {\r
2768 0x04,\r
2769 L" PS/2"\r
2770 },\r
2771 {\r
2772 0x05,\r
2773 L" Infrared"\r
2774 },\r
2775 {\r
2776 0x06,\r
2777 L" HP-HIL"\r
2778 },\r
2779 {\r
2780 0x07,\r
2781 L" Bus mouse"\r
2782 },\r
2783 {\r
2784 0x08,\r
2785 L" ADB(Apple Desktop Bus"\r
2786 },\r
2787 {\r
2788 0xA0,\r
2789 L" Bus mouse DB-9"\r
2790 },\r
2791 {\r
2792 0xA1,\r
2793 L" Bus mouse mirco-DIN"\r
2794 },\r
2795 {\r
2796 0xA2,\r
2797 L" USB"\r
2798 },\r
2799};\r
2800\r
2801TABLE_ITEM PBDeviceChemistryTable[] = {\r
2802 {\r
2803 0x01,\r
2804 L" Other "\r
2805 },\r
2806 {\r
2807 0x02,\r
2808 L" Unknown "\r
2809 },\r
2810 {\r
2811 0x03,\r
2812 L" Lead Acid "\r
2813 },\r
2814 {\r
2815 0x04,\r
2816 L" Nickel Cadmium "\r
2817 },\r
2818 {\r
2819 0x05,\r
2820 L" Nickel metal hydride "\r
2821 },\r
2822 {\r
2823 0x06,\r
2824 L" Lithium-ion "\r
2825 },\r
2826 {\r
2827 0x07,\r
2828 L" Zinc air "\r
2829 },\r
2830 {\r
2831 0x08,\r
2832 L" Lithium Polymer "\r
2833 },\r
2834};\r
2835\r
2836TABLE_ITEM VPLocationTable[] = {\r
2837 {\r
2838 0x01,\r
2839 L" Other "\r
2840 },\r
2841 {\r
2842 0x02,\r
2843 L" Unknown "\r
2844 },\r
2845 {\r
2846 0x03,\r
2847 L" OK "\r
2848 },\r
2849 {\r
2850 0x04,\r
2851 L" Non-critical "\r
2852 },\r
2853 {\r
2854 0x05,\r
2855 L" Critical "\r
2856 },\r
2857 {\r
2858 0x06,\r
2859 L" Non-recoverable "\r
2860 },\r
2861};\r
2862\r
2863TABLE_ITEM VPStatusTable[] = {\r
2864 {\r
2865 0x01,\r
2866 L" Other "\r
2867 },\r
2868 {\r
2869 0x02,\r
2870 L" Unknown "\r
2871 },\r
2872 {\r
2873 0x03,\r
2874 L" Processor "\r
2875 },\r
2876 {\r
2877 0x04,\r
2878 L" Disk "\r
2879 },\r
2880 {\r
2881 0x05,\r
2882 L" Peripheral Bay "\r
2883 },\r
2884 {\r
2885 0x06,\r
2886 L" System Management Module "\r
2887 },\r
2888 {\r
2889 0x07,\r
2890 L" Motherboard "\r
2891 },\r
2892 {\r
2893 0x08,\r
2894 L" Memory Module "\r
2895 },\r
2896 {\r
2897 0x09,\r
2898 L" Processor Module "\r
2899 },\r
2900 {\r
2901 0x0A,\r
2902 L" Power Unit "\r
2903 },\r
2904 {\r
2905 0x0B,\r
2906 L" Add-in Card "\r
2907 },\r
2908};\r
2909\r
2910TABLE_ITEM CoolingDeviceStatusTable[] = {\r
2911 {\r
2912 0x01,\r
2913 L" Other "\r
2914 },\r
2915 {\r
2916 0x02,\r
2917 L" Unknown "\r
2918 },\r
2919 {\r
2920 0x03,\r
2921 L" OK "\r
2922 },\r
2923 {\r
2924 0x04,\r
2925 L" Non-critical "\r
2926 },\r
2927 {\r
2928 0x05,\r
2929 L" Critical "\r
2930 },\r
2931 {\r
2932 0x06,\r
2933 L" Non-recoverable "\r
2934 },\r
2935};\r
2936\r
2937TABLE_ITEM CoolingDeviceTypeTable[] = {\r
2938 {\r
2939 0x01,\r
2940 L" Other "\r
2941 },\r
2942 {\r
2943 0x02,\r
2944 L" Unknown "\r
2945 },\r
2946 {\r
2947 0x03,\r
2948 L" Fan "\r
2949 },\r
2950 {\r
2951 0x04,\r
2952 L" Centrifugal Blower "\r
2953 },\r
2954 {\r
2955 0x05,\r
2956 L" Chip Fan "\r
2957 },\r
2958 {\r
2959 0x06,\r
2960 L" Cabinet Fan "\r
2961 },\r
2962 {\r
2963 0x07,\r
2964 L" Power Supply Fan "\r
2965 },\r
2966 {\r
2967 0x08,\r
2968 L" Heat Pipe "\r
2969 },\r
2970 {\r
2971 0x09,\r
2972 L" Integrated Refrigeration "\r
2973 },\r
2974 {\r
d63d2210 2975 0x10,\r
5d73d92f 2976 L" Active Cooling "\r
2977 },\r
2978 {\r
d63d2210 2979 0x11,\r
5d73d92f 2980 L" Passive Cooling "\r
2981 },\r
2982};\r
2983\r
2984TABLE_ITEM TemperatureProbeStatusTable[] = {\r
2985 {\r
2986 0x01,\r
2987 L" Other "\r
2988 },\r
2989 {\r
2990 0x02,\r
2991 L" Unknown "\r
2992 },\r
2993 {\r
2994 0x03,\r
2995 L" OK "\r
2996 },\r
2997 {\r
2998 0x04,\r
2999 L" Non-critical "\r
3000 },\r
3001 {\r
3002 0x05,\r
3003 L" Critical "\r
3004 },\r
3005 {\r
3006 0x06,\r
3007 L" Non-recoverable "\r
3008 },\r
3009};\r
3010\r
3011TABLE_ITEM TemperatureProbeLocTable[] = {\r
3012 {\r
3013 0x01,\r
3014 L" Other "\r
3015 },\r
3016 {\r
3017 0x02,\r
3018 L" Unknown "\r
3019 },\r
3020 {\r
3021 0x03,\r
3022 L" Processor "\r
3023 },\r
3024 {\r
3025 0x04,\r
3026 L" Disk "\r
3027 },\r
3028 {\r
3029 0x05,\r
3030 L" Peripheral Bay "\r
3031 },\r
3032 {\r
3033 0x06,\r
3034 L" System Management Module "\r
3035 },\r
3036 {\r
3037 0x07,\r
3038 L" Motherboard "\r
3039 },\r
3040 {\r
3041 0x08,\r
3042 L" Memory Module "\r
3043 },\r
3044 {\r
3045 0x09,\r
3046 L" Processor Module "\r
3047 },\r
3048 {\r
3049 0x0A,\r
3050 L" Power Unit "\r
3051 },\r
3052 {\r
3053 0x0B,\r
3054 L" Add-in Card "\r
3055 },\r
3056};\r
3057\r
3058TABLE_ITEM ECPStatusTable[] = {\r
3059 {\r
3060 0x01,\r
3061 L" Other "\r
3062 },\r
3063 {\r
3064 0x02,\r
3065 L" Unknown "\r
3066 },\r
3067 {\r
3068 0x03,\r
3069 L" OK "\r
3070 },\r
3071 {\r
3072 0x04,\r
3073 L" Non-critical "\r
3074 },\r
3075 {\r
3076 0x05,\r
3077 L" Critical "\r
3078 },\r
3079 {\r
3080 0x06,\r
3081 L" Non-recoverable "\r
3082 },\r
3083};\r
3084\r
3085TABLE_ITEM ECPLocTable[] = {\r
3086 {\r
3087 0x01,\r
3088 L" Other "\r
3089 },\r
3090 {\r
3091 0x02,\r
3092 L" Unknown "\r
3093 },\r
3094 {\r
3095 0x03,\r
3096 L" Processor "\r
3097 },\r
3098 {\r
3099 0x04,\r
3100 L" Disk "\r
3101 },\r
3102 {\r
3103 0x05,\r
3104 L" Peripheral Bay "\r
3105 },\r
3106 {\r
3107 0x06,\r
3108 L" System Management Module "\r
3109 },\r
3110 {\r
3111 0x07,\r
3112 L" Motherboard "\r
3113 },\r
3114 {\r
3115 0x08,\r
3116 L" Memory Module "\r
3117 },\r
3118 {\r
3119 0x09,\r
3120 L" Processor Module "\r
3121 },\r
3122 {\r
3123 0x0A,\r
3124 L" Power Unit "\r
3125 },\r
3126 {\r
3127 0x0B,\r
3128 L" Add-in Card "\r
3129 },\r
3130};\r
3131\r
3132TABLE_ITEM MDTypeTable[] = {\r
3133 {\r
3134 0x01,\r
3135 L" Other "\r
3136 },\r
3137 {\r
3138 0x02,\r
3139 L" Unknown "\r
3140 },\r
3141 {\r
3142 0x03,\r
3143 L" National Semiconductor LM75 "\r
3144 },\r
3145 {\r
3146 0x04,\r
3147 L" National Semiconductor LM78 "\r
3148 },\r
3149 {\r
3150 0x05,\r
3151 L" National Semiconductor LM79 "\r
3152 },\r
3153 {\r
3154 0x06,\r
3155 L" National Semiconductor LM80 "\r
3156 },\r
3157 {\r
3158 0x07,\r
3159 L" National Semiconductor LM81 "\r
3160 },\r
3161 {\r
3162 0x08,\r
3163 L" Analog Devices ADM9240 "\r
3164 },\r
3165 {\r
3166 0x09,\r
3167 L" Dallas Semiconductor DS1780 "\r
3168 },\r
3169 {\r
3170 0x0A,\r
3171 L" Maxim 1617 "\r
3172 },\r
3173 {\r
3174 0x0B,\r
3175 L" Genesys GL518SM "\r
3176 },\r
3177 {\r
3178 0x0C,\r
3179 L" Winbond W83781D "\r
3180 },\r
3181 {\r
3182 0x0D,\r
3183 L" Holtek HT82H791 "\r
3184 },\r
3185};\r
3186\r
3187TABLE_ITEM MDAddressTypeTable[] = {\r
3188 {\r
3189 0x01,\r
3190 L" Other "\r
3191 },\r
3192 {\r
3193 0x02,\r
3194 L" Unknown "\r
3195 },\r
3196 {\r
3197 0x03,\r
3198 L" I/O Port "\r
3199 },\r
3200 {\r
3201 0x04,\r
3202 L" Memory "\r
3203 },\r
3204 {\r
3205 0x05,\r
3206 L" SM Bus "\r
3207 },\r
3208};\r
3209\r
3210TABLE_ITEM MemoryChannelTypeTable[] = {\r
3211 {\r
3212 0x01,\r
3213 L" Other "\r
3214 },\r
3215 {\r
3216 0x02,\r
3217 L" Unknown "\r
3218 },\r
3219 {\r
3220 0x03,\r
3221 L" RamBus "\r
3222 },\r
3223 {\r
3224 0x04,\r
3225 L" SyncLink "\r
3226 },\r
3227};\r
3228\r
3229TABLE_ITEM IPMIDIBMCInterfaceTypeTable[] = {\r
3230 {\r
3231 0x00,\r
3232 L" Unknown "\r
3233 },\r
3234 {\r
3235 0x01,\r
3236 L" KCS: Keyboard Controller Style "\r
3237 },\r
3238 {\r
3239 0x02,\r
3240 L" SMIC: Server Management Interface Chip "\r
3241 },\r
3242 {\r
3243 0x03,\r
3244 L" BT: Block Transfer "\r
3245 },\r
3246 {\r
7475ac51
DB
3247 0x04,\r
3248 L" SSIF: SMBus System Interface "\r
3249 },\r
3250 {\r
3251 0xFF05,\r
5d73d92f 3252 L" Reserved for future assignment by this specification "\r
3253 },\r
3254};\r
3255\r
5734d486
SZ
3256TABLE_ITEM MCHostInterfaceTypeTable[] = {\r
3257 {\r
3258 0x3F00,\r
3259 L" MCTP Host Interface "\r
3260 },\r
3261 {\r
3262 0x40,\r
3263 L" Network Host Interface "\r
3264 },\r
3265 {\r
3266 0xF0,\r
3267 L" OEM defined "\r
3268 },\r
3269};\r
3270\r
3271\r
5d73d92f 3272TABLE_ITEM StructureTypeInfoTable[] = {\r
3273 {\r
3274 0,\r
3275 L" BIOS Information"\r
3276 },\r
3277 {\r
3278 1,\r
3279 L" System Information"\r
3280 },\r
3281 {\r
3282 2,\r
3283 L" Base Board Information"\r
3284 },\r
3285 {\r
3286 3,\r
3287 L" System Enclosure"\r
3288 },\r
3289 {\r
3290 4,\r
3291 L" Processor Information"\r
3292 },\r
3293 {\r
3294 5,\r
3295 L" Memory Controller Information "\r
3296 },\r
3297 {\r
3298 6,\r
3299 L" Memory Module Information "\r
3300 },\r
3301 {\r
3302 7,\r
3303 L" Cache Information "\r
3304 },\r
3305 {\r
3306 8,\r
3307 L" Port Connector Information "\r
3308 },\r
3309 {\r
3310 9,\r
3311 L" System Slots "\r
3312 },\r
3313 {\r
3314 10,\r
3315 L" On Board Devices Information "\r
3316 },\r
3317 {\r
3318 11,\r
3319 L" OEM Strings"\r
3320 },\r
3321 {\r
3322 12,\r
3323 L" System Configuration Options "\r
3324 },\r
3325 {\r
3326 13,\r
3327 L" BIOS Language Information "\r
3328 },\r
3329 {\r
3330 14,\r
3331 L" Group Associations "\r
3332 },\r
3333 {\r
3334 15,\r
3335 L" System Event Log "\r
3336 },\r
3337 {\r
3338 16,\r
3339 L" Physical Memory Array "\r
3340 },\r
3341 {\r
3342 17,\r
3343 L" Memory Device "\r
3344 },\r
3345 {\r
3346 18,\r
3347 L" 32-bit Memory Error Information "\r
3348 },\r
3349 {\r
3350 19,\r
3351 L" Memory Array Mapped Address "\r
3352 },\r
3353 {\r
3354 20,\r
3355 L" Memory Device Mapped Address "\r
3356 },\r
3357 {\r
3358 21,\r
3359 L" Built-in Pointing Device "\r
3360 },\r
3361 {\r
3362 22,\r
3363 L" Portable Battery "\r
3364 },\r
3365 {\r
3366 23,\r
3367 L" System Reset "\r
3368 },\r
3369 {\r
3370 24,\r
3371 L" Hardware Security "\r
3372 },\r
3373 {\r
3374 25,\r
3375 L" System Power Controls "\r
3376 },\r
3377 {\r
3378 26,\r
3379 L" Voltage Probe "\r
3380 },\r
3381 {\r
3382 27,\r
3383 L" Cooling Device "\r
3384 },\r
3385 {\r
3386 28,\r
3387 L" Temperature Probe "\r
3388 },\r
3389 {\r
3390 29,\r
3391 L" Electrical Current Probe "\r
3392 },\r
3393 {\r
3394 30,\r
3395 L" Out-of-Band Remote Access "\r
3396 },\r
3397 {\r
3398 31,\r
3399 L" Boot Integrity Services (BIS) Entry Point"\r
3400 },\r
3401 {\r
3402 32,\r
3403 L" System Boot Information "\r
3404 },\r
3405 {\r
3406 33,\r
3407 L" 64-bit Memory Error Information "\r
3408 },\r
3409 {\r
3410 34,\r
3411 L" Management Device "\r
3412 },\r
3413 {\r
3414 35,\r
3415 L" Management Device Component "\r
3416 },\r
3417 {\r
3418 36,\r
3419 L" Management Device Threshold Data "\r
3420 },\r
3421 {\r
3422 37,\r
3423 L" Memory Channel "\r
3424 },\r
3425 {\r
3426 38,\r
3427 L" IPMI Device Information "\r
3428 },\r
3429 {\r
3430 39,\r
3431 L" System Power Supply"\r
3432 },\r
187cb3dd
SZ
3433 {\r
3434 40,\r
3435 L" Additional Information"\r
3436 },\r
3437 {\r
3438 41,\r
3439 L" Onboard Devices Extended Information"\r
3440 },\r
3441 {\r
3442 42,\r
3443 L" Management Controller Host Interface"\r
3444 },\r
e9f0be02
LA
3445 {\r
3446 43,\r
3447 L" TPM Device"\r
3448 },\r
5d73d92f 3449 {\r
3450 0x7E,\r
3451 L" Inactive"\r
3452 },\r
3453 {\r
3454 0x7F,\r
3455 L" End-of-Table "\r
3456 },\r
3457};\r
3458\r
3459\r
33c031ee 3460/**\r
3461 Given a table and a Key, return the responding info.\r
5d73d92f 3462\r
3463 Notes:\r
3464 Table[Index].Key is change from UINT8 to UINT16,\r
3465 in order to deal with "0xaa - 0xbb".\r
3466\r
3467 For example:\r
3468 DisplaySELVariableDataFormatTypes(UINT8 Type, UINT8 Option)\r
3469 has a item:\r
3470 "0x07-0x7F, Unused"\r
3471 Now define Key = 0x7F07, that is to say: High = 0x7F, Low = 0x07.\r
3472 Then all the Key Value between Low and High gets the same string\r
3473 L"Unused".\r
3474\r
4ff7e37b
ED
3475 @param[in] Table The begin address of table.\r
3476 @param[in] Number The number of table items.\r
3477 @param[in] Key The query Key.\r
3478 @param[in, out] Info Input as empty buffer; output as data buffer.\r
3479 @param[in] InfoLen The max number of characters for Info.\r
33c031ee 3480\r
3481 @return the found Key and Info is valid.\r
3482 @retval QUERY_TABLE_UNFOUND and Info should be NULL.\r
5d73d92f 3483**/\r
33c031ee 3484UINT8\r
3485QueryTable (\r
3486 IN TABLE_ITEM *Table,\r
3487 IN UINTN Number,\r
3488 IN UINT8 Key,\r
3489 IN OUT CHAR16 *Info,\r
3490 IN UINTN InfoLen\r
3491 )\r
5d73d92f 3492{\r
3493 UINTN Index;\r
3494 //\r
3495 // High byte and Low byte of word\r
3496 //\r
3497 UINT8 High;\r
3498 UINT8 Low;\r
3499\r
3500 for (Index = 0; Index < Number; Index++) {\r
3501 High = (UINT8) (Table[Index].Key >> 8);\r
3502 Low = (UINT8) (Table[Index].Key & 0x00FF);\r
99ab5fc3 3503\r
5d73d92f 3504 //\r
3505 // Check if Key is in the range\r
99ab5fc3 3506 // or if Key == Value in the table\r
5d73d92f 3507 //\r
ba0014b9 3508 if ((High > Low && Key >= Low && Key <= High)\r
99ab5fc3 3509 || (Table[Index].Key == Key)) {\r
4dc0d578
QS
3510 StrnCpyS (Info, InfoLen, Table[Index].Info, InfoLen - 1);\r
3511 StrnCatS (Info, InfoLen, L"\n", InfoLen - 1 - StrLen(Info));\r
5d73d92f 3512 return Key;\r
3513 }\r
3514 }\r
3515\r
e75390f0 3516 StrCpyS (Info, InfoLen, L"Undefined Value\n");\r
5d73d92f 3517 return QUERY_TABLE_UNFOUND;\r
3518}\r
3519\r
a1d4bfcc 3520/**\r
3521 Given a table of bit info and a Key, return the responding info to the Key.\r
3522\r
3523 @param[in] Table Point to a table which maintains a map of 'bit' to 'message'.\r
3524 @param[in] Number Number of table items.\r
3525 @param[in] Bits The Key of query the bit map information.\r
3526**/\r
5d73d92f 3527VOID\r
3528PrintBitsInfo (\r
3529 IN TABLE_ITEM *Table,\r
3530 IN UINTN Number,\r
3531 IN UINT32 Bits\r
3532 )\r
5d73d92f 3533{\r
3534 //\r
3535 // Get certain bit of 'Value':\r
3536 //\r
3537#define BIT(Value, bit) ((Value) & ((UINT32) 1) << (bit))\r
3538 //\r
3539 // Clear certain bit of 'Value':\r
3540 //\r
3541#define CLR_BIT(Value, bit) ((Value) -= (BIT (Value, bit)))\r
3542\r
3543 UINTN Index;\r
3544 UINT32 Value;\r
d4c109da 3545 BOOLEAN FirstInfo;\r
5d73d92f 3546\r
d4c109da 3547 FirstInfo = TRUE;\r
5d73d92f 3548 Value = Bits;\r
3549 //\r
3550 // query the table and print information\r
3551 //\r
3552 for (Index = 0; Index < Number; Index++) {\r
3553 if (BIT (Value, Table[Index].Key) != 0) {\r
d4c109da
SZ
3554 if (!FirstInfo) {\r
3555 //\r
3556 // If it is not first info, print the separator first.\r
3557 //\r
3558 Print (L" | ");\r
3559 }\r
5d73d92f 3560 Print (Table[Index].Info);\r
5d73d92f 3561\r
d4c109da 3562 FirstInfo = FALSE;\r
5d73d92f 3563 //\r
3564 // clear the bit, for reserved bits test\r
3565 //\r
3566 CLR_BIT (Value, Table[Index].Key);\r
3567 }\r
3568 }\r
3569\r
d4c109da
SZ
3570 //\r
3571 // There is no any info if FirstInfo is still TRUE.\r
3572 //\r
3573 if (FirstInfo) {\r
5d73d92f 3574 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_NO_INFO), gShellDebug1HiiHandle);\r
3575 }\r
3576\r
3577 if (Value != 0) {\r
3578 ShellPrintHiiEx(-1,-1,NULL,\r
3579 STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_RSVD_BITS_SET),\r
3580 gShellDebug1HiiHandle,\r
3581 Value\r
3582 );\r
3583 }\r
3584\r
3585 Print (L"\n");\r
3586}\r
3587//\r
3588// //////////////////////////////////////////////////////////////////\r
3589//\r
3590// Following uses QueryTable functions to simplify the coding.\r
3591// QueryTable(), PrintBitsInfo()\r
3592//\r
3593//\r
3594#define PRINT_TABLE_ITEM(Table, Key) \\r
3595 do { \\r
3596 UINTN Num; \\r
3597 CHAR16 Info[66]; \\r
3598 Num = sizeof (Table) / sizeof (TABLE_ITEM); \\r
3599 ZeroMem (Info, sizeof (Info)); \\r
33c031ee 3600 QueryTable (Table, Num, Key, Info, sizeof(Info)/sizeof(Info[0])); \\r
5d73d92f 3601 Print (Info); \\r
3602 } while (0);\r
3603\r
3604#define PRINT_BITS_INFO(Table, bits) \\r
3605 do { \\r
3606 UINTN Num; \\r
3607 Num = sizeof (Table) / sizeof (TABLE_ITEM); \\r
3608 PrintBitsInfo (Table, Num, (UINT32) bits); \\r
3609 } while (0);\r
3610\r
a1d4bfcc 3611/**\r
3612 Display System Information (Type 1) Type.\r
3613\r
3614 @param[in] Type The key of the structure.\r
3615 @param[in] Option The optional information.\r
3616**/\r
5d73d92f 3617VOID\r
3618DisplaySystemWakeupType (\r
a1d4bfcc 3619 IN UINT8 Type,\r
3620 IN UINT8 Option\r
5d73d92f 3621 )\r
3622{\r
3623 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_SYSTEM_WAKEUP_TYPE), gShellDebug1HiiHandle);\r
3624 PRINT_INFO_OPTION (Type, Option);\r
3625 PRINT_TABLE_ITEM (SystemWakeupTypeTable, Type);\r
3626}\r
a1d4bfcc 3627\r
187cb3dd
SZ
3628/**\r
3629 Display Base Board (Type 2) Feature Flags.\r
3630\r
3631 @param[in] FeatureFlags The key of the structure.\r
3632 @param[in] Option The optional information.\r
3633**/\r
3634VOID\r
3635DisplayBaseBoardFeatureFlags (\r
3636 IN UINT8 FeatureFlags,\r
3637 IN UINT8 Option\r
3638 )\r
3639{\r
3640 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_BASE_BOARD_FEATURE_FLAGS), gShellDebug1HiiHandle);\r
3641 PRINT_INFO_OPTION (FeatureFlags, Option);\r
3642 PRINT_BITS_INFO (BaseBoardFeatureFlagsTable, FeatureFlags);\r
3643}\r
3644\r
3645/**\r
3646 Display Base Board (Type 2) Board Type.\r
3647\r
3648 @param[in] Type The key of the structure.\r
3649 @param[in] Option The optional information.\r
3650**/\r
3651VOID\r
3652DisplayBaseBoardBoardType(\r
3653 IN UINT8 Type,\r
3654 IN UINT8 Option\r
3655 )\r
3656{\r
3657 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_BASE_BOARD_BOARD_TYPE), gShellDebug1HiiHandle);\r
3658 PRINT_INFO_OPTION (Type, Option);\r
3659 PRINT_TABLE_ITEM (BaseBoardBoardTypeTable, Type);\r
3660}\r
3661\r
a1d4bfcc 3662/**\r
3663 Display System Enclosure (Type 3) Enclosure Type.\r
3664\r
3665 @param[in] Type The key of the structure.\r
3666 @param[in] Option The optional information.\r
3667**/\r
5d73d92f 3668VOID\r
3669DisplaySystemEnclosureType (\r
a1d4bfcc 3670 IN UINT8 Type,\r
3671 IN UINT8 Option\r
5d73d92f 3672 )\r
3673{\r
3674 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_SYSTEM_CHASSIS_TYPE), gShellDebug1HiiHandle);\r
3675 PRINT_INFO_OPTION (Type, Option);\r
3676 //\r
3677 // query table and print info\r
3678 //\r
3679 PRINT_TABLE_ITEM (SystemEnclosureTypeTable, Type);\r
3680\r
3681 if (BIT (Type, 7) != 0) {\r
3682 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_CHASSIS_LOCK_PRESENT), gShellDebug1HiiHandle);\r
3683 }\r
3684}\r
3685\r
a1d4bfcc 3686/**\r
3687 Display System Enclosure (Type 3) Enclosure Status.\r
3688\r
3689 @param[in] Status The key of the structure.\r
3690 @param[in] Option The optional information.\r
3691**/\r
5d73d92f 3692VOID\r
3693DisplaySystemEnclosureStatus (\r
a1d4bfcc 3694 IN UINT8 Status,\r
3695 IN UINT8 Option\r
5d73d92f 3696 )\r
3697{\r
3698 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_SYSTEM_CHASSIS_STATUS), gShellDebug1HiiHandle);\r
3699 PRINT_INFO_OPTION (Status, Option);\r
3700 PRINT_TABLE_ITEM (SystemEnclosureStatusTable, Status);\r
3701}\r
3702\r
a1d4bfcc 3703/**\r
3704 Display System Enclosure (Type 3) Security Status.\r
3705\r
3706 @param[in] Status The key of the structure.\r
3707 @param[in] Option The optional information.\r
3708**/\r
5d73d92f 3709VOID\r
3710DisplaySESecurityStatus (\r
a1d4bfcc 3711 IN UINT8 Status,\r
3712 IN UINT8 Option\r
5d73d92f 3713 )\r
3714{\r
3715 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_SYSTEM_CHASSIS_SECURITY), gShellDebug1HiiHandle);\r
3716 PRINT_INFO_OPTION (Status, Option);\r
3717 PRINT_TABLE_ITEM (SESecurityStatusTable, Status);\r
3718}\r
a1d4bfcc 3719\r
3720/**\r
3721 Display Processor Information (Type 4) Type.\r
3722\r
3723 @param[in] Type The key of the structure.\r
3724 @param[in] Option The optional information.\r
3725**/\r
5d73d92f 3726VOID\r
3727DisplayProcessorType (\r
a1d4bfcc 3728 IN UINT8 Type,\r
3729 IN UINT8 Option\r
5d73d92f 3730 )\r
3731{\r
3732 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_PROC_TYPE), gShellDebug1HiiHandle);\r
3733 PRINT_INFO_OPTION (Type, Option);\r
3734 PRINT_TABLE_ITEM (ProcessorTypeTable, Type);\r
3735}\r
3736\r
a1d4bfcc 3737/**\r
3738 Display Processor Information (Type 4) Upgrade.\r
3739\r
3740 @param[in] Upgrade The key of the structure.\r
3741 @param[in] Option The optional information.\r
3742**/\r
5d73d92f 3743VOID\r
3744DisplayProcessorUpgrade (\r
a1d4bfcc 3745 IN UINT8 Upgrade,\r
3746 IN UINT8 Option\r
5d73d92f 3747 )\r
3748{\r
3749 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_PROC_UPDATE), gShellDebug1HiiHandle);\r
3750 PRINT_INFO_OPTION (Upgrade, Option);\r
3751 PRINT_TABLE_ITEM (ProcessorUpgradeTable, Upgrade);\r
3752}\r
a1d4bfcc 3753\r
187cb3dd
SZ
3754/**\r
3755 Display Processor Information (Type 4) Characteristics.\r
3756\r
3757 @param[in] Type The key of the structure.\r
3758 @param[in] Option The optional information.\r
3759**/\r
3760VOID\r
3761DisplayProcessorCharacteristics (\r
3762 IN UINT16 Type,\r
3763 IN UINT8 Option\r
3764 )\r
3765{\r
3766 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_PROC_CHARACTERISTICS), gShellDebug1HiiHandle);\r
3767 PRINT_INFO_OPTION (Type, Option);\r
3768 PRINT_BITS_INFO (ProcessorCharacteristicsTable, Type);\r
3769}\r
3770\r
a1d4bfcc 3771/**\r
3772 Display Memory Controller Information (Type 5) method.\r
3773\r
3774 @param[in] Method The key of the structure.\r
3775 @param[in] Option The optional information.\r
3776**/\r
5d73d92f 3777VOID\r
3778DisplayMcErrorDetectMethod (\r
a1d4bfcc 3779 IN UINT8 Method,\r
3780 IN UINT8 Option\r
5d73d92f 3781 )\r
3782{\r
3783 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MEM_DETECTMETHOD), gShellDebug1HiiHandle);\r
3784 PRINT_INFO_OPTION (Method, Option);\r
3785 PRINT_TABLE_ITEM (McErrorDetectMethodTable, Method);\r
3786}\r
3787\r
a1d4bfcc 3788/**\r
3789 Display Memory Controller Information (Type 5) Capability.\r
3790\r
3791 @param[in] Capability The key of the structure.\r
3792 @param[in] Option The optional information.\r
3793**/\r
5d73d92f 3794VOID\r
3795DisplayMcErrorCorrectCapability (\r
a1d4bfcc 3796 IN UINT8 Capability,\r
3797 IN UINT8 Option\r
5d73d92f 3798 )\r
3799{\r
3800 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MEM_CORRECT_CAPABILITY), gShellDebug1HiiHandle);\r
3801 PRINT_INFO_OPTION (Capability, Option);\r
3802 PRINT_BITS_INFO (McErrorCorrectCapabilityTable, Capability);\r
3803}\r
3804\r
a1d4bfcc 3805/**\r
3806 Display Memory Controller Information (Type 5) Support.\r
3807\r
3808 @param[in] Support The key of the structure.\r
3809 @param[in] Option The optional information.\r
3810**/\r
5d73d92f 3811VOID\r
3812DisplayMcInterleaveSupport (\r
a1d4bfcc 3813 IN UINT8 Support,\r
3814 IN UINT8 Option\r
5d73d92f 3815 )\r
3816{\r
3817 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MEM_INTERLEAVE_SUPPORT), gShellDebug1HiiHandle);\r
3818 PRINT_INFO_OPTION (Support, Option);\r
3819 PRINT_TABLE_ITEM (McInterleaveSupportTable, Support);\r
3820}\r
3821\r
a1d4bfcc 3822/**\r
3823 Display Memory Controller Information (Type 5) speeds.\r
3824\r
3825 @param[in] Speed The key of the structure.\r
3826 @param[in] Option The optional information.\r
3827**/\r
5d73d92f 3828VOID\r
3829DisplayMcMemorySpeeds (\r
a1d4bfcc 3830 IN UINT16 Speed,\r
3831 IN UINT8 Option\r
5d73d92f 3832 )\r
3833{\r
3834 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MEM_MEMORY_SPEED), gShellDebug1HiiHandle);\r
3835 PRINT_INFO_OPTION (Speed, Option);\r
3836 PRINT_BITS_INFO (McMemorySpeedsTable, Speed);\r
3837}\r
3838\r
a1d4bfcc 3839/**\r
3840 Display Memory Controller Information (Type 5) voltage.\r
3841\r
3842 @param[in] Voltage The key of the structure.\r
3843 @param[in] Option The optional information.\r
3844**/\r
5d73d92f 3845VOID\r
3846DisplayMemoryModuleVoltage (\r
a1d4bfcc 3847 IN UINT8 Voltage,\r
3848 IN UINT8 Option\r
5d73d92f 3849 )\r
3850{\r
3851 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_REQUIRED_VOLTAGES), gShellDebug1HiiHandle);\r
3852 PRINT_INFO_OPTION (Voltage, Option);\r
3853 PRINT_BITS_INFO (MemoryModuleVoltageTable, Voltage);\r
3854}\r
a1d4bfcc 3855\r
3856/**\r
3857 Display Memory Module Information (Type 6) type.\r
3858\r
3859 @param[in] Type The key of the structure.\r
3860 @param[in] Option The optional information.\r
3861**/\r
5d73d92f 3862VOID\r
3863DisplayMmMemoryType (\r
a1d4bfcc 3864 IN UINT16 Type,\r
3865 IN UINT8 Option\r
5d73d92f 3866 )\r
3867{\r
3868 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MEM_MODULE_TYPE), gShellDebug1HiiHandle);\r
3869 PRINT_INFO_OPTION (Type, Option);\r
3870 PRINT_BITS_INFO (MmMemoryTypeTable, Type);\r
3871}\r
3872\r
a1d4bfcc 3873/**\r
3874 Display Memory Module Information (Type 6) status.\r
3875\r
3876 @param[in] Status The key of the structure.\r
3877 @param[in] Option The optional information.\r
3878**/\r
5d73d92f 3879VOID\r
3880DisplayMmErrorStatus (\r
a1d4bfcc 3881 IN UINT8 Status,\r
3882 IN UINT8 Option\r
5d73d92f 3883 )\r
3884{\r
3885 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MEM_MODULE_ERROR_STATUS), gShellDebug1HiiHandle);\r
3886 PRINT_INFO_OPTION (Status, Option);\r
3887 PRINT_BITS_INFO (MmErrorStatusTable, Status);\r
3888}\r
a1d4bfcc 3889\r
3890/**\r
3891 Display Cache Information (Type 7) SRAM Type.\r
3892\r
3893 @param[in] Type The key of the structure.\r
3894 @param[in] Option The optional information.\r
3895**/\r
5d73d92f 3896VOID\r
3897DisplayCacheSRAMType (\r
a1d4bfcc 3898 IN UINT16 Type,\r
3899 IN UINT8 Option\r
5d73d92f 3900 )\r
3901{\r
3902 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_CACHE_SRAM_TYPE), gShellDebug1HiiHandle);\r
3903 PRINT_INFO_OPTION ((UINT8) Type, Option);\r
3904 PRINT_BITS_INFO (CacheSRAMTypeTable, (UINT8) Type);\r
3905}\r
3906\r
a1d4bfcc 3907/**\r
3908 Display Cache Information (Type 7) correcting Type.\r
3909\r
3910 @param[in] Type The key of the structure.\r
3911 @param[in] Option The optional information.\r
3912**/\r
5d73d92f 3913VOID\r
3914DisplayCacheErrCorrectingType (\r
a1d4bfcc 3915 IN UINT8 Type,\r
3916 IN UINT8 Option\r
5d73d92f 3917 )\r
3918{\r
3919 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_CACHE_ERROR_CORRECTING), gShellDebug1HiiHandle);\r
3920 PRINT_INFO_OPTION (Type, Option);\r
3921 PRINT_TABLE_ITEM (CacheErrCorrectingTypeTable, Type);\r
3922}\r
3923\r
a1d4bfcc 3924/**\r
3925 Display Cache Information (Type 7) Type.\r
3926\r
3927 @param[in] Type The key of the structure.\r
3928 @param[in] Option The optional information.\r
3929**/\r
5d73d92f 3930VOID\r
3931DisplayCacheSystemCacheType (\r
a1d4bfcc 3932 IN UINT8 Type,\r
3933 IN UINT8 Option\r
5d73d92f 3934 )\r
3935{\r
3936 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_CACHE_SYSTEM_TYPE), gShellDebug1HiiHandle);\r
3937 PRINT_INFO_OPTION (Type, Option);\r
3938 PRINT_TABLE_ITEM (CacheSystemCacheTypeTable, Type);\r
3939}\r
3940\r
a1d4bfcc 3941/**\r
3942 Display Cache Information (Type 7) Associativity.\r
3943\r
3944 @param[in] Associativity The key of the structure.\r
3945 @param[in] Option The optional information.\r
3946**/\r
5d73d92f 3947VOID\r
3948DisplayCacheAssociativity (\r
a1d4bfcc 3949 IN UINT8 Associativity,\r
3950 IN UINT8 Option\r
5d73d92f 3951 )\r
3952{\r
3953 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_CACHE_ASSOCIATIVITY), gShellDebug1HiiHandle);\r
3954 PRINT_INFO_OPTION (Associativity, Option);\r
3955 PRINT_TABLE_ITEM (CacheAssociativityTable, Associativity);\r
3956}\r
a1d4bfcc 3957\r
3958/**\r
3959 Display Port Connector Information (Type 8) type.\r
3960\r
3961 @param[in] Type The key of the structure.\r
3962 @param[in] Option The optional information.\r
3963**/\r
5d73d92f 3964VOID\r
3965DisplayPortConnectorType (\r
a1d4bfcc 3966 IN UINT8 Type,\r
3967 IN UINT8 Option\r
5d73d92f 3968 )\r
3969{\r
3970 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_PORT_CONNECTOR_TYPE), gShellDebug1HiiHandle);\r
3971 PRINT_INFO_OPTION (Type, Option);\r
3972 PRINT_TABLE_ITEM (PortConnectorTypeTable, Type);\r
3973}\r
3974\r
a1d4bfcc 3975/**\r
3976 Display Port Connector Information (Type 8) port type.\r
3977\r
3978 @param[in] Type The key of the structure.\r
3979 @param[in] Option The optional information.\r
3980**/\r
5d73d92f 3981VOID\r
3982DisplayPortType (\r
a1d4bfcc 3983 IN UINT8 Type,\r
3984 IN UINT8 Option\r
5d73d92f 3985 )\r
3986{\r
3987 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_PORT_TYPE), gShellDebug1HiiHandle);\r
3988 PRINT_INFO_OPTION (Type, Option);\r
3989 PRINT_TABLE_ITEM (PortTypeTable, Type);\r
3990}\r
a1d4bfcc 3991\r
3992/**\r
3993 Display System Slots (Type 9) slot type.\r
3994\r
3995 @param[in] Type The key of the structure.\r
3996 @param[in] Option The optional information.\r
3997**/\r
5d73d92f 3998VOID\r
3999DisplaySystemSlotType (\r
a1d4bfcc 4000 IN UINT8 Type,\r
4001 IN UINT8 Option\r
5d73d92f 4002 )\r
4003{\r
4004 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_SYSTEM_SLOT_TYPE), gShellDebug1HiiHandle);\r
4005 PRINT_INFO_OPTION (Type, Option);\r
4006 PRINT_TABLE_ITEM (SystemSlotTypeTable, Type);\r
4007}\r
4008\r
a1d4bfcc 4009/**\r
4010 Display System Slots (Type 9) data bus width.\r
4011\r
4012 @param[in] Width The key of the structure.\r
4013 @param[in] Option The optional information.\r
4014**/\r
5d73d92f 4015VOID\r
4016DisplaySystemSlotDataBusWidth (\r
a1d4bfcc 4017 IN UINT8 Width,\r
4018 IN UINT8 Option\r
5d73d92f 4019 )\r
4020{\r
4021 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_SYSTEM_SLOT_DATA), gShellDebug1HiiHandle);\r
4022 PRINT_INFO_OPTION (Width, Option);\r
4023 PRINT_TABLE_ITEM (SystemSlotDataBusWidthTable, Width);\r
4024}\r
4025\r
a1d4bfcc 4026/**\r
4027 Display System Slots (Type 9) usage information.\r
4028\r
4029 @param[in] Usage The key of the structure.\r
4030 @param[in] Option The optional information.\r
4031**/\r
5d73d92f 4032VOID\r
4033DisplaySystemSlotCurrentUsage (\r
a1d4bfcc 4034 IN UINT8 Usage,\r
4035 IN UINT8 Option\r
5d73d92f 4036 )\r
4037{\r
4038 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_SYSTEM_SLOT_CURRENT_USAGE), gShellDebug1HiiHandle);\r
4039 PRINT_INFO_OPTION (Usage, Option);\r
4040 PRINT_TABLE_ITEM (SystemSlotCurrentUsageTable, Usage);\r
4041}\r
4042\r
a1d4bfcc 4043/**\r
4044 Display System Slots (Type 9) slot length.\r
4045\r
4046 @param[in] Length The key of the structure.\r
4047 @param[in] Option The optional information.\r
4048**/\r
5d73d92f 4049VOID\r
4050DisplaySystemSlotLength (\r
a1d4bfcc 4051 IN UINT8 Length,\r
4052 IN UINT8 Option\r
5d73d92f 4053 )\r
4054{\r
4055 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_SYSTEM_SLOT_LENGTH), gShellDebug1HiiHandle);\r
4056 PRINT_INFO_OPTION (Length, Option);\r
4057 PRINT_TABLE_ITEM (SystemSlotLengthTable, Length);\r
4058}\r
4059\r
a1d4bfcc 4060/**\r
4061 Display System Slots (Type 9) characteristics.\r
4062\r
4063 @param[in] Chara1 The key of the structure.\r
4064 @param[in] Option The optional information.\r
4065**/\r
5d73d92f 4066VOID\r
4067DisplaySlotCharacteristics1 (\r
a1d4bfcc 4068 IN UINT8 Chara1,\r
4069 IN UINT8 Option\r
5d73d92f 4070 )\r
4071{\r
4072 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_SLOT_CHARACTERISTICS), gShellDebug1HiiHandle);\r
4073 PRINT_INFO_OPTION (Chara1, Option);\r
4074 PRINT_BITS_INFO (SlotCharacteristics1Table, Chara1);\r
4075}\r
4076\r
a1d4bfcc 4077/**\r
4078 Display System Slots (Type 9) characteristics.\r
4079\r
4080 @param[in] Chara2 The key of the structure.\r
4081 @param[in] Option The optional information.\r
4082**/\r
5d73d92f 4083VOID\r
4084DisplaySlotCharacteristics2 (\r
a1d4bfcc 4085 IN UINT8 Chara2,\r
4086 IN UINT8 Option\r
5d73d92f 4087 )\r
4088{\r
4089 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_SLOT_CHARACTERISTICS_2), gShellDebug1HiiHandle);\r
4090 PRINT_INFO_OPTION (Chara2, Option);\r
4091 PRINT_BITS_INFO (SlotCharacteristics2Table, Chara2);\r
4092}\r
a1d4bfcc 4093\r
4094/**\r
4095 Display On Board Devices Information (Type 10) types.\r
4096\r
4097 @param[in] Type The key of the structure.\r
4098 @param[in] Option The optional information.\r
4099**/\r
5d73d92f 4100VOID\r
4101DisplayOnboardDeviceTypes (\r
a1d4bfcc 4102 IN UINT8 Type,\r
4103 IN UINT8 Option\r
5d73d92f 4104 )\r
4105{\r
4106 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_ONBOARD_DEVICE_TYPE), gShellDebug1HiiHandle);\r
4107 PRINT_INFO_OPTION (Type, Option);\r
4108 PRINT_TABLE_ITEM (OnboardDeviceTypesTable, Type);\r
4109}\r
a1d4bfcc 4110\r
4111/**\r
4112 Display System Event Log (Type 15) types.\r
4113\r
4114 @param[in] Type The key of the structure.\r
4115 @param[in] Option The optional information.\r
4116**/\r
5d73d92f 4117VOID\r
4118DisplaySELTypes (\r
a1d4bfcc 4119 IN UINT8 Type,\r
4120 IN UINT8 Option\r
5d73d92f 4121 )\r
4122{\r
4123 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_SYSTEM_EVENT_LOG_TYPE), gShellDebug1HiiHandle);\r
4124 PRINT_INFO_OPTION (Type, Option);\r
4125 PRINT_TABLE_ITEM (SELTypesTable, Type);\r
4126}\r
4127\r
a1d4bfcc 4128/**\r
4129 Display System Event Log (Type 15) format type.\r
4130\r
4131 @param[in] Type The key of the structure.\r
4132 @param[in] Option The optional information.\r
4133**/\r
5d73d92f 4134VOID\r
4135DisplaySELVarDataFormatType (\r
a1d4bfcc 4136 IN UINT8 Type,\r
4137 IN UINT8 Option\r
5d73d92f 4138 )\r
4139{\r
4140 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_EVENT_LOG_VAR_DATA_FORMAT), gShellDebug1HiiHandle);\r
4141 PRINT_INFO_OPTION (Type, Option);\r
4142 PRINT_TABLE_ITEM (SELVarDataFormatTypeTable, Type);\r
4143}\r
4144\r
a1d4bfcc 4145/**\r
4146 Display System Event Log (Type 15) dw1.\r
4147\r
4148 @param[in] Key The key of the structure.\r
4149 @param[in] Option The optional information.\r
4150**/\r
5d73d92f 4151VOID\r
4152DisplayPostResultsBitmapDw1 (\r
a1d4bfcc 4153 IN UINT32 Key,\r
4154 IN UINT8 Option\r
5d73d92f 4155 )\r
4156{\r
4157 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_POST_RESULTS_BITMAP), gShellDebug1HiiHandle);\r
4158 PRINT_INFO_OPTION (Key, Option);\r
4159 PRINT_BITS_INFO (PostResultsBitmapDw1Table, Key);\r
4160}\r
4161\r
a1d4bfcc 4162/**\r
4163 Display System Event Log (Type 15) dw2.\r
4164\r
4165 @param[in] Key The key of the structure.\r
4166 @param[in] Option The optional information.\r
4167**/\r
5d73d92f 4168VOID\r
4169DisplayPostResultsBitmapDw2 (\r
a1d4bfcc 4170 IN UINT32 Key,\r
4171 IN UINT8 Option\r
5d73d92f 4172 )\r
4173{\r
4174 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_POST_RESULTS_SECOND_DWORD), gShellDebug1HiiHandle);\r
4175 PRINT_INFO_OPTION (Key, Option);\r
4176 PRINT_BITS_INFO (PostResultsBitmapDw2Table, Key);\r
4177}\r
4178\r
a1d4bfcc 4179/**\r
4180 Display System Event Log (Type 15) type.\r
4181\r
4182 @param[in] SMType The key of the structure.\r
4183 @param[in] Option The optional information.\r
4184**/\r
5d73d92f 4185VOID\r
4186DisplaySELSysManagementTypes (\r
a1d4bfcc 4187 IN UINT32 SMType,\r
4188 IN UINT8 Option\r
5d73d92f 4189 )\r
4190{\r
4191 UINT8 Temp;\r
4192\r
4193 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_SYSTEM_MANAGEMENT_TYPES), gShellDebug1HiiHandle);\r
4194 PRINT_INFO_OPTION (SMType, Option);\r
4195\r
4196 //\r
4197 // Deal with wide range Value\r
4198 //\r
4199 if (SMType >= 0x80000000) {\r
4200 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_OEM_ASSIGNED), gShellDebug1HiiHandle);\r
4201 } else if (SMType >= 0x00020000) {\r
4202 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_RSVD_FOR_FUTURE_ASSIGN), gShellDebug1HiiHandle);\r
4203 } else if (SMType >= 0x00010000) {\r
4204 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_SYSTEM_MANAGEMENT_PROBE), gShellDebug1HiiHandle);\r
4205 } else if (SMType >= 0x31) {\r
4206 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_RSVD_FOR_FUTURE_ASSIGN), gShellDebug1HiiHandle);\r
4207 } else {\r
4208 //\r
4209 // Deal with One byte data\r
4210 //\r
4211 Temp = (UINT8) (SMType & 0x3F);\r
4212 PRINT_TABLE_ITEM (SELSysManagementTypesTable, Temp);\r
4213 }\r
4214}\r
a1d4bfcc 4215\r
4216/**\r
4217 Display Physical Memory Array (Type 16) Location.\r
4218\r
4219 @param[in] Location The key of the structure.\r
4220 @param[in] Option The optional information.\r
4221**/\r
5d73d92f 4222VOID\r
4223DisplayPMALocation (\r
a1d4bfcc 4224 IN UINT8 Location,\r
4225 IN UINT8 Option\r
5d73d92f 4226 )\r
4227{\r
4228 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_PHYS_MEM_ARRAY_LOCATION), gShellDebug1HiiHandle);\r
4229 PRINT_INFO_OPTION (Location, Option);\r
4230 PRINT_TABLE_ITEM (PMALocationTable, Location);\r
4231}\r
4232\r
a1d4bfcc 4233/**\r
4234 Display Physical Memory Array (Type 16) Use.\r
4235\r
4236 @param[in] Use The key of the structure.\r
4237 @param[in] Option The optional information.\r
4238**/\r
5d73d92f 4239VOID\r
4240DisplayPMAUse (\r
a1d4bfcc 4241 IN UINT8 Use,\r
4242 IN UINT8 Option\r
5d73d92f 4243 )\r
4244{\r
7ac133d0 4245 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_PHYS_MEM_ARRAY_USE), gShellDebug1HiiHandle);\r
5d73d92f 4246 PRINT_INFO_OPTION (Use, Option);\r
4247 PRINT_TABLE_ITEM (PMAUseTable, Use);\r
4248}\r
4249\r
a1d4bfcc 4250/**\r
4251 Display Physical Memory Array (Type 16) Types.\r
4252\r
4253 @param[in] Type The key of the structure.\r
4254 @param[in] Option The optional information.\r
4255**/\r
5d73d92f 4256VOID\r
4257DisplayPMAErrorCorrectionTypes (\r
a1d4bfcc 4258 IN UINT8 Type,\r
4259 IN UINT8 Option\r
5d73d92f 4260 )\r
4261{\r
4262 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_PHYS_MEM_ARRAY_ERROR), gShellDebug1HiiHandle);\r
4263 PRINT_INFO_OPTION (Type, Option);\r
4264 PRINT_TABLE_ITEM (PMAErrorCorrectionTypesTable, Type);\r
4265}\r
a1d4bfcc 4266\r
4267/**\r
4268 Display Memory Device (Type 17) form factor.\r
4269\r
4270 @param[in] FormFactor The key of the structure.\r
4271 @param[in] Option The optional information.\r
4272**/\r
5d73d92f 4273VOID\r
4274DisplayMemoryDeviceFormFactor (\r
a1d4bfcc 4275 IN UINT8 FormFactor,\r
4276 IN UINT8 Option\r
5d73d92f 4277 )\r
4278{\r
4279 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MEM_DEVICE_FORM_FACTOR), gShellDebug1HiiHandle);\r
4280 PRINT_INFO_OPTION (FormFactor, Option);\r
4281 PRINT_TABLE_ITEM (MemoryDeviceFormFactorTable, FormFactor);\r
4282}\r
4283\r
a1d4bfcc 4284/**\r
4285 Display Memory Device (Type 17) type.\r
4286\r
4287 @param[in] Type The key of the structure.\r
4288 @param[in] Option The optional information.\r
4289**/\r
5d73d92f 4290VOID\r
4291DisplayMemoryDeviceType (\r
a1d4bfcc 4292 IN UINT8 Type,\r
4293 IN UINT8 Option\r
5d73d92f 4294 )\r
4295{\r
4296 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MEM_DEVICE_TYPE), gShellDebug1HiiHandle);\r
4297 PRINT_INFO_OPTION (Type, Option);\r
4298 PRINT_TABLE_ITEM (MemoryDeviceTypeTable, Type);\r
4299}\r
4300\r
a1d4bfcc 4301/**\r
4302 Display Memory Device (Type 17) details.\r
4303\r
4304 @param[in] Para The key of the structure.\r
4305 @param[in] Option The optional information.\r
4306**/\r
5d73d92f 4307VOID\r
4308DisplayMemoryDeviceTypeDetail (\r
a1d4bfcc 4309 IN UINT16 Para,\r
4310 IN UINT8 Option\r
5d73d92f 4311 )\r
4312{\r
4313 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MEM_DEVICE_TYPE_DETAIL), gShellDebug1HiiHandle);\r
a1d4bfcc 4314 PRINT_INFO_OPTION (Para, Option);\r
4315 PRINT_BITS_INFO (MemoryDeviceTypeDetailTable, Para);\r
5d73d92f 4316}\r
a1d4bfcc 4317\r
7475ac51
DB
4318/**\r
4319 Display Memory Device (Type 17) memory technology.\r
4320\r
4321 @param[in] Para The key of the structure.\r
4322 @param[in] Option The optional information.\r
4323**/\r
4324VOID\r
4325DisplayMemoryDeviceMemoryTechnology (\r
4326 IN UINT8 Para,\r
4327 IN UINT8 Option\r
4328 )\r
4329{\r
4330 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MEM_DEVICE_MEMORY_TECHNOLOGY), gShellDebug1HiiHandle);\r
4331 PRINT_INFO_OPTION (Para, Option);\r
4332 PRINT_TABLE_ITEM (MemoryDeviceMemoryTechnologyTable, Para);\r
4333}\r
4334\r
4335/**\r
4336 Display Memory Device (Type 17) memory operating mode capability.\r
4337\r
4338 @param[in] Para The key of the structure.\r
4339 @param[in] Option The optional information.\r
4340**/\r
4341VOID\r
4342DisplayMemoryDeviceMemoryOperatingModeCapability (\r
4343 IN UINT16 Para,\r
4344 IN UINT8 Option\r
4345 )\r
4346{\r
4347 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MEM_DEVICE_MEM_OPER_MODE_CAPA), gShellDebug1HiiHandle);\r
4348 PRINT_INFO_OPTION (Para, Option);\r
4349 PRINT_BITS_INFO (MemoryDeviceMemoryOperatingModeCapabilityTable, Para);\r
4350}\r
4351\r
a1d4bfcc 4352/**\r
4353 Display 32-bit Memory Error Information (Type 18) type.\r
4354\r
4355 @param[in] ErrorType The key of the structure.\r
4356 @param[in] Option The optional information.\r
4357**/\r
5d73d92f 4358VOID\r
4359DisplayMemoryErrorType (\r
a1d4bfcc 4360 IN UINT8 ErrorType,\r
4361 IN UINT8 Option\r
5d73d92f 4362 )\r
4363{\r
4364 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MEM_ERROR_INFO), gShellDebug1HiiHandle);\r
4365 PRINT_INFO_OPTION (ErrorType, Option);\r
4366 PRINT_TABLE_ITEM (MemoryErrorTypeTable, ErrorType);\r
4367}\r
4368\r
a1d4bfcc 4369/**\r
4370 Display 32-bit Memory Error Information (Type 18) error granularity.\r
4371\r
4372 @param[in] Granularity The key of the structure.\r
4373 @param[in] Option The optional information.\r
4374**/\r
5d73d92f 4375VOID\r
4376DisplayMemoryErrorGranularity (\r
a1d4bfcc 4377 IN UINT8 Granularity,\r
4378 IN UINT8 Option\r
5d73d92f 4379 )\r
4380{\r
4381 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MEM_ERROR_GRANULARITY), gShellDebug1HiiHandle);\r
4382 PRINT_INFO_OPTION (Granularity, Option);\r
4383 PRINT_TABLE_ITEM (MemoryErrorGranularityTable, Granularity);\r
4384}\r
4385\r
a1d4bfcc 4386/**\r
4387 Display 32-bit Memory Error Information (Type 18) error information.\r
4388\r
4389 @param[in] Operation The key of the structure.\r
4390 @param[in] Option The optional information.\r
4391**/\r
5d73d92f 4392VOID\r
4393DisplayMemoryErrorOperation (\r
a1d4bfcc 4394 IN UINT8 Operation,\r
4395 IN UINT8 Option\r
5d73d92f 4396 )\r
4397{\r
4398 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MEM_ERROR_OP), gShellDebug1HiiHandle);\r
4399 PRINT_INFO_OPTION (Operation, Option);\r
4400 PRINT_TABLE_ITEM (MemoryErrorOperationTable, Operation);\r
4401}\r
a1d4bfcc 4402\r
4403/**\r
4404 Display Built-in Pointing Device (Type 21) type information.\r
4405\r
4406 @param[in] Type The key of the structure.\r
4407 @param[in] Option The optional information.\r
4408**/\r
5d73d92f 4409VOID\r
4410DisplayPointingDeviceType (\r
a1d4bfcc 4411 IN UINT8 Type,\r
4412 IN UINT8 Option\r
5d73d92f 4413 )\r
4414{\r
4415 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_POINTING_DEVICE_TYPE), gShellDebug1HiiHandle);\r
4416 PRINT_INFO_OPTION (Type, Option);\r
4417 PRINT_TABLE_ITEM (PointingDeviceTypeTable, Type);\r
4418}\r
4419\r
a1d4bfcc 4420/**\r
4421 Display Built-in Pointing Device (Type 21) information.\r
4422\r
4423 @param[in] Interface The key of the structure.\r
4424 @param[in] Option The optional information.\r
4425**/\r
5d73d92f 4426VOID\r
4427DisplayPointingDeviceInterface (\r
a1d4bfcc 4428 IN UINT8 Interface,\r
4429 IN UINT8 Option\r
5d73d92f 4430 )\r
4431{\r
4432 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_POINTING_DEVICE_INTERFACE), gShellDebug1HiiHandle);\r
4433 PRINT_INFO_OPTION (Interface, Option);\r
4434 PRINT_TABLE_ITEM (PointingDeviceInterfaceTable, Interface);\r
4435}\r
a1d4bfcc 4436\r
4437/**\r
4438 Display Portable Battery (Type 22) information.\r
4439\r
4440 @param[in] Key The key of the structure.\r
4441 @param[in] Option The optional information.\r
4442**/\r
5d73d92f 4443VOID\r
4444DisplayPBDeviceChemistry (\r
a1d4bfcc 4445 IN UINT8 Key,\r
4446 IN UINT8 Option\r
5d73d92f 4447 )\r
4448{\r
4449 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_PORTABLE_BATT_DEV_CHEM), gShellDebug1HiiHandle);\r
4450 PRINT_INFO_OPTION (Key, Option);\r
4451 PRINT_TABLE_ITEM (PBDeviceChemistryTable, Key);\r
4452}\r
a1d4bfcc 4453\r
4454/**\r
4455 Display Voltage Probe (Type 26) location information.\r
4456\r
4457 @param[in] Key The key of the structure.\r
4458 @param[in] Option The optional information.\r
4459**/\r
5d73d92f 4460VOID\r
4461DisplayVPLocation (\r
a1d4bfcc 4462 IN UINT8 Key,\r
4463 IN UINT8 Option\r
5d73d92f 4464 )\r
4465{\r
4466 UINT8 Loc;\r
4467\r
4468 Loc = (UINT8) ((Key & 0xE0) >> 5);\r
4469 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_VOLTAGE_PROBE_LOC), gShellDebug1HiiHandle);\r
4470 PRINT_INFO_OPTION (Loc, Option);\r
4471 PRINT_TABLE_ITEM (VPLocationTable, Loc);\r
4472}\r
4473\r
a1d4bfcc 4474/**\r
4475 Display Voltage Probe (Type 26) status ype information.\r
4476\r
4477 @param[in] Key The key of the structure.\r
4478 @param[in] Option The optional information.\r
4479**/\r
5d73d92f 4480VOID\r
4481DisplayVPStatus (\r
a1d4bfcc 4482 IN UINT8 Key,\r
4483 IN UINT8 Option\r
5d73d92f 4484 )\r
4485{\r
4486 UINT8 Status;\r
4487\r
4488 Status = (UINT8) (Key & 0x1F);\r
4489 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_VOLTAGE_PROBE_STATUS), gShellDebug1HiiHandle);\r
4490 PRINT_INFO_OPTION (Status, Option);\r
4491 PRINT_TABLE_ITEM (VPStatusTable, Status);\r
4492}\r
a1d4bfcc 4493\r
4494/**\r
4495 Display Cooling (Type 27) status information.\r
4496\r
4497 @param[in] Key The key of the structure.\r
4498 @param[in] Option The optional information.\r
4499**/\r
5d73d92f 4500VOID\r
4501DisplayCoolingDeviceStatus (\r
a1d4bfcc 4502 IN UINT8 Key,\r
4503 IN UINT8 Option\r
5d73d92f 4504 )\r
4505{\r
4506 UINT8 Status;\r
4507\r
4508 Status = (UINT8) ((Key & 0xE0) >> 5);\r
4509 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_COOLING_DEV_STATUS), gShellDebug1HiiHandle);\r
4510 PRINT_INFO_OPTION (Status, Option);\r
4511 PRINT_TABLE_ITEM (CoolingDeviceStatusTable, Status);\r
4512}\r
4513\r
a1d4bfcc 4514/**\r
4515 Display Cooling (Type 27) type information.\r
4516\r
4517 @param[in] Key The key of the structure.\r
4518 @param[in] Option The optional information.\r
4519**/\r
5d73d92f 4520VOID\r
4521DisplayCoolingDeviceType (\r
a1d4bfcc 4522 IN UINT8 Key,\r
4523 IN UINT8 Option\r
5d73d92f 4524 )\r
4525{\r
4526 UINT8 Type;\r
4527\r
4528 Type = (UINT8) (Key & 0x1F);\r
4529 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_COOLING_DEV_TYPE), gShellDebug1HiiHandle);\r
4530 PRINT_INFO_OPTION (Type, Option);\r
4531 PRINT_TABLE_ITEM (CoolingDeviceTypeTable, Type);\r
4532}\r
a1d4bfcc 4533\r
4534/**\r
4535 Display Temperature Probe (Type 28) status information.\r
4536\r
4537 @param[in] Key The key of the structure.\r
4538 @param[in] Option The optional information.\r
4539**/\r
5d73d92f 4540VOID\r
4541DisplayTemperatureProbeStatus (\r
a1d4bfcc 4542 IN UINT8 Key,\r
4543 IN UINT8 Option\r
5d73d92f 4544 )\r
4545{\r
4546 UINT8 Status;\r
4547\r
4548 Status = (UINT8) ((Key & 0xE0) >> 5);\r
4549 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_TEMP_PROBE), gShellDebug1HiiHandle);\r
4550 PRINT_INFO_OPTION (Status, Option);\r
4551 PRINT_TABLE_ITEM (TemperatureProbeStatusTable, Status);\r
4552}\r
4553\r
a1d4bfcc 4554/**\r
4555 Display Temperature Probe (Type 28) location information.\r
4556\r
4557 @param[in] Key The key of the structure.\r
4558 @param[in] Option The optional information.\r
4559**/\r
5d73d92f 4560VOID\r
4561DisplayTemperatureProbeLoc (\r
a1d4bfcc 4562 IN UINT8 Key,\r
4563 IN UINT8 Option\r
5d73d92f 4564 )\r
4565{\r
4566 UINT8 Loc;\r
4567\r
4568 Loc = (UINT8) (Key & 0x1F);\r
4569 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_VOLTAGE_PROBE_LOC), gShellDebug1HiiHandle);\r
4570 PRINT_INFO_OPTION (Loc, Option);\r
4571 PRINT_TABLE_ITEM (TemperatureProbeLocTable, Loc);\r
4572}\r
a1d4bfcc 4573\r
4574/**\r
4575 Display Electrical Current Probe (Type 29) status information.\r
4576\r
4577 @param[in] Key The key of the structure.\r
4578 @param[in] Option The optional information.\r
4579**/\r
5d73d92f 4580VOID\r
4581DisplayECPStatus (\r
a1d4bfcc 4582 IN UINT8 Key,\r
4583 IN UINT8 Option\r
5d73d92f 4584 )\r
4585{\r
4586 UINT8 Status;\r
4587\r
4588 Status = (UINT8) ((Key & 0xE0) >> 5);\r
4589 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_ELEC_PROBE_STATUS), gShellDebug1HiiHandle);\r
4590 PRINT_INFO_OPTION (Status, Option);\r
4591 PRINT_TABLE_ITEM (ECPStatusTable, Status);\r
4592}\r
4593\r
a1d4bfcc 4594/**\r
4595 Display Type 29 information.\r
4596\r
4597 @param[in] Key The key of the structure.\r
4598 @param[in] Option The optional information.\r
4599**/\r
5d73d92f 4600VOID\r
4601DisplayECPLoc (\r
a1d4bfcc 4602 IN UINT8 Key,\r
4603 IN UINT8 Option\r
5d73d92f 4604 )\r
4605{\r
4606 UINT8 Loc;\r
4607\r
4608 Loc = (UINT8) (Key & 0x1F);\r
4609 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_ELEC_PROBE_LOC), gShellDebug1HiiHandle);\r
4610 PRINT_INFO_OPTION (Loc, Option);\r
4611 PRINT_TABLE_ITEM (ECPLocTable, Loc);\r
4612}\r
a1d4bfcc 4613\r
4614/**\r
187cb3dd 4615 Display Management Device (Type 34) Type.\r
a1d4bfcc 4616\r
4617 @param[in] Key The key of the structure.\r
4618 @param[in] Option The optional information.\r
4619**/\r
5d73d92f 4620VOID\r
4621DisplayMDType (\r
a1d4bfcc 4622 IN UINT8 Key,\r
4623 IN UINT8 Option\r
5d73d92f 4624 )\r
4625{\r
4626 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MANAGEMENT_DEV_TYPE), gShellDebug1HiiHandle);\r
4627 PRINT_INFO_OPTION (Key, Option);\r
4628 PRINT_TABLE_ITEM (MDTypeTable, Key);\r
4629}\r
4630\r
187cb3dd
SZ
4631/**\r
4632 Display Management Device (Type 34) Address Type.\r
4633\r
4634 @param[in] Key The key of the structure.\r
4635 @param[in] Option The optional information.\r
4636**/\r
4637VOID\r
4638DisplayMDAddressType (\r
4639 IN UINT8 Key,\r
4640 IN UINT8 Option\r
4641 )\r
4642{\r
4643 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MANAGEMENT_DEV_ADDR_TYPE), gShellDebug1HiiHandle);\r
4644 PRINT_INFO_OPTION (Key, Option);\r
4645 PRINT_TABLE_ITEM (MDAddressTypeTable, Key);\r
4646}\r
4647\r
a1d4bfcc 4648/**\r
4649 Display Memory Channel (Type 37) information.\r
4650\r
4651 @param[in] Key The key of the structure.\r
4652 @param[in] Option The optional information.\r
4653**/\r
5d73d92f 4654VOID\r
4655DisplayMemoryChannelType (\r
a1d4bfcc 4656 IN UINT8 Key,\r
4657 IN UINT8 Option\r
5d73d92f 4658 )\r
4659{\r
4660 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MEM_CHANNEL_TYPE), gShellDebug1HiiHandle);\r
4661 PRINT_INFO_OPTION (Key, Option);\r
4662 PRINT_TABLE_ITEM (MemoryChannelTypeTable, Key);\r
4663}\r
a1d4bfcc 4664\r
4665/**\r
4666 Display IPMI Device Information (Type 38) information.\r
4667\r
4668 @param[in] Key The key of the structure.\r
4669 @param[in] Option The optional information.\r
4670**/\r
5d73d92f 4671VOID\r
4672DisplayIPMIDIBMCInterfaceType (\r
a1d4bfcc 4673 IN UINT8 Key,\r
4674 IN UINT8 Option\r
5d73d92f 4675 )\r
4676{\r
4677 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_BMC_INTERFACE_TYPE), gShellDebug1HiiHandle);\r
4678 PRINT_INFO_OPTION (Key, Option);\r
4679 PRINT_TABLE_ITEM (IPMIDIBMCInterfaceTypeTable, Key);\r
4680}\r
4681\r
5734d486
SZ
4682/**\r
4683 Display Management Controller Host Interface (Type 42) information.\r
4684\r
4685 @param[in] Key The key of the structure.\r
4686 @param[in] Option The optional information.\r
4687**/\r
4688VOID\r
4689DisplayMCHostInterfaceType (\r
4690 IN UINT8 Key,\r
4691 IN UINT8 Option\r
4692 )\r
4693{\r
4694 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MC_HOST_INTERFACE_TYPE), gShellDebug1HiiHandle);\r
4695 PRINT_INFO_OPTION (Key, Option);\r
4696 PRINT_TABLE_ITEM (MCHostInterfaceTypeTable, Key);\r
4697}\r
4698\r
a1d4bfcc 4699/**\r
4700 Display the structure type information.\r
4701\r
4702 @param[in] Key The key of the structure.\r
4703 @param[in] Option The optional information.\r
4704**/\r
5d73d92f 4705VOID\r
4706DisplayStructureTypeInfo (\r
a1d4bfcc 4707 IN UINT8 Key,\r
4708 IN UINT8 Option\r
5d73d92f 4709 )\r
4710{\r
4711 //\r
4712 // display\r
4713 //\r
4714 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_STRUCT_TYPE), gShellDebug1HiiHandle);\r
4715 PRINT_INFO_OPTION (Key, Option);\r
4716 PRINT_TABLE_ITEM (StructureTypeInfoTable, Key);\r
4717}\r