aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Drivers/SdMmc/DwMmcHcDxe/DwMmcHcDxe.c4
-rw-r--r--Drivers/SdMmc/DwMmcHcDxe/DwMmcHci.c3
-rw-r--r--Drivers/SdMmc/DwMmcHcDxe/DwMmcHci.h7
-rw-r--r--Include/Protocol/PlatformDwMmc.h1
4 files changed, 9 insertions, 6 deletions
diff --git a/Drivers/SdMmc/DwMmcHcDxe/DwMmcHcDxe.c b/Drivers/SdMmc/DwMmcHcDxe/DwMmcHcDxe.c
index 55e2fa4..f3c9156 100644
--- a/Drivers/SdMmc/DwMmcHcDxe/DwMmcHcDxe.c
+++ b/Drivers/SdMmc/DwMmcHcDxe/DwMmcHcDxe.c
@@ -248,7 +248,7 @@ return;
for (Slot = 0; Slot < DW_MMC_HC_MAX_SLOT; Slot++) {
if ((Private->Slot[Slot].Enable) && (Private->Slot[Slot].SlotType == RemovableSlot)) {
- Status = DwMmcHcCardDetect (Private->PciIo, Slot, &MediaPresent);
+ Status = DwMmcHcCardDetect (Private->PciIo, Private->ControllerHandle, Slot, &MediaPresent);
if ((Status == EFI_MEDIA_CHANGED) && !MediaPresent) {
DEBUG ((DEBUG_INFO, "DwMmcHcEnumerateDevice: device disconnected at slot %d of pci %p\n", Slot, Private->PciIo));
Private->Slot[Slot].MediaPresent = FALSE;
@@ -679,7 +679,7 @@ DwMmcHcDriverBindingStart (
DumpCapabilityReg (Slot, &Private->Capability[Slot]);
MediaPresent = FALSE;
- Status = DwMmcHcCardDetect (Private->PciIo, Slot, &MediaPresent);
+ Status = DwMmcHcCardDetect (Private->PciIo, Controller, Slot, &MediaPresent);
if (MediaPresent == FALSE) {
continue;
}
diff --git a/Drivers/SdMmc/DwMmcHcDxe/DwMmcHci.c b/Drivers/SdMmc/DwMmcHcDxe/DwMmcHci.c
index 533f911..3d03780 100644
--- a/Drivers/SdMmc/DwMmcHcDxe/DwMmcHci.c
+++ b/Drivers/SdMmc/DwMmcHcDxe/DwMmcHci.c
@@ -524,6 +524,7 @@ DwMmcHcGetMaxCurrent (
EFI_STATUS
DwMmcHcCardDetect (
IN EFI_PCI_IO_PROTOCOL *PciIo,
+ IN EFI_HANDLE Controller,
IN UINT8 Slot,
OUT BOOLEAN *MediaPresent
)
@@ -542,7 +543,7 @@ DwMmcHcCardDetect (
if (EFI_ERROR (Status)) {
return Status;
}
- *MediaPresent = PlatformDwMmc->CardDetect (Slot);
+ *MediaPresent = PlatformDwMmc->CardDetect (Controller, Slot);
return EFI_SUCCESS;
}
diff --git a/Drivers/SdMmc/DwMmcHcDxe/DwMmcHci.h b/Drivers/SdMmc/DwMmcHcDxe/DwMmcHci.h
index 228b20f..d9c6211 100644
--- a/Drivers/SdMmc/DwMmcHcDxe/DwMmcHci.h
+++ b/Drivers/SdMmc/DwMmcHcDxe/DwMmcHci.h
@@ -522,9 +522,10 @@ DwMmcHcGetMaxCurrent (
**/
EFI_STATUS
DwMmcHcCardDetect (
- IN EFI_PCI_IO_PROTOCOL *PciIo,
- IN UINT8 Slot,
- OUT BOOLEAN *MediaPresent
+ IN EFI_PCI_IO_PROTOCOL *PciIo,
+ IN EFI_HANDLE Controller,
+ IN UINT8 Slot,
+ OUT BOOLEAN *MediaPresent
);
/**
diff --git a/Include/Protocol/PlatformDwMmc.h b/Include/Protocol/PlatformDwMmc.h
index fe2259b..bf315c4 100644
--- a/Include/Protocol/PlatformDwMmc.h
+++ b/Include/Protocol/PlatformDwMmc.h
@@ -65,6 +65,7 @@ EFI_STATUS
typedef
BOOLEAN
(EFIAPI *PLATFORM_DW_MMC_CARD_DETECT) (
+ IN EFI_HANDLE Controller,
IN UINT8 Slot
);