summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHarsh Sharma <harsh.sharma@multitech.com>2022-03-21 14:20:05 -0500
committerHarsh Sharma <harsh.sharma@multitech.com>2022-03-21 14:20:05 -0500
commit0a9c0d01db66d56c6601f5fc2835a694bda633b7 (patch)
tree26d9ae8afe7be96be142355f592362a03578dc36
parenta54971cfb51e2254ea7d68238243df430a699044 (diff)
downloadmts-io-sysfs-0a9c0d01db66d56c6601f5fc2835a694bda633b7.tar.gz
mts-io-sysfs-0a9c0d01db66d56c6601f5fc2835a694bda633b7.tar.bz2
mts-io-sysfs-0a9c0d01db66d56c6601f5fc2835a694bda633b7.zip
mtcap fpga loader bug fix
-rw-r--r--include/General.h1
-rw-r--r--src/AccessoryCards/Mtac15Fpga.cpp27
2 files changed, 16 insertions, 12 deletions
diff --git a/include/General.h b/include/General.h
index 861ec62..5e32f0b 100644
--- a/include/General.h
+++ b/include/General.h
@@ -59,6 +59,7 @@ typedef unsigned int uint; // 32 bit - even on 64 bit machines
#define CRESET "/creset"
#define LORA_1_5_MTCAP_SPI "/dev/spidev0.0"
+#define LORA_1_5_MTCAP_SPI_FPGA "/dev/spidev0.1"
#define LORA_1_5_MTCDT_SPI_AP_1 "/dev/spidev0.2"
#define LORA_1_5_MTCDT_SPI_AP_2 "/dev/spidev1.2"
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;
}
@@ -749,15 +758,6 @@ Mtac15Fpga::Mtac15Fpga(std::string inputFile, std::string forcedPath) {
}
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");
exitHandler(99);
@@ -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;