ERR005200
Chip Errata for the i.MX 6Dual/6Quad and i.MX 6DualPlus/6QuadPlus, Rev. 6.1, 06/2016
64
NXP Semiconductors
Description:
When prefetch feature is enabled (bits [29:28] of the Auxiliary or Prefetch Control Register set
HIGH), the prefetch offset bits of the Prefetch Control Register (bits [4:0]) permits to configure the
advance taken by the prefetcher compared to the current cache line. Refer to the TRM for more
information. One requirement for the prefetcher is not to go beyond a 4 KB boundary. If the
prefetch offset is set to 23 (5'b10111), this requirement is not fulfilled and the prefetcher can cross
a 4 KB boundary.
This problem occurs when the following conditions are met:
1. One of the Prefetch Enable bits (bits [29:28] of the Auxiliary or Prefetch Control Register) is
set HIGH.
2. The prefetch offset bits are programmed with value 23 (5'b10111).
Projected Impact:
When the conditions above are met, the prefetcher can issue linefills beyond a 4 KB boundary
compared to original transaction. This can cause system issues because those linefills can target a
new 4 KB page of memory space, regardless of page attribute settings in L1 MMU.
Workarounds:
A workaround for this erratum is to program the prefetch offset with any value except 23.
Proposed Solution:
No fix scheduled
Linux BSP Status:
Software workaround integrated in Linux BSP codebase starting in release imx_3.0.35_4.1.0. BSP
software workaround sets prefetch offset to 0 or 15 to avoid this erratum.
ERR005200
ARM/MP: 765569—Prefetcher can cross 4 KB boundary if offset is
programmed with value 23