Aufgrund eines Problems im Bridge-Treiber für die F2SDRAM Bridge kann folgendes Verhalten auftreten:
- Eine Sperrbedingung in der F2SDRAM-Brücke, wenn
- Sie führen eine vollständige FPGA Core-Konfiguration unter Linux über ein FPGA Overlay durch.
- Sie deaktivieren die Bridge in der U-Boot-Konsole nach einer core.rbf-Konfiguration, indem Sie den Befehl "disable bridge" ausführen.
- Eine Linux-Kernel-Ausnahme (Datenabbruch) oder eine nicht abgeschlossene F2SDRAM-Transaktion nach FPGA Core-Rekonfiguration
- Sie führen eine vollständige FPGA Core-Konfiguration unter Linux über ein FPGA Overlay durch
- Ein Arm AXI Controller gibt Transaktionen über die F2SDRAM-Bridge an das HPS aus
- Sie führen eine vollständige Neukonfiguration des FPGA Kerns unter Linux über ein FPGA Overlay durch
- Ein Arm AXI Controller gibt Transaktionen über die F2SDRAM-Bridge an das HPS aus
- Linux Kernel Exception: Null Pointer Exception kann gesehen werden, oder die Arm AMBA AXI Ready-Signsl von der FPGA2SDRAM Bridge können inaktiv werden, bevor die erste Transaktion abgeschlossen ist
Diese Probleme wirken sich nicht auf die H2F- oder leichte H2F-Brücke aus.
Dieses Problem betrifft Intel Agilex® 7 SoC, Intel® Stratix® 10 FPGA und Intel® eASIC™ N5X-Geräte.
Das Problem wurde mit der neuesten GitHub Arm-Trusted-Firmware-Version socfpga_v2.7.1 und v2.8.0 und U-Boot-Version socfpga_v2022.10 behoben.
Für den ATF-Flow ist der Patch in der Arm-Trusted-Firmware-Version socfpga_v2.7.1 und v2.8.0 - https://github.com/altera-opensource/arm-trusted-firmware
Patch-Commit-ID:
- v2.7.1 = https://github.com/altera-opensource/arm-trusted-firmware/commit/0a5edaed853e0dc1e687706ccace8e844b2a8db7
- v2.8.0 = https://github.com/altera-opensource/arm-trusted-firmware/commit/bf933536d4582d63d0e29434e807a641941f3937
Für Legacy-Flows (Nicht-ATF) – der Patch ist in u-boot-socfpga - socfpga_v2022.10 - verfügbar https://github.com/altera-opensource/u-boot-socfpga/tree/socfpga_v2022.10
Patch-Commit-ID:
- https://github.com/altera-opensource/u-boot-socfpga/tree/61ae22e548ebda525d5216d107e45f20eca70537
- https://github.com/altera-opensource/u-boot-socfpga/tree/1dda7c081ee51d6c4b52d2ef773464b745fb9ec0
- https://github.com/altera-opensource/u-boot-socfpga/tree/66f3f251b2d5767c2c4abd85e01df415e6c5bfe7
- https://github.com/altera-opensource/u-boot-socfpga/tree/45a62a422a3db7fcf0636e4ad95e12354e719189
- https://github.com/altera-opensource/u-boot-socfpga/tree/775e01b091c58f6d4d6551ef2f194d8b6c0ca8bb
- https://github.com/altera-opensource/u-boot-socfpga/tree/e870a2ee57e102de19f9f0283033b3336a54f8a3
Alternativ können Sie den folgenden Ansatz verwenden, um das Problem des Einrastens der F2SDRAM-Brücke zu vermeiden:
-
- Vermeiden Sie die Verwendung des FPGA Overlays für die vollständige Konfiguration.
- Führen Sie keine Bridge-Deaktivierung in der U-Boot-Phase durch.