13eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang/*++
23eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang
3f57387d54bd8f2c0261834b2ad16155f1db63291hhtianCopyright (c) 1999 - 2002, Intel Corporation. All rights reserved.<BR>
4f57387d54bd8f2c0261834b2ad16155f1db63291hhtianThis program and the accompanying materials
53eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwangare licensed and made available under the terms and conditions of the BSD License
63eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwangwhich accompanies this distribution.  The full text of the license may be found at
73eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwanghttp://opensource.org/licenses/bsd-license.php
83eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang
93eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwangTHE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
103eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwangWITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
113eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang
123eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang
133eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwangModule Name:
143eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang
153eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang  SmmStatusCode.h
163eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang
173eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwangAbstract:
183eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang
193eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang  SMM Status code Protocol as defined in the DXE CIS (Status Code Architectural Protocol)
203eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang
213eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang  This code abstracts SMM Status Code reporting.
223eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang
233eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang--*/
243eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang
253eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang#ifndef _PROTOCOL_SMM_STATUS_CODE_H__
263eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang#define _PROTOCOL_SMM_STATUS_CODE_H__
273eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang
283eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang//
293eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang// Global ID for the Smm Status Code Protocol
303eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang//
313eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang#define EFI_SMM_STATUS_CODE_PROTOCOL_GUID \
323eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang  { \
337ccf38a33e1e227131c170a621d183b3bacef148qhuang    0x6afd2b77, 0x98c1, 0x4acd, {0xa6, 0xf9, 0x8a, 0x94, 0x39, 0xde, 0xf, 0xb1} \
343eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang  }
353eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang
363eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwangextern EFI_GUID gEfiSmmStatusCodeProtocolGuid;
373eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang
383eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang//
393eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang// Forward reference for pure ANSI compatability
403eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang//
413eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwangEFI_FORWARD_DECLARATION (EFI_SMM_STATUS_CODE_PROTOCOL);
423eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang
433eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwangtypedef
443eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwangEFI_STATUS
453eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang(EFIAPI *EFI_SMM_REPORT_STATUS_CODE) (
463eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang  IN EFI_SMM_STATUS_CODE_PROTOCOL * This,
473eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang  IN EFI_STATUS_CODE_TYPE         CodeType,
483eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang  IN EFI_STATUS_CODE_VALUE        Value,
493eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang  IN UINT32                       Instance,
503eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang  IN EFI_GUID                     * CallerId,
513eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang  IN EFI_STATUS_CODE_DATA         * Data OPTIONAL
523eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang  );
533eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang
545d46191d8fa6bb1ac94f697136b3444c61e8777cjljustenstruct _EFI_SMM_STATUS_CODE_PROTOCOL {
553eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang  EFI_SMM_REPORT_STATUS_CODE  ReportStatusCode;
565d46191d8fa6bb1ac94f697136b3444c61e8777cjljusten};
573eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang
583eb9473ea9a949badfe06ae61d2d3fcfa53651c7qwang#endif
59