<?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>topic Re: How to interpret PSP and MSP memory dump in MQX Software Solutions</title>
    <link>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-interpret-PSP-and-MSP-memory-dump/m-p/200250#M4411</link>
    <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is this thread still active?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I need to get the PC of all the threads before the watchdog occurs / not in the watchdog interrupt as it gives you some what 250 cycles to execute that interrupt handler.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So I need PC from all the task descriptors, as TD_STRUCT in MQX does not give you this information, I am looking for alternative.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now I don't have any idea about psp, msp but I will go through it.&lt;/P&gt;&lt;P&gt;But meanwhile can anyone please tell me whether it is possible to get value of PC from the Task Descriptors as normally all the threads in most of the OSes has PC in its TD, but I am unable to find in MQX.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am not dumping or gathering any data in any kind of interrupt so there is no handler for such to track.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Preet...&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
    <pubDate>Tue, 03 Jan 2017 09:08:00 GMT</pubDate>
    <dc:creator>preetmehta</dc:creator>
    <dc:date>2017-01-03T09:08:00Z</dc:date>
    <item>
      <title>How to interpret PSP and MSP memory dump</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-interpret-PSP-and-MSP-memory-dump/m-p/200245#M4406</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;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; I am uisng MQX 3.8 and TWRK60N512. I want to know how to get information from the PSP and MSP memory dump in unhandled interrupt message.Below is an example memory dump.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;PC: 0x0002ab92 LR: 0x0001852d PSP: 0x20001668 MSP: 0x1fffcd58 PSR: 0x60000043&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Memory dump:&lt;/P&gt;&lt;P&gt;0x20001668 : 0x4006d000 0x000000ac 0x00000000 0x000077cd&lt;/P&gt;&lt;P&gt;0x20001678 : 0x000669fc 0x00038c01 0x00038c18 0x2100f000&lt;/P&gt;&lt;P&gt;0x20001688 : 0x00000002 0x0001846d 0x00052a65 0x00000055&lt;/P&gt;&lt;P&gt;0x20001698 : 0x00000002 0x20000128 0x1fffbb5c 0x2000004a&lt;/P&gt;&lt;P&gt;0x200016a8 : 0x00000004 0x00052975 0x00000002 0x20000040&lt;/P&gt;&lt;P&gt;0x200016b8 : 0x00000000 0x00000000 0x00000000 0x00000000&lt;/P&gt;&lt;P&gt;0x200016c8 : 0x00000000 0x00000000 0x00000000 0x00052795&lt;/P&gt;&lt;P&gt;0x200016d8 : 0x2000012a 0x00000055 0x000001f4 0x1fff0514&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Memory dump:&lt;/P&gt;&lt;P&gt;0x1fffcd58 : 0x1fff3eb2 0x00000002 0x1fff3eb2 0x00000002&lt;/P&gt;&lt;P&gt;0x1fffcd68 : 0x1fffaf44 0x000001f4 0x0005299d 0x0001852d&lt;/P&gt;&lt;P&gt;0x1fffcd78 : 0x1fffc640 0x00000002 0x00000003 0x0005ce29&lt;/P&gt;&lt;P&gt;0x1fffcd88 : 0x1fffc640 0x00000000 0x00000043 0x000000c0&lt;/P&gt;&lt;P&gt;0x1fffcd98 : 0x00000000 0xfffffffd 0x7374616b 0x7374616b&lt;/P&gt;&lt;P&gt;0x1fffcda8 : 0x7374616b 0x00000000 0x000000f0 0x1fffc95c&lt;/P&gt;&lt;P&gt;0x1fffcdb8 : 0x0001ffff 0x00000000 0x00000000 0x00000000&lt;/P&gt;&lt;P&gt;0x1fffcdc8 : 0x00000000 0x00000000 0x00000000 0x00000000&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;Thanks,&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN class="mce_paste_marker"&gt;Mohsin&lt;BR /&gt;&lt;/SPAN&gt;&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Thu, 06 Dec 2012 16:42:39 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-interpret-PSP-and-MSP-memory-dump/m-p/200245#M4406</guid>
      <dc:creator>Mohsin455</dc:creator>
      <dc:date>2012-12-06T16:42:39Z</dc:date>
    </item>
    <item>
      <title>Re: How to interpret PSP and MSP memory dump</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-interpret-PSP-and-MSP-memory-dump/m-p/200246#M4407</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;hello Mohsin455,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;have you figured out which fault caused this memory ?If you went directly to the unexpected isr through vector table, you can obtain PC which was stacked and find out where that error happened. &lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;This link could help you more :&lt;/P&gt;&lt;P&gt;&lt;A _jive_internal="true" href="https://community.nxp.com/thread/86130" title="https://community.freescale.com/thread/86130"&gt;https://community.freescale.com/thread/86130&lt;/A&gt;&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I recommend to read an Application note which is pasted there :smileywink:&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;MartinK&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Dec 2012 11:56:33 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-interpret-PSP-and-MSP-memory-dump/m-p/200246#M4407</guid>
      <dc:creator>c0170</dc:creator>
      <dc:date>2012-12-07T11:56:33Z</dc:date>
    </item>
    <item>
      <title>Re: How to interpret PSP and MSP memory dump</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-interpret-PSP-and-MSP-memory-dump/m-p/200247#M4408</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi Kojto,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Thanks for your reply. I am trying to use same approach as unexpected ISR for watchdog timeout. I am trying to print out the similar information (PC, LR and Memory dump) when the watchdog timeout occurs i.e. when watchdog timeout occurs I get an interrupt. In this interrupt I am trying to find the task which was active.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Please advise if this is possible. I need to confirm if the interrupt still has the PC of the active task or the unexpected ISR works in some other way (i.e. directly to the unexpected isr through vector table).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Mohsin&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Fri, 07 Dec 2012 13:43:55 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-interpret-PSP-and-MSP-memory-dump/m-p/200247#M4408</guid>
      <dc:creator>Mohsin455</dc:creator>
      <dc:date>2012-12-07T13:43:55Z</dc:date>
    </item>
    <item>
      <title>Re: How to interpret PSP and MSP memory dump</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-interpret-PSP-and-MSP-memory-dump/m-p/200248#M4409</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;please read the application note which I attached previously. Particularly last chapter "Determining where the exception occurred" ( current link register contains EXC_RETURN which indicates which stack was used and then browse in memory to the address of used stack to get stored registers).&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Regards,&lt;/P&gt;&lt;P&gt;MartinK&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 10 Dec 2012 07:54:57 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-interpret-PSP-and-MSP-memory-dump/m-p/200248#M4409</guid>
      <dc:creator>c0170</dc:creator>
      <dc:date>2012-12-10T07:54:57Z</dc:date>
    </item>
    <item>
      <title>Re: How to interpret PSP and MSP memory dump</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-interpret-PSP-and-MSP-memory-dump/m-p/200249#M4410</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hi,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Thanks very much for your reply. I just want to confirm if the same rule applies if a task is interrupted by a higher priority task or it is only true when an exception occurs.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;In other words, will the link register contain EXC_RETURN which indicates which stack was used, even when a task is interrupted by a higher priority task.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Thanks,&lt;/P&gt;&lt;P&gt;Mohsin&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Mon, 10 Dec 2012 09:19:52 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-interpret-PSP-and-MSP-memory-dump/m-p/200249#M4410</guid>
      <dc:creator>Mohsin455</dc:creator>
      <dc:date>2012-12-10T09:19:52Z</dc:date>
    </item>
    <item>
      <title>Re: How to interpret PSP and MSP memory dump</title>
      <link>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-interpret-PSP-and-MSP-memory-dump/m-p/200250#M4411</link>
      <description>&lt;HTML&gt;&lt;HEAD&gt;&lt;/HEAD&gt;&lt;BODY&gt;&lt;P&gt;Hello,&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Is this thread still active?&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I need to get the PC of all the threads before the watchdog occurs / not in the watchdog interrupt as it gives you some what 250 cycles to execute that interrupt handler.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;So I need PC from all the task descriptors, as TD_STRUCT in MQX does not give you this information, I am looking for alternative.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Now I don't have any idea about psp, msp but I will go through it.&lt;/P&gt;&lt;P&gt;But meanwhile can anyone please tell me whether it is possible to get value of PC from the Task Descriptors as normally all the threads in most of the OSes has PC in its TD, but I am unable to find in MQX.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;I am not dumping or gathering any data in any kind of interrupt so there is no handler for such to track.&lt;/P&gt;&lt;P&gt;&lt;/P&gt;&lt;P&gt;Preet...&lt;/P&gt;&lt;/BODY&gt;&lt;/HTML&gt;</description>
      <pubDate>Tue, 03 Jan 2017 09:08:00 GMT</pubDate>
      <guid>https://community.nxp.com/t5/MQX-Software-Solutions/How-to-interpret-PSP-and-MSP-memory-dump/m-p/200250#M4411</guid>
      <dc:creator>preetmehta</dc:creator>
      <dc:date>2017-01-03T09:08:00Z</dc:date>
    </item>
  </channel>
</rss>

