<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=us-ascii">
<META content="MSHTML 6.00.2900.3020" name=GENERATOR></HEAD>
<BODY>
<DIV><FONT face=Arial size=2><SPAN
class=843140413-29122006>Hi,</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN
class=843140413-29122006></SPAN></FONT> </DIV>
<DIV><FONT face=Arial size=2><SPAN class=843140413-29122006>I am trying to bring
u-boot up on a MPC8260 based board.</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN class=843140413-29122006>It stops after
showing the following output:</SPAN></FONT></DIV>
<DIV><FONT face=Arial size=2><SPAN
class=843140413-29122006></SPAN></FONT> </DIV><FONT><SPAN
class=843140413-29122006>
<DIV><FONT face=Arial size=2><EM><SPAN
class=843140413-29122006>*****************************************************************</SPAN><BR>U-Boot
1.1.4 (Dec 29 2006 - 18:31:04)</EM></FONT></DIV>
<DIV><FONT face=Arial size=2><EM></EM></FONT> </DIV>
<DIV><FONT face=Arial size=2><EM>MPC8260 Reset Status: External Soft, External
Hard</EM></FONT></DIV>
<DIV><FONT face=Arial size=2><EM></EM></FONT> </DIV>
<DIV><FONT face=Arial size=2><EM>MPC8260 Clock Configuration<BR> -
Bus-to-Core Mult 3x, VCO Div 2, 60x Bus Freq 33-100, Core Freq
100-300<BR> - dfbrg 0, corecnf 0x08, busdf 3, cpmdf 1, plldf 0, pllmf
1<BR> - vco_out 264000000, scc_clk 66000000,
brg_clk 66000000<BR> - cpu_clk 198000000, cpm_clk
132000000, bus_clk 66000000</EM></FONT></DIV>
<DIV><FONT face=Arial size=2><EM></EM></FONT> </DIV>
<DIV><FONT face=Arial size=2><EM>CPU: MPC8260 (HiP3 Rev 01, Mask C.2
6K23A) at 198 MHz<BR>Board: EST PSI8260<BR>DRAM: 64 MB</EM></FONT></DIV>
<DIV><FONT face=Arial size=2><EM></EM></FONT> </DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial
size=2><EM>*********************************************************************</EM></FONT></SPAN></DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial size=2>Using the visionICE
emulator, got the following exception:</FONT></SPAN></DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial size=2><EM>!HALT! -
[msg90003] Target Stopped for unknown reason; PC =
0x00000200</EM></FONT></SPAN></DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial size=2>Upon
debugging, it was found that the code stops running after a couple of
instructions </FONT></SPAN></DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial size=2>into ram in the
assembly code segment of "in_ram" in the "cpu/mpc8260/start.S" in
the</FONT></SPAN></DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial size=2>u-boot source
directory. </FONT></SPAN></DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial size=2>The snippet of code
is below:</FONT></SPAN></DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial
size=2><EM>in_ram:</EM></FONT></SPAN></DIV>
<DIV><FONT face=Arial size=2><EM></EM></FONT> </DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial
size=2><EM>
/*<BR> * Relocation Function,
r14 point to got2+0x8000<BR>
*<BR> * Adjust got2 pointers, no
need to check for 0, this
code<BR> * already puts a few
entries in the table.<BR>
*/<BR>
li
r0,__got2_entries@sectoff@l</EM></FONT></SPAN></DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial
size=2><EM>
la
r3,GOT(_GOT2_TABLE_)<BR>
lwz r11,GOT(_GOT2_TABLE_)</EM></FONT></SPAN></DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial
size=2><EM> mtctr
r0
</EM>/* not updating correctly */</FONT></SPAN></DIV>
<DIV><SPAN
class=843140413-29122006>
<FONT face=Arial size=2><--------------------- /* tried adding sync and isync
here */</FONT></SPAN></DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial
size=2><EM>
sub
r11,r3,r11<BR> addi
r3,r3,-4<BR> </EM>
<---------------------- /* tried adding sync and isync here
*/</FONT></SPAN></DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial
size=2><EM>1: lwzu
r0,4(r3)<BR>
add
r0,r0,r11<BR>
stw
r0,0(r3)<BR> bdnz
1b<BR></EM></FONT> </SPAN></DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial size=2>Since the "mtctr r0"
is not updating properly, <EM>isync</EM> instruction was given at the 2
places</FONT></SPAN></DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial size=2>mentioned above.
But, this redirects the Program Counter to exception 0x00000200, either
</FONT></SPAN></DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial size=2>immediately after
<EM>isync </EM>instruction or after a executing a single instruction. Please
note that</FONT></SPAN></DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial size=2>the <EM>icache
</EM>is enabled.</FONT></SPAN></DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial size=2>Is it anything to do
with Instruction pipelining, or do I need to look into any specific
Core</FONT></SPAN></DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial size=2>register
configuration. </FONT></SPAN></DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial size=2>Kindly let me know
what is going wrong here.</FONT></SPAN></DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial
size=2>Regards,</FONT></SPAN></DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial
size=2>Raghuveer</FONT></SPAN></DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial
size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial size=2></FONT></SPAN><SPAN
class=843140413-29122006><FONT face=Arial size=2></FONT></SPAN> </DIV>
<DIV><SPAN class=843140413-29122006><FONT face=Arial
size=2></FONT></SPAN></SPAN></FONT> </DIV></BODY></HTML>