]>
git.proxmox.com Git - mirror_edk2.git/blob - ShellPkg/Library/UefiShellDebug1CommandsLib/SmbiosView/QueryTable.h
60fb42c59c341c252bf9f0269eaeae279f1f6e44
2 Build a table, each item is (key, info) pair.
3 and give a interface of query a string out of a table.
5 Copyright (c) 2005 - 2018, Intel Corporation. All rights reserved.<BR>
6 SPDX-License-Identifier: BSD-2-Clause-Patent
10 #ifndef _SMBIOS_QUERY_TABLE_H_
11 #define _SMBIOS_QUERY_TABLE_H_
13 #define QUERY_TABLE_UNFOUND 0xFF
15 typedef struct TABLE_ITEM
{
21 // Print info by option
23 #define PRINT_INFO_OPTION(Value, Option) \
25 if (Option == SHOW_NONE) { \
28 if (Option < SHOW_DETAIL) { \
29 Print (L"0x%x\n", Value); \
35 Given a table and a Key, return the responding info.
38 Table[Index].Key is change from UINT8 to UINT16,
39 in order to deal with "0xaa - 0xbb".
42 DisplaySELVariableDataFormatTypes(UINT8 Type, UINT8 Option)
45 Now define Key = 0x7F07, that is to say: High = 0x7F, Low = 0x07.
46 Then all the Key Value between Low and High gets the same string
49 @param[in] Table The begin address of table.
50 @param[in] Number The number of table items.
51 @param[in] Key The query Key.
52 @param[in, out] Info Input as empty buffer; output as data buffer.
53 @param[in] InfoLen The max number of characters for Info.
55 @return the found Key and Info is valid.
56 @retval QUERY_TABLE_UNFOUND and Info should be NULL.
68 Display the structure type information.
70 @param[in] Key The key of the structure.
71 @param[in] Option The optional information.
74 DisplayStructureTypeInfo (
80 Display System Information (Type 1) Type.
82 @param[in] Type The key of the structure.
83 @param[in] Option The optional information.
86 DisplaySystemWakeupType (
92 Display Base Board (Type 2) Feature Flags.
94 @param[in] FeatureFlags The key of the structure.
95 @param[in] Option The optional information.
98 DisplayBaseBoardFeatureFlags (
99 IN UINT8 FeatureFlags
,
104 Display Base Board (Type 2) Board Type.
106 @param[in] Type The key of the structure.
107 @param[in] Option The optional information.
110 DisplayBaseBoardBoardType(
116 Display System Enclosure (Type 3) Enclosure Type.
118 @param[in] Type The key of the structure.
119 @param[in] Option The optional information.
122 DisplaySystemEnclosureType (
128 Display System Enclosure (Type 3) Enclosure Status.
130 @param[in] Status The key of the structure.
131 @param[in] Option The optional information.
134 DisplaySystemEnclosureStatus (
140 Display System Enclosure (Type 3) Security Status.
142 @param[in] Status The key of the structure.
143 @param[in] Option The optional information.
146 DisplaySESecurityStatus (
153 Display Processor Information (Type 4) Type.
155 @param[in] Type The key of the structure.
156 @param[in] Option The optional information.
159 DisplayProcessorType (
165 Display Processor Information (Type 4) Upgrade.
167 @param[in] Upgrade The key of the structure.
168 @param[in] Option The optional information.
171 DisplayProcessorUpgrade (
177 Display Processor Information (Type 4) Characteristics.
179 @param[in] Type The key of the structure.
180 @param[in] Option The optional information.
183 DisplayProcessorCharacteristics (
189 Display Memory Controller Information (Type 5) method.
191 @param[in] Method The key of the structure.
192 @param[in] Option The optional information.
195 DisplayMcErrorDetectMethod (
201 Display Memory Controller Information (Type 5) Capability.
203 @param[in] Capability The key of the structure.
204 @param[in] Option The optional information.
207 DisplayMcErrorCorrectCapability (
213 Display Memory Controller Information (Type 5) Support.
215 @param[in] Support The key of the structure.
216 @param[in] Option The optional information.
219 DisplayMcInterleaveSupport (
225 Display Memory Controller Information (Type 5) speeds.
227 @param[in] Speed The key of the structure.
228 @param[in] Option The optional information.
231 DisplayMcMemorySpeeds (
237 Display Memory Controller Information (Type 5) voltage.
239 @param[in] Voltage The key of the structure.
240 @param[in] Option The optional information.
243 DisplayMemoryModuleVoltage (
249 Display Memory Module Information (Type 6) type.
251 @param[in] Type The key of the structure.
252 @param[in] Option The optional information.
255 DisplayMmMemoryType (
261 Display Memory Module Information (Type 6) status.
263 @param[in] Status The key of the structure.
264 @param[in] Option The optional information.
267 DisplayMmErrorStatus (
273 Display Cache Information (Type 7) SRAM Type.
275 @param[in] Type The key of the structure.
276 @param[in] Option The optional information.
279 DisplayCacheSRAMType (
285 Display Cache Information (Type 7) correcting Type.
287 @param[in] Type The key of the structure.
288 @param[in] Option The optional information.
291 DisplayCacheErrCorrectingType (
297 Display Cache Information (Type 7) Type.
299 @param[in] Type The key of the structure.
300 @param[in] Option The optional information.
303 DisplayCacheSystemCacheType (
309 Display Cache Information (Type 7) Associativity.
311 @param[in] Associativity The key of the structure.
312 @param[in] Option The optional information.
315 DisplayCacheAssociativity (
316 IN UINT8 Associativity
,
321 Display Port Connector Information (Type 8) type.
323 @param[in] Type The key of the structure.
324 @param[in] Option The optional information.
327 DisplayPortConnectorType (
333 Display Port Connector Information (Type 8) port type.
335 @param[in] Type The key of the structure.
336 @param[in] Option The optional information.
345 Display System Slots (Type 9) slot type.
347 @param[in] Type The key of the structure.
348 @param[in] Option The optional information.
351 DisplaySystemSlotType (
357 Display System Slots (Type 9) data bus width.
359 @param[in] Width The key of the structure.
360 @param[in] Option The optional information.
363 DisplaySystemSlotDataBusWidth (
369 Display System Slots (Type 9) usage information.
371 @param[in] Usage The key of the structure.
372 @param[in] Option The optional information.
375 DisplaySystemSlotCurrentUsage (
381 Display System Slots (Type 9) slot length.
383 @param[in] Length The key of the structure.
384 @param[in] Option The optional information.
387 DisplaySystemSlotLength (
393 Display System Slots (Type 9) characteristics.
395 @param[in] Chara1 The key of the structure.
396 @param[in] Option The optional information.
399 DisplaySlotCharacteristics1 (
405 Display System Slots (Type 9) characteristics.
407 @param[in] Chara2 The key of the structure.
408 @param[in] Option The optional information.
411 DisplaySlotCharacteristics2 (
417 Display On Board Devices Information (Type 10) types.
419 @param[in] Type The key of the structure.
420 @param[in] Option The optional information.
423 DisplayOnboardDeviceTypes (
429 Display System Event Log (Type 15) types.
431 @param[in] Type The key of the structure.
432 @param[in] Option The optional information.
441 Display System Event Log (Type 15) format type.
443 @param[in] Type The key of the structure.
444 @param[in] Option The optional information.
447 DisplaySELVarDataFormatType (
453 Display System Event Log (Type 15) dw1.
455 @param[in] Key The key of the structure.
456 @param[in] Option The optional information.
459 DisplayPostResultsBitmapDw1 (
465 Display System Event Log (Type 15) dw2.
467 @param[in] Key The key of the structure.
468 @param[in] Option The optional information.
471 DisplayPostResultsBitmapDw2 (
477 Display System Event Log (Type 15) type.
479 @param[in] SMType The key of the structure.
480 @param[in] Option The optional information.
483 DisplaySELSysManagementTypes (
489 Display Physical Memory Array (Type 16) Location.
491 @param[in] Location The key of the structure.
492 @param[in] Option The optional information.
501 Display Physical Memory Array (Type 16) Use.
503 @param[in] Use The key of the structure.
504 @param[in] Option The optional information.
513 Display Physical Memory Array (Type 16) Types.
515 @param[in] Type The key of the structure.
516 @param[in] Option The optional information.
519 DisplayPMAErrorCorrectionTypes (
525 Display Memory Device (Type 17) form factor.
527 @param[in] FormFactor The key of the structure.
528 @param[in] Option The optional information.
531 DisplayMemoryDeviceFormFactor (
537 Display Memory Device (Type 17) type.
539 @param[in] Type The key of the structure.
540 @param[in] Option The optional information.
543 DisplayMemoryDeviceType (
549 Display Memory Device (Type 17) details.
551 @param[in] Para The key of the structure.
552 @param[in] Option The optional information.
555 DisplayMemoryDeviceTypeDetail (
561 Display Memory Device (Type 17) memory technology.
563 @param[in] Para The key of the structure.
564 @param[in] Option The optional information.
567 DisplayMemoryDeviceMemoryTechnology (
573 Display Memory Device (Type 17) memory operating mode capability.
575 @param[in] Para The key of the structure.
576 @param[in] Option The optional information.
579 DisplayMemoryDeviceMemoryOperatingModeCapability (
585 Display 32-bit Memory Error Information (Type 18) type.
587 @param[in] ErrorType The key of the structure.
588 @param[in] Option The optional information.
591 DisplayMemoryErrorType (
597 Display 32-bit Memory Error Information (Type 18) error granularity.
599 @param[in] Granularity The key of the structure.
600 @param[in] Option The optional information.
603 DisplayMemoryErrorGranularity (
604 IN UINT8 Granularity
,
609 Display 32-bit Memory Error Information (Type 18) error information.
611 @param[in] Operation The key of the structure.
612 @param[in] Option The optional information.
615 DisplayMemoryErrorOperation (
621 Display Built-in Pointing Device (Type 21) type information.
623 @param[in] Type The key of the structure.
624 @param[in] Option The optional information.
627 DisplayPointingDeviceType (
633 Display Built-in Pointing Device (Type 21) information.
635 @param[in] Interface The key of the structure.
636 @param[in] Option The optional information.
639 DisplayPointingDeviceInterface (
645 Display Portable Battery (Type 22) information.
647 @param[in] Key The key of the structure.
648 @param[in] Option The optional information.
651 DisplayPBDeviceChemistry (
657 Display Voltage Probe (Type 26) location information.
659 @param[in] Key The key of the structure.
660 @param[in] Option The optional information.
669 Display Voltage Probe (Type 26) status ype information.
671 @param[in] Key The key of the structure.
672 @param[in] Option The optional information.
681 Display Cooling (Type 27) status information.
683 @param[in] Key The key of the structure.
684 @param[in] Option The optional information.
687 DisplayCoolingDeviceStatus (
693 Display Cooling (Type 27) type information.
695 @param[in] Key The key of the structure.
696 @param[in] Option The optional information.
699 DisplayCoolingDeviceType (
705 Display Temperature Probe (Type 28) status information.
707 @param[in] Key The key of the structure.
708 @param[in] Option The optional information.
711 DisplayTemperatureProbeStatus (
717 Display Temperature Probe (Type 28) location information.
719 @param[in] Key The key of the structure.
720 @param[in] Option The optional information.
723 DisplayTemperatureProbeLoc (
729 Display Electrical Current Probe (Type 29) status information.
731 @param[in] Key The key of the structure.
732 @param[in] Option The optional information.
741 Display Electrical Current Probe (Type 29) location information.
743 @param[in] Key The key of the structure.
744 @param[in] Option The optional information.
753 Display Management Device (Type 34) Type.
755 @param[in] Key The key of the structure.
756 @param[in] Option The optional information.
765 Display Management Device (Type 34) Address Type.
767 @param[in] Key The key of the structure.
768 @param[in] Option The optional information.
771 DisplayMDAddressType (
777 Display Memory Channel (Type 37) information.
779 @param[in] Key The key of the structure.
780 @param[in] Option The optional information.
783 DisplayMemoryChannelType (
789 Display IPMI Device Information (Type 38) information.
791 @param[in] Key The key of the structure.
792 @param[in] Option The optional information.
795 DisplayIPMIDIBMCInterfaceType (
801 Display Management Controller Host Interface (Type 42) information.
803 @param[in] Key The key of the structure.
804 @param[in] Option The optional information.
807 DisplayMCHostInterfaceType (