Hi,
I am having an issue running bare-metal RTOS on iMX6Q: 5 out of 10 times I boot it up one or more cores stop working but never core 0.
I did implement all errata I found or even relying on barebox does not help.
After a certain point in the application (or some time ?) no more deadlock happens.
Is there an issue (not yet documented in an erratum) with the booting of the other cores?
Do I need to start the other cores one by one with delay?
Can anyone shed some light on this?
And no: I do not use Linux/Android!
Solved! Go to Solution.
Hi Igor,
I know the SDK. It is very old and does not implement any of the i.MX6/Cortex-A9 errata. Anyway, I checked what the multicore example does and I don't.
It shows that is is really mandatory to clean/invalidate the data-caches before. It seems that the CPU can run into a deadlock if it contains stale data.
Now 10 out of 10 boots work.
Anyway, thank you for your answer. Sometimes it is good to be pointed to the obvious.
Hi 42Bastian
please look at "Multicore Startup" example in SDK
i.MX 6Series Platform SDK : Bare-metal SDK
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hi Igor,
I know the SDK. It is very old and does not implement any of the i.MX6/Cortex-A9 errata. Anyway, I checked what the multicore example does and I don't.
It shows that is is really mandatory to clean/invalidate the data-caches before. It seems that the CPU can run into a deadlock if it contains stale data.
Now 10 out of 10 boots work.
Anyway, thank you for your answer. Sometimes it is good to be pointed to the obvious.