From mboxrd@z Thu Jan 1 00:00:00 1970 From: Richard Danter Date: Fri, 15 Jul 2005 15:03:23 +0100 Subject: [U-Boot-Users] 7xx/74xx cache question Message-ID: <42D7C22B.4000205@ntlworld.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Hi all, Further progress on my port. I can now write to flash! I noticed in lib_ppc/board.c board_init_r() that on e500 CPU's the unlock_ram_in_cache() function is called. The 7xx/74xx also locks the init RAM in the dcache, but nowhere is it unlocked. I tried calling unlock_ram_in_cache() from my board's misc_init_r() function, but this crashes U-Boot. As an experiment, I left the cache locked, but then ran the "dcache off" command from the shell. If I do printenv before turning the dcache off it is all OK, if I do it after then it crashes. With my debugger I can see that the gd data structure is garbage when env_get_char_memory() is called. But I thought all data was copied to the main sys RAM. Is there something else I need to do before/after calling unlock_ram_in_cache() so I can use the D-Cache as normal? Thanks Rich PS Calling icache_enable() from misc_init_r() seems to work fine.