<div>Hi Andy,</div>
<div>&nbsp;</div>
<div>Here is BDI output of the register value after line 212. The value of R6, R7 is 0x20, 0x160. However the value of SRR0(SPR26), SRR1(SPR27) is 0xfff81300 and 0x00001000. Why are they different from r7 and r6? We just did the mtspr, the value should be the same. The rfi jump to 0xfff81300 is because of the value in SRR0.
</div>
<div>&nbsp;</div>
<div>&nbsp;</div>
<div>211 &nbsp;mtspr SRR0, r7&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </div>
<div>212&nbsp; mtspr SRR1, r6</div>
<div>213&nbsp; rfi</div>
<div>214 </div>
<div>215&nbsp;&nbsp; /*4. Clear out PIDs &amp; Search info */</div>
<div>216&nbsp;&nbsp; li r6, 0</div>
<div><br>&nbsp;</div>
<div>BDI output:</div>
<div>
<p>cds8548&gt;bi 0x0000015c</p>
<p>Breakpoint identification is 0</p>
<p>cds8548&gt;go</p>
<p>- TARGET: stopped</p>
<p>cds8548&gt;rd</p>
<p>GPR00: 00000000 0ffabd20 00000200 00000008</p>
<p>GPR04: 00000000 00000001 00000020 00000160</p>
<p>GPR08: 1f8b0808 00000148 0ffabace 0ffe08b0</p>
<p>GPR12: 00000006 764deddb 10000300 007fff00</p>
<p>GPR16: 00000001 ffffffff 007fff25 0ffff9d8</p>
<p>GPR20: 007ffeb0 00000000 0fffaa3c 0ffae490</p>
<p>GPR24: 00000000 00000003 02000040 007fff25</p>
<p>GPR28: 007fff00 0ffab3b8 0fcd6000 007ffeb0</p>
<p>CR : 24024022 MSR: 00021200</p>
<p>cds8548&gt;rdspr 26</p>
<p>SPR 26 : 0xfff81300 - 519424</p>
<p>cds8548&gt;rdspr 27</p>
<p>SPR 27 : 0x00001000 4096</p>
<p>cds8548&gt;</p><br><br>&nbsp;</div>
<div><span class="gmail_quote">On 8/15/07, <b class="gmail_sendername">Andy Fleming</b> &lt;<a href="mailto:afleming@freescale.com">afleming@freescale.com</a>&gt; wrote:</span>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid"><br>On Aug 15, 2007, at 16:12, mike zheng wrote:<br><br>&gt; Here is the PC value before the rfi:<br>&gt;<br>
&gt; cds8458&gt;halt<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Target CPU:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : MPC85xx (e500v2 rev.1)<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Target state&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;: halted<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Debug entry cause&nbsp;&nbsp;: instruction breakpoint<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Current PC&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : 0x0000015c
<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Current CR&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : 0x24024022<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Current MSR&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;: 0x00012100<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Current LR&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:0x00000148<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Current CCSRBAR&nbsp;&nbsp;:0x0_e000000<br>&gt;<br>
&gt; After the rfi:<br>&gt;<br>&gt; #step timeout defected<br>&gt; cds8458&gt;halt<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Target CPU:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : MPC85xx (e500v2 rev.1)<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Target state&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;: halted<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Debug entry cause&nbsp;&nbsp;: COP halt
<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Current PC&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : 0xfff81300<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Current CR&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; : 0x24024022<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Current MSR&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;: 0x00001000<br>&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Current LR&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;:0x00000148<br>
&gt;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Current CCSRBAR&nbsp;&nbsp;:0x0_e000000<br><br>Ok, I&#39;m sure your problem isn&#39;t that SRR0 isn&#39;t getting updated<br>properly.&nbsp;&nbsp;I suspect something is going wrong during the rfi.<br>Possibly something in your TLBs.&nbsp;&nbsp;However, what is happening is most
<br>likely that you have hit an exception, and SRR0 and SRR1 have been<br>updated.&nbsp;&nbsp;I&#39;m a little confused by the addresses where you first<br>invoke &quot;halt&quot;.&nbsp;&nbsp;It looks like you&#39;re in the middle of flash, which is
<br>an odd place in u-boot to be.</blockquote>
<div>&nbsp;</div>
<div>The first halt is at 0x0000015c, which is the break point I set after line 212. It is in the memory, not flash.</div><br>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">And if you look at your PC, it doesn&#39;t seem like you step.&nbsp;&nbsp;It looks<br>like something goes wrong with the debugging.&nbsp;&nbsp;My suggestion is to
<br>check your TLB setup and your IVOR setup.&nbsp;&nbsp;Find out if the IVORs are<br>pointing at an exception at fff81300.</blockquote>
<div>&nbsp;</div>
<div>All the TLB and IVOR setup is from Uboot, the kernel haven&#39;t touched them yet.</div><br>
<blockquote class="gmail_quote" style="PADDING-LEFT: 1ex; MARGIN: 0px 0px 0px 0.8ex; BORDER-LEFT: #ccc 1px solid">Andy<br></blockquote></div><br>