i.MX8QM core and board informations

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

i.MX8QM core and board informations

1,244 Views
raz3l
Contributor III

Hi guys,

I have a i.MX8QM-MEK and I would like to know if it is possible to get (and how) the following information retrieved from the device itself: 

1) the board vendor and revision . As fair as I know, u-Boot is able to query the SC and obtain some relevant information. 

(u-boot/cpu.c at 21aede21b060661977fd3d11f96211bd4f254096 · u-boot/u-boot · GitHub ) 

u32 get_cpu_rev(void) {  
   u32 id = 0, rev = 0;  
   int ret;   

   ret = sc_misc_get_control(-1, SC_R_SYSTEM, SC_C_ID, &id);  
   
   if (ret)   
      return 0;   

   rev = (id >> 5)  & 0xf;  

   id = (id & 0x1f) + MXC_SOC_IMX8;  /* Dummy ID for chip */   
   
   return (id << 12) | rev; 
}

2) is there any memory-mapped register on the Cortex-M4 cores that allows me to get the core ID ? Something like CM4_0 or CM4_1 ?

Thank you guys. 

0 Kudos
4 Replies

1,050 Views
gusarambula
NXP TechSupport
NXP TechSupport

Hello Daniel Oliveira,

The Cortex M4 does not have any core register that can provide the core id.

board_ioctl() from board.c of SCFW can be used to return core id based on the MU used for communication.  The  mu parameter can be used to determine a response and return a value indicating which M4 is used.  This assumes M4_0 is using the SC_R_M4_0_MU_1A and M4_1 is using SC_R_M4_1_MU_1A.

You can find more information on the SCFW documentation.

I hope that this helps!

Regards,

0 Kudos

1,050 Views
raz3l
Contributor III

Thank you for the hint gusarambula‌. I will try that and see how it goes. Regarding the first part of the question, is there anyway that I can retrieve from the device the board vendor and revision? 

0 Kudos

1,050 Views
gusarambula
NXP TechSupport
NXP TechSupport

Hello Daniel Oliveira,

Our bootloader reads the processor ID but not the vendor board. I haven’t seen uboot implementations that do this. Some third-party boards like UDOO detect the processor and use that to load the board device tree as necessary, but the bootloader is not reding the board information strictly speaking, if I’m not mistaken.

Mainline uboot has some board and vendors listed on this definitions but you need to set this target. It is not detected for you.

Regards,

0 Kudos

1,050 Views
raz3l
Contributor III

Any idea on this igorpadykov‌ ?

0 Kudos