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