• Jeffrey Lee's avatar
    Add workaround for Cortex-A7 errata 814220 · 2b3d4781
    Jeffrey Lee authored
      hdr/BCM2835 - Errata 814220 states that the Cortex-A7 set/way cache maintenance operations violate the usual operation ordering rules, such that an L2 maintenance operation which is started after an L1 operation may actually complete before it, causing data corruption if the L1 data was to be evicted to the L2 entry. Implement the suggested workaround of performing a DSB when switching cache levels, rather than just at the end of the combined L1+L2 group of operations.
      Also, fix missing 99 label that would have caused a stack imbalance in the unlikely event of encountering a processor with fully coherent caches
      Tested on Raspberry Pi 2
    Version 0.43. Tagged as 'BCM2835-0_43'
VersionNum 803 Bytes