Die Berechnung, die innerhalb des Arm-Trusted-Firmware-Codes durchgeführt wird, basiert auf einem angenommenen festen Wert von 400 MHz für die cs_at_clk. Entwickler können die cs_at_clk Domäne jedoch so konfigurieren, dass sie mit einer anderen Taktfrequenz als 400 MHz bezogen wird. Wenn dies geschieht, kann es zu unerwarteten Verzögerungen unter Linux kommen. Dieses Problem betrifft nur Designs, bei denen der cs_at_clk anders als 400 MHz konfiguriert ist.
Die folgenden Gerätereihen sind betroffen:
- Stratix® 10 SoC FPGAs
- Agilex™ 7 SoC FPGAs
- Agilex™ 5 SoC FPGAs
- eASIC™ N5X Geräte
Um die unerwarteten Verzögerungen unter Linux zu beseitigen, ändern Sie den folgenden Parameter in socfpga_plat_def.h-Datei so, dass er der Frequenz der in der HPS-IP eingestellten cs_at_clk entspricht (siehe "CoreSight-Taktfrequenz" unter HPS-Takte und -> interne Takte und Ausgangstakte)
#define PLAT_SYS_COUNTER_FREQ_IN_TICKS (400000000)
Stratix® 10 SoC FPGA : https://github.com/altera-opensource/arm-trusted-firmware/blob/socfpga_v2.10.0/plat/intel/soc/stratix10/include/socfpga_plat_def.h#L99C9-L99C40
Agilex™ 7 SoC FPGA : https://github.com/altera-opensource/arm-trusted-firmware/blob/socfpga_v2.10.0/plat/intel/soc/agilex/include/socfpga_plat_def.h#L100
Agilex™ 5 SoC FPGA : https://github.com/altera-opensource/arm-trusted-firmware/blob/socfpga_v2.10.0/plat/intel/soc/agilex5/include/socfpga_plat_def.h#L30
eASIC™ N5X Gerät: https://github.com/altera-opensource/arm-trusted-firmware/blob/socfpga_v2.10.0/plat/intel/soc/n5x/include/socfpga_plat_def.h#L99
Dieses Problem soll in einer zukünftigen Version der arm-trusted-firmware behoben werden.