/** @file Install Board Info Data. @copyright Copyright 2019 - 2021 Intel Corporation.
SPDX-License-Identifier: BSD-2-Clause-Patent **/ #include "PeiCommonBoardInitLib.h" #include #include #include #include STATIC SIO_INDEX_DATA mSioInitTable[] = { // // Init GPIO // { PILOTIV_LOGICAL_DEVICE, PILOTIV_SIO_GPIO }, { PILOTIV_ACTIVATE, 0x01 }, { PILOTIV_BASE_ADDRESS_HIGH0, (UINT8) ((UINT16) SIO_GPIO_BASE_ADDRESS >> 8) }, { PILOTIV_BASE_ADDRESS_LOW0, (UINT8) (SIO_GPIO_BASE_ADDRESS & 0x00ff) } }; // // Platform board sio information structure // static PEI_BOARD_SIO_INFO BoardSioInfoData = { BOARD_SIO_INFO_DATA_SIGNATURE, BOARD_SIO_INFO_DATA_VERSION, // // SIO Initialization table // PILOTIV_SIO_INDEX_PORT, // SIO Index port PILOTIV_SIO_DATA_PORT, // SIO Data port mSioInitTable, // mSioInitTable - contains the settings for initializing the SIO. sizeof(mSioInitTable)/sizeof(SIO_INDEX_DATA) // NumSioItems - Number of items in the SIO init table. }; EFI_STATUS InstallBoardInfoData ( IN UBA_CONFIG_DATABASE_PPI *UbaConfigPpi ) { EFI_STATUS Status = EFI_SUCCESS; Status = UbaConfigPpi->AddData ( UbaConfigPpi, &gPlatformBoardSioInfoDataGuid, &BoardSioInfoData, sizeof(PEI_BOARD_SIO_INFO) ); return Status; }