MQX kernal data pool pointer triggers a Busfault and a Hardfault

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

MQX kernal data pool pointer triggers a Busfault and a Hardfault

1,190 Views
OM120
Contributor I

Hello,

We have a Firmware that uses MQX RTOS on an iMXRT1024CAG4A when we jump to the address of the firmware a busfault (IMPRECISERR(2)) and a Hardfault (FORCED (0)) gets triggered
I found out that this happens exactly at this line:

kernel_data->KD_POOL = (MEMPOOL_STRUCT_PTR)_mem_create_pool(start, (_mem_size)kernel_data->INIT.END_OF_KERNEL_MEMORY - (_mem_size)start);

we are sure that the jump to the firmware happened because when we prevent the previous line from executing (using while(1) before the line for exemple) we don't get the faults.
the way I flash the board is I flash with the release image of the firmware then I start a debug session with the debug image of the boodloader.

faults screenshot:

OM120_0-1694611701567.png

Firmware linker file:

OM120_1-1694611786768.png

Also when I put the firmware at the start of the flash and run it directly without our bootloader it works without the faults, keep in mind that we tested the bootloader with other applications and it works.

thanks.

0 Kudos
Reply
1 Reply

1,111 Views
danielchen
NXP TechSupport
NXP TechSupport

Hi

For your question, I would suggest you contact mqxsales@nxp.com for help.

 

Regards

Daniel

0 Kudos
Reply