PHOENIX SMM SW SMI PROTOCOL

From PhoenixWiki

Jump to: navigation, search

Contents

GUID

#define PHOENIX_EFI_SMM_SW_SMI_PROTOCOL_GUID \
  { 0xff052503, 0x1af9, 0x4aeb, \
  { 0x83, 0xc4, 0xc2, 0xd4, 0xce, 0xb1, 0xc, 0xa3} }

Protocol Interface Structure

typedef struct _PHOENIX_SMM_SW_SMI_PROTOCOL {
  PHOENIX_SMM_ALLOC_SW_SMI            AllocateSwSmi;
  PHOENIX_SMM_QUERY_SW_SMI            QuerySwSmi;
  UINTN                               SwSmiCommandPort; 
} PHOENIX_SMM_SW_SMI_PROTOCOL;

Members

Member Description
AllocateSwSmi Allocate one software SMI value for the specified GUID
QuerySwSmi Query the GUID associated software SMI values
SwSmiCommandPort An unsigned integer that specifies the Software SMI Command Port


AllocateSwSmi()

Allocate the software SMI value for the specified type’s GUID

Prototype

typedef
EFI_STATUS
(EFIAPI *PHOENIX_SMM_ALLOC_SW_SMI)(
  IN  CONST EFI_GUID *SwSmiType,
  IN  OUT UINT8      *SwSmiValue
  );

Parameters

Parameter Description
SwSmiType Points to the GUID which uniquely identifies this type of software SMI
SwSmiValue On input, points to the desired software SMI value. If another value had been previously allocated for SwSmiType, then an error is returned and SwSmiValue is updated. If it is 0xFF, then a new value will be allocated. If it is 0xFF and a value had been previously allocated for SwSmiType, that value will be returned

Description
This function allocates one unique software SMI value for the specified type’s GUID. If the value is already in use, debug versions report a warning via ReportStatusCode().

Status Codes Returned

Status Code Description
EFI_SUCCESS A valid software SMI value was available for the specified SwSmiType.
EFI_INVALID_PARAMETER Unable to allocate one value for the specified GUID or the desired input value is not valid.

QuerySwSmi()

Query the software SMI value associated with type’s GUID

Prototype

typedef
EFI_STATUS
(EFIAPI *PHOENIX_SMM_ALLOC_SW_SMI)(
  IN   CONST EFI_GUID *SwSmiType,
  OUT  UINT8          *SwSmiValue
  );

Parameters

Parameter Description
SwSmiType Points to the GUID which uniquely identifies the software SMI usage.
SwSmiValue On return, points to the software SMI value associated with SwSmiType (if any).

Description
This function finds the software SMI value associated with the software SMI type SwSmiType.

Status Codes Returned

Status Code Description
EFI_SUCCESS The software SMI value was successfully returned.
EFI_NOT_FOUND There was no software SMI value associated with the specified SwSmiType.
EFI_INVALID_PARAMETER SwSmiType or SwSmiValue is NULL

Copyright (C) 2008 Phoenix Technologies Ltd. All Rights Reserved.

Personal tools