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