summaryrefslogtreecommitdiff
path: root/recipes-connectivity/lora
diff options
context:
space:
mode:
authorJason Reiss <jreiss@multitech.com>2019-05-21 14:17:26 -0500
committerJohn Klug <john.klug@multitech.com>2019-07-03 17:08:20 -0500
commitb7327e3f9d882b03eaacbb7559f3bbc64ad45a1c (patch)
tree92b4d2d089fff86d12dbfc4aea0fc42faf64273c /recipes-connectivity/lora
parent9335d17597e9e2b7bec8b30666b2df52ecee1439 (diff)
downloadmeta-mlinux-b7327e3f9d882b03eaacbb7559f3bbc64ad45a1c.tar.gz
meta-mlinux-b7327e3f9d882b03eaacbb7559f3bbc64ad45a1c.tar.bz2
meta-mlinux-b7327e3f9d882b03eaacbb7559f3bbc64ad45a1c.zip
lora: update packet forwarders with increased JIT peek ahead time 60ms for v1.5 and 90ms for v2.1, add additional escapes from spec scan loops
Diffstat (limited to 'recipes-connectivity/lora')
-rw-r--r--recipes-connectivity/lora/lora-gateway-geolocation_5.1.0.bb8
-rw-r--r--recipes-connectivity/lora/lora-gateway/lora-gateway-spectral-scan-skip-fpga-reset.patch25
-rw-r--r--recipes-connectivity/lora/lora-packet-forwarder-geolocation_5.1.0.bb8
-rw-r--r--recipes-connectivity/lora/lora-packet-forwarder/lora-packet-forwarder-jit-queue-increase-peek-and-remove-sort-from-dequeue.patch36
-rw-r--r--recipes-connectivity/lora/lora-packet-forwarder_4.0.1.bb3
5 files changed, 69 insertions, 11 deletions
diff --git a/recipes-connectivity/lora/lora-gateway-geolocation_5.1.0.bb b/recipes-connectivity/lora/lora-gateway-geolocation_5.1.0.bb
index 424ea43..403670a 100644
--- a/recipes-connectivity/lora/lora-gateway-geolocation_5.1.0.bb
+++ b/recipes-connectivity/lora/lora-gateway-geolocation_5.1.0.bb
@@ -6,9 +6,9 @@ LICENSE = "Proprietary"
LIC_FILES_CHKSUM = "file://mlinux4/LICENSE.TXT;md5=86776875df1423114abfcec938f3e565"
DEPENDS = ""
# Source revision
-PSR = "r3"
+PSR = "r4"
# Recipe revision
-PR = "r5"
+PR = "r6"
SRCREV = "v${PV}"
SRC_URI = "http://multitech.net/downloads/lora-packet-forwarder-geolocation_arm926ejste_${PV}-${PSR}.tar.gz \
@@ -16,8 +16,8 @@ SRC_URI = "http://multitech.net/downloads/lora-packet-forwarder-geolocation_arm9
file://config_64ch.json \
"
-SRC_URI[md5sum] = "70cce8e2c7a790d68aebe66e93302ee6"
-SRC_URI[sha256sum] = "6e09e265bb22a5370bbfb8e80b9aac5e1b7bd2b5f867e55eddea6cb2685a72b4"
+SRC_URI[md5sum] = "542f02198a3258ca2ad4e549524e3ddc"
+SRC_URI[sha256sum] = "8176f5f55f96b7a72946cfb51743a8ea4f88a4033e54009e7bcf8f03077d248e"
S = "${WORKDIR}"
diff --git a/recipes-connectivity/lora/lora-gateway/lora-gateway-spectral-scan-skip-fpga-reset.patch b/recipes-connectivity/lora/lora-gateway/lora-gateway-spectral-scan-skip-fpga-reset.patch
index e4a8b2b..0b53fd0 100644
--- a/recipes-connectivity/lora/lora-gateway/lora-gateway-spectral-scan-skip-fpga-reset.patch
+++ b/recipes-connectivity/lora/lora-gateway/lora-gateway-spectral-scan-skip-fpga-reset.patch
@@ -1,5 +1,5 @@
diff --git a/util_spectral_scan/src/util_spectral_scan.c b/util_spectral_scan/src/util_spectral_scan.c
-index d2aecda..f070f4b 100644
+index d2aecda..cbc8377 100644
--- a/util_spectral_scan/src/util_spectral_scan.c
+++ b/util_spectral_scan/src/util_spectral_scan.c
@@ -30,6 +30,7 @@ Maintainer: Michael Coracin
@@ -53,7 +53,27 @@ index d2aecda..f070f4b 100644
if(x != 0) {
printf("ERROR: Failed to connect to FPGA\n");
return EXIT_FAILURE;
-@@ -382,6 +398,10 @@ int main( int argc, char ** argv )
+@@ -324,6 +340,9 @@ int main( int argc, char ** argv )
+ do {
+ wait_ms(10);
+ lgw_fpga_reg_r(LGW_FPGA_STATUS, &reg_val);
++ if (shutdown_signal_recv) {
++ break;
++ }
+ }
+ while((TAKE_N_BITS_FROM((uint8_t)reg_val, 0, 5)) != 1); /* Clear has started */
+
+@@ -346,6 +365,9 @@ int main( int argc, char ** argv )
+ do {
+ wait_ms(1000);
+ lgw_fpga_reg_r(LGW_FPGA_STATUS, &reg_val);
++ if (shutdown_signal_recv) {
++ break;
++ }
+ }
+ while((TAKE_N_BITS_FROM((uint8_t)reg_val, 5, 1)) != 1);
+
+@@ -382,6 +404,10 @@ int main( int argc, char ** argv )
}
fprintf(log_file, "\n");
printf("\n");
@@ -63,3 +83,4 @@ index d2aecda..f070f4b 100644
+ }
}
fclose(log_file);
+
diff --git a/recipes-connectivity/lora/lora-packet-forwarder-geolocation_5.1.0.bb b/recipes-connectivity/lora/lora-packet-forwarder-geolocation_5.1.0.bb
index 34a18a1..fa5232a 100644
--- a/recipes-connectivity/lora/lora-packet-forwarder-geolocation_5.1.0.bb
+++ b/recipes-connectivity/lora/lora-packet-forwarder-geolocation_5.1.0.bb
@@ -7,9 +7,9 @@ LIC_FILES_CHKSUM = "file://mlinux4/LICENSE.TXT;md5=86776875df1423114abfcec938f3e
DEPENDS ?= "lora-gateway-geolocation logrotate lora-logging"
RDEPENDS_${PN} += "bash"
# Source revision
-PSR = "r3"
+PSR = "r4"
# Recipe revision
-PR = "r5"
+PR = "r6"
SRCREV = "v${PV}"
@@ -26,8 +26,8 @@ SRC_URI = "http://multitech.net/downloads/lora-packet-forwarder-geolocation_arm9
file://global_conf.json.MTAC_LORA_2_1_test_single_antenna_64ch_64x1_EU868 \
file://global_conf.json.MTAC_LORA_2_1_test_single_antenna_64ch_8x8_EU868 \
"
-SRC_URI[md5sum] = "70cce8e2c7a790d68aebe66e93302ee6"
-SRC_URI[sha256sum] = "6e09e265bb22a5370bbfb8e80b9aac5e1b7bd2b5f867e55eddea6cb2685a72b4"
+SRC_URI[md5sum] = "542f02198a3258ca2ad4e549524e3ddc"
+SRC_URI[sha256sum] = "8176f5f55f96b7a72946cfb51743a8ea4f88a4033e54009e7bcf8f03077d248e"
S = "${WORKDIR}"
B = "${S}"
diff --git a/recipes-connectivity/lora/lora-packet-forwarder/lora-packet-forwarder-jit-queue-increase-peek-and-remove-sort-from-dequeue.patch b/recipes-connectivity/lora/lora-packet-forwarder/lora-packet-forwarder-jit-queue-increase-peek-and-remove-sort-from-dequeue.patch
new file mode 100644
index 0000000..2b0aaf4
--- /dev/null
+++ b/recipes-connectivity/lora/lora-packet-forwarder/lora-packet-forwarder-jit-queue-increase-peek-and-remove-sort-from-dequeue.patch
@@ -0,0 +1,36 @@
+diff --git a/lora_pkt_fwd/src/jitqueue.c b/lora_pkt_fwd/src/jitqueue.c
+index dbde8d2..f1b547b 100644
+--- a/lora_pkt_fwd/src/jitqueue.c
++++ b/lora_pkt_fwd/src/jitqueue.c
+@@ -37,6 +37,7 @@ Maintainer: Michael Coracin
+ #define TX_MARGIN_DELAY 1000 /* Packet overlap margin in microseconds */
+ /* TODO: How much margin should we take? */
+ #define TX_JIT_DELAY 30000 /* Pre-delay to program packet for TX in microseconds */
++#define TX_PEEK_DELAY 60000 /* Look ahead time for TX in microseconds */
+ #define TX_MAX_ADVANCE_DELAY ((JIT_NUM_BEACON_IN_QUEUE + 1) * 128 * 1E6) /* Maximum advance delay accepted for a TX packet, compared to current time */
+
+ #define BEACON_GUARD 3000000 /* Interval where no ping slot can be placed,
+@@ -352,12 +353,12 @@ enum jit_error_e jit_dequeue(struct jit_queue_s *queue, int index, struct lgw_pk
+ memset(&(queue->nodes[queue->num_pkt]), 0, sizeof(struct jit_node_s));
+
+ /* Sort queue in ascending order of packet timestamp */
+- jit_sort_queue(queue);
++ // jit_sort_queue(queue);
+
+ /* Done */
+ pthread_mutex_unlock(&mx_jit_queue);
+
+- jit_print_queue(queue, false, DEBUG_JIT);
++ // jit_print_queue(queue, false, DEBUG_JIT);
+
+ MSG_DEBUG(DEBUG_JIT, "dequeued packet with count_us=%u from index %d\n", packet->count_us, index);
+
+@@ -427,7 +428,7 @@ enum jit_error_e jit_peek(struct jit_queue_s *queue, struct timeval *time, int *
+ * Warning: unsigned arithmetic (handle roll-over)
+ * t_packet < t_current + TX_JIT_DELAY
+ */
+- if ((queue->nodes[idx_highest_priority].pkt.count_us - time_us) < TX_JIT_DELAY) {
++ if ((queue->nodes[idx_highest_priority].pkt.count_us - time_us) < TX_PEEK_DELAY) {
+ *pkt_idx = idx_highest_priority;
+ MSG_DEBUG(DEBUG_JIT, "peek packet with count_us=%u at index %d\n",
+ queue->nodes[idx_highest_priority].pkt.count_us, idx_highest_priority);
diff --git a/recipes-connectivity/lora/lora-packet-forwarder_4.0.1.bb b/recipes-connectivity/lora/lora-packet-forwarder_4.0.1.bb
index 282d09e..d55e511 100644
--- a/recipes-connectivity/lora/lora-packet-forwarder_4.0.1.bb
+++ b/recipes-connectivity/lora/lora-packet-forwarder_4.0.1.bb
@@ -7,7 +7,7 @@ LICENSE = "Proprietary"
LIC_FILES_CHKSUM = "file://LICENSE;md5=22af7693d7b76ef0fc76161c4be76c45"
DEPENDS = "lora-gateway logrotate lora-logging"
RDEPENDS_${PN} += "bash"
-PR = "r16"
+PR = "r17"
SRCREV = "v${PV}"
@@ -39,6 +39,7 @@ SRC_URI = "git://github.com/Lora-net/packet_forwarder.git;protocol=git \
file://lora-packet-forwarder-remove-jit-power-check.patch \
file://lora-packet-forwarder-gpsd.patch \
file://lora-packet-forwarder-beacon-rfu-fix.patch \
+ file://lora-packet-forwarder-jit-queue-increase-peek-and-remove-sort-from-dequeue.patch \
"