MdePkg/Library/SmmIoLibSmmCpuIo2/SmmCpuIoLibInternal.h File Reference


Functions

UINT64 EFIAPI IoReadWorker (IN UINTN Port, IN EFI_SMM_IO_WIDTH Width)
UINT64 EFIAPI IoWriteWorker (IN UINTN Port, IN EFI_SMM_IO_WIDTH Width, IN UINT64 Data)
UINT64 EFIAPI MmioReadWorker (IN UINTN Address, IN EFI_SMM_IO_WIDTH Width)
UINT64 EFIAPI MmioWriteWorker (IN UINTN Address, IN EFI_SMM_IO_WIDTH Width, IN UINT64 Data)

Detailed Description

Internal include file of SMM CPU IO Library. It includes all necessary protocol/library class's header file for implementation of IoLib library instance. It is included all source code of this library instance.

Copyright (c) 2009 - 2010, Intel Corporation. All rights reserved.
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.


Function Documentation

UINT64 EFIAPI IoReadWorker ( IN UINTN  Port,
IN EFI_SMM_IO_WIDTH  Width 
)

Reads registers in the EFI CPU I/O space.

Reads the I/O port specified by Port with registers width specified by Width. The read value is returned. If such operations are not supported, then ASSERT(). This function must guarantee that all I/O read and write operations are serialized.

Parameters:
Port The base address of the I/O operation. The caller is responsible for aligning the Address if required.
Width The width of the I/O operation.
Returns:
Data read from registers in the EFI CPU I/O space.

References ASSERT_EFI_ERROR, gSmst, _EFI_SMM_CPU_IO2_PROTOCOL::Io, EFI_SMM_IO_ACCESS2::Read, and _EFI_SMM_SYSTEM_TABLE2::SmmIo.

UINT64 EFIAPI IoWriteWorker ( IN UINTN  Port,
IN EFI_SMM_IO_WIDTH  Width,
IN UINT64  Data 
)

Writes registers in the EFI CPU I/O space.

Writes the I/O port specified by Port with registers width and value specified by Width and Data respectively. Data is returned. If such operations are not supported, then ASSERT(). This function must guarantee that all I/O read and write operations are serialized.

Parameters:
Port The base address of the I/O operation. The caller is responsible for aligning the Address if required.
Width The width of the I/O operation.
Data The value to write to the I/O port.
Returns:
The paramter of Data.

References ASSERT_EFI_ERROR, gSmst, _EFI_SMM_CPU_IO2_PROTOCOL::Io, _EFI_SMM_SYSTEM_TABLE2::SmmIo, and EFI_SMM_IO_ACCESS2::Write.

UINT64 EFIAPI MmioReadWorker ( IN UINTN  Address,
IN EFI_SMM_IO_WIDTH  Width 
)

Reads memory-mapped registers in the EFI system memory space.

Reads the MMIO registers specified by Address with registers width specified by Width. The read value is returned. If such operations are not supported, then ASSERT(). This function must guarantee that all MMIO read and write operations are serialized.

Parameters:
Address The MMIO register to read. The caller is responsible for aligning the Address if required.
Width The width of the I/O operation.
Returns:
Data read from registers in the EFI system memory space.

References ASSERT_EFI_ERROR, gSmst, _EFI_SMM_CPU_IO2_PROTOCOL::Mem, EFI_SMM_IO_ACCESS2::Read, and _EFI_SMM_SYSTEM_TABLE2::SmmIo.

UINT64 EFIAPI MmioWriteWorker ( IN UINTN  Address,
IN EFI_SMM_IO_WIDTH  Width,
IN UINT64  Data 
)

Writes memory-mapped registers in the EFI system memory space.

Writes the MMIO registers specified by Address with registers width and value specified by Width and Data respectively. Data is returned. If such operations are not supported, then ASSERT(). This function must guarantee that all MMIO read and write operations are serialized.

Parameters:
Address The MMIO register to read. The caller is responsible for aligning the Address if required.
Width The width of the I/O operation.
Data The value to write to the I/O port.
Returns:
Data read from registers in the EFI system memory space.

References ASSERT_EFI_ERROR, gSmst, _EFI_SMM_CPU_IO2_PROTOCOL::Mem, _EFI_SMM_SYSTEM_TABLE2::SmmIo, and EFI_SMM_IO_ACCESS2::Write.


Generated on Thu Sep 24 23:14:24 2015 for MdePkg[ALL] by  doxygen 1.5.7.1