<?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: S32K3 Find the Currently Executing core ID in S32K</title>
    <link>https://community.nxp.com/t5/S32K/S32K3-Find-the-Currently-Executing-core-ID/m-p/1944541#M40411</link>
    <description>&lt;P&gt;Hi &lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/213014"&gt;@jonnyWHIS&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The name of the PID register is wrong, I will ask to update it. It should be called Process Identifier, not Processor Identifier. The description of the bits is then correct. It says: &lt;BR /&gt;"Process Identifier&lt;BR /&gt;Identifies the CPU process."&lt;/P&gt;
&lt;P&gt;It can't be used to identify which core is running a code.&lt;/P&gt;
&lt;P&gt;For this purpose, you can use register CPXNUM in MCM at address 0x40260004.&lt;/P&gt;
&lt;P&gt;It's used in startup files, for example. You can find code like this in startup code:&lt;/P&gt;
&lt;P&gt;/* If this is the primary core, initialize data and bss */&lt;BR /&gt;ldr r0, =0x40260004&lt;BR /&gt;ldr r1,[r0]&lt;/P&gt;
&lt;P&gt;ldr r0, =MAIN_CORE&lt;BR /&gt;cmp r1,r0&lt;BR /&gt;beq _INIT_DATA_BSS&lt;/P&gt;
&lt;P&gt;Regards,&lt;BR /&gt;Lukas&lt;/P&gt;</description>
    <pubDate>Fri, 30 Aug 2024 14:38:49 GMT</pubDate>
    <dc:creator>lukaszadrapa</dc:creator>
    <dc:date>2024-08-30T14:38:49Z</dc:date>
    <item>
      <title>S32K3 Find the Currently Executing core ID</title>
      <link>https://community.nxp.com/t5/S32K/S32K3-Find-the-Currently-Executing-core-ID/m-p/1944389#M40397</link>
      <description>&lt;P&gt;Hi there,&lt;/P&gt;&lt;P&gt;I have a function that i'd like to behave slightly differently depending on which S32K3 core invokes it. At the moment i have a function returning the value of what i thought was the correct register.&lt;/P&gt;&lt;P&gt;In the S32K3xx RM, under MCM Register Descriptions (Chapter 6.4.1) it mentions a &lt;STRONG&gt;Processor Identifier (PID)&lt;/STRONG&gt;&amp;nbsp;register. However if i read the value of this register, it returns 0 regardless of which core the read is performed on.&lt;/P&gt;&lt;P&gt;I'm assuming that this is not the correct register, but i cannot find a more relevant one in the manual. Could you advise :&lt;/P&gt;&lt;P&gt;- if it is possible to find the currently executing core ID, and if so&lt;/P&gt;&lt;P&gt;- what register/driver function is required to do this&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;I have both cores running no problem, but maybe there's something more i need to do in the .mex file?&lt;/P&gt;&lt;P&gt;Any help would be appreciated.&lt;/P&gt;</description>
      <pubDate>Fri, 30 Aug 2024 09:44:37 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/S32K3-Find-the-Currently-Executing-core-ID/m-p/1944389#M40397</guid>
      <dc:creator>jonnyWHIS</dc:creator>
      <dc:date>2024-08-30T09:44:37Z</dc:date>
    </item>
    <item>
      <title>Re: S32K3 Find the Currently Executing core ID</title>
      <link>https://community.nxp.com/t5/S32K/S32K3-Find-the-Currently-Executing-core-ID/m-p/1944541#M40411</link>
      <description>&lt;P&gt;Hi &lt;a href="https://community.nxp.com/t5/user/viewprofilepage/user-id/213014"&gt;@jonnyWHIS&lt;/a&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;The name of the PID register is wrong, I will ask to update it. It should be called Process Identifier, not Processor Identifier. The description of the bits is then correct. It says: &lt;BR /&gt;"Process Identifier&lt;BR /&gt;Identifies the CPU process."&lt;/P&gt;
&lt;P&gt;It can't be used to identify which core is running a code.&lt;/P&gt;
&lt;P&gt;For this purpose, you can use register CPXNUM in MCM at address 0x40260004.&lt;/P&gt;
&lt;P&gt;It's used in startup files, for example. You can find code like this in startup code:&lt;/P&gt;
&lt;P&gt;/* If this is the primary core, initialize data and bss */&lt;BR /&gt;ldr r0, =0x40260004&lt;BR /&gt;ldr r1,[r0]&lt;/P&gt;
&lt;P&gt;ldr r0, =MAIN_CORE&lt;BR /&gt;cmp r1,r0&lt;BR /&gt;beq _INIT_DATA_BSS&lt;/P&gt;
&lt;P&gt;Regards,&lt;BR /&gt;Lukas&lt;/P&gt;</description>
      <pubDate>Fri, 30 Aug 2024 14:38:49 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/S32K3-Find-the-Currently-Executing-core-ID/m-p/1944541#M40411</guid>
      <dc:creator>lukaszadrapa</dc:creator>
      <dc:date>2024-08-30T14:38:49Z</dc:date>
    </item>
    <item>
      <title>Re: S32K3 Find the Currently Executing core ID</title>
      <link>https://community.nxp.com/t5/S32K/S32K3-Find-the-Currently-Executing-core-ID/m-p/1945313#M40444</link>
      <description>&lt;P&gt;Hi Lukas, brill thank you, using that CPXNUM register has worked for me.&lt;/P&gt;</description>
      <pubDate>Mon, 02 Sep 2024 08:36:25 GMT</pubDate>
      <guid>https://community.nxp.com/t5/S32K/S32K3-Find-the-Currently-Executing-core-ID/m-p/1945313#M40444</guid>
      <dc:creator>jonnyWHIS</dc:creator>
      <dc:date>2024-09-02T08:36:25Z</dc:date>
    </item>
  </channel>
</rss>

