]> git.proxmox.com Git - mirror_edk2.git/blame - ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/QueryTable.c
ShellPkg: Update smbiosview for latest Type 17 devices
[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
d63d2210 5 Copyright (c) 2005 - 2015, Intel Corporation. All rights reserved.<BR>\r
21cc5ebf 6 (C) Copyright 2016 Hewlett Packard Enterprise Development LP<BR>
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
1265 {\r
1266 0xA0,\r
1267 L"PC-98/C20 "\r
1268 },\r
1269 {\r
1270 0xA1,\r
1271 L"PC-98/C24 "\r
1272 },\r
1273 {\r
1274 0xA2,\r
1275 L"PC-98/E "\r
1276 },\r
1277 {\r
1278 0xA3,\r
1279 L"PC-98/Local Bus "\r
1280 },\r
1281 {\r
1282 0xA4,\r
1283 L"PC-98/Card "\r
1284 },\r
1285 {\r
1286 0xA5,\r
1287 L"PCI Express "\r
1288 },\r
1289 {\r
1290 0xA6,\r
1291 L"PCI Express X1"\r
1292 },\r
1293 {\r
1294 0xA7,\r
1295 L"PCI Express X2"\r
1296 },\r
1297 {\r
1298 0xA8,\r
1299 L"PCI Express X4"\r
1300 },\r
1301 {\r
1302 0xA9,\r
1303 L"PCI Express X8"\r
1304 },\r
1305 {\r
1306 0xAA,\r
1307 L"PCI Express X16"\r
1308 },\r
1309 {\r
1310 0xAB,\r
187cb3dd 1311 L"PCI Express Gen 2"\r
5d73d92f 1312 },\r
1313 {\r
1314 0xAC,\r
1315 L"PCI Express Gen 2 X1"\r
1316 },\r
1317 {\r
1318 0xAD,\r
1319 L"PCI Express Gen 2 X2"\r
1320 },\r
1321 {\r
1322 0xAE,\r
1323 L"PCI Express Gen 2 X4"\r
1324 },\r
1325 {\r
1326 0xAF,\r
1327 L"PCI Express Gen 2 X8"\r
1328 },\r
1329 {\r
1330 0xB0,\r
1331 L"PCI Express Gen 2 X16"\r
187cb3dd
SZ
1332 },\r
1333 {\r
1334 0xB1,\r
1335 L"PCI Express Gen 3"\r
1336 },\r
1337 {\r
1338 0xB2,\r
1339 L"PCI Express Gen 3 X1"\r
1340 },\r
1341 {\r
1342 0xB3,\r
1343 L"PCI Express Gen 3 X2"\r
1344 },\r
1345 {\r
1346 0xB4,\r
1347 L"PCI Express Gen 3 X4"\r
1348 },\r
1349 {\r
1350 0xB5,\r
1351 L"PCI Express Gen 3 X8"\r
1352 },\r
1353 {\r
1354 0xB6,\r
1355 L"PCI Express Gen 3 X16"\r
5d73d92f 1356 }\r
1357};\r
1358\r
1359TABLE_ITEM SystemSlotDataBusWidthTable[] = {\r
1360 {\r
1361 0x01,\r
1362 L" Other"\r
1363 },\r
1364 {\r
1365 0x02,\r
1366 L" Unknown"\r
1367 },\r
1368 {\r
1369 0x03,\r
1370 L" 8 bit"\r
1371 },\r
1372 {\r
1373 0x04,\r
1374 L" 16 bit"\r
1375 },\r
1376 {\r
1377 0x05,\r
1378 L" 32 bit"\r
1379 },\r
1380 {\r
1381 0x06,\r
1382 L" 64 bit"\r
1383 },\r
1384 {\r
1385 0x07,\r
1386 L" 128 bit"\r
1387 },\r
187cb3dd
SZ
1388 {\r
1389 0x08,\r
1390 L" 1x or x1"\r
1391 },\r
1392 {\r
1393 0x09,\r
1394 L" 2x or x2"\r
1395 },\r
1396 {\r
1397 0x0A,\r
1398 L" 4x or x4"\r
1399 },\r
1400 {\r
1401 0x0B,\r
1402 L" 8x or x8"\r
1403 },\r
1404 {\r
1405 0x0C,\r
1406 L" 12x or x12"\r
1407 },\r
1408 {\r
1409 0x0D,\r
1410 L" 16x or x16"\r
1411 },\r
1412 {\r
1413 0x0E,\r
1414 L" 32x or x32"\r
1415 }\r
5d73d92f 1416};\r
1417\r
1418TABLE_ITEM SystemSlotCurrentUsageTable[] = {\r
1419 {\r
1420 0x01,\r
1421 L" Other"\r
1422 },\r
1423 {\r
1424 0x02,\r
1425 L" Unknown"\r
1426 },\r
1427 {\r
1428 0x03,\r
1429 L" Available"\r
1430 },\r
1431 {\r
1432 0x04,\r
1433 L" In use"\r
1434 },\r
1435};\r
1436\r
1437TABLE_ITEM SystemSlotLengthTable[] = {\r
1438 {\r
1439 0x01,\r
1440 L" Other"\r
1441 },\r
1442 {\r
1443 0x02,\r
1444 L" Unknown"\r
1445 },\r
1446 {\r
1447 0x03,\r
1448 L" Short length"\r
1449 },\r
1450 {\r
1451 0x04,\r
1452 L" Long Length"\r
1453 },\r
1454};\r
1455\r
1456TABLE_ITEM SlotCharacteristics1Table[] = {\r
1457 {\r
1458 0,\r
1459 L" Characteristics Unknown"\r
1460 },\r
1461 {\r
1462 1,\r
1463 L" Provides 5.0 Volts"\r
1464 },\r
1465 {\r
1466 2,\r
1467 L" Provides 3.3 Volts"\r
1468 },\r
1469 {\r
1470 3,\r
1471 L" Slot's opening is shared with another slot, e.g. PCI/EISA shared slot."\r
1472 },\r
1473\r
1474 {\r
1475 4,\r
1476 L" PC Card slot supports PC Card-16"\r
1477 },\r
1478 {\r
1479 5,\r
1480 L" PC Card slot supports CardBus"\r
1481 },\r
1482 {\r
1483 6,\r
1484 L" PC Card slot supports Zoom Video "\r
1485 },\r
1486 {\r
1487 7,\r
1488 L" PC Card slot supports Modem Ring Resume "\r
1489 }\r
1490};\r
1491\r
1492TABLE_ITEM SlotCharacteristics2Table[] = {\r
1493 {\r
1494 0,\r
1495 L" PCI slot supports Power Management Enable (PME#) signal"\r
1496 },\r
1497 {\r
1498 1,\r
1499 L" Slot supports hot-plug devices"\r
1500 },\r
1501 {\r
1502 2,\r
1503 L" PCI slot supports SMBus signal"\r
1504 }\r
1505};\r
1506\r
1507TABLE_ITEM OnboardDeviceTypesTable[] = {\r
1508 {\r
1509 0x01,\r
1510 L" Other"\r
1511 },\r
1512 {\r
1513 0x02,\r
1514 L" Unknown"\r
1515 },\r
1516 {\r
1517 0x03,\r
1518 L" Video"\r
1519 },\r
1520 {\r
1521 0x04,\r
1522 L" SCSI Controller"\r
1523 },\r
1524 {\r
1525 0x05,\r
1526 L" Ethernet"\r
1527 },\r
1528 {\r
1529 0x06,\r
1530 L" Token Ring"\r
1531 },\r
1532 {\r
1533 0x07,\r
1534 L" Sound"\r
1535 },\r
1536 {\r
1537 0x08,\r
1538 L" Pata Controller"\r
1539 },\r
1540 {\r
1541 0x09,\r
1542 L" Sata Controller"\r
1543 },\r
1544 {\r
1545 0x0A,\r
1546 L" Sas Controller"\r
1547 },\r
1548};\r
1549\r
1550TABLE_ITEM SELTypesTable[] = {\r
1551 {\r
1552 0x00,\r
1553 L" Reserved."\r
1554 },\r
1555 {\r
1556 0x01,\r
1557 L" Single-bit ECC memory error"\r
1558 },\r
1559 {\r
1560 0x02,\r
1561 L" Multi-bit ECC memory error"\r
1562 },\r
1563 {\r
1564 0x03,\r
1565 L" Parity memory error"\r
1566 },\r
1567 {\r
1568 0x04,\r
1569 L" Bus time-out"\r
1570 },\r
1571 {\r
1572 0x05,\r
1573 L" I/O Channel Check"\r
1574 },\r
1575 {\r
1576 0x06,\r
1577 L" Software NMI"\r
1578 },\r
1579 {\r
1580 0x07,\r
1581 L" POST Memory Resize"\r
1582 },\r
1583 {\r
1584 0x08,\r
1585 L" POST Error"\r
1586 },\r
1587 {\r
1588 0x09,\r
1589 L" PCI Parity Error"\r
1590 },\r
1591 {\r
1592 0x0A,\r
1593 L" PCI System Error"\r
1594 },\r
1595 {\r
1596 0x0B,\r
1597 L" CPU Failure"\r
1598 },\r
1599 {\r
1600 0x0C,\r
1601 L" EISA FailSafe Timer time-out"\r
1602 },\r
1603 {\r
1604 0x0D,\r
1605 L" Correctable memory log disabled"\r
1606 },\r
1607 {\r
1608 0x0E,\r
1609 L" Logging disabled for a specific Event Type"\r
1610 },\r
1611 {\r
1612 0x0F,\r
1613 L" Reserved"\r
1614 },\r
1615 {\r
1616 0x10,\r
1617 L" System Limit Exceeded"\r
1618 },\r
1619 {\r
1620 0x11,\r
1621 L" Asynchronous hardware timer expired and issued a system reset"\r
1622 },\r
1623 {\r
1624 0x12,\r
1625 L" System configuration information"\r
1626 },\r
1627 {\r
1628 0x13,\r
1629 L" Hard-disk information"\r
1630 },\r
1631 {\r
1632 0x14,\r
1633 L" System reconfigured"\r
1634 },\r
1635 {\r
1636 0x15,\r
1637 L" Uncorrectable CPU-complex error"\r
1638 },\r
1639 {\r
1640 0x16,\r
1641 L" Log Area Reset/Cleared"\r
1642 },\r
1643 {\r
1644 0x17,\r
1645 L" System boot"\r
1646 },\r
1647 {\r
1648 0x7F18,\r
1649 L" Unused by SMBIOS specification"\r
1650 },\r
1651 {\r
1652 0xFE80,\r
1653 L" System and OEM specified"\r
1654 },\r
1655 {\r
1656 0xFF,\r
1657 L" End-of-log"\r
1658 },\r
1659};\r
1660\r
1661TABLE_ITEM SELVarDataFormatTypeTable[] = {\r
1662 {\r
1663 0x00,\r
1664 L" None "\r
1665 },\r
1666 {\r
1667 0x01,\r
1668 L" Handle "\r
1669 },\r
1670 {\r
1671 0x02,\r
1672 L" Multiple-Event "\r
1673 },\r
1674 {\r
1675 0x03,\r
1676 L" Multiple-Event Handle "\r
1677 },\r
1678 {\r
1679 0x04,\r
1680 L" POST Results Bitmap "\r
1681 },\r
1682 //\r
1683 // Defined below\r
1684 //\r
1685 {\r
1686 0x05,\r
1687 L" System Management Type"\r
1688 },\r
1689 //\r
1690 // Defined below\r
1691 //\r
1692 {\r
1693 0x06,\r
1694 L" Multiple-Event System Management Type "\r
1695 },\r
1696 {\r
1697 0x7F07,\r
1698 L" Unused "\r
1699 },\r
1700 {\r
1701 0xFF80,\r
1702 L" OEM assigned "\r
1703 },\r
1704};\r
1705\r
1706TABLE_ITEM PostResultsBitmapDw1Table[] = {\r
1707 {\r
1708 0,\r
1709 L" Channel 2 Timer error "\r
1710 },\r
1711 {\r
1712 1,\r
1713 L" Master PIC (8259 #1) error "\r
1714 },\r
1715 {\r
1716 2,\r
1717 L" Slave PIC (8259 #2) error "\r
1718 },\r
1719 {\r
1720 3,\r
1721 L" CMOS Battery Failure "\r
1722 },\r
1723 {\r
1724 4,\r
1725 L" CMOS System Options Not Set "\r
1726 },\r
1727 {\r
1728 5,\r
1729 L" CMOS Checksum Error "\r
1730 },\r
1731 {\r
1732 6,\r
1733 L" CMOS Configuration Error "\r
1734 },\r
1735 {\r
1736 7,\r
1737 L" Mouse and Keyboard Swapped "\r
1738 },\r
1739 {\r
1740 8,\r
1741 L" Keyboard Locked "\r
1742 },\r
1743 {\r
1744 9,\r
1745 L" Keyboard Not Functional "\r
1746 },\r
1747 {\r
1748 10,\r
1749 L" Keyboard Controller Not Functional "\r
1750 },\r
1751 {\r
1752 11,\r
1753 L" CMOS Memory Size Different "\r
1754 },\r
1755 {\r
1756 12,\r
1757 L" Memory Decreased in Size "\r
1758 },\r
1759 {\r
1760 13,\r
1761 L" Cache Memory Error "\r
1762 },\r
1763 {\r
1764 14,\r
1765 L" Floppy Drive 0 Error "\r
1766 },\r
1767 {\r
1768 15,\r
1769 L" Floppy Drive 1 Error "\r
1770 },\r
1771 {\r
1772 16,\r
1773 L" Floppy Controller Failure "\r
1774 },\r
1775 {\r
1776 17,\r
1777 L" Number of ATA Drives Reduced Error "\r
1778 },\r
1779 {\r
1780 18,\r
1781 L" CMOS Time Not Set "\r
1782 },\r
1783 {\r
1784 19,\r
1785 L" DDC Monitor Configuration Change "\r
1786 },\r
1787 {\r
1788 20,\r
1789 L" Reserved, set to 0 "\r
1790 },\r
1791 {\r
1792 21,\r
1793 L" Reserved, set to 0 "\r
1794 },\r
1795 {\r
1796 22,\r
1797 L" Reserved, set to 0 "\r
1798 },\r
1799 {\r
1800 23,\r
1801 L" Reserved, set to 0 "\r
1802 },\r
1803 {\r
1804 24,\r
1805 L" Second DWORD has valid data "\r
1806 },\r
1807 {\r
1808 25,\r
1809 L" Reserved, set to 0 "\r
1810 },\r
1811 {\r
1812 26,\r
1813 L" Reserved, set to 0 "\r
1814 },\r
1815 {\r
1816 27,\r
1817 L" Reserved, set to 0 "\r
1818 },\r
1819 {\r
1820 28,\r
1821 L" Normally 0; available for OEM assignment "\r
1822 },\r
1823 {\r
1824 29,\r
1825 L" Normally 0; available for OEM assignment "\r
1826 },\r
1827 {\r
1828 30,\r
1829 L" Normally 0; available for OEM assignment "\r
1830 },\r
1831 {\r
1832 31,\r
1833 L" Normally 0; available for OEM assignment "\r
1834 },\r
1835};\r
1836\r
1837TABLE_ITEM PostResultsBitmapDw2Table[] = {\r
1838 {\r
1839 0,\r
1840 L" Normally 0; available for OEM assignment "\r
1841 },\r
1842 {\r
1843 1,\r
1844 L" Normally 0; available for OEM assignment "\r
1845 },\r
1846 {\r
1847 2,\r
1848 L" Normally 0; available for OEM assignment "\r
1849 },\r
1850 {\r
1851 3,\r
1852 L" Normally 0; available for OEM assignment "\r
1853 },\r
1854 {\r
1855 4,\r
1856 L" Normally 0; available for OEM assignment "\r
1857 },\r
1858 {\r
1859 5,\r
1860 L" Normally 0; available for OEM assignment "\r
1861 },\r
1862 {\r
1863 6,\r
1864 L" Normally 0; available for OEM assignment "\r
1865 },\r
1866 {\r
1867 7,\r
1868 L" PCI Memory Conflict "\r
1869 },\r
1870 {\r
1871 8,\r
1872 L" PCI I/O Conflict "\r
1873 },\r
1874 {\r
1875 9,\r
1876 L" PCI IRQ Conflict "\r
1877 },\r
1878 {\r
1879 10,\r
1880 L" PNP Memory Conflict "\r
1881 },\r
1882 {\r
1883 11,\r
1884 L" PNP 32 bit Memory Conflict "\r
1885 },\r
1886 {\r
1887 12,\r
1888 L" PNP I/O Conflict "\r
1889 },\r
1890 {\r
1891 13,\r
1892 L" PNP IRQ Conflict "\r
1893 },\r
1894 {\r
1895 14,\r
1896 L" PNP DMA Conflict "\r
1897 },\r
1898 {\r
1899 15,\r
1900 L" Bad PNP Serial ID Checksum "\r
1901 },\r
1902 {\r
1903 16,\r
1904 L" Bad PNP Resource Data Checksum "\r
1905 },\r
1906 {\r
1907 17,\r
1908 L" Static Resource Conflict "\r
1909 },\r
1910 {\r
1911 18,\r
1912 L" NVRAM Checksum Error, NVRAM Cleared "\r
1913 },\r
1914 {\r
1915 19,\r
1916 L" System Board Device Resource Conflict "\r
1917 },\r
1918 {\r
1919 20,\r
1920 L" Primary Output Device Not Found "\r
1921 },\r
1922 {\r
1923 21,\r
1924 L" Primary Input Device Not Found "\r
1925 },\r
1926 {\r
1927 22,\r
1928 L" Primary Boot Device Not Found "\r
1929 },\r
1930 {\r
1931 23,\r
1932 L" NVRAM Cleared By Jumper "\r
1933 },\r
1934 {\r
1935 24,\r
1936 L" NVRAM Data Invalid, NVRAM Cleared "\r
1937 },\r
1938 {\r
1939 25,\r
1940 L" FDC Resource Conflict "\r
1941 },\r
1942 {\r
1943 26,\r
1944 L" Primary ATA Controller Resource Conflict "\r
1945 },\r
1946 {\r
1947 27,\r
1948 L" Secondary ATA Controller Resource Conflict "\r
1949 },\r
1950 {\r
1951 28,\r
1952 L" Parallel Port Resource Conflict "\r
1953 },\r
1954 {\r
1955 29,\r
1956 L" Serial Port 1 Resource Conflict "\r
1957 },\r
1958 {\r
1959 30,\r
1960 L" Serial Port 2 Resource Conflict "\r
1961 },\r
1962 {\r
1963 31,\r
1964 L" Audio Resource Conflict "\r
1965 },\r
1966};\r
1967\r
1968TABLE_ITEM SELSysManagementTypesTable[] = {\r
1969 {\r
1970 0x01,\r
1971 L" +2.5V Out of range, #2 "\r
1972 },\r
1973 {\r
1974 0x02,\r
1975 L" +3.3V Out of range "\r
1976 },\r
1977 {\r
1978 0x03,\r
1979 L" +5V Out of range "\r
1980 },\r
1981 {\r
1982 0x04,\r
1983 L" -5V Out of range "\r
1984 },\r
1985 {\r
1986 0x05,\r
1987 L" +12V Out of range "\r
1988 },\r
1989 {\r
1990 0x06,\r
1991 L" -12V Out of range "\r
1992 },\r
1993 {\r
1994 0x0F07,\r
1995 L" Reserved for future out-of-range voltage levels "\r
1996 },\r
1997 {\r
1998 0x10,\r
1999 L" System board temperature out of range "\r
2000 },\r
2001 {\r
2002 0x11,\r
2003 L" Processor #1 temperature out of range "\r
2004 },\r
2005 {\r
2006 0x12,\r
2007 L" Processor #2 temperature out of range "\r
2008 },\r
2009 {\r
2010 0x13,\r
2011 L" Processor #3 temperature out of range "\r
2012 },\r
2013 {\r
2014 0x14,\r
2015 L" Processor #4 temperature out of range "\r
2016 },\r
2017 {\r
2018 0x1F15,\r
2019 L" Reserved for future out-of-range temperatures"\r
2020 },\r
2021 {\r
2022 0x2720,\r
2023 L" Fan n (n = 0 to 7) Out of range "\r
2024 },\r
2025 {\r
2026 0x2F28,\r
2027 L" Reserved for future assignment via this specification "\r
2028 },\r
2029 {\r
2030 0x30,\r
2031 L" Chassis secure switch activated "\r
2032 },\r
2033};\r
2034\r
2035TABLE_ITEM PMALocationTable[] = {\r
2036 {\r
2037 0x01,\r
2038 L" Other"\r
2039 },\r
2040 {\r
2041 0x02,\r
2042 L" Unknown"\r
2043 },\r
2044 {\r
2045 0x03,\r
2046 L" System board or motherboard"\r
2047 },\r
2048 {\r
2049 0x04,\r
2050 L" ISA add-on card"\r
2051 },\r
2052 {\r
2053 0x05,\r
2054 L" EISA add-on card"\r
2055 },\r
2056 {\r
2057 0x06,\r
2058 L" PCI add-on card"\r
2059 },\r
2060 {\r
2061 0x07,\r
2062 L" MCA add-on card"\r
2063 },\r
2064 {\r
2065 0x08,\r
2066 L" PCMCIA add-on card"\r
2067 },\r
2068 {\r
2069 0x09,\r
2070 L" Proprietary add-on card"\r
2071 },\r
2072 {\r
2073 0x0A,\r
2074 L" NuBus"\r
2075 },\r
2076 {\r
2077 0xA0,\r
2078 L" PC-98/C20 add-on card"\r
2079 },\r
2080 {\r
2081 0xA1,\r
2082 L" PC-98/C24 add-on card"\r
2083 },\r
2084 {\r
2085 0xA2,\r
2086 L" PC-98/E add-on card"\r
2087 },\r
2088 {\r
2089 0xA3,\r
2090 L" PC-98/Local bus add-on card"\r
2091 }\r
2092};\r
2093\r
2094TABLE_ITEM PMAUseTable[] = {\r
2095 {\r
2096 0x01,\r
2097 L" Other"\r
2098 },\r
2099 {\r
2100 0x02,\r
2101 L" Unknown"\r
2102 },\r
2103 {\r
2104 0x03,\r
2105 L" System memory"\r
2106 },\r
2107 {\r
2108 0x04,\r
2109 L" Video memory"\r
2110 },\r
2111 {\r
2112 0x05,\r
2113 L" Flash memory"\r
2114 },\r
2115 {\r
2116 0x06,\r
2117 L" Non-volatile RAM"\r
2118 },\r
2119 {\r
2120 0x07,\r
2121 L" Cache memory"\r
2122 }\r
2123};\r
2124\r
2125TABLE_ITEM PMAErrorCorrectionTypesTable[] = {\r
2126 {\r
2127 0x01,\r
2128 L" Other"\r
2129 },\r
2130 {\r
2131 0x02,\r
2132 L" Unknown"\r
2133 },\r
2134 {\r
2135 0x03,\r
2136 L" None"\r
2137 },\r
2138 {\r
2139 0x04,\r
2140 L" Parity"\r
2141 },\r
2142 {\r
2143 0x05,\r
2144 L" Single-bit ECC"\r
2145 },\r
2146 {\r
2147 0x06,\r
2148 L" Multi-bit ECC"\r
2149 },\r
2150 {\r
2151 0x07,\r
2152 L" CRC"\r
2153 }\r
2154};\r
2155\r
2156TABLE_ITEM MemoryDeviceFormFactorTable[] = {\r
2157 {\r
2158 0x01,\r
2159 L" Other"\r
2160 },\r
2161 {\r
2162 0x02,\r
2163 L" Unknown"\r
2164 },\r
2165 {\r
2166 0x03,\r
2167 L" SIMM"\r
2168 },\r
2169 {\r
2170 0x04,\r
2171 L" SIP"\r
2172 },\r
2173 {\r
2174 0x05,\r
2175 L" Chip"\r
2176 },\r
2177 {\r
2178 0x06,\r
2179 L" DIP"\r
2180 },\r
2181 {\r
2182 0x07,\r
2183 L" ZIP"\r
2184 },\r
2185 {\r
2186 0x08,\r
2187 L" Proprietary Card"\r
2188 },\r
2189 {\r
2190 0x09,\r
2191 L" DIMM"\r
2192 },\r
2193 {\r
2194 0x0A,\r
2195 L" TSOP"\r
2196 },\r
2197 {\r
2198 0x0B,\r
2199 L" Row of chips"\r
2200 },\r
2201 {\r
2202 0x0C,\r
2203 L" RIMM"\r
2204 },\r
2205 {\r
2206 0x0D,\r
2207 L" SODIMM"\r
2208 },\r
2209 {\r
2210 0x0E,\r
2211 L" SRIMM"\r
2212 },\r
2213 {\r
2214 0x0F,\r
2215 L" FB-DIMM"\r
2216 }\r
2217};\r
2218\r
2219TABLE_ITEM MemoryDeviceTypeTable[] = {\r
2220 {\r
2221 0x01,\r
2222 L" Other"\r
2223 },\r
2224 {\r
2225 0x02,\r
2226 L" Unknown"\r
2227 },\r
2228 {\r
2229 0x03,\r
2230 L" DRAM"\r
2231 },\r
2232 {\r
2233 0x04,\r
2234 L" EDRAM"\r
2235 },\r
2236 {\r
2237 0x05,\r
2238 L" VRAM"\r
2239 },\r
2240 {\r
2241 0x06,\r
2242 L" SRAM"\r
2243 },\r
2244 {\r
2245 0x07,\r
2246 L" RAM"\r
2247 },\r
2248 {\r
2249 0x08,\r
2250 L" ROM"\r
2251 },\r
2252 {\r
2253 0x09,\r
2254 L" FLASH"\r
2255 },\r
2256 {\r
2257 0x0A,\r
2258 L" EEPROM"\r
2259 },\r
2260 {\r
2261 0x0B,\r
2262 L" FEPROM"\r
2263 },\r
2264 {\r
2265 0x0C,\r
2266 L" EPROM"\r
2267 },\r
2268 {\r
2269 0x0D,\r
2270 L" CDRAM"\r
2271 },\r
2272 {\r
2273 0x0E,\r
2274 L" 3DRAM"\r
2275 },\r
2276 {\r
2277 0x0F,\r
2278 L" SDRAM"\r
2279 },\r
2280 {\r
2281 0x10,\r
2282 L" SGRAM"\r
2283 },\r
2284 {\r
2285 0x11,\r
2286 L" RDRAM"\r
2287 },\r
2288 {\r
2289 0x12,\r
2290 L" DDR"\r
2291 },\r
2292 {\r
2293 0x13,\r
2294 L" DDR2"\r
2295 },\r
2296 {\r
2297 0x14,\r
2298 L" DDR2 FB-DIMM"\r
2299 },\r
2300 {\r
2301 0x18,\r
2302 L" DDR3"\r
2303 },\r
2304 {\r
2305 0x19,\r
2306 L" FBD2"\r
21cc5ebf
SEHM
2307 },
2308 {
2309 0x1A,
2310 L" DDR4"
2311 },
2312 {
2313 0x1B,
2314 L" LPDDR"
2315 },
2316 {
2317 0x1C,
2318 L" LPDDR2"
2319 },
2320 {
2321 0x1D,
2322 L" LPDDR3"
2323 },
2324 {
2325 0x1E,
2326 L" LPDDR4"
5d73d92f 2327 }\r
2328};\r
2329\r
2330TABLE_ITEM MemoryDeviceTypeDetailTable[] = {\r
2331 {\r
2332 1,\r
2333 L" Other"\r
2334 },\r
2335 {\r
2336 2,\r
2337 L" Unknown"\r
2338 },\r
2339 {\r
2340 3,\r
2341 L" Fast-paged"\r
2342 },\r
2343 {\r
2344 4,\r
2345 L" Static column"\r
2346 },\r
2347 {\r
2348 5,\r
2349 L" Pseudo-STATIC"\r
2350 },\r
2351 {\r
2352 6,\r
2353 L" RAMBUS "\r
2354 },\r
2355 {\r
2356 7,\r
2357 L" Synchronous"\r
2358 },\r
2359 {\r
2360 8,\r
2361 L" CMOS"\r
2362 },\r
2363 {\r
2364 9,\r
2365 L" EDO"\r
2366 },\r
2367 {\r
2368 10,\r
2369 L" Window DRAM"\r
2370 },\r
2371 {\r
2372 11,\r
2373 L" Cache DRAM"\r
2374 },\r
2375 {\r
2376 12,\r
2377 L" Non-volatile"\r
2378 },\r
187cb3dd
SZ
2379 {\r
2380 13,\r
2381 L" Registered(Buffered)"\r
2382 },\r
2383 {\r
2384 14,\r
2385 L" Unbuffered(Unregistered)"\r
2386 }\r
5d73d92f 2387};\r
2388\r
2389TABLE_ITEM MemoryErrorTypeTable[] = {\r
2390 {\r
2391 0x01,\r
2392 L" Other"\r
2393 },\r
2394 {\r
2395 0x02,\r
2396 L" Unknown"\r
2397 },\r
2398 {\r
2399 0x03,\r
2400 L" OK"\r
2401 },\r
2402 {\r
2403 0x04,\r
2404 L" Bad read"\r
2405 },\r
2406 {\r
2407 0x05,\r
2408 L" Parity error"\r
2409 },\r
2410 {\r
2411 0x06,\r
2412 L" Single-bit error"\r
2413 },\r
2414 {\r
2415 0x07,\r
2416 L" Double-bit error"\r
2417 },\r
2418 {\r
2419 0x08,\r
2420 L" Multi-bit error"\r
2421 },\r
2422 {\r
2423 0x09,\r
2424 L" Nibble error"\r
2425 },\r
2426 {\r
2427 0x0A,\r
2428 L" Checksum error"\r
2429 },\r
2430 {\r
2431 0x0B,\r
2432 L" CRC error"\r
2433 },\r
2434 {\r
2435 0x0C,\r
2436 L" Corrected single-bit error"\r
2437 },\r
2438 {\r
2439 0x0D,\r
2440 L" Corrected error"\r
2441 },\r
2442 {\r
2443 0x0E,\r
2444 L" Uncorrectable error"\r
2445 },\r
2446};\r
2447\r
2448TABLE_ITEM MemoryErrorGranularityTable[] = {\r
2449 {\r
2450 0x01,\r
2451 L" Other"\r
2452 },\r
2453 {\r
2454 0x02,\r
2455 L" Unknown"\r
2456 },\r
2457 {\r
2458 0x03,\r
2459 L" Device level"\r
2460 },\r
2461 {\r
2462 0x04,\r
2463 L" Memory partition level"\r
2464 },\r
2465};\r
2466\r
2467TABLE_ITEM MemoryErrorOperationTable[] = {\r
2468 {\r
2469 0x01,\r
2470 L" Other"\r
2471 },\r
2472 {\r
2473 0x02,\r
2474 L" Unknown"\r
2475 },\r
2476 {\r
2477 0x03,\r
2478 L" Read"\r
2479 },\r
2480 {\r
2481 0x04,\r
2482 L" Write"\r
2483 },\r
2484 {\r
2485 0x05,\r
2486 L" Partial Write"\r
2487 },\r
2488};\r
2489\r
2490TABLE_ITEM PointingDeviceTypeTable[] = {\r
2491 {\r
2492 0x01,\r
2493 L" Other"\r
2494 },\r
2495 {\r
2496 0x02,\r
2497 L" Unknown"\r
2498 },\r
2499 {\r
2500 0x03,\r
2501 L" Mouse"\r
2502 },\r
2503 {\r
2504 0x04,\r
2505 L" Track Ball"\r
2506 },\r
2507 {\r
2508 0x05,\r
2509 L" Track Point"\r
2510 },\r
2511 {\r
2512 0x06,\r
2513 L" Glide Point"\r
2514 },\r
2515 {\r
2516 0x07,\r
2517 L" Touch Pad"\r
2518 },\r
2519};\r
2520\r
2521TABLE_ITEM PointingDeviceInterfaceTable[] = {\r
2522 {\r
2523 0x01,\r
2524 L" Other"\r
2525 },\r
2526 {\r
2527 0x02,\r
2528 L" Unknown"\r
2529 },\r
2530 {\r
2531 0x03,\r
2532 L" Serial"\r
2533 },\r
2534 {\r
2535 0x04,\r
2536 L" PS/2"\r
2537 },\r
2538 {\r
2539 0x05,\r
2540 L" Infrared"\r
2541 },\r
2542 {\r
2543 0x06,\r
2544 L" HP-HIL"\r
2545 },\r
2546 {\r
2547 0x07,\r
2548 L" Bus mouse"\r
2549 },\r
2550 {\r
2551 0x08,\r
2552 L" ADB(Apple Desktop Bus"\r
2553 },\r
2554 {\r
2555 0xA0,\r
2556 L" Bus mouse DB-9"\r
2557 },\r
2558 {\r
2559 0xA1,\r
2560 L" Bus mouse mirco-DIN"\r
2561 },\r
2562 {\r
2563 0xA2,\r
2564 L" USB"\r
2565 },\r
2566};\r
2567\r
2568TABLE_ITEM PBDeviceChemistryTable[] = {\r
2569 {\r
2570 0x01,\r
2571 L" Other "\r
2572 },\r
2573 {\r
2574 0x02,\r
2575 L" Unknown "\r
2576 },\r
2577 {\r
2578 0x03,\r
2579 L" Lead Acid "\r
2580 },\r
2581 {\r
2582 0x04,\r
2583 L" Nickel Cadmium "\r
2584 },\r
2585 {\r
2586 0x05,\r
2587 L" Nickel metal hydride "\r
2588 },\r
2589 {\r
2590 0x06,\r
2591 L" Lithium-ion "\r
2592 },\r
2593 {\r
2594 0x07,\r
2595 L" Zinc air "\r
2596 },\r
2597 {\r
2598 0x08,\r
2599 L" Lithium Polymer "\r
2600 },\r
2601};\r
2602\r
2603TABLE_ITEM VPLocationTable[] = {\r
2604 {\r
2605 0x01,\r
2606 L" Other "\r
2607 },\r
2608 {\r
2609 0x02,\r
2610 L" Unknown "\r
2611 },\r
2612 {\r
2613 0x03,\r
2614 L" OK "\r
2615 },\r
2616 {\r
2617 0x04,\r
2618 L" Non-critical "\r
2619 },\r
2620 {\r
2621 0x05,\r
2622 L" Critical "\r
2623 },\r
2624 {\r
2625 0x06,\r
2626 L" Non-recoverable "\r
2627 },\r
2628};\r
2629\r
2630TABLE_ITEM VPStatusTable[] = {\r
2631 {\r
2632 0x01,\r
2633 L" Other "\r
2634 },\r
2635 {\r
2636 0x02,\r
2637 L" Unknown "\r
2638 },\r
2639 {\r
2640 0x03,\r
2641 L" Processor "\r
2642 },\r
2643 {\r
2644 0x04,\r
2645 L" Disk "\r
2646 },\r
2647 {\r
2648 0x05,\r
2649 L" Peripheral Bay "\r
2650 },\r
2651 {\r
2652 0x06,\r
2653 L" System Management Module "\r
2654 },\r
2655 {\r
2656 0x07,\r
2657 L" Motherboard "\r
2658 },\r
2659 {\r
2660 0x08,\r
2661 L" Memory Module "\r
2662 },\r
2663 {\r
2664 0x09,\r
2665 L" Processor Module "\r
2666 },\r
2667 {\r
2668 0x0A,\r
2669 L" Power Unit "\r
2670 },\r
2671 {\r
2672 0x0B,\r
2673 L" Add-in Card "\r
2674 },\r
2675};\r
2676\r
2677TABLE_ITEM CoolingDeviceStatusTable[] = {\r
2678 {\r
2679 0x01,\r
2680 L" Other "\r
2681 },\r
2682 {\r
2683 0x02,\r
2684 L" Unknown "\r
2685 },\r
2686 {\r
2687 0x03,\r
2688 L" OK "\r
2689 },\r
2690 {\r
2691 0x04,\r
2692 L" Non-critical "\r
2693 },\r
2694 {\r
2695 0x05,\r
2696 L" Critical "\r
2697 },\r
2698 {\r
2699 0x06,\r
2700 L" Non-recoverable "\r
2701 },\r
2702};\r
2703\r
2704TABLE_ITEM CoolingDeviceTypeTable[] = {\r
2705 {\r
2706 0x01,\r
2707 L" Other "\r
2708 },\r
2709 {\r
2710 0x02,\r
2711 L" Unknown "\r
2712 },\r
2713 {\r
2714 0x03,\r
2715 L" Fan "\r
2716 },\r
2717 {\r
2718 0x04,\r
2719 L" Centrifugal Blower "\r
2720 },\r
2721 {\r
2722 0x05,\r
2723 L" Chip Fan "\r
2724 },\r
2725 {\r
2726 0x06,\r
2727 L" Cabinet Fan "\r
2728 },\r
2729 {\r
2730 0x07,\r
2731 L" Power Supply Fan "\r
2732 },\r
2733 {\r
2734 0x08,\r
2735 L" Heat Pipe "\r
2736 },\r
2737 {\r
2738 0x09,\r
2739 L" Integrated Refrigeration "\r
2740 },\r
2741 {\r
d63d2210 2742 0x10,\r
5d73d92f 2743 L" Active Cooling "\r
2744 },\r
2745 {\r
d63d2210 2746 0x11,\r
5d73d92f 2747 L" Passive Cooling "\r
2748 },\r
2749};\r
2750\r
2751TABLE_ITEM TemperatureProbeStatusTable[] = {\r
2752 {\r
2753 0x01,\r
2754 L" Other "\r
2755 },\r
2756 {\r
2757 0x02,\r
2758 L" Unknown "\r
2759 },\r
2760 {\r
2761 0x03,\r
2762 L" OK "\r
2763 },\r
2764 {\r
2765 0x04,\r
2766 L" Non-critical "\r
2767 },\r
2768 {\r
2769 0x05,\r
2770 L" Critical "\r
2771 },\r
2772 {\r
2773 0x06,\r
2774 L" Non-recoverable "\r
2775 },\r
2776};\r
2777\r
2778TABLE_ITEM TemperatureProbeLocTable[] = {\r
2779 {\r
2780 0x01,\r
2781 L" Other "\r
2782 },\r
2783 {\r
2784 0x02,\r
2785 L" Unknown "\r
2786 },\r
2787 {\r
2788 0x03,\r
2789 L" Processor "\r
2790 },\r
2791 {\r
2792 0x04,\r
2793 L" Disk "\r
2794 },\r
2795 {\r
2796 0x05,\r
2797 L" Peripheral Bay "\r
2798 },\r
2799 {\r
2800 0x06,\r
2801 L" System Management Module "\r
2802 },\r
2803 {\r
2804 0x07,\r
2805 L" Motherboard "\r
2806 },\r
2807 {\r
2808 0x08,\r
2809 L" Memory Module "\r
2810 },\r
2811 {\r
2812 0x09,\r
2813 L" Processor Module "\r
2814 },\r
2815 {\r
2816 0x0A,\r
2817 L" Power Unit "\r
2818 },\r
2819 {\r
2820 0x0B,\r
2821 L" Add-in Card "\r
2822 },\r
2823};\r
2824\r
2825TABLE_ITEM ECPStatusTable[] = {\r
2826 {\r
2827 0x01,\r
2828 L" Other "\r
2829 },\r
2830 {\r
2831 0x02,\r
2832 L" Unknown "\r
2833 },\r
2834 {\r
2835 0x03,\r
2836 L" OK "\r
2837 },\r
2838 {\r
2839 0x04,\r
2840 L" Non-critical "\r
2841 },\r
2842 {\r
2843 0x05,\r
2844 L" Critical "\r
2845 },\r
2846 {\r
2847 0x06,\r
2848 L" Non-recoverable "\r
2849 },\r
2850};\r
2851\r
2852TABLE_ITEM ECPLocTable[] = {\r
2853 {\r
2854 0x01,\r
2855 L" Other "\r
2856 },\r
2857 {\r
2858 0x02,\r
2859 L" Unknown "\r
2860 },\r
2861 {\r
2862 0x03,\r
2863 L" Processor "\r
2864 },\r
2865 {\r
2866 0x04,\r
2867 L" Disk "\r
2868 },\r
2869 {\r
2870 0x05,\r
2871 L" Peripheral Bay "\r
2872 },\r
2873 {\r
2874 0x06,\r
2875 L" System Management Module "\r
2876 },\r
2877 {\r
2878 0x07,\r
2879 L" Motherboard "\r
2880 },\r
2881 {\r
2882 0x08,\r
2883 L" Memory Module "\r
2884 },\r
2885 {\r
2886 0x09,\r
2887 L" Processor Module "\r
2888 },\r
2889 {\r
2890 0x0A,\r
2891 L" Power Unit "\r
2892 },\r
2893 {\r
2894 0x0B,\r
2895 L" Add-in Card "\r
2896 },\r
2897};\r
2898\r
2899TABLE_ITEM MDTypeTable[] = {\r
2900 {\r
2901 0x01,\r
2902 L" Other "\r
2903 },\r
2904 {\r
2905 0x02,\r
2906 L" Unknown "\r
2907 },\r
2908 {\r
2909 0x03,\r
2910 L" National Semiconductor LM75 "\r
2911 },\r
2912 {\r
2913 0x04,\r
2914 L" National Semiconductor LM78 "\r
2915 },\r
2916 {\r
2917 0x05,\r
2918 L" National Semiconductor LM79 "\r
2919 },\r
2920 {\r
2921 0x06,\r
2922 L" National Semiconductor LM80 "\r
2923 },\r
2924 {\r
2925 0x07,\r
2926 L" National Semiconductor LM81 "\r
2927 },\r
2928 {\r
2929 0x08,\r
2930 L" Analog Devices ADM9240 "\r
2931 },\r
2932 {\r
2933 0x09,\r
2934 L" Dallas Semiconductor DS1780 "\r
2935 },\r
2936 {\r
2937 0x0A,\r
2938 L" Maxim 1617 "\r
2939 },\r
2940 {\r
2941 0x0B,\r
2942 L" Genesys GL518SM "\r
2943 },\r
2944 {\r
2945 0x0C,\r
2946 L" Winbond W83781D "\r
2947 },\r
2948 {\r
2949 0x0D,\r
2950 L" Holtek HT82H791 "\r
2951 },\r
2952};\r
2953\r
2954TABLE_ITEM MDAddressTypeTable[] = {\r
2955 {\r
2956 0x01,\r
2957 L" Other "\r
2958 },\r
2959 {\r
2960 0x02,\r
2961 L" Unknown "\r
2962 },\r
2963 {\r
2964 0x03,\r
2965 L" I/O Port "\r
2966 },\r
2967 {\r
2968 0x04,\r
2969 L" Memory "\r
2970 },\r
2971 {\r
2972 0x05,\r
2973 L" SM Bus "\r
2974 },\r
2975};\r
2976\r
2977TABLE_ITEM MemoryChannelTypeTable[] = {\r
2978 {\r
2979 0x01,\r
2980 L" Other "\r
2981 },\r
2982 {\r
2983 0x02,\r
2984 L" Unknown "\r
2985 },\r
2986 {\r
2987 0x03,\r
2988 L" RamBus "\r
2989 },\r
2990 {\r
2991 0x04,\r
2992 L" SyncLink "\r
2993 },\r
2994};\r
2995\r
2996TABLE_ITEM IPMIDIBMCInterfaceTypeTable[] = {\r
2997 {\r
2998 0x00,\r
2999 L" Unknown "\r
3000 },\r
3001 {\r
3002 0x01,\r
3003 L" KCS: Keyboard Controller Style "\r
3004 },\r
3005 {\r
3006 0x02,\r
3007 L" SMIC: Server Management Interface Chip "\r
3008 },\r
3009 {\r
3010 0x03,\r
3011 L" BT: Block Transfer "\r
3012 },\r
3013 {\r
3014 0xFF04,\r
3015 L" Reserved for future assignment by this specification "\r
3016 },\r
3017};\r
3018\r
3019TABLE_ITEM StructureTypeInfoTable[] = {\r
3020 {\r
3021 0,\r
3022 L" BIOS Information"\r
3023 },\r
3024 {\r
3025 1,\r
3026 L" System Information"\r
3027 },\r
3028 {\r
3029 2,\r
3030 L" Base Board Information"\r
3031 },\r
3032 {\r
3033 3,\r
3034 L" System Enclosure"\r
3035 },\r
3036 {\r
3037 4,\r
3038 L" Processor Information"\r
3039 },\r
3040 {\r
3041 5,\r
3042 L" Memory Controller Information "\r
3043 },\r
3044 {\r
3045 6,\r
3046 L" Memory Module Information "\r
3047 },\r
3048 {\r
3049 7,\r
3050 L" Cache Information "\r
3051 },\r
3052 {\r
3053 8,\r
3054 L" Port Connector Information "\r
3055 },\r
3056 {\r
3057 9,\r
3058 L" System Slots "\r
3059 },\r
3060 {\r
3061 10,\r
3062 L" On Board Devices Information "\r
3063 },\r
3064 {\r
3065 11,\r
3066 L" OEM Strings"\r
3067 },\r
3068 {\r
3069 12,\r
3070 L" System Configuration Options "\r
3071 },\r
3072 {\r
3073 13,\r
3074 L" BIOS Language Information "\r
3075 },\r
3076 {\r
3077 14,\r
3078 L" Group Associations "\r
3079 },\r
3080 {\r
3081 15,\r
3082 L" System Event Log "\r
3083 },\r
3084 {\r
3085 16,\r
3086 L" Physical Memory Array "\r
3087 },\r
3088 {\r
3089 17,\r
3090 L" Memory Device "\r
3091 },\r
3092 {\r
3093 18,\r
3094 L" 32-bit Memory Error Information "\r
3095 },\r
3096 {\r
3097 19,\r
3098 L" Memory Array Mapped Address "\r
3099 },\r
3100 {\r
3101 20,\r
3102 L" Memory Device Mapped Address "\r
3103 },\r
3104 {\r
3105 21,\r
3106 L" Built-in Pointing Device "\r
3107 },\r
3108 {\r
3109 22,\r
3110 L" Portable Battery "\r
3111 },\r
3112 {\r
3113 23,\r
3114 L" System Reset "\r
3115 },\r
3116 {\r
3117 24,\r
3118 L" Hardware Security "\r
3119 },\r
3120 {\r
3121 25,\r
3122 L" System Power Controls "\r
3123 },\r
3124 {\r
3125 26,\r
3126 L" Voltage Probe "\r
3127 },\r
3128 {\r
3129 27,\r
3130 L" Cooling Device "\r
3131 },\r
3132 {\r
3133 28,\r
3134 L" Temperature Probe "\r
3135 },\r
3136 {\r
3137 29,\r
3138 L" Electrical Current Probe "\r
3139 },\r
3140 {\r
3141 30,\r
3142 L" Out-of-Band Remote Access "\r
3143 },\r
3144 {\r
3145 31,\r
3146 L" Boot Integrity Services (BIS) Entry Point"\r
3147 },\r
3148 {\r
3149 32,\r
3150 L" System Boot Information "\r
3151 },\r
3152 {\r
3153 33,\r
3154 L" 64-bit Memory Error Information "\r
3155 },\r
3156 {\r
3157 34,\r
3158 L" Management Device "\r
3159 },\r
3160 {\r
3161 35,\r
3162 L" Management Device Component "\r
3163 },\r
3164 {\r
3165 36,\r
3166 L" Management Device Threshold Data "\r
3167 },\r
3168 {\r
3169 37,\r
3170 L" Memory Channel "\r
3171 },\r
3172 {\r
3173 38,\r
3174 L" IPMI Device Information "\r
3175 },\r
3176 {\r
3177 39,\r
3178 L" System Power Supply"\r
3179 },\r
187cb3dd
SZ
3180 {\r
3181 40,\r
3182 L" Additional Information"\r
3183 },\r
3184 {\r
3185 41,\r
3186 L" Onboard Devices Extended Information"\r
3187 },\r
3188 {\r
3189 42,\r
3190 L" Management Controller Host Interface"\r
3191 },\r
5d73d92f 3192 {\r
3193 0x7E,\r
3194 L" Inactive"\r
3195 },\r
3196 {\r
3197 0x7F,\r
3198 L" End-of-Table "\r
3199 },\r
3200};\r
3201\r
3202\r
33c031ee 3203/**\r
3204 Given a table and a Key, return the responding info.\r
5d73d92f 3205\r
3206 Notes:\r
3207 Table[Index].Key is change from UINT8 to UINT16,\r
3208 in order to deal with "0xaa - 0xbb".\r
3209\r
3210 For example:\r
3211 DisplaySELVariableDataFormatTypes(UINT8 Type, UINT8 Option)\r
3212 has a item:\r
3213 "0x07-0x7F, Unused"\r
3214 Now define Key = 0x7F07, that is to say: High = 0x7F, Low = 0x07.\r
3215 Then all the Key Value between Low and High gets the same string\r
3216 L"Unused".\r
3217\r
4ff7e37b
ED
3218 @param[in] Table The begin address of table.\r
3219 @param[in] Number The number of table items.\r
3220 @param[in] Key The query Key.\r
3221 @param[in, out] Info Input as empty buffer; output as data buffer.\r
3222 @param[in] InfoLen The max number of characters for Info.\r
33c031ee 3223\r
3224 @return the found Key and Info is valid.\r
3225 @retval QUERY_TABLE_UNFOUND and Info should be NULL.\r
5d73d92f 3226**/\r
33c031ee 3227UINT8\r
3228QueryTable (\r
3229 IN TABLE_ITEM *Table,\r
3230 IN UINTN Number,\r
3231 IN UINT8 Key,\r
3232 IN OUT CHAR16 *Info,\r
3233 IN UINTN InfoLen\r
3234 )\r
5d73d92f 3235{\r
3236 UINTN Index;\r
3237 //\r
3238 // High byte and Low byte of word\r
3239 //\r
3240 UINT8 High;\r
3241 UINT8 Low;\r
3242\r
3243 for (Index = 0; Index < Number; Index++) {\r
3244 High = (UINT8) (Table[Index].Key >> 8);\r
3245 Low = (UINT8) (Table[Index].Key & 0x00FF);\r
99ab5fc3 3246\r
5d73d92f 3247 //\r
3248 // Check if Key is in the range\r
99ab5fc3 3249 // or if Key == Value in the table\r
5d73d92f 3250 //\r
99ab5fc3
JC
3251 if ((High > Low && Key >= Low && Key <= High) \r
3252 || (Table[Index].Key == Key)) {\r
4dc0d578
QS
3253 StrnCpyS (Info, InfoLen, Table[Index].Info, InfoLen - 1);\r
3254 StrnCatS (Info, InfoLen, L"\n", InfoLen - 1 - StrLen(Info));\r
5d73d92f 3255 return Key;\r
3256 }\r
3257 }\r
3258\r
e75390f0 3259 StrCpyS (Info, InfoLen, L"Undefined Value\n");\r
5d73d92f 3260 return QUERY_TABLE_UNFOUND;\r
3261}\r
3262\r
a1d4bfcc 3263/**\r
3264 Given a table of bit info and a Key, return the responding info to the Key.\r
3265\r
3266 @param[in] Table Point to a table which maintains a map of 'bit' to 'message'.\r
3267 @param[in] Number Number of table items.\r
3268 @param[in] Bits The Key of query the bit map information.\r
3269**/\r
5d73d92f 3270VOID\r
3271PrintBitsInfo (\r
3272 IN TABLE_ITEM *Table,\r
3273 IN UINTN Number,\r
3274 IN UINT32 Bits\r
3275 )\r
5d73d92f 3276{\r
3277 //\r
3278 // Get certain bit of 'Value':\r
3279 //\r
3280#define BIT(Value, bit) ((Value) & ((UINT32) 1) << (bit))\r
3281 //\r
3282 // Clear certain bit of 'Value':\r
3283 //\r
3284#define CLR_BIT(Value, bit) ((Value) -= (BIT (Value, bit)))\r
3285\r
3286 UINTN Index;\r
3287 UINT32 Value;\r
3288 BOOLEAN NoInfo;\r
3289\r
3290 NoInfo = TRUE;\r
3291 Value = Bits;\r
3292 //\r
3293 // query the table and print information\r
3294 //\r
3295 for (Index = 0; Index < Number; Index++) {\r
3296 if (BIT (Value, Table[Index].Key) != 0) {\r
3297 Print (Table[Index].Info);\r
3298 Print (L" | ");\r
3299\r
3300 NoInfo = FALSE;\r
3301 //\r
3302 // clear the bit, for reserved bits test\r
3303 //\r
3304 CLR_BIT (Value, Table[Index].Key);\r
3305 }\r
3306 }\r
3307\r
3308 if (NoInfo) {\r
3309 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_NO_INFO), gShellDebug1HiiHandle);\r
3310 }\r
3311\r
3312 if (Value != 0) {\r
3313 ShellPrintHiiEx(-1,-1,NULL,\r
3314 STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_RSVD_BITS_SET),\r
3315 gShellDebug1HiiHandle,\r
3316 Value\r
3317 );\r
3318 }\r
3319\r
3320 Print (L"\n");\r
3321}\r
3322//\r
3323// //////////////////////////////////////////////////////////////////\r
3324//\r
3325// Following uses QueryTable functions to simplify the coding.\r
3326// QueryTable(), PrintBitsInfo()\r
3327//\r
3328//\r
3329#define PRINT_TABLE_ITEM(Table, Key) \\r
3330 do { \\r
3331 UINTN Num; \\r
3332 CHAR16 Info[66]; \\r
3333 Num = sizeof (Table) / sizeof (TABLE_ITEM); \\r
3334 ZeroMem (Info, sizeof (Info)); \\r
33c031ee 3335 QueryTable (Table, Num, Key, Info, sizeof(Info)/sizeof(Info[0])); \\r
5d73d92f 3336 Print (Info); \\r
3337 } while (0);\r
3338\r
3339#define PRINT_BITS_INFO(Table, bits) \\r
3340 do { \\r
3341 UINTN Num; \\r
3342 Num = sizeof (Table) / sizeof (TABLE_ITEM); \\r
3343 PrintBitsInfo (Table, Num, (UINT32) bits); \\r
3344 } while (0);\r
3345\r
a1d4bfcc 3346/**\r
3347 Display System Information (Type 1) Type.\r
3348\r
3349 @param[in] Type The key of the structure.\r
3350 @param[in] Option The optional information.\r
3351**/\r
5d73d92f 3352VOID\r
3353DisplaySystemWakeupType (\r
a1d4bfcc 3354 IN UINT8 Type,\r
3355 IN UINT8 Option\r
5d73d92f 3356 )\r
3357{\r
3358 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_SYSTEM_WAKEUP_TYPE), gShellDebug1HiiHandle);\r
3359 PRINT_INFO_OPTION (Type, Option);\r
3360 PRINT_TABLE_ITEM (SystemWakeupTypeTable, Type);\r
3361}\r
a1d4bfcc 3362\r
187cb3dd
SZ
3363/**\r
3364 Display Base Board (Type 2) Feature Flags.\r
3365\r
3366 @param[in] FeatureFlags The key of the structure.\r
3367 @param[in] Option The optional information.\r
3368**/\r
3369VOID\r
3370DisplayBaseBoardFeatureFlags (\r
3371 IN UINT8 FeatureFlags,\r
3372 IN UINT8 Option\r
3373 )\r
3374{\r
3375 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_BASE_BOARD_FEATURE_FLAGS), gShellDebug1HiiHandle);\r
3376 PRINT_INFO_OPTION (FeatureFlags, Option);\r
3377 PRINT_BITS_INFO (BaseBoardFeatureFlagsTable, FeatureFlags);\r
3378}\r
3379\r
3380/**\r
3381 Display Base Board (Type 2) Board Type.\r
3382\r
3383 @param[in] Type The key of the structure.\r
3384 @param[in] Option The optional information.\r
3385**/\r
3386VOID\r
3387DisplayBaseBoardBoardType(\r
3388 IN UINT8 Type,\r
3389 IN UINT8 Option\r
3390 )\r
3391{\r
3392 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_BASE_BOARD_BOARD_TYPE), gShellDebug1HiiHandle);\r
3393 PRINT_INFO_OPTION (Type, Option);\r
3394 PRINT_TABLE_ITEM (BaseBoardBoardTypeTable, Type);\r
3395}\r
3396\r
a1d4bfcc 3397/**\r
3398 Display System Enclosure (Type 3) Enclosure Type.\r
3399\r
3400 @param[in] Type The key of the structure.\r
3401 @param[in] Option The optional information.\r
3402**/\r
5d73d92f 3403VOID\r
3404DisplaySystemEnclosureType (\r
a1d4bfcc 3405 IN UINT8 Type,\r
3406 IN UINT8 Option\r
5d73d92f 3407 )\r
3408{\r
3409 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_SYSTEM_CHASSIS_TYPE), gShellDebug1HiiHandle);\r
3410 PRINT_INFO_OPTION (Type, Option);\r
3411 //\r
3412 // query table and print info\r
3413 //\r
3414 PRINT_TABLE_ITEM (SystemEnclosureTypeTable, Type);\r
3415\r
3416 if (BIT (Type, 7) != 0) {\r
3417 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_CHASSIS_LOCK_PRESENT), gShellDebug1HiiHandle);\r
3418 }\r
3419}\r
3420\r
a1d4bfcc 3421/**\r
3422 Display System Enclosure (Type 3) Enclosure Status.\r
3423\r
3424 @param[in] Status The key of the structure.\r
3425 @param[in] Option The optional information.\r
3426**/\r
5d73d92f 3427VOID\r
3428DisplaySystemEnclosureStatus (\r
a1d4bfcc 3429 IN UINT8 Status,\r
3430 IN UINT8 Option\r
5d73d92f 3431 )\r
3432{\r
3433 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_SYSTEM_CHASSIS_STATUS), gShellDebug1HiiHandle);\r
3434 PRINT_INFO_OPTION (Status, Option);\r
3435 PRINT_TABLE_ITEM (SystemEnclosureStatusTable, Status);\r
3436}\r
3437\r
a1d4bfcc 3438/**\r
3439 Display System Enclosure (Type 3) Security Status.\r
3440\r
3441 @param[in] Status The key of the structure.\r
3442 @param[in] Option The optional information.\r
3443**/\r
5d73d92f 3444VOID\r
3445DisplaySESecurityStatus (\r
a1d4bfcc 3446 IN UINT8 Status,\r
3447 IN UINT8 Option\r
5d73d92f 3448 )\r
3449{\r
3450 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_SYSTEM_CHASSIS_SECURITY), gShellDebug1HiiHandle);\r
3451 PRINT_INFO_OPTION (Status, Option);\r
3452 PRINT_TABLE_ITEM (SESecurityStatusTable, Status);\r
3453}\r
a1d4bfcc 3454\r
3455/**\r
3456 Display Processor Information (Type 4) Type.\r
3457\r
3458 @param[in] Type The key of the structure.\r
3459 @param[in] Option The optional information.\r
3460**/\r
5d73d92f 3461VOID\r
3462DisplayProcessorType (\r
a1d4bfcc 3463 IN UINT8 Type,\r
3464 IN UINT8 Option\r
5d73d92f 3465 )\r
3466{\r
3467 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_PROC_TYPE), gShellDebug1HiiHandle);\r
3468 PRINT_INFO_OPTION (Type, Option);\r
3469 PRINT_TABLE_ITEM (ProcessorTypeTable, Type);\r
3470}\r
3471\r
a1d4bfcc 3472/**\r
3473 Display Processor Information (Type 4) Upgrade.\r
3474\r
3475 @param[in] Upgrade The key of the structure.\r
3476 @param[in] Option The optional information.\r
3477**/\r
5d73d92f 3478VOID\r
3479DisplayProcessorUpgrade (\r
a1d4bfcc 3480 IN UINT8 Upgrade,\r
3481 IN UINT8 Option\r
5d73d92f 3482 )\r
3483{\r
3484 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_PROC_UPDATE), gShellDebug1HiiHandle);\r
3485 PRINT_INFO_OPTION (Upgrade, Option);\r
3486 PRINT_TABLE_ITEM (ProcessorUpgradeTable, Upgrade);\r
3487}\r
a1d4bfcc 3488\r
187cb3dd
SZ
3489/**\r
3490 Display Processor Information (Type 4) Characteristics.\r
3491\r
3492 @param[in] Type The key of the structure.\r
3493 @param[in] Option The optional information.\r
3494**/\r
3495VOID\r
3496DisplayProcessorCharacteristics (\r
3497 IN UINT16 Type,\r
3498 IN UINT8 Option\r
3499 )\r
3500{\r
3501 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_PROC_CHARACTERISTICS), gShellDebug1HiiHandle);\r
3502 PRINT_INFO_OPTION (Type, Option);\r
3503 PRINT_BITS_INFO (ProcessorCharacteristicsTable, Type);\r
3504}\r
3505\r
a1d4bfcc 3506/**\r
3507 Display Memory Controller Information (Type 5) method.\r
3508\r
3509 @param[in] Method The key of the structure.\r
3510 @param[in] Option The optional information.\r
3511**/\r
5d73d92f 3512VOID\r
3513DisplayMcErrorDetectMethod (\r
a1d4bfcc 3514 IN UINT8 Method,\r
3515 IN UINT8 Option\r
5d73d92f 3516 )\r
3517{\r
3518 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MEM_DETECTMETHOD), gShellDebug1HiiHandle);\r
3519 PRINT_INFO_OPTION (Method, Option);\r
3520 PRINT_TABLE_ITEM (McErrorDetectMethodTable, Method);\r
3521}\r
3522\r
a1d4bfcc 3523/**\r
3524 Display Memory Controller Information (Type 5) Capability.\r
3525\r
3526 @param[in] Capability The key of the structure.\r
3527 @param[in] Option The optional information.\r
3528**/\r
5d73d92f 3529VOID\r
3530DisplayMcErrorCorrectCapability (\r
a1d4bfcc 3531 IN UINT8 Capability,\r
3532 IN UINT8 Option\r
5d73d92f 3533 )\r
3534{\r
3535 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MEM_CORRECT_CAPABILITY), gShellDebug1HiiHandle);\r
3536 PRINT_INFO_OPTION (Capability, Option);\r
3537 PRINT_BITS_INFO (McErrorCorrectCapabilityTable, Capability);\r
3538}\r
3539\r
a1d4bfcc 3540/**\r
3541 Display Memory Controller Information (Type 5) Support.\r
3542\r
3543 @param[in] Support The key of the structure.\r
3544 @param[in] Option The optional information.\r
3545**/\r
5d73d92f 3546VOID\r
3547DisplayMcInterleaveSupport (\r
a1d4bfcc 3548 IN UINT8 Support,\r
3549 IN UINT8 Option\r
5d73d92f 3550 )\r
3551{\r
3552 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MEM_INTERLEAVE_SUPPORT), gShellDebug1HiiHandle);\r
3553 PRINT_INFO_OPTION (Support, Option);\r
3554 PRINT_TABLE_ITEM (McInterleaveSupportTable, Support);\r
3555}\r
3556\r
a1d4bfcc 3557/**\r
3558 Display Memory Controller Information (Type 5) speeds.\r
3559\r
3560 @param[in] Speed The key of the structure.\r
3561 @param[in] Option The optional information.\r
3562**/\r
5d73d92f 3563VOID\r
3564DisplayMcMemorySpeeds (\r
a1d4bfcc 3565 IN UINT16 Speed,\r
3566 IN UINT8 Option\r
5d73d92f 3567 )\r
3568{\r
3569 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MEM_MEMORY_SPEED), gShellDebug1HiiHandle);\r
3570 PRINT_INFO_OPTION (Speed, Option);\r
3571 PRINT_BITS_INFO (McMemorySpeedsTable, Speed);\r
3572}\r
3573\r
a1d4bfcc 3574/**\r
3575 Display Memory Controller Information (Type 5) voltage.\r
3576\r
3577 @param[in] Voltage The key of the structure.\r
3578 @param[in] Option The optional information.\r
3579**/\r
5d73d92f 3580VOID\r
3581DisplayMemoryModuleVoltage (\r
a1d4bfcc 3582 IN UINT8 Voltage,\r
3583 IN UINT8 Option\r
5d73d92f 3584 )\r
3585{\r
3586 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_REQUIRED_VOLTAGES), gShellDebug1HiiHandle);\r
3587 PRINT_INFO_OPTION (Voltage, Option);\r
3588 PRINT_BITS_INFO (MemoryModuleVoltageTable, Voltage);\r
3589}\r
a1d4bfcc 3590\r
3591/**\r
3592 Display Memory Module Information (Type 6) type.\r
3593\r
3594 @param[in] Type The key of the structure.\r
3595 @param[in] Option The optional information.\r
3596**/\r
5d73d92f 3597VOID\r
3598DisplayMmMemoryType (\r
a1d4bfcc 3599 IN UINT16 Type,\r
3600 IN UINT8 Option\r
5d73d92f 3601 )\r
3602{\r
3603 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MEM_MODULE_TYPE), gShellDebug1HiiHandle);\r
3604 PRINT_INFO_OPTION (Type, Option);\r
3605 PRINT_BITS_INFO (MmMemoryTypeTable, Type);\r
3606}\r
3607\r
a1d4bfcc 3608/**\r
3609 Display Memory Module Information (Type 6) status.\r
3610\r
3611 @param[in] Status The key of the structure.\r
3612 @param[in] Option The optional information.\r
3613**/\r
5d73d92f 3614VOID\r
3615DisplayMmErrorStatus (\r
a1d4bfcc 3616 IN UINT8 Status,\r
3617 IN UINT8 Option\r
5d73d92f 3618 )\r
3619{\r
3620 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MEM_MODULE_ERROR_STATUS), gShellDebug1HiiHandle);\r
3621 PRINT_INFO_OPTION (Status, Option);\r
3622 PRINT_BITS_INFO (MmErrorStatusTable, Status);\r
3623}\r
a1d4bfcc 3624\r
3625/**\r
3626 Display Cache Information (Type 7) SRAM Type.\r
3627\r
3628 @param[in] Type The key of the structure.\r
3629 @param[in] Option The optional information.\r
3630**/\r
5d73d92f 3631VOID\r
3632DisplayCacheSRAMType (\r
a1d4bfcc 3633 IN UINT16 Type,\r
3634 IN UINT8 Option\r
5d73d92f 3635 )\r
3636{\r
3637 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_CACHE_SRAM_TYPE), gShellDebug1HiiHandle);\r
3638 PRINT_INFO_OPTION ((UINT8) Type, Option);\r
3639 PRINT_BITS_INFO (CacheSRAMTypeTable, (UINT8) Type);\r
3640}\r
3641\r
a1d4bfcc 3642/**\r
3643 Display Cache Information (Type 7) correcting Type.\r
3644\r
3645 @param[in] Type The key of the structure.\r
3646 @param[in] Option The optional information.\r
3647**/\r
5d73d92f 3648VOID\r
3649DisplayCacheErrCorrectingType (\r
a1d4bfcc 3650 IN UINT8 Type,\r
3651 IN UINT8 Option\r
5d73d92f 3652 )\r
3653{\r
3654 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_CACHE_ERROR_CORRECTING), gShellDebug1HiiHandle);\r
3655 PRINT_INFO_OPTION (Type, Option);\r
3656 PRINT_TABLE_ITEM (CacheErrCorrectingTypeTable, Type);\r
3657}\r
3658\r
a1d4bfcc 3659/**\r
3660 Display Cache Information (Type 7) Type.\r
3661\r
3662 @param[in] Type The key of the structure.\r
3663 @param[in] Option The optional information.\r
3664**/\r
5d73d92f 3665VOID\r
3666DisplayCacheSystemCacheType (\r
a1d4bfcc 3667 IN UINT8 Type,\r
3668 IN UINT8 Option\r
5d73d92f 3669 )\r
3670{\r
3671 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_CACHE_SYSTEM_TYPE), gShellDebug1HiiHandle);\r
3672 PRINT_INFO_OPTION (Type, Option);\r
3673 PRINT_TABLE_ITEM (CacheSystemCacheTypeTable, Type);\r
3674}\r
3675\r
a1d4bfcc 3676/**\r
3677 Display Cache Information (Type 7) Associativity.\r
3678\r
3679 @param[in] Associativity The key of the structure.\r
3680 @param[in] Option The optional information.\r
3681**/\r
5d73d92f 3682VOID\r
3683DisplayCacheAssociativity (\r
a1d4bfcc 3684 IN UINT8 Associativity,\r
3685 IN UINT8 Option\r
5d73d92f 3686 )\r
3687{\r
3688 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_CACHE_ASSOCIATIVITY), gShellDebug1HiiHandle);\r
3689 PRINT_INFO_OPTION (Associativity, Option);\r
3690 PRINT_TABLE_ITEM (CacheAssociativityTable, Associativity);\r
3691}\r
a1d4bfcc 3692\r
3693/**\r
3694 Display Port Connector Information (Type 8) type.\r
3695\r
3696 @param[in] Type The key of the structure.\r
3697 @param[in] Option The optional information.\r
3698**/\r
5d73d92f 3699VOID\r
3700DisplayPortConnectorType (\r
a1d4bfcc 3701 IN UINT8 Type,\r
3702 IN UINT8 Option\r
5d73d92f 3703 )\r
3704{\r
3705 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_PORT_CONNECTOR_TYPE), gShellDebug1HiiHandle);\r
3706 PRINT_INFO_OPTION (Type, Option);\r
3707 PRINT_TABLE_ITEM (PortConnectorTypeTable, Type);\r
3708}\r
3709\r
a1d4bfcc 3710/**\r
3711 Display Port Connector Information (Type 8) port type.\r
3712\r
3713 @param[in] Type The key of the structure.\r
3714 @param[in] Option The optional information.\r
3715**/\r
5d73d92f 3716VOID\r
3717DisplayPortType (\r
a1d4bfcc 3718 IN UINT8 Type,\r
3719 IN UINT8 Option\r
5d73d92f 3720 )\r
3721{\r
3722 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_PORT_TYPE), gShellDebug1HiiHandle);\r
3723 PRINT_INFO_OPTION (Type, Option);\r
3724 PRINT_TABLE_ITEM (PortTypeTable, Type);\r
3725}\r
a1d4bfcc 3726\r
3727/**\r
3728 Display System Slots (Type 9) slot type.\r
3729\r
3730 @param[in] Type The key of the structure.\r
3731 @param[in] Option The optional information.\r
3732**/\r
5d73d92f 3733VOID\r
3734DisplaySystemSlotType (\r
a1d4bfcc 3735 IN UINT8 Type,\r
3736 IN UINT8 Option\r
5d73d92f 3737 )\r
3738{\r
3739 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_SYSTEM_SLOT_TYPE), gShellDebug1HiiHandle);\r
3740 PRINT_INFO_OPTION (Type, Option);\r
3741 PRINT_TABLE_ITEM (SystemSlotTypeTable, Type);\r
3742}\r
3743\r
a1d4bfcc 3744/**\r
3745 Display System Slots (Type 9) data bus width.\r
3746\r
3747 @param[in] Width The key of the structure.\r
3748 @param[in] Option The optional information.\r
3749**/\r
5d73d92f 3750VOID\r
3751DisplaySystemSlotDataBusWidth (\r
a1d4bfcc 3752 IN UINT8 Width,\r
3753 IN UINT8 Option\r
5d73d92f 3754 )\r
3755{\r
3756 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_SYSTEM_SLOT_DATA), gShellDebug1HiiHandle);\r
3757 PRINT_INFO_OPTION (Width, Option);\r
3758 PRINT_TABLE_ITEM (SystemSlotDataBusWidthTable, Width);\r
3759}\r
3760\r
a1d4bfcc 3761/**\r
3762 Display System Slots (Type 9) usage information.\r
3763\r
3764 @param[in] Usage The key of the structure.\r
3765 @param[in] Option The optional information.\r
3766**/\r
5d73d92f 3767VOID\r
3768DisplaySystemSlotCurrentUsage (\r
a1d4bfcc 3769 IN UINT8 Usage,\r
3770 IN UINT8 Option\r
5d73d92f 3771 )\r
3772{\r
3773 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_SYSTEM_SLOT_CURRENT_USAGE), gShellDebug1HiiHandle);\r
3774 PRINT_INFO_OPTION (Usage, Option);\r
3775 PRINT_TABLE_ITEM (SystemSlotCurrentUsageTable, Usage);\r
3776}\r
3777\r
a1d4bfcc 3778/**\r
3779 Display System Slots (Type 9) slot length.\r
3780\r
3781 @param[in] Length The key of the structure.\r
3782 @param[in] Option The optional information.\r
3783**/\r
5d73d92f 3784VOID\r
3785DisplaySystemSlotLength (\r
a1d4bfcc 3786 IN UINT8 Length,\r
3787 IN UINT8 Option\r
5d73d92f 3788 )\r
3789{\r
3790 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_SYSTEM_SLOT_LENGTH), gShellDebug1HiiHandle);\r
3791 PRINT_INFO_OPTION (Length, Option);\r
3792 PRINT_TABLE_ITEM (SystemSlotLengthTable, Length);\r
3793}\r
3794\r
a1d4bfcc 3795/**\r
3796 Display System Slots (Type 9) characteristics.\r
3797\r
3798 @param[in] Chara1 The key of the structure.\r
3799 @param[in] Option The optional information.\r
3800**/\r
5d73d92f 3801VOID\r
3802DisplaySlotCharacteristics1 (\r
a1d4bfcc 3803 IN UINT8 Chara1,\r
3804 IN UINT8 Option\r
5d73d92f 3805 )\r
3806{\r
3807 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_SLOT_CHARACTERISTICS), gShellDebug1HiiHandle);\r
3808 PRINT_INFO_OPTION (Chara1, Option);\r
3809 PRINT_BITS_INFO (SlotCharacteristics1Table, Chara1);\r
3810}\r
3811\r
a1d4bfcc 3812/**\r
3813 Display System Slots (Type 9) characteristics.\r
3814\r
3815 @param[in] Chara2 The key of the structure.\r
3816 @param[in] Option The optional information.\r
3817**/\r
5d73d92f 3818VOID\r
3819DisplaySlotCharacteristics2 (\r
a1d4bfcc 3820 IN UINT8 Chara2,\r
3821 IN UINT8 Option\r
5d73d92f 3822 )\r
3823{\r
3824 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_SLOT_CHARACTERISTICS_2), gShellDebug1HiiHandle);\r
3825 PRINT_INFO_OPTION (Chara2, Option);\r
3826 PRINT_BITS_INFO (SlotCharacteristics2Table, Chara2);\r
3827}\r
a1d4bfcc 3828\r
3829/**\r
3830 Display On Board Devices Information (Type 10) types.\r
3831\r
3832 @param[in] Type The key of the structure.\r
3833 @param[in] Option The optional information.\r
3834**/\r
5d73d92f 3835VOID\r
3836DisplayOnboardDeviceTypes (\r
a1d4bfcc 3837 IN UINT8 Type,\r
3838 IN UINT8 Option\r
5d73d92f 3839 )\r
3840{\r
3841 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_ONBOARD_DEVICE_TYPE), gShellDebug1HiiHandle);\r
3842 PRINT_INFO_OPTION (Type, Option);\r
3843 PRINT_TABLE_ITEM (OnboardDeviceTypesTable, Type);\r
3844}\r
a1d4bfcc 3845\r
3846/**\r
3847 Display System Event Log (Type 15) types.\r
3848\r
3849 @param[in] Type The key of the structure.\r
3850 @param[in] Option The optional information.\r
3851**/\r
5d73d92f 3852VOID\r
3853DisplaySELTypes (\r
a1d4bfcc 3854 IN UINT8 Type,\r
3855 IN UINT8 Option\r
5d73d92f 3856 )\r
3857{\r
3858 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_SYSTEM_EVENT_LOG_TYPE), gShellDebug1HiiHandle);\r
3859 PRINT_INFO_OPTION (Type, Option);\r
3860 PRINT_TABLE_ITEM (SELTypesTable, Type);\r
3861}\r
3862\r
a1d4bfcc 3863/**\r
3864 Display System Event Log (Type 15) format type.\r
3865\r
3866 @param[in] Type The key of the structure.\r
3867 @param[in] Option The optional information.\r
3868**/\r
5d73d92f 3869VOID\r
3870DisplaySELVarDataFormatType (\r
a1d4bfcc 3871 IN UINT8 Type,\r
3872 IN UINT8 Option\r
5d73d92f 3873 )\r
3874{\r
3875 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_EVENT_LOG_VAR_DATA_FORMAT), gShellDebug1HiiHandle);\r
3876 PRINT_INFO_OPTION (Type, Option);\r
3877 PRINT_TABLE_ITEM (SELVarDataFormatTypeTable, Type);\r
3878}\r
3879\r
a1d4bfcc 3880/**\r
3881 Display System Event Log (Type 15) dw1.\r
3882\r
3883 @param[in] Key The key of the structure.\r
3884 @param[in] Option The optional information.\r
3885**/\r
5d73d92f 3886VOID\r
3887DisplayPostResultsBitmapDw1 (\r
a1d4bfcc 3888 IN UINT32 Key,\r
3889 IN UINT8 Option\r
5d73d92f 3890 )\r
3891{\r
3892 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_POST_RESULTS_BITMAP), gShellDebug1HiiHandle);\r
3893 PRINT_INFO_OPTION (Key, Option);\r
3894 PRINT_BITS_INFO (PostResultsBitmapDw1Table, Key);\r
3895}\r
3896\r
a1d4bfcc 3897/**\r
3898 Display System Event Log (Type 15) dw2.\r
3899\r
3900 @param[in] Key The key of the structure.\r
3901 @param[in] Option The optional information.\r
3902**/\r
5d73d92f 3903VOID\r
3904DisplayPostResultsBitmapDw2 (\r
a1d4bfcc 3905 IN UINT32 Key,\r
3906 IN UINT8 Option\r
5d73d92f 3907 )\r
3908{\r
3909 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_POST_RESULTS_SECOND_DWORD), gShellDebug1HiiHandle);\r
3910 PRINT_INFO_OPTION (Key, Option);\r
3911 PRINT_BITS_INFO (PostResultsBitmapDw2Table, Key);\r
3912}\r
3913\r
a1d4bfcc 3914/**\r
3915 Display System Event Log (Type 15) type.\r
3916\r
3917 @param[in] SMType The key of the structure.\r
3918 @param[in] Option The optional information.\r
3919**/\r
5d73d92f 3920VOID\r
3921DisplaySELSysManagementTypes (\r
a1d4bfcc 3922 IN UINT32 SMType,\r
3923 IN UINT8 Option\r
5d73d92f 3924 )\r
3925{\r
3926 UINT8 Temp;\r
3927\r
3928 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_SYSTEM_MANAGEMENT_TYPES), gShellDebug1HiiHandle);\r
3929 PRINT_INFO_OPTION (SMType, Option);\r
3930\r
3931 //\r
3932 // Deal with wide range Value\r
3933 //\r
3934 if (SMType >= 0x80000000) {\r
3935 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_OEM_ASSIGNED), gShellDebug1HiiHandle);\r
3936 } else if (SMType >= 0x00020000) {\r
3937 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_RSVD_FOR_FUTURE_ASSIGN), gShellDebug1HiiHandle);\r
3938 } else if (SMType >= 0x00010000) {\r
3939 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_SYSTEM_MANAGEMENT_PROBE), gShellDebug1HiiHandle);\r
3940 } else if (SMType >= 0x31) {\r
3941 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_RSVD_FOR_FUTURE_ASSIGN), gShellDebug1HiiHandle);\r
3942 } else {\r
3943 //\r
3944 // Deal with One byte data\r
3945 //\r
3946 Temp = (UINT8) (SMType & 0x3F);\r
3947 PRINT_TABLE_ITEM (SELSysManagementTypesTable, Temp);\r
3948 }\r
3949}\r
a1d4bfcc 3950\r
3951/**\r
3952 Display Physical Memory Array (Type 16) Location.\r
3953\r
3954 @param[in] Location The key of the structure.\r
3955 @param[in] Option The optional information.\r
3956**/\r
5d73d92f 3957VOID\r
3958DisplayPMALocation (\r
a1d4bfcc 3959 IN UINT8 Location,\r
3960 IN UINT8 Option\r
5d73d92f 3961 )\r
3962{\r
3963 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_PHYS_MEM_ARRAY_LOCATION), gShellDebug1HiiHandle);\r
3964 PRINT_INFO_OPTION (Location, Option);\r
3965 PRINT_TABLE_ITEM (PMALocationTable, Location);\r
3966}\r
3967\r
a1d4bfcc 3968/**\r
3969 Display Physical Memory Array (Type 16) Use.\r
3970\r
3971 @param[in] Use The key of the structure.\r
3972 @param[in] Option The optional information.\r
3973**/\r
5d73d92f 3974VOID\r
3975DisplayPMAUse (\r
a1d4bfcc 3976 IN UINT8 Use,\r
3977 IN UINT8 Option\r
5d73d92f 3978 )\r
3979{\r
7ac133d0 3980 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_PHYS_MEM_ARRAY_USE), gShellDebug1HiiHandle);\r
5d73d92f 3981 PRINT_INFO_OPTION (Use, Option);\r
3982 PRINT_TABLE_ITEM (PMAUseTable, Use);\r
3983}\r
3984\r
a1d4bfcc 3985/**\r
3986 Display Physical Memory Array (Type 16) Types.\r
3987\r
3988 @param[in] Type The key of the structure.\r
3989 @param[in] Option The optional information.\r
3990**/\r
5d73d92f 3991VOID\r
3992DisplayPMAErrorCorrectionTypes (\r
a1d4bfcc 3993 IN UINT8 Type,\r
3994 IN UINT8 Option\r
5d73d92f 3995 )\r
3996{\r
3997 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_PHYS_MEM_ARRAY_ERROR), gShellDebug1HiiHandle);\r
3998 PRINT_INFO_OPTION (Type, Option);\r
3999 PRINT_TABLE_ITEM (PMAErrorCorrectionTypesTable, Type);\r
4000}\r
a1d4bfcc 4001\r
4002/**\r
4003 Display Memory Device (Type 17) form factor.\r
4004\r
4005 @param[in] FormFactor The key of the structure.\r
4006 @param[in] Option The optional information.\r
4007**/\r
5d73d92f 4008VOID\r
4009DisplayMemoryDeviceFormFactor (\r
a1d4bfcc 4010 IN UINT8 FormFactor,\r
4011 IN UINT8 Option\r
5d73d92f 4012 )\r
4013{\r
4014 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MEM_DEVICE_FORM_FACTOR), gShellDebug1HiiHandle);\r
4015 PRINT_INFO_OPTION (FormFactor, Option);\r
4016 PRINT_TABLE_ITEM (MemoryDeviceFormFactorTable, FormFactor);\r
4017}\r
4018\r
a1d4bfcc 4019/**\r
4020 Display Memory Device (Type 17) type.\r
4021\r
4022 @param[in] Type The key of the structure.\r
4023 @param[in] Option The optional information.\r
4024**/\r
5d73d92f 4025VOID\r
4026DisplayMemoryDeviceType (\r
a1d4bfcc 4027 IN UINT8 Type,\r
4028 IN UINT8 Option\r
5d73d92f 4029 )\r
4030{\r
4031 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MEM_DEVICE_TYPE), gShellDebug1HiiHandle);\r
4032 PRINT_INFO_OPTION (Type, Option);\r
4033 PRINT_TABLE_ITEM (MemoryDeviceTypeTable, Type);\r
4034}\r
4035\r
a1d4bfcc 4036/**\r
4037 Display Memory Device (Type 17) details.\r
4038\r
4039 @param[in] Para The key of the structure.\r
4040 @param[in] Option The optional information.\r
4041**/\r
5d73d92f 4042VOID\r
4043DisplayMemoryDeviceTypeDetail (\r
a1d4bfcc 4044 IN UINT16 Para,\r
4045 IN UINT8 Option\r
5d73d92f 4046 )\r
4047{\r
4048 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MEM_DEVICE_TYPE_DETAIL), gShellDebug1HiiHandle);\r
a1d4bfcc 4049 PRINT_INFO_OPTION (Para, Option);\r
4050 PRINT_BITS_INFO (MemoryDeviceTypeDetailTable, Para);\r
5d73d92f 4051}\r
a1d4bfcc 4052\r
4053/**\r
4054 Display 32-bit Memory Error Information (Type 18) type.\r
4055\r
4056 @param[in] ErrorType The key of the structure.\r
4057 @param[in] Option The optional information.\r
4058**/\r
5d73d92f 4059VOID\r
4060DisplayMemoryErrorType (\r
a1d4bfcc 4061 IN UINT8 ErrorType,\r
4062 IN UINT8 Option\r
5d73d92f 4063 )\r
4064{\r
4065 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MEM_ERROR_INFO), gShellDebug1HiiHandle);\r
4066 PRINT_INFO_OPTION (ErrorType, Option);\r
4067 PRINT_TABLE_ITEM (MemoryErrorTypeTable, ErrorType);\r
4068}\r
4069\r
a1d4bfcc 4070/**\r
4071 Display 32-bit Memory Error Information (Type 18) error granularity.\r
4072\r
4073 @param[in] Granularity The key of the structure.\r
4074 @param[in] Option The optional information.\r
4075**/\r
5d73d92f 4076VOID\r
4077DisplayMemoryErrorGranularity (\r
a1d4bfcc 4078 IN UINT8 Granularity,\r
4079 IN UINT8 Option\r
5d73d92f 4080 )\r
4081{\r
4082 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MEM_ERROR_GRANULARITY), gShellDebug1HiiHandle);\r
4083 PRINT_INFO_OPTION (Granularity, Option);\r
4084 PRINT_TABLE_ITEM (MemoryErrorGranularityTable, Granularity);\r
4085}\r
4086\r
a1d4bfcc 4087/**\r
4088 Display 32-bit Memory Error Information (Type 18) error information.\r
4089\r
4090 @param[in] Operation The key of the structure.\r
4091 @param[in] Option The optional information.\r
4092**/\r
5d73d92f 4093VOID\r
4094DisplayMemoryErrorOperation (\r
a1d4bfcc 4095 IN UINT8 Operation,\r
4096 IN UINT8 Option\r
5d73d92f 4097 )\r
4098{\r
4099 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MEM_ERROR_OP), gShellDebug1HiiHandle);\r
4100 PRINT_INFO_OPTION (Operation, Option);\r
4101 PRINT_TABLE_ITEM (MemoryErrorOperationTable, Operation);\r
4102}\r
a1d4bfcc 4103\r
4104/**\r
4105 Display Built-in Pointing Device (Type 21) type information.\r
4106\r
4107 @param[in] Type The key of the structure.\r
4108 @param[in] Option The optional information.\r
4109**/\r
5d73d92f 4110VOID\r
4111DisplayPointingDeviceType (\r
a1d4bfcc 4112 IN UINT8 Type,\r
4113 IN UINT8 Option\r
5d73d92f 4114 )\r
4115{\r
4116 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_POINTING_DEVICE_TYPE), gShellDebug1HiiHandle);\r
4117 PRINT_INFO_OPTION (Type, Option);\r
4118 PRINT_TABLE_ITEM (PointingDeviceTypeTable, Type);\r
4119}\r
4120\r
a1d4bfcc 4121/**\r
4122 Display Built-in Pointing Device (Type 21) information.\r
4123\r
4124 @param[in] Interface The key of the structure.\r
4125 @param[in] Option The optional information.\r
4126**/\r
5d73d92f 4127VOID\r
4128DisplayPointingDeviceInterface (\r
a1d4bfcc 4129 IN UINT8 Interface,\r
4130 IN UINT8 Option\r
5d73d92f 4131 )\r
4132{\r
4133 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_POINTING_DEVICE_INTERFACE), gShellDebug1HiiHandle);\r
4134 PRINT_INFO_OPTION (Interface, Option);\r
4135 PRINT_TABLE_ITEM (PointingDeviceInterfaceTable, Interface);\r
4136}\r
a1d4bfcc 4137\r
4138/**\r
4139 Display Portable Battery (Type 22) information.\r
4140\r
4141 @param[in] Key The key of the structure.\r
4142 @param[in] Option The optional information.\r
4143**/\r
5d73d92f 4144VOID\r
4145DisplayPBDeviceChemistry (\r
a1d4bfcc 4146 IN UINT8 Key,\r
4147 IN UINT8 Option\r
5d73d92f 4148 )\r
4149{\r
4150 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_PORTABLE_BATT_DEV_CHEM), gShellDebug1HiiHandle);\r
4151 PRINT_INFO_OPTION (Key, Option);\r
4152 PRINT_TABLE_ITEM (PBDeviceChemistryTable, Key);\r
4153}\r
a1d4bfcc 4154\r
4155/**\r
4156 Display Voltage Probe (Type 26) location information.\r
4157\r
4158 @param[in] Key The key of the structure.\r
4159 @param[in] Option The optional information.\r
4160**/\r
5d73d92f 4161VOID\r
4162DisplayVPLocation (\r
a1d4bfcc 4163 IN UINT8 Key,\r
4164 IN UINT8 Option\r
5d73d92f 4165 )\r
4166{\r
4167 UINT8 Loc;\r
4168\r
4169 Loc = (UINT8) ((Key & 0xE0) >> 5);\r
4170 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_VOLTAGE_PROBE_LOC), gShellDebug1HiiHandle);\r
4171 PRINT_INFO_OPTION (Loc, Option);\r
4172 PRINT_TABLE_ITEM (VPLocationTable, Loc);\r
4173}\r
4174\r
a1d4bfcc 4175/**\r
4176 Display Voltage Probe (Type 26) status ype information.\r
4177\r
4178 @param[in] Key The key of the structure.\r
4179 @param[in] Option The optional information.\r
4180**/\r
5d73d92f 4181VOID\r
4182DisplayVPStatus (\r
a1d4bfcc 4183 IN UINT8 Key,\r
4184 IN UINT8 Option\r
5d73d92f 4185 )\r
4186{\r
4187 UINT8 Status;\r
4188\r
4189 Status = (UINT8) (Key & 0x1F);\r
4190 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_VOLTAGE_PROBE_STATUS), gShellDebug1HiiHandle);\r
4191 PRINT_INFO_OPTION (Status, Option);\r
4192 PRINT_TABLE_ITEM (VPStatusTable, Status);\r
4193}\r
a1d4bfcc 4194\r
4195/**\r
4196 Display Cooling (Type 27) status information.\r
4197\r
4198 @param[in] Key The key of the structure.\r
4199 @param[in] Option The optional information.\r
4200**/\r
5d73d92f 4201VOID\r
4202DisplayCoolingDeviceStatus (\r
a1d4bfcc 4203 IN UINT8 Key,\r
4204 IN UINT8 Option\r
5d73d92f 4205 )\r
4206{\r
4207 UINT8 Status;\r
4208\r
4209 Status = (UINT8) ((Key & 0xE0) >> 5);\r
4210 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_COOLING_DEV_STATUS), gShellDebug1HiiHandle);\r
4211 PRINT_INFO_OPTION (Status, Option);\r
4212 PRINT_TABLE_ITEM (CoolingDeviceStatusTable, Status);\r
4213}\r
4214\r
a1d4bfcc 4215/**\r
4216 Display Cooling (Type 27) type information.\r
4217\r
4218 @param[in] Key The key of the structure.\r
4219 @param[in] Option The optional information.\r
4220**/\r
5d73d92f 4221VOID\r
4222DisplayCoolingDeviceType (\r
a1d4bfcc 4223 IN UINT8 Key,\r
4224 IN UINT8 Option\r
5d73d92f 4225 )\r
4226{\r
4227 UINT8 Type;\r
4228\r
4229 Type = (UINT8) (Key & 0x1F);\r
4230 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_COOLING_DEV_TYPE), gShellDebug1HiiHandle);\r
4231 PRINT_INFO_OPTION (Type, Option);\r
4232 PRINT_TABLE_ITEM (CoolingDeviceTypeTable, Type);\r
4233}\r
a1d4bfcc 4234\r
4235/**\r
4236 Display Temperature Probe (Type 28) status information.\r
4237\r
4238 @param[in] Key The key of the structure.\r
4239 @param[in] Option The optional information.\r
4240**/\r
5d73d92f 4241VOID\r
4242DisplayTemperatureProbeStatus (\r
a1d4bfcc 4243 IN UINT8 Key,\r
4244 IN UINT8 Option\r
5d73d92f 4245 )\r
4246{\r
4247 UINT8 Status;\r
4248\r
4249 Status = (UINT8) ((Key & 0xE0) >> 5);\r
4250 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_TEMP_PROBE), gShellDebug1HiiHandle);\r
4251 PRINT_INFO_OPTION (Status, Option);\r
4252 PRINT_TABLE_ITEM (TemperatureProbeStatusTable, Status);\r
4253}\r
4254\r
a1d4bfcc 4255/**\r
4256 Display Temperature Probe (Type 28) location information.\r
4257\r
4258 @param[in] Key The key of the structure.\r
4259 @param[in] Option The optional information.\r
4260**/\r
5d73d92f 4261VOID\r
4262DisplayTemperatureProbeLoc (\r
a1d4bfcc 4263 IN UINT8 Key,\r
4264 IN UINT8 Option\r
5d73d92f 4265 )\r
4266{\r
4267 UINT8 Loc;\r
4268\r
4269 Loc = (UINT8) (Key & 0x1F);\r
4270 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_VOLTAGE_PROBE_LOC), gShellDebug1HiiHandle);\r
4271 PRINT_INFO_OPTION (Loc, Option);\r
4272 PRINT_TABLE_ITEM (TemperatureProbeLocTable, Loc);\r
4273}\r
a1d4bfcc 4274\r
4275/**\r
4276 Display Electrical Current Probe (Type 29) status information.\r
4277\r
4278 @param[in] Key The key of the structure.\r
4279 @param[in] Option The optional information.\r
4280**/\r
5d73d92f 4281VOID\r
4282DisplayECPStatus (\r
a1d4bfcc 4283 IN UINT8 Key,\r
4284 IN UINT8 Option\r
5d73d92f 4285 )\r
4286{\r
4287 UINT8 Status;\r
4288\r
4289 Status = (UINT8) ((Key & 0xE0) >> 5);\r
4290 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_ELEC_PROBE_STATUS), gShellDebug1HiiHandle);\r
4291 PRINT_INFO_OPTION (Status, Option);\r
4292 PRINT_TABLE_ITEM (ECPStatusTable, Status);\r
4293}\r
4294\r
a1d4bfcc 4295/**\r
4296 Display Type 29 information.\r
4297\r
4298 @param[in] Key The key of the structure.\r
4299 @param[in] Option The optional information.\r
4300**/\r
5d73d92f 4301VOID\r
4302DisplayECPLoc (\r
a1d4bfcc 4303 IN UINT8 Key,\r
4304 IN UINT8 Option\r
5d73d92f 4305 )\r
4306{\r
4307 UINT8 Loc;\r
4308\r
4309 Loc = (UINT8) (Key & 0x1F);\r
4310 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_ELEC_PROBE_LOC), gShellDebug1HiiHandle);\r
4311 PRINT_INFO_OPTION (Loc, Option);\r
4312 PRINT_TABLE_ITEM (ECPLocTable, Loc);\r
4313}\r
a1d4bfcc 4314\r
4315/**\r
187cb3dd 4316 Display Management Device (Type 34) Type.\r
a1d4bfcc 4317\r
4318 @param[in] Key The key of the structure.\r
4319 @param[in] Option The optional information.\r
4320**/\r
5d73d92f 4321VOID\r
4322DisplayMDType (\r
a1d4bfcc 4323 IN UINT8 Key,\r
4324 IN UINT8 Option\r
5d73d92f 4325 )\r
4326{\r
4327 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MANAGEMENT_DEV_TYPE), gShellDebug1HiiHandle);\r
4328 PRINT_INFO_OPTION (Key, Option);\r
4329 PRINT_TABLE_ITEM (MDTypeTable, Key);\r
4330}\r
4331\r
187cb3dd
SZ
4332/**\r
4333 Display Management Device (Type 34) Address Type.\r
4334\r
4335 @param[in] Key The key of the structure.\r
4336 @param[in] Option The optional information.\r
4337**/\r
4338VOID\r
4339DisplayMDAddressType (\r
4340 IN UINT8 Key,\r
4341 IN UINT8 Option\r
4342 )\r
4343{\r
4344 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MANAGEMENT_DEV_ADDR_TYPE), gShellDebug1HiiHandle);\r
4345 PRINT_INFO_OPTION (Key, Option);\r
4346 PRINT_TABLE_ITEM (MDAddressTypeTable, Key);\r
4347}\r
4348\r
a1d4bfcc 4349/**\r
4350 Display Memory Channel (Type 37) information.\r
4351\r
4352 @param[in] Key The key of the structure.\r
4353 @param[in] Option The optional information.\r
4354**/\r
5d73d92f 4355VOID\r
4356DisplayMemoryChannelType (\r
a1d4bfcc 4357 IN UINT8 Key,\r
4358 IN UINT8 Option\r
5d73d92f 4359 )\r
4360{\r
4361 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_MEM_CHANNEL_TYPE), gShellDebug1HiiHandle);\r
4362 PRINT_INFO_OPTION (Key, Option);\r
4363 PRINT_TABLE_ITEM (MemoryChannelTypeTable, Key);\r
4364}\r
a1d4bfcc 4365\r
4366/**\r
4367 Display IPMI Device Information (Type 38) information.\r
4368\r
4369 @param[in] Key The key of the structure.\r
4370 @param[in] Option The optional information.\r
4371**/\r
5d73d92f 4372VOID\r
4373DisplayIPMIDIBMCInterfaceType (\r
a1d4bfcc 4374 IN UINT8 Key,\r
4375 IN UINT8 Option\r
5d73d92f 4376 )\r
4377{\r
4378 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_BMC_INTERFACE_TYPE), gShellDebug1HiiHandle);\r
4379 PRINT_INFO_OPTION (Key, Option);\r
4380 PRINT_TABLE_ITEM (IPMIDIBMCInterfaceTypeTable, Key);\r
4381}\r
4382\r
a1d4bfcc 4383/**\r
4384 Display the structure type information.\r
4385\r
4386 @param[in] Key The key of the structure.\r
4387 @param[in] Option The optional information.\r
4388**/\r
5d73d92f 4389VOID\r
4390DisplayStructureTypeInfo (\r
a1d4bfcc 4391 IN UINT8 Key,\r
4392 IN UINT8 Option\r
5d73d92f 4393 )\r
4394{\r
4395 //\r
4396 // display\r
4397 //\r
4398 ShellPrintHiiEx(-1,-1,NULL,STRING_TOKEN (STR_SMBIOSVIEW_QUERYTABLE_STRUCT_TYPE), gShellDebug1HiiHandle);\r
4399 PRINT_INFO_OPTION (Key, Option);\r
4400 PRINT_TABLE_ITEM (StructureTypeInfoTable, Key);\r
4401}\r