xilinx: fix to Xilinx::program so a reset is not performed in SPI_MODE when _skip_reset is set

This commit is contained in:
Henry Gomersall 2026-04-30 16:16:52 +01:00 committed by Gwenhael Goavec-Merou
parent 52148a457a
commit 0e1cfe108b
1 changed files with 3 additions and 3 deletions

View File

@ -659,7 +659,6 @@ void Xilinx::program(unsigned int offset, bool unprotect_flash)
/* Check for BPI flash boards */ /* Check for BPI flash boards */
if (_is_bpi_board) { if (_is_bpi_board) {
program_bpi(bit, offset); program_bpi(bit, offset);
reset();
} else { } else {
if (_flash_chips & PRIMARY_FLASH) { if (_flash_chips & PRIMARY_FLASH) {
select_flash_chip(PRIMARY_FLASH); select_flash_chip(PRIMARY_FLASH);
@ -669,8 +668,6 @@ void Xilinx::program(unsigned int offset, bool unprotect_flash)
select_flash_chip(SECONDARY_FLASH); select_flash_chip(SECONDARY_FLASH);
program_spi(secondary_bit, _secondary_file_extension, offset, unprotect_flash); program_spi(secondary_bit, _secondary_file_extension, offset, unprotect_flash);
} }
reset();
} }
} else { } else {
if (_fpga_family == SPARTAN3_FAMILY) if (_fpga_family == SPARTAN3_FAMILY)
@ -810,6 +807,9 @@ void Xilinx::program_bpi(ConfigBitstreamParser *bit, unsigned int offset)
throw std::runtime_error("BPI flash programming failed"); throw std::runtime_error("BPI flash programming failed");
} }
/* Reset the board if skip_reset is not set */
post_flash_access();
printInfo("BPI flash programming complete"); printInfo("BPI flash programming complete");
} }