From mboxrd@z Thu Jan 1 00:00:00 1970 From: Heiko Schocher Date: Thu, 21 Oct 2010 12:50:01 +0200 Subject: [U-Boot] ELF_RELOC causes strange I-cache issues In-Reply-To: <4CC01719.30706@free.fr> References: <20101020184930.E89F7136320@gemini.denx.de> <4CBF4D17.6020403@free.fr> <20101020205401.39B4D1359B3@gemini.denx.de> <1287652681-4085-1-git-send-email-albert.aribaud@free.fr> <4CC00D3D.2090700@denx.de> <4CC011B4.9060808@emk-elektronik.de> <4CC01719.30706@free.fr> Message-ID: <4CC01AD9.60207@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 Hello Albert, Albert ARIBAUD wrote: > Le 21/10/2010 12:11, Reinhard Meyer a ?crit : >> Hello, >> >> observation here: >> >> ICACHE is always ON. No crash with "usb read 21000000 0 1000" >> Sorry that I can't reproduce the problem here, not even with 10000 >> blocks. >> (tried a few dozen times) >> (ARM926EJS - AT91SAM9XE) >> (based on TOT 3ed16071b006dbda65070a4143db74da469f6e30 of 35h ago) >> >> But with DCACHE ON, the USB Stick is not found - maybe a timing problem: >> >> TOP9000> dc off >> Data (writethrough) Cache is OFF >> TOP9000> usb reset >> (Re)start USB... >> USB: scanning bus for devices... 2 USB Device(s) found >> scanning bus for storage devices... 1 Storage Device(s) found >> TOP9000> dc on >> Data (writethrough) Cache is ON >> TOP9000> usb reset >> (Re)start USB... >> USB: scanning bus for devices... ERROR: CTL:TIMEOUT >> 2 USB Device(s) found >> scanning bus for storage devices... 0 Storage Device(s) found >> TOP9000> >> >> >> Reinhard > > If the USB controller uses DMA, then the DCache issue probably has to do > with making sure to flush the (relevant lines of) cache before > memory-to-device DMAs and to invalidate the (again, relevant lines of) > cache after device-to-memory DMAs. Yep. I think if you want to use dcache here, you have to activate CONFIG_EHCI_DCACHE and implement the flush_dcache_range(), invalidate_dcache_range(), flush_invalidate() functions for your plattform, if not implemented yet. > And I suggest we move this dcache issue to its own discussion thread. Yep. bye, Heiko -- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany