[edk2-devel] [PATCH v2 1/7] EmbeddedPkg: Add SD command support for DwEmmc
Leif Lindholm
leif.lindholm at linaro.org
Tue May 28 17:37:33 UTC 2019
Hi Tien Hock,
Thanks for resubmitting this.
On Mon, May 27, 2019 at 05:30:22PM +0800, tien.hock.loh at intel.com wrote:
> From: "TIen Hock, Loh" <tien.hock.loh at intel.com>
>
> Added ACMD6 for SD support. For SD, after CMD55 is sent, the next
> command should be an application command, which should not expect
> data
>
> Signed-off-by: "Tien Hock, Loh" <tien.hock.loh at intel.com>
> Cc: Leif Lindholm <leif.lindholm at linaro.org>
> Cc: Ard Biesheuvel <ard.biesheuvel at linaro.org>
>
> --
> v2:
> - Move IsACmd as a local static variable in function
> - Fix some coding standard issue with spacing
> ---
> EmbeddedPkg/Drivers/DwEmmcDxe/DwEmmcDxe.c | 20 ++++++++++++++++++++
> 1 file changed, 20 insertions(+)
>
> diff --git a/EmbeddedPkg/Drivers/DwEmmcDxe/DwEmmcDxe.c b/EmbeddedPkg/Drivers/DwEmmcDxe/DwEmmcDxe.c
> index 68c523a99f..420487757d 100644
> --- a/EmbeddedPkg/Drivers/DwEmmcDxe/DwEmmcDxe.c
> +++ b/EmbeddedPkg/Drivers/DwEmmcDxe/DwEmmcDxe.c
> @@ -307,6 +307,7 @@ DwEmmcSendCommand (
> {
> UINT32 Cmd = 0;
> EFI_STATUS Status = EFI_SUCCESS;
> + STATIC BOOLEAN IsACmd = FALSE;
>
> switch (MMC_GET_INDX(MmcCmd)) {
> case MMC_INDX(0):
> @@ -323,6 +324,15 @@ DwEmmcSendCommand (
> Cmd = BIT_CMD_RESPONSE_EXPECT | BIT_CMD_CHECK_RESPONSE_CRC |
> BIT_CMD_SEND_INIT;
> break;
> + case MMC_INDX (6):
> + if(IsACmd) {
> + Cmd = BIT_CMD_RESPONSE_EXPECT;
> + }
> + else {
I remarked last time that the else should be on the same line as }.
> + Cmd = BIT_CMD_RESPONSE_EXPECT | BIT_CMD_DATA_EXPECTED |
> + BIT_CMD_READ;
> + }
> + break;
> case MMC_INDX(7):
> if (Argument)
> Cmd = BIT_CMD_RESPONSE_EXPECT | BIT_CMD_CHECK_RESPONSE_CRC;
> @@ -367,12 +377,22 @@ DwEmmcSendCommand (
> Cmd = BIT_CMD_RESPONSE_EXPECT | BIT_CMD_CHECK_RESPONSE_CRC |
> BIT_CMD_DATA_EXPECTED;
> break;
> + case MMC_INDX (51):
> + Cmd = BIT_CMD_RESPONSE_EXPECT | BIT_CMD_DATA_EXPECTED |
> + BIT_CMD_READ | BIT_CMD_WAIT_PRVDATA_COMPLETE;
> + break;
> default:
> Cmd = BIT_CMD_RESPONSE_EXPECT | BIT_CMD_CHECK_RESPONSE_CRC;
> break;
> }
>
> Cmd |= MMC_GET_INDX(MmcCmd) | BIT_CMD_USE_HOLD_REG | BIT_CMD_START;
> +
> + if(MMC_INDX (55) == MMC_GET_INDX (MmcCmd))
Space after if.
> + IsACmd = TRUE;
> + else
> + IsACmd = FALSE;
Even though some code in this file takes liberties with the use of {
and }, please add them for both if and else.
/
Leif
> +
> if (IsPendingReadCommand (Cmd) || IsPendingWriteCommand (Cmd)) {
> mDwEmmcCommand = Cmd;
> mDwEmmcArgument = Argument;
> --
> 2.19.0
>
-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.
View/Reply Online (#41533): https://edk2.groups.io/g/devel/message/41533
Mute This Topic: https://groups.io/mt/31807960/1813853
Group Owner: devel+owner at edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub [edk2-devel-archive at redhat.com]
-=-=-=-=-=-=-=-=-=-=-=-
More information about the edk2-devel-archive
mailing list