From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dirk Behme Date: Sun, 15 Jul 2012 08:56:35 +0200 Subject: [U-Boot] i.MX dcache issues In-Reply-To: <386549548.1363378.1342303697853.JavaMail.root@advansee.com> References: <386549548.1363378.1342303697853.JavaMail.root@advansee.com> Message-ID: <500269A3.60105@googlemail.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 15.07.2012 00:08, Beno?t Th?baudeau wrote: > On Sat, Jul 14, 2012 at 11:28:03PM +0200, Beno?t Th?baudeau wrote: >> Shouldn't the MMC/eSDHC drivers flush/invalidate the dcache ranges >> that they use >> for DMA operations? Not doing so would explain why stack-allocated >> buffers are >> more affected than buffers in unused RAM areas. > > That will help: > http://git.denx.de/?p=u-boot/u-boot-mmc.git;a=commitdiff;h=e576bd90f940806b989ffd666552081f17f032c8 Are you sure that this patch does really help? If I remember correctly (will re-check) we have this patch locally applied. But even with this patch, we have issues so that we enabled CONFIG_SYS_DCACHE_OFF, i.e. disabled the dcache. The issues we observed *without* CONFIG_SYS_DCACHE_OFF: The SD card was detected as 1-bit only (mmcinfo), while with dcache off it was used as 4-bit. Debugging this showed that wrong configuration data was read [1]. Having a fat partition on the card, mmc part/fatls etc failed, too, with cache enabled. Best regards Dirk [1] http://git.denx.de/?p=u-boot.git;a=blob;f=drivers/mmc/mmc.c;h=aebe578ff6f2e0228baa3e5d010f6808ea269760;hb=HEAD#l856 mmc->scr[0]/scr[1] contained random data