Home | History | Annotate | Download | only in SmbiosView
      1 /** @file
      2   Module to clarify system event log of smbios structure.
      3 
      4   Copyright (c) 2005-2011, Intel Corporation. All rights reserved. <BR>
      5   This program and the accompanying materials
      6   are licensed and made available under the terms and conditions of the BSD License
      7   which accompanies this distribution. The full text of the license may be found at
      8   http://opensource.org/licenses/bsd-license.php
      9 
     10   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
     11   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
     12 
     13 **/
     14 
     15 #ifndef _SMBIOS_EVENT_LOG_INFO_H_
     16 #define _SMBIOS_EVENT_LOG_INFO_H_
     17 
     18 #define END_OF_LOG  0xFF
     19 
     20 #pragma pack(1)
     21 
     22 typedef struct {
     23   UINT8 Type;
     24   UINT8 Length;
     25   UINT8 Year;
     26   UINT8 Month;
     27   UINT8 Day;
     28   UINT8 Hour;
     29   UINT8 Minute;
     30   UINT8 Second;
     31   UINT8 LogVariableData[1];
     32 } LOG_RECORD_FORMAT;
     33 
     34 typedef struct {
     35   UINT8 OEMReserved[5];
     36   UINT8 Metw;           // Multiple Event Time Window
     37   UINT8 Meci;           // Multiple Event Count Increment
     38   UINT8 CMOSAddress;    // Pre-boot Event Log Reset - CMOS Address
     39   UINT8 CMOSBitIndex;   // Pre-boot Event Log Reset - CMOS Bit Index
     40   UINT8 StartingOffset; // CMOS Checksum - Starting Offset
     41   UINT8 ByteCount;      // CMOS Checksum - Byte Count
     42   UINT8 ChecksumOffset; // CMOS Checksum - Checksum Offset
     43   UINT8 Reserved[3];
     44   UINT8 HeaderRevision;
     45 } LOG_HEADER_TYPE1_FORMAT;
     46 
     47 #pragma pack()
     48 //
     49 // System Event Log (Type 15)
     50 //
     51 
     52 /**
     53   Function to display system event log access information.
     54 
     55   @param[in] Key    Additional information to print.
     56   @param[in] Option Whether to print the additional information.
     57 **/
     58 VOID
     59 DisplaySELAccessMethod (
     60   IN CONST UINT8 Key,
     61   IN CONST UINT8 Option
     62   );
     63 
     64 /**
     65   Function to display system event log status information.
     66 
     67   @param[in] Key    Additional information to print.
     68   @param[in] Option Whether to print the additional information.
     69 **/
     70 VOID
     71 DisplaySELLogStatus (
     72   UINT8 Key,
     73   UINT8 Option
     74   );
     75 
     76 /**
     77   Function to display system event log header format information.
     78 
     79   @param[in] Key    Additional information to print.
     80   @param[in] Option Whether to print the additional information.
     81 **/
     82 VOID
     83 DisplaySysEventLogHeaderFormat (
     84   UINT8 Key,
     85   UINT8 Option
     86   );
     87 
     88 /**
     89   Function to display system event log header information.
     90 
     91   @param[in] LogHeaderFormat  Format identifier.
     92   @param[in] LogHeader        Format informcation.
     93 **/
     94 VOID
     95 DisplaySysEventLogHeader (
     96   UINT8 LogHeaderFormat,
     97   UINT8 *LogHeader
     98   );
     99 
    100 /**
    101   Function to display system event log data.
    102 
    103   @param[in] LogData        The data information.
    104   @param[in] LogAreaLength  Length of the data.
    105 **/
    106 VOID
    107 DisplaySysEventLogData (
    108   UINT8   *LogData,
    109   UINT16  LogAreaLength
    110   );
    111 
    112 #endif
    113