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