main: catch exception if FPGA can't be claimed.

This commit is contained in:
Gwenhael Goavec-Merou 2021-01-29 06:19:42 +01:00
parent 956d506bf7
commit 1992360667
1 changed files with 22 additions and 16 deletions

View File

@ -260,6 +260,7 @@ int main(int argc, char **argv)
string fab = fpga_list[idcode].manufacturer; string fab = fpga_list[idcode].manufacturer;
Device *fpga; Device *fpga;
try {
if (fab == "xilinx") { if (fab == "xilinx") {
fpga = new Xilinx(jtag, args.bit_file, args.write_flash, args.write_sram, fpga = new Xilinx(jtag, args.bit_file, args.write_flash, args.write_sram,
args.verbose); args.verbose);
@ -279,6 +280,11 @@ int main(int argc, char **argv)
delete(jtag); delete(jtag);
return EXIT_FAILURE; return EXIT_FAILURE;
} }
} catch (std::exception &e) {
printError("Error: Failed to claim FPGA device");
delete(jtag);
return EXIT_FAILURE;
}
if (!args.bit_file.empty()) { if (!args.bit_file.empty()) {
try { try {