IMX8QM Inconsistent shareability domain on tlbi instructions

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

IMX8QM Inconsistent shareability domain on tlbi instructions

942 Views
josemartins90
Contributor II

I'm using a IMX8QM system which features a dual-core A72 cluster plus a quad-core A53 cluster. Running on EL2 from one of the A53 cores I want to unmap a single page for all cores, so after I remove the entry for the page table I use the tlb invalidation instructions accompanied by the usual synchronization instructions.

If I execute a "tlbi alle2is" instruction all goes fine. The translation is invalidated for all cores. However, if I use "tlbi vae2is" the cached TLB entries are invalidated only for the A53 cluster. If I execute it from one of the A72 cores everything goes fine again, every core sees the entry invalidated. In all cases, if I remove the "is" part of the instruction only the core where its executing has the pte invalidated. 

I have a synchronization barrier that guarantees the A72 cores do not use that address until well after the invalidation.

What can I be doing wrong here?

Tags (2)
2 Replies

859 Views
igorpadykov
NXP Employee
NXP Employee

Hi josemartins90

issue may be related to cache erratum ERR050104 described in

Mask Set Errata for Mask 1N94W

Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

859 Views
josemartins90
Contributor II

It checks out. Thank you!

0 Kudos