F2SDRAM 브리지용 브리지 드라이버의 문제로 인해 다음 동작이 나타날 수 있습니다.
- 다음과 같은 경우 F2SDRAM 브리지의 잠금 상태
- FPGA 오버레이를 통해 Linux에서 전체 FPGA 코어 구성을 수행합니다.
- U-Boot 콘솔에서 core.rbf 설정 후 "disable bridge" 명령을 실행하여 브리지를 비활성화합니다.
- 코어 재구성 후 Linux 커널 예외(데이터 중단) 또는 완료되지 않은 F2SDRAM 트랜잭션 FPGA
- FPGA 오버레이를 통해 Linux에서 전체 FPGA 코어 구성을 수행합니다
- Arm AXI 컨트롤러는 F2SDRAM 브리지를 통해 HPS에 트랜잭션을 발행합니다
- FPGA 오버레이를 통해 Linux에서 전체 FPGA 코어 재구성을 수행합니다
- Arm AXI 컨트롤러는 F2SDRAM 브리지를 통해 HPS에 트랜잭션을 발행합니다
- Linux 커널 예외: Null 포인터 예외가 표시되거나 첫 번째 트랜잭션이 완료되기 전에 FPGA2SDRAM 브리지의 Arm AMBA AXI Ready 신호가 비활성화될 수 있습니다.
이러한 문제는 H2F 또는 경량 H2F 브리지에 영향을 주지 않습니다.
이러한 문제는 Intel Agilex® 7 SoC, 인텔® Stratix® 10 FPGA 및 인텔® eASIC™ N5X 장치에 영향을 미칩니다.
이 문제는 최신 GitHub arm-trusted-firmware 버전 socfpga_v2.7.1 및 v2.8.0과 U-Boot 버전 socfpga_v2022.10에서 수정되었습니다.
ATF 흐름의 경우 패치는 arm-trusted-firmware 버전 socfpga_v2.7.1 및 v2.8.0 - https://github.com/altera-opensource/arm-trusted-firmware
패치 커밋 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
레거시(비 ATF) 흐름의 경우 - 패치는 u-boot-socfpga - socfpga_v2022.10 - https://github.com/altera-opensource/u-boot-socfpga/tree/socfpga_v2022.10 에서 사용할 수 있습니다.
패치 커밋 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
또는 다음 방법을 사용하여 F2SDRAM 브리지 잠금 문제를 방지할 수 있습니다.
-
- 전체 구성에 FPGA 오버레이를 사용하지 마십시오.
- U-Boot 단계에서 브리지 비활성화를 수행하지 마십시오.