From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by mx.groups.io with SMTP id smtpd.web09.2534.1607988240990991571 for ; Mon, 14 Dec 2020 15:24:01 -0800 Authentication-Results: mx.groups.io; dkim=missing; spf=pass (domain: arm.com, ip: 217.140.110.172, mailfrom: jeremy.linton@arm.com) Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 9EFE731B; Mon, 14 Dec 2020 15:24:00 -0800 (PST) Received: from mammon-tx2.austin.arm.com (mammon-tx2.austin.arm.com [10.118.28.62]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 98B6C3F66E; Mon, 14 Dec 2020 15:24:00 -0800 (PST) From: "Jeremy Linton" To: devel@edk2.groups.io Cc: ard.biesheuvel@arm.com, leif@nuviainc.com, pete@akeo.ie, andrey.warkentin@gmail.com, samer.el-haj-mahmoud@arm.com, Jeremy Linton Subject: [PATCH 5/7] Platform/RaspberryPi/Arasan: Select the correct base frequency Date: Mon, 14 Dec 2020 17:23:48 -0600 Message-Id: <20201214232350.1192387-6-jeremy.linton@arm.com> X-Mailer: git-send-email 2.26.2 In-Reply-To: <20201214232350.1192387-1-jeremy.linton@arm.com> References: <20201214232350.1192387-1-jeremy.linton@arm.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable The firmware reports the emmc2 frequency with a slightly different mailbox command, lets select the correct one based on which controller we are binding to. Signed-off-by: Jeremy Linton --- .../RaspberryPi/Drivers/ArasanMmcHostDxe/ArasanMmcHostDxe.c | 10 ++++++= +--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/Platform/RaspberryPi/Drivers/ArasanMmcHostDxe/ArasanMmcHostDxe= .c b/Platform/RaspberryPi/Drivers/ArasanMmcHostDxe/ArasanMmcHostDxe.c index a7b538a91a..b0f03cefc9 100644 --- a/Platform/RaspberryPi/Drivers/ArasanMmcHostDxe/ArasanMmcHostDxe.c +++ b/Platform/RaspberryPi/Drivers/ArasanMmcHostDxe/ArasanMmcHostDxe.c @@ -250,7 +250,11 @@ CalculateClockFrequencyDivisor ( UINT32 Divisor;=0D UINT32 BaseFrequency =3D 0;=0D =0D - Status =3D mFwProtocol->GetClockRate (RPI_MBOX_CLOCK_RATE_EMMC, &BaseFre= quency);=0D + if (PcdGet32 (PcdSdIsArasan)) {=0D + Status =3D mFwProtocol->GetClockRate (RPI_MBOX_CLOCK_RATE_EMMC, &BaseF= requency);=0D + } else {=0D + Status =3D mFwProtocol->GetClockRate (RPI_MBOX_CLOCK_RATE_EMMC2, &Base= Frequency);=0D + }=0D if (EFI_ERROR (Status)) {=0D DEBUG ((DEBUG_ERROR, "Couldn't get RPI_MBOX_CLOCK_RATE_EMMC\n"));=0D return Status;=0D @@ -472,8 +476,8 @@ MMCNotifyState ( switch (State) {=0D case MmcHwInitializationState:=0D {=0D - EFI_STATUS Status;=0D - UINT32 Divisor;=0D +=0D + DEBUG ((DEBUG_MMCHOST_SD, "ArasanMMCHost: current divisor %x\n", Mmi= oRead32(MMCHS_SYSCTL)));=0D =0D Status =3D SoftReset (SRA);=0D if (EFI_ERROR (Status)) {=0D --=20 2.13.7