
-----Messaggio originale----- Da: u-boot-users-admin@lists.sourceforge.net [mailto:u-boot-users-admin@lists.sourceforge.net]Per conto di Steven Scholz Inviato: martedi, 26. ottobre 2004 10:32 Cc: u-boot-users Oggetto: Re: [U-Boot-Users] PATCH: Introducing CONFIG_BOARD_PRE_RESET
Wolfgang Denk wrote:
In message 417DF771.5010904@imc-berlin.de you wrote:
Well, it's a bug in the CPU. If the LCDC DMA is running, the
cpu won't reboot
with a simple "mov pc, r0".
Ummm... you don't call this a "reset", do you?
Well that's what is done (work) for most ARM920T... Execeptions are
#ifdef CONFIG_S3C2400 bl disable_interrupts # ifdef CONFIG_TRAB bl disable_vfd # endif ...
BTW cominh to think about it: Does "bl disable_vfd" by any chance disable video controller for CONFIG_TRAB !?!? ;-)
In your case, I think you really want to implement a _real_ reset function that takes the CPU back into it's virgin state. Is there a watchdog on this hardware?
Sure. That means you have board _and_ cpu specific reset code! Some want to toggle a GPIO pin. Some want to use a cpu watchdog... So should we move the reset code out of cpu/arm920t/start.S into the brand new cpu/arm920t/$(SOC)/reset.{S.c} !?
This would be a good step towards clean up the clobbered start.s !!! -P.Broggini