From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ziyuan Xu Date: Wed, 27 Jul 2016 21:37:19 +0800 Subject: [U-Boot] [PATCH] mmc: send CMD0 before CMD1 for some MMC cards In-Reply-To: <579897E4.2030207@samsung.com> References: <1457492423-29558-1-git-send-email-yangbo.lu@nxp.com> <579897E4.2030207@samsung.com> Message-ID: <5798B90F.7090302@rock-chips.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On 2016?07?27? 19:15, Jaehoon Chung wrote: > On 07/27/2016 04:28 PM, Yangbo Lu wrote: >> Hi Tom, >> >> Could you help to assign this mmc patch reviewing to right person? >> It seems no one had reviewed it for almost half year. >> >> And another my mmc patch also needs to be reviewed. >> I submitted in May. Please help. >> http://patchwork.ozlabs.org/patch/624448/ >> >> >> Thank you very much. >> >> >> Best regards, >> Yangbo Lu >> >>> -----Original Message----- >>> From: Yangbo Lu [mailto:yangbo.lu at nxp.com] >>> Sent: Wednesday, March 09, 2016 11:00 AM >>> To: u-boot at lists.denx.de >>> Cc: Pantelis Antoniou; Yangbo Lu >>> Subject: [PATCH] mmc: send CMD0 before CMD1 for some MMC cards >>> >>> When the MMC framework was added in u-boot, the mmc_go_idle was added >>> before mmc_send_op_cond_iter in function mmc_send_op_cond annotating that >>> some cards seemed to need this. Actually, we still need to do this in >>> function mmc_complete_op_cond for those cards. >>> This has been verified on Micron MTFC4GACAECN eMMC chip. > If there is no go_idle(), then what happen? > If you share the information more, i can check the more.. Sounds interesting, I also want want to know what happen? It seems like you failed in CMD1? The eMMC device was always in busy device within 1 second? > > Best Regards, > Jaehoon Chung > >>> Signed-off-by: Yangbo Lu >>> --- >>> drivers/mmc/mmc.c | 3 +++ >>> 1 file changed, 3 insertions(+) >>> >>> diff --git a/drivers/mmc/mmc.c b/drivers/mmc/mmc.c index ede5d6e..82e3268 >>> 100644 >>> --- a/drivers/mmc/mmc.c >>> +++ b/drivers/mmc/mmc.c >>> @@ -418,6 +418,9 @@ static int mmc_complete_op_cond(struct mmc *mmc) >>> uint start; >>> int err; >>> >>> + /* Some cards seem to need this */ >>> + mmc_go_idle(mmc); >>> + >>> mmc->op_cond_pending = 0; >>> if (!(mmc->ocr & OCR_BUSY)) { >>> start = get_timer(0); >>> -- >>> 2.1.0.27.g96db324 >> _______________________________________________ >> U-Boot mailing list >> U-Boot at lists.denx.de >> http://lists.denx.de/mailman/listinfo/u-boot >> >> >> > _______________________________________________ > U-Boot mailing list > U-Boot at lists.denx.de > http://lists.denx.de/mailman/listinfo/u-boot