+++ /dev/null
-/** @file\r
-PlatformHelperLib function prototype definitions.\r
-\r
-Copyright (c) 2013 - 2016 Intel Corporation.\r
-\r
-SPDX-License-Identifier: BSD-2-Clause-Patent\r
-\r
-**/\r
-\r
-#ifndef __PLATFORM_HELPER_LIB_H__\r
-#define __PLATFORM_HELPER_LIB_H__\r
-\r
-#include "Platform.h"\r
-\r
-//\r
-// Function prototypes for routines exported by this library.\r
-//\r
-\r
-/**\r
- Find pointer to RAW data in Firmware volume file.\r
-\r
- @param FvNameGuid Firmware volume to search. If == NULL search all.\r
- @param FileNameGuid Firmware volume file to search for.\r
- @param SectionData Pointer to RAW data section of found file.\r
- @param SectionDataSize Pointer to UNITN to get size of RAW data.\r
-\r
- @retval EFI_SUCCESS Raw Data found.\r
- @retval EFI_INVALID_PARAMETER FileNameGuid == NULL.\r
- @retval EFI_NOT_FOUND Firmware volume file not found.\r
- @retval EFI_UNSUPPORTED Unsupported in current enviroment (PEI or DXE).\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-PlatformFindFvFileRawDataSection (\r
- IN CONST EFI_GUID *FvNameGuid OPTIONAL,\r
- IN CONST EFI_GUID *FileNameGuid,\r
- OUT VOID **SectionData,\r
- OUT UINTN *SectionDataSize\r
- );\r
-\r
-/**\r
- Find free spi protect register and write to it to protect a flash region.\r
-\r
- @param DirectValue Value to directly write to register.\r
- if DirectValue == 0 the use Base & Length below.\r
- @param BaseAddress Base address of region in Flash Memory Map.\r
- @param Length Length of region to protect.\r
-\r
- @retval EFI_SUCCESS Free spi protect register found & written.\r
- @retval EFI_NOT_FOUND Free Spi protect register not found.\r
- @retval EFI_DEVICE_ERROR Unable to write to spi protect register.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-PlatformWriteFirstFreeSpiProtect (\r
- IN CONST UINT32 DirectValue,\r
- IN CONST UINT32 BaseAddress,\r
- IN CONST UINT32 Length\r
- );\r
-\r
-/**\r
- Lock legacy SPI static configuration information.\r
-\r
- Function will assert if unable to lock config.\r
-\r
-**/\r
-VOID\r
-EFIAPI\r
-PlatformFlashLockConfig (\r
- VOID\r
- );\r
-\r
-/**\r
- Lock regions and config of SPI flash given the policy for this platform.\r
-\r
- Function will assert if unable to lock regions or config.\r
-\r
- @param PreBootPolicy If TRUE do Pre Boot Flash Lock Policy.\r
-\r
-**/\r
-VOID\r
-EFIAPI\r
-PlatformFlashLockPolicy (\r
- IN CONST BOOLEAN PreBootPolicy\r
- );\r
-\r
-/** Check if System booted with recovery Boot Stage1 image.\r
-\r
- @retval TRUE If system booted with recovery Boot Stage1 image.\r
- @retval FALSE If system booted with normal stage1 image.\r
-\r
-**/\r
-BOOLEAN\r
-EFIAPI\r
-PlatformIsBootWithRecoveryStage1 (\r
- VOID\r
- );\r
-\r
-/**\r
- Clear SPI Protect registers.\r
-\r
- @retval EFI_SUCESS SPI protect registers cleared.\r
- @retval EFI_ACCESS_DENIED Unable to clear SPI protect registers.\r
-**/\r
-\r
-EFI_STATUS\r
-EFIAPI\r
-PlatformClearSpiProtect (\r
- VOID\r
- );\r
-\r
-/**\r
- Determine if an SPI address range is protected.\r
-\r
- @param SpiBaseAddress Base of SPI range.\r
- @param Length Length of SPI range.\r
-\r
- @retval TRUE Range is protected.\r
- @retval FALSE Range is not protected.\r
-**/\r
-BOOLEAN\r
-EFIAPI\r
-PlatformIsSpiRangeProtected (\r
- IN CONST UINT32 SpiBaseAddress,\r
- IN CONST UINT32 Length\r
- );\r
-\r
-/**\r
- Set Legacy GPIO Level\r
-\r
- @param LevelRegOffset GPIO level register Offset from GPIO Base Address.\r
- @param GpioNum GPIO bit to change.\r
- @param HighLevel If TRUE set GPIO High else Set GPIO low.\r
-\r
-**/\r
-VOID\r
-EFIAPI\r
-PlatformLegacyGpioSetLevel (\r
- IN CONST UINT32 LevelRegOffset,\r
- IN CONST UINT32 GpioNum,\r
- IN CONST BOOLEAN HighLevel\r
- );\r
-\r
-/**\r
- Get Legacy GPIO Level\r
-\r
- @param LevelRegOffset GPIO level register Offset from GPIO Base Address.\r
- @param GpioNum GPIO bit to check.\r
-\r
- @retval TRUE If bit is SET.\r
- @retval FALSE If bit is CLEAR.\r
-\r
-**/\r
-BOOLEAN\r
-EFIAPI\r
-PlatformLegacyGpioGetLevel (\r
- IN CONST UINT32 LevelRegOffset,\r
- IN CONST UINT32 GpioNum\r
- );\r
-\r
-/**\r
- Set the direction of Pcal9555 IO Expander GPIO pin.\r
-\r
- @param Pcal9555SlaveAddr I2c Slave address of Pcal9555 Io Expander.\r
- @param GpioNum Gpio direction to configure - values 0-7 for Port0\r
- and 8-15 for Port1.\r
- @param CfgAsInput If TRUE set pin direction as input else set as output.\r
-\r
-**/\r
-VOID\r
-EFIAPI\r
-PlatformPcal9555GpioSetDir (\r
- IN CONST UINT32 Pcal9555SlaveAddr,\r
- IN CONST UINT32 GpioNum,\r
- IN CONST BOOLEAN CfgAsInput\r
- );\r
-\r
-/**\r
- Set the level of Pcal9555 IO Expander GPIO high or low.\r
-\r
- @param Pcal9555SlaveAddr I2c Slave address of Pcal9555 Io Expander.\r
- @param GpioNum Gpio to change values 0-7 for Port0 and 8-15\r
- for Port1.\r
- @param HighLevel If TRUE set pin high else set pin low.\r
-\r
-**/\r
-VOID\r
-EFIAPI\r
-PlatformPcal9555GpioSetLevel (\r
- IN CONST UINT32 Pcal9555SlaveAddr,\r
- IN CONST UINT32 GpioNum,\r
- IN CONST BOOLEAN HighLevel\r
- );\r
-\r
-/**\r
-\r
- Enable pull-up/pull-down resistors of Pcal9555 GPIOs.\r
-\r
- @param Pcal9555SlaveAddr I2c Slave address of Pcal9555 Io Expander.\r
- @param GpioNum Gpio to change values 0-7 for Port0 and 8-15\r
- for Port1.\r
-\r
-**/\r
-VOID\r
-EFIAPI\r
-PlatformPcal9555GpioEnablePull (\r
- IN CONST UINT32 Pcal9555SlaveAddr,\r
- IN CONST UINT32 GpioNum\r
- );\r
-\r
-/**\r
-\r
- Disable pull-up/pull-down resistors of Pcal9555 GPIOs.\r
-\r
- @param Pcal9555SlaveAddr I2c Slave address of Pcal9555 Io Expander.\r
- @param GpioNum Gpio to change values 0-7 for Port0 and 8-15\r
- for Port1.\r
-\r
-**/\r
-VOID\r
-EFIAPI\r
-PlatformPcal9555GpioDisablePull (\r
- IN CONST UINT32 Pcal9555SlaveAddr,\r
- IN CONST UINT32 GpioNum\r
- );\r
-\r
-BOOLEAN\r
-EFIAPI\r
-PlatformPcal9555GpioGetState (\r
- IN CONST UINT32 Pcal9555SlaveAddr,\r
- IN CONST UINT32 GpioNum\r
- );\r
-\r
-/**\r
- Init platform LEDs into known state.\r
-\r
- @param PlatformType Executing platform type.\r
-\r
- @retval EFI_SUCCESS Operation success.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-PlatformLedInit (\r
- IN CONST EFI_PLATFORM_TYPE Type\r
- );\r
-\r
-/**\r
- Turn on or off platform flash update LED.\r
-\r
- @param PlatformType Executing platform type.\r
- @param TurnOn If TRUE turn on else turn off.\r
-\r
- @retval EFI_SUCCESS Operation success.\r
-\r
-**/\r
-EFI_STATUS\r
-EFIAPI\r
-PlatformFlashUpdateLed (\r
- IN CONST EFI_PLATFORM_TYPE Type,\r
- IN CONST BOOLEAN TurnOn\r
- );\r
-\r
-#endif // #ifndef __PLATFORM_HELPER_LIB_H__\r