Aufgrund eines Problems in der Standardkonfiguration des CoreLink™ Level 2 Cache Controller L2C-310 im Linux-Socfpga Kernel vor 4.10 können Datenkohärenzfehler auftreten.
Für Linux-Socfpga-Kernel vor 4.10 ist der L2C-310 Cache-Controller mit dem Aktivierungsbit "Shared Attribute Override Enable" auf OFF gesetzt.
Auf diese Weise kann der Controller einige nicht cachefähige Zugriffe von den MPU-Kernen oder dem ACP-Port in cacheable nicht zugewiesene Zugriffe optimiase und den Punkt der Kooperation vom SDRAM in den L2-Cache verschieben.
Die Änderung des Punkts der Kooperation kann Probleme verursachen, wenn Master über L3 oder die FPGA2SDRAM-Bridge auf den SDRAM zugreifen.
Referenz: CoreLink™ Level 2 Cache Controller L2C-310, Revision: r3p3 Technical Reference Manual (ARM DDI 0246H (ID080112)): Abschnitt 2.3.2 Shareable-Attribut.
Es wird empfohlen, dass das Aux-Control-Register-Bit [22]: Aktivierungsbit für freigegebene Attribute auf ON gesetzt ist. Diese Einstellung deaktiviert Optimierungen im L2-Cache-Controller.
Dieses Problem wurde in den neuesten versionen von linux-socfpga und you-boot-socfpga behoben, die von https://github.com/altera-opensource/