/** @file | |
Copyright (c) 2015, Intel Corporation. All rights reserved.<BR> | |
SPDX-License-Identifier: BSD-2-Clause-Patent | |
**/ | |
#ifndef _EDKII_PEI_SD_MMC_HOST_CONTROLLER_PPI_H_ | |
#define _EDKII_PEI_SD_MMC_HOST_CONTROLLER_PPI_H_ | |
/// | |
/// Global ID for the EDKII_SD_MMC_HOST_CONTROLLER_PPI. | |
/// | |
#define EDKII_SD_MMC_HOST_CONTROLLER_PPI_GUID \ | |
{ \ | |
0xb30dfeed, 0x947f, 0x4396, { 0xb1, 0x5a, 0xdf, 0xbd, 0xb9, 0x16, 0xdc, 0x24 } \ | |
} | |
/// | |
/// Forward declaration for the SD_MMC_HOST_CONTROLLER_PPI. | |
/// | |
typedef struct _EDKII_SD_MMC_HOST_CONTROLLER_PPI EDKII_SD_MMC_HOST_CONTROLLER_PPI; | |
/** | |
Get the MMIO base address of SD/MMC host controller. | |
@param[in] This The protocol instance pointer. | |
@param[in] ControllerId The ID of the SD/MMC host controller. | |
@param[in,out] MmioBar The pointer to store the array of available | |
SD/MMC host controller slot MMIO base addresses. | |
The entry number of the array is specified by BarNum. | |
@param[out] BarNum The pointer to store the supported bar number. | |
@retval EFI_SUCCESS The operation succeeds. | |
@retval EFI_INVALID_PARAMETER The parameters are invalid. | |
**/ | |
typedef | |
EFI_STATUS | |
(EFIAPI *EDKII_SD_MMC_HC_GET_MMIO_BAR)( | |
IN EDKII_SD_MMC_HOST_CONTROLLER_PPI *This, | |
IN UINT8 ControllerId, | |
IN OUT UINTN **MmioBar, | |
OUT UINT8 *BarNum | |
); | |
/// | |
/// This PPI contains a set of services to interact with the SD_MMC host controller. | |
/// | |
struct _EDKII_SD_MMC_HOST_CONTROLLER_PPI { | |
EDKII_SD_MMC_HC_GET_MMIO_BAR GetSdMmcHcMmioBar; | |
}; | |
extern EFI_GUID gEdkiiPeiSdMmcHostControllerPpiGuid; | |
#endif |