[U-Boot-Users] A couple of MIPS questions
Hans Zuidam
hans.zuidam at philips.com
Wed Aug 30 20:00:02 CEST 2006
Hi,
A couple of questions about the MIPS implementation of U-Boot. Maybe
someone can answer them:
In cpu/mips/start.S a large branch table is defined from the symbol _start
onward. What is the reason for this?
(There are only a few exception vectors defined in the MIPS32
architecture, although you can move them
elsewhere in memory.)
The instruction sequence for initialising the GOT is somehwat redundant,
unless I am missing something:
move gp, ra
lw t1, 0(ra)
move gp, t1
can be replaced by:
lw gp, 0(ra)
Is there a reason as to why the MIPS code does not (attempt to) make a
register dump when an exception
occurs? (BTW, the branches romReserved and romExcHandle are missing a NOP
in their delay slot.)
Is it safe to run with caches enabled? I.e. do all drivers either flush
the cache when doing I/O or is it safer
to run with caches disabled.
Is there a reason for the serial, ethernet and USB drivers to exist in
cpu/mips other than that they be belong
to MIPS based SoCs?
Thanks in advance.
Regards,
Hans Zuidam
--
Hans Zuidam
Sen. Systems Engineer, BL DTS ICE, Philips Semiconductors
Building A410, Room 3.40
High Tech Campus 41, 5656 AE Eindhoven, The Netherlands
Tel. +31 (0)40 2746579
E-Mail: hans.zuidam at philips.com
More information about the U-Boot
mailing list