From 0a9c0d01db66d56c6601f5fc2835a694bda633b7 Mon Sep 17 00:00:00 2001 From: Harsh Sharma Date: Mon, 21 Mar 2022 14:20:05 -0500 Subject: mtcap fpga loader bug fix --- src/AccessoryCards/Mtac15Fpga.cpp | 27 +++++++++++++++------------ 1 file changed, 15 insertions(+), 12 deletions(-) (limited to 'src') diff --git a/src/AccessoryCards/Mtac15Fpga.cpp b/src/AccessoryCards/Mtac15Fpga.cpp index fda3737..ed30fe3 100644 --- a/src/AccessoryCards/Mtac15Fpga.cpp +++ b/src/AccessoryCards/Mtac15Fpga.cpp @@ -684,7 +684,18 @@ Mtac15Fpga::Mtac15Fpga(std::string inputFile, std::string forcedPath) { } std::string hwVersion = deviceInfo["hardwareVersion"].GetString(); - if (deviceInfo.HasMember("accessoryCards") && + if (hwVersion.find("MTCAP") != std::string::npos) { + hardwareType = HARDWARE_MTCAP; + port = "lora"; + if (inputFile.empty()) { + input_file = MTCAP_DEFAULT_FILE; + } else { + input_file = inputFile; + } + spiPath = LORA_1_5_MTCAP_SPI; + getFpgaVersion(); + spiPath = LORA_1_5_MTCAP_SPI_FPGA; + } else if (deviceInfo.HasMember("accessoryCards") && deviceInfo["accessoryCards"].IsArray() && deviceInfo["accessoryCards"].Size() > 0) { rapidjson::SizeType acCardCount = deviceInfo["accessoryCards"].Size(); @@ -692,8 +703,6 @@ Mtac15Fpga::Mtac15Fpga(std::string inputFile, std::string forcedPath) { hardwareType = HARDWARE_MTCDT3; } else if (hwVersion.find("MTCDT") != std::string::npos) { hardwareType = HARDWARE_MTCDT; - } else if (hwVersion.find("MTCAP") != std::string::npos) { - hardwareType = HARDWARE_MTCAP; } else { return; } @@ -748,15 +757,6 @@ Mtac15Fpga::Mtac15Fpga(std::string inputFile, std::string forcedPath) { exitHandler(99); } - getFpgaVersion(); - } else if (hwVersion.find("MTCAP") != std::string::npos) { - hardwareType = HARDWARE_MTCAP; - if (inputFile.empty()) { - input_file = MTCAP_DEFAULT_FILE; - } else { - input_file = inputFile; - } - spiPath = "/dev/spidev0.0"; getFpgaVersion(); } else { printError("No accessory cards installed/invalid hardware"); @@ -845,6 +845,9 @@ int Mtac15Fpga::upgradeFpga() { } sleep(5); printInfo("Reading New FPGA configuration"); + if (hardwareType == HARDWARE_MTCAP) { + spiPath = LORA_1_5_MTCAP_SPI; + } ret = getFpgaVersion(); if (ret != 0) { return ret; -- cgit v1.2.3