]> git.proxmox.com Git - mirror_edk2.git/blob - MdeModulePkg/Include/Ppi/SdMmcHostController.h
UefiCpuPkg: Move AsmRelocateApLoopStart from Mpfuncs.nasm to AmdSev.nasm
[mirror_edk2.git] / MdeModulePkg / Include / Ppi / SdMmcHostController.h
1 /** @file
2
3 Copyright (c) 2015, Intel Corporation. All rights reserved.<BR>
4
5 SPDX-License-Identifier: BSD-2-Clause-Patent
6
7 **/
8
9 #ifndef _EDKII_PEI_SD_MMC_HOST_CONTROLLER_PPI_H_
10 #define _EDKII_PEI_SD_MMC_HOST_CONTROLLER_PPI_H_
11
12 ///
13 /// Global ID for the EDKII_SD_MMC_HOST_CONTROLLER_PPI.
14 ///
15 #define EDKII_SD_MMC_HOST_CONTROLLER_PPI_GUID \
16 { \
17 0xb30dfeed, 0x947f, 0x4396, { 0xb1, 0x5a, 0xdf, 0xbd, 0xb9, 0x16, 0xdc, 0x24 } \
18 }
19
20 ///
21 /// Forward declaration for the SD_MMC_HOST_CONTROLLER_PPI.
22 ///
23 typedef struct _EDKII_SD_MMC_HOST_CONTROLLER_PPI EDKII_SD_MMC_HOST_CONTROLLER_PPI;
24
25 /**
26 Get the MMIO base address of SD/MMC host controller.
27
28 @param[in] This The protocol instance pointer.
29 @param[in] ControllerId The ID of the SD/MMC host controller.
30 @param[in,out] MmioBar The pointer to store the array of available
31 SD/MMC host controller slot MMIO base addresses.
32 The entry number of the array is specified by BarNum.
33 @param[out] BarNum The pointer to store the supported bar number.
34
35 @retval EFI_SUCCESS The operation succeeds.
36 @retval EFI_INVALID_PARAMETER The parameters are invalid.
37
38 **/
39 typedef
40 EFI_STATUS
41 (EFIAPI *EDKII_SD_MMC_HC_GET_MMIO_BAR)(
42 IN EDKII_SD_MMC_HOST_CONTROLLER_PPI *This,
43 IN UINT8 ControllerId,
44 IN OUT UINTN **MmioBar,
45 OUT UINT8 *BarNum
46 );
47
48 ///
49 /// This PPI contains a set of services to interact with the SD_MMC host controller.
50 ///
51 struct _EDKII_SD_MMC_HOST_CONTROLLER_PPI {
52 EDKII_SD_MMC_HC_GET_MMIO_BAR GetSdMmcHcMmioBar;
53 };
54
55 extern EFI_GUID gEdkiiPeiSdMmcHostControllerPpiGuid;
56
57 #endif