From mboxrd@z Thu Jan 1 00:00:00 1970 From: Marek Vasut Date: Tue, 23 Oct 2012 11:50:49 +0200 Subject: [U-Boot] [PATCH] powerpc/esdhc: force the bus width to 4bit In-Reply-To: <110EED8CC96DFC488B7E717A2027A27C1C69C2@039-SN1MPN1-003.039d.mgd.msft.net> References: <1350973580-31726-1-git-send-email-Chang-Ming.Huang@freescale.com> <201210230924.28042.marex@denx.de> <110EED8CC96DFC488B7E717A2027A27C1C69C2@039-SN1MPN1-003.039d.mgd.msft.net> Message-ID: <201210231150.49779.marex@denx.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Dear Huang Changming-R66093, > Best Regards > Jerry Huang > > > -----Original Message----- > > From: Marek Vasut [mailto:marex at denx.de] > > Sent: Tuesday, October 23, 2012 3:24 PM > > To: Huang Changming-R66093 > > Cc: u-boot at lists.denx.de; Andy Fleming > > Subject: Re: [PATCH] powerpc/esdhc: force the bus width to 4bit > > > > Dear Chang-Ming.Huang at freescale.com, > > > > > From: Jerry Huang > > > > > > For the current u-boot codes, only 4bit/1bit SD/SDHC bus width is > > > > support. > > > > > So for MMC card, we also support 4bit bus width, otherwiase, we will > > > > > get the 12bit bus width, which is not correct: > > Andy ... can you please explain? I don't quite understand the problem, I > > thought we had no problem supporting 8bit mmc (esp. if the controller > > handles that for us mostly). > > Yes, the controller support 8bit MMC. > > FSL ESDHC driver set the host_caps = MMC_MODE_4BIT | MMC_MODE_8BIT; > But, the current codes for MMC card has been changed to: > > } else { > width = ((mmc->host_caps & MMC_MODE_MASK_WIDTH_BITS) >> > MMC_MODE_WIDTH_BITS_SHIFT); > for (; width >= 0; width--) { > .... > > So for FSL ESDHC, the width = 3, after implement mmc_switch successfully, > will set the bus to 4 * width. Therefore, I will get the 12bit (4 x 3) bus > width. > > Below is the old codes (width = 2): > } else { > for (width = EXT_CSD_BUS_WIDTH_8; width >= 0; width--) { [...] Uh, so it's a bug in the MMC subsystem? Best regards, Marek Vasut