[U-Boot-Users] need PPC asm. help. for 83xx watchdog

Jerry Van Baren gerald.vanbaren at smiths-aerospace.com
Fri Jan 6 16:36:44 CET 2006

David Updegraff wrote:
> Hi.
> Attempting to enable&use watchdog in 8343; but run into Assembler
> (v.2.15) problem in cpu/mpc83xx/start.S:424
> ....
> /* and reset it */
> 	li	r4, 0x556C
> 	sth	r4, SWSRR at l(r3)
> 	li	r4, 0xAA39    <-------- gas barks here, 0xAA39 > 0x8000
> 	sth	r4, SWSRR at l(r3)
> which I do not understand, since I thought 'li' was an UNsigned 16bit
> load. I can work around it in a kludgey way with.
> 	lis	r4, 0
> 	ori	r4, r4, 0xAA39
> 	sth	r4, SWSRR at l(r3)
> but wonder if one you PowerPC assembler gurus could offer better suggestion.
> Thanx.
> -dbu.

"li" is a simplified mnemonic which is actually "addi" (which 
sign-extends the immediate value) according to  the "PowerPC 
Microprocessor Family: The Programming Environments" Appendix F (p. F-15).

Why gas barks, I'm not quite sure.  Probably because it suspects you 
wanted it unsigned (which actually is the case - I hate it when tools 
are smarter than me).


More information about the U-Boot mailing list