X-Git-Url: https://git.proxmox.com/?p=mirror_edk2.git;a=blobdiff_plain;f=MdeModulePkg%2FInclude%2FPpi%2FSdMmcHostController.h;fp=MdeModulePkg%2FInclude%2FPpi%2FSdMmcHostController.h;h=85dee24526e2efc004425090a3d0afc52d9ce523;hp=0000000000000000000000000000000000000000;hb=48555339beb65f90bd42995a15bd38cd45e378f5;hpb=627373d7e732bcaade040f022686fea737ec6900 diff --git a/MdeModulePkg/Include/Ppi/SdMmcHostController.h b/MdeModulePkg/Include/Ppi/SdMmcHostController.h new file mode 100644 index 0000000000..85dee24526 --- /dev/null +++ b/MdeModulePkg/Include/Ppi/SdMmcHostController.h @@ -0,0 +1,64 @@ +/** @file + +Copyright (c) 2015, 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. + +**/ + +#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