MdePkg/SmmIoLib: Add header file.

This SmmIoLib is used to check if an IO resource
is valid in SMM.

Cc: Jeff Fan <jeff.fan@intel.com>
Cc: Liming Gao <liming.gao@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jiewen Yao <jiewen.yao@intel.com>
Reviewed-by: Liming Gao <liming.gao@intel.com>
Reviewed-by: Jeff Fan <jeff.fan@intel.com>
This commit is contained in:
Jiewen Yao 2017-03-15 17:23:01 +08:00
parent 9e981317be
commit 37a00f1a9d
1 changed files with 42 additions and 0 deletions

View File

@ -0,0 +1,42 @@
/** @file
Provides services for SMM IO Operation.
The SMM IO Library provides function for checking if IO resource is accessible inside of SMM.
Copyright (c) 2017, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
which accompanies this distribution. The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/
#ifndef _SMM_IO_LIB_H_
#define _SMM_IO_LIB_H_
/**
This function check if the MMIO resource is valid per processor architecture and
valid per platform design.
@param BaseAddress The MMIO start address to be checked.
@param Length The MMIO length to be checked.
@param Owner A GUID representing the owner of the resource.
This GUID may be used by producer to correlate the device ownership of the resource.
NULL means no specific owner.
@retval TRUE This MMIO resource is valid per processor architecture and valid per platform design.
@retval FALSE This MMIO resource is not valid per processor architecture or valid per platform design.
**/
BOOLEAN
EFIAPI
SmmIsMmioValid (
IN EFI_PHYSICAL_ADDRESS BaseAddress,
IN UINT64 Length,
IN EFI_GUID *Owner OPTIONAL
);
#endif