[U-Boot-Users] MPC8540 mtest "hang" with 1GByte memory module

Joao, Nuno (ext) nuno.joao-ext_nbs at siemens.com
Thu Jul 6 13:59:36 CEST 2006


> ...
> > Are you missing "sync" instructions in your UART handling?  Sounds
> like 
> > the UART register operations are not being forced to run by the 
> > processor... when you hit the LED register, you are forcing the 
> >instructions to run as a side effect and all becomes well.
> 
> The UART code that I am using is plain vanilla U-boot 1.1.4,
> drivers/ns16550.c.  I dropped an asm("sync;isync;msync") in 
> front of the
> loop which polls the LSR and the behavior didn't change.  I dropped an
> asm("sync;isync;msync") inside the loop which polls the LSR and the
> behavior didn't change.

	I just want to mention that those instructions will only "sync"
	from the processor core's point of view. However, PQIII has this
	coeherency module between the processor core and the rest of
	the system, which adds another level of "asynchronism". For a
	"real sync" in this chip, specially when there are dependencies
	between different subsystems, you need to do a read after a
	write; that will force the processor to really sync with the
	device and it is the only way for you to make sure that a
	value has been written to the sub-system.

	Best Regards




More information about the U-Boot mailing list