<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>ColdFire/68K Microcontrollers and ProcessorsのトピックRe: CFV2 vector 125???  (vector or'ing?)</title>
    <link>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/CFV2-vector-125-vector-or-ing/m-p/156252#M4555</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;It seems you have reverse engineered the undefined behaviour ;D&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Thu, 26 Feb 2009 21:13:11 GMT</pubDate>
    <dc:creator>MrBean</dc:creator>
    <dc:date>2009-02-26T21:13:11Z</dc:date>
    <item>
      <title>CFV2 vector 125???  (vector or'ing?)</title>
      <link>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/CFV2-vector-125-vector-or-ing/m-p/156249#M4552</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi all,&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have a perplexing problem with a 52221 processing receive interrupts from uart0.&amp;nbsp; I am running CW7.1.1 if that matters.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Basically, it all seems to work, but out of the blue, occasionally, I take vector 125 of the IVT!&amp;nbsp; Vector 125 is interrupt source 61, which is supposedly "CFM, PVIF, Protection violation".&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Now, of course, I don't have the CFM enabled to interrupt (CFMMCR is 0), and it isn't actually requesting one (CFMUSTAT is 0xc0).&amp;nbsp; However, on the stack, plain as day, is a trap frame indicating vector 125:&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; 41F42004&amp;nbsp; --&amp;gt;&amp;nbsp; 0100 00(01 1111 01)00&amp;nbsp; --&amp;gt;&amp;nbsp; 0x7d&amp;nbsp; --&amp;gt;&amp;nbsp; 125&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;And the stack is valid, within bounds, etc.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;At the time, of course, IPRH (0x00A00000) does not indicate this interrupt is pending (though the uart0 and USB interrupts are, as well as pit0), though the "Cleared automatically" in the interrupt sources table makes me wonder if I should see it there even if it was...&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;This only occurs when using uart0 along with USB; both devices are configured to IPL 4, so they should be mutually exclusive.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Now here is where things get crazy!!!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;The interrupt source number for usb is 53...&amp;nbsp; The interrupt source number&amp;nbsp;for uart0 is 13.&amp;nbsp; IF&amp;nbsp;I "OR" (bitwise)&amp;nbsp;THESE TOGETHER WE GET 61, WHICH WOULD LEAD TO VECTOR 125!!!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;CAN THIS BE HAPPENING?&amp;nbsp; Could the simultaneous uart0 and USB interrupts cause the vector numbers to be or'd???&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Or what could I possibly be doing wrong to cause this?&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;If I just make vector 125 do shadow the uart0 vector, everything works (which is both good and scary).&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Thanks!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;-- Rich&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 26 Feb 2009 04:38:47 GMT</pubDate>
      <guid>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/CFV2-vector-125-vector-or-ing/m-p/156249#M4552</guid>
      <dc:creator>RichTestardi</dc:creator>
      <dc:date>2009-02-26T04:38:47Z</dc:date>
    </item>
    <item>
      <title>Re: CFV2 vector 125???  (vector or'ing?)</title>
      <link>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/CFV2-vector-125-vector-or-ing/m-p/156250#M4553</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Wow, and if I change *either* the interrupt level *or* the interrupt priority of the uart0 interrupt to not be the same as for the USB, the problem goes away!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Now maybe someone will tell me I should have known all along that you can't have two interrupts with the same level and priority?&amp;nbsp; I thought priority only determined which interrupt was serviced if multiple were pending when the level dropped, not that priority had to be *unique* within a level.&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;Does anyone know if the former could in fact be the case?&amp;nbsp; Thanks!&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 26 Feb 2009 04:47:14 GMT</pubDate>
      <guid>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/CFV2-vector-125-vector-or-ing/m-p/156250#M4553</guid>
      <dc:creator>RichTestardi</dc:creator>
      <dc:date>2009-02-26T04:47:14Z</dc:date>
    </item>
    <item>
      <title>Re: CFV2 vector 125???  (vector or'ing?)</title>
      <link>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/CFV2-vector-125-vector-or-ing/m-p/156251#M4554</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Well, I am going to answer my own question for anyone else who stumbles here!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;It's in the doc!&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;STRONG&gt;&lt;FONT face="Helvetica-Bold" size="1"&gt;&lt;FONT face="Helvetica-Bold" size="1"&gt;&lt;FONT color="#0000ff" size="2"&gt;Note:&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/STRONG&gt; &lt;FONT color="#0000ff"&gt;&lt;FONT face="Helvetica"&gt;&lt;FONT face="Helvetica"&gt;It is the responsibility of the software to program the ICR&lt;/FONT&gt;&lt;/FONT&gt;&lt;EM&gt;&lt;FONT face="Helvetica-Oblique"&gt;&lt;FONT face="Helvetica-Oblique"&gt;n&lt;/FONT&gt;&lt;/FONT&gt;&lt;/EM&gt;&lt;/FONT&gt;&lt;FONT face="Helvetica"&gt;&lt;FONT face="Helvetica"&gt;&lt;FONT color="#0000ff"&gt;x registers with unique and non-overlapping level&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="Helvetica"&gt;&lt;FONT face="Helvetica"&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;P align="left"&gt;&lt;FONT face="Helvetica"&gt;&lt;FONT face="Helvetica"&gt;&lt;FONT color="#0000ff"&gt;and priority definitions. Failure to program the ICR&lt;/FONT&gt;&lt;EM&gt;&lt;FONT color="#0000ff" face="Times New Roman"&gt;n&lt;/FONT&gt;&lt;/EM&gt;&lt;FONT face="Helvetica"&gt;&lt;FONT face="Helvetica"&gt;&lt;FONT color="#0000ff"&gt;x registers in this manner can result in undefined&lt;/FONT&gt;&lt;FONT color="#0000ff"&gt;behavior. If a specific interrupt request is completely unused, the ICR&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;EM&gt;&lt;FONT color="#0000ff" face="Times New Roman"&gt;n&lt;/FONT&gt;&lt;/EM&gt;&lt;FONT face="Helvetica" size="1"&gt;&lt;FONT face="Helvetica" size="1"&gt;&lt;FONT color="#0000ff" size="2"&gt;x value can remain in its reset (and&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT face="Helvetica" size="1"&gt;&lt;FONT face="Helvetica" size="1"&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;P&gt;&lt;FONT face="Helvetica" size="1"&gt;&lt;FONT face="Helvetica" size="1"&gt;&lt;FONT color="#0000ff" size="2"&gt;disabled) state.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 26 Feb 2009 04:56:50 GMT</pubDate>
      <guid>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/CFV2-vector-125-vector-or-ing/m-p/156251#M4554</guid>
      <dc:creator>RichTestardi</dc:creator>
      <dc:date>2009-02-26T04:56:50Z</dc:date>
    </item>
    <item>
      <title>Re: CFV2 vector 125???  (vector or'ing?)</title>
      <link>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/CFV2-vector-125-vector-or-ing/m-p/156252#M4555</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;It seems you have reverse engineered the undefined behaviour ;D&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 26 Feb 2009 21:13:11 GMT</pubDate>
      <guid>https://community.nxp.com/t5/ColdFire-68K-Microcontrollers/CFV2-vector-125-vector-or-ing/m-p/156252#M4555</guid>
      <dc:creator>MrBean</dc:creator>
      <dc:date>2009-02-26T21:13:11Z</dc:date>
    </item>
  </channel>
</rss>

