Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found

Target

Select target project
  • ffnw-firmware/siteconf
  • pic/siteconf
  • PowerPan/siteconf
  • netmon-sc/siteconf
  • floh1111/siteconf
  • lrnzo/siteconf
  • florian.lottes/siteconf
7 results
Show changes
......@@ -2,28 +2,28 @@
domain_names = { oldenburg = "Oldenburg" },
domain_seed = 'a72075d53875a519b7c4a859648e446dc2e632001a359502e33e39b19a238532',
prefix6 = '2a06:e881:2000:4700::/64',
extra_prefixes6 = { 'fd74:fdaa:9dc4::/64' },
prefix6 = '2a0f:b506:ff14::/64',
extra_prefixes6 = { 'fd74:fdaa:9dc4::/64', '2a06:e881:2000:4700::/64' },
prefix4 = '10.18.152.0/21',
wifi24 = {
ap = {
ssid = 'test.nordwest.freifunk.net',
owe_ssid = 'owe.test.nordwest.freifunk.net',
ssid = 'nordwest.freifunk.net',
owe_ssid = 'owe.nordwest.freifunk.net',
owe_transition_mode = true,
},
mesh = {
id = 't-ffnw-mesh_02:00:0a:12:98:00',
id = 'ffnw-mesh_02:00:0a:12:98:00',
},
},
wifi5 = {
ap = {
ssid = 'test.nordwest.freifunk.net',
owe_ssid = 'owe.test.nordwest.freifunk.net',
ssid = 'nordwest.freifunk.net',
owe_ssid = 'owe.nordwest.freifunk.net',
owe_transition_mode = true,
},
mesh = {
id = 't-ffnw-mesh_02:00:0a:12:98:00',
id = 'ffnw-mesh_02:00:0a:12:98:00',
},
},
......
......@@ -2,28 +2,28 @@
domain_names = { oldenburg2 = 'Oldenburg Umland' },
domain_seed = '104ef6470c5e4c9a8d675decde3a3b231ba6fcad9693ef629770dd50298b17a6',
prefix6 = '2a06:e881:2000:4701::/64',
extra_prefixes6 = { 'fd74:fdaa:9dc4::/64' },
prefix6 = '2a0f:b506:ff15::/64',
extra_prefixes6 = { 'fd74:fdaa:9dc4::/64', '2a06:e881:2000:4701::/64' },
prefix4 = '10.18.104.0/21',
wifi24 = {
ap = {
ssid = 'test.nordwest.freifunk.net',
owe_ssid = 'owe.test.nordwest.freifunk.net',
ssid = 'nordwest.freifunk.net',
owe_ssid = 'owe.nordwest.freifunk.net',
owe_transition_mode = true,
},
mesh = {
id = 't-ffnw-mesh_02:00:0a:12:68:00',
id = 'ffnw-mesh_02:00:0a:12:68:00',
},
},
wifi5 = {
ap = {
ssid = 'test.nordwest.freifunk.net',
owe_ssid = 'owe.test.nordwest.freifunk.net',
ssid = 'nordwest.freifunk.net',
owe_ssid = 'owe.nordwest.freifunk.net',
owe_transition_mode = true,
},
mesh = {
id = 't-ffnw-mesh_02:00:0a:12:68:00',
id = 'ffnw-mesh_02:00:0a:12:68:00',
},
},
......
......@@ -2,28 +2,28 @@
domain_names = {osnabrueck='Osnabrück'},
domain_seed = 'd607cea9e5555fcbd3c814aae15e920307ea0916c573018ed41ee8dbd1a1548d',
prefix6 = '2a06:e881:2000:4400::/64',
extra_prefixes6 = {'fd74:fdaa:9dc4::/64'},
prefix6 = '2a0f:b506:ff16::/64',
extra_prefixes6 = { 'fd74:fdaa:9dc4::/64', '2a06:e881:2000:4400::/64' },
prefix4 = '10.18.144.0/21',
wifi24 = {
ap = {
ssid = 'test.nordwest.freifunk.net',
owe_ssid = 'owe.test.nordwest.freifunk.net',
ssid = 'nordwest.freifunk.net',
owe_ssid = 'owe.nordwest.freifunk.net',
owe_transition_mode = true,
},
mesh = {
id = 't-ffnw-mesh_02:00:0a:12:90:00',
id = 'ffnw-mesh_02:00:0a:12:90:00',
},
},
wifi5 = {
ap = {
ssid = 'test.nordwest.freifunk.net',
owe_ssid = 'owe.test.nordwest.freifunk.net',
ssid = 'nordwest.freifunk.net',
owe_ssid = 'owe.nordwest.freifunk.net',
owe_transition_mode = true,
},
mesh = {
id = 't-ffnw-mesh_02:00:0a:12:90:00',
id = 'ffnw-mesh_02:00:0a:12:90:00',
},
},
......
......@@ -2,28 +2,28 @@
domain_names = { osnabrueck2 = 'Osnabrück Innenstadt' },
domain_seed = 'b9f64deca4ac0c9e43320f405c593ffbce996eb46374b214af6061dbc63f1acb',
prefix6 = '2a06:e881:2000:4401::/64',
extra_prefixes6 = { 'fd74:fdaa:9dc4::/64' },
prefix6 = '2a0f:b506:ff17::/64',
extra_prefixes6 = { 'fd74:fdaa:9dc4::/64', '2a06:e881:2000:4401::/64' },
prefix4 = '10.18.96.0/21',
wifi24 = {
ap = {
ssid = 'test.nordwest.freifunk.net',
owe_ssid = 'owe.test.nordwest.freifunk.net',
ssid = 'nordwest.freifunk.net',
owe_ssid = 'owe.nordwest.freifunk.net',
owe_transition_mode = true,
},
mesh = {
id = 't-ffnw-mesh_02:00:0a:12:60:00',
id = 'ffnw-mesh_02:00:0a:12:60:00',
},
},
wifi5 = {
ap = {
ssid = 'test.nordwest.freifunk.net',
owe_ssid = 'owe.test.nordwest.freifunk.net',
ssid = 'nordwest.freifunk.net',
owe_ssid = 'owe.nordwest.freifunk.net',
owe_transition_mode = true,
},
mesh = {
id = 't-ffnw-mesh_02:00:0a:12:60:00',
id = 'ffnw-mesh_02:00:0a:12:60:00',
},
},
......
......@@ -2,28 +2,28 @@
domain_names = { rastede = 'Rastede' },
domain_seed = 'a089010314ddccf6306881e15601bc418bb5b08ef59b8708a6789f7fc510ab72',
prefix6 = '2a06:e881:2000:4302::/64',
extra_prefixes6 = { 'fd74:fdaa:9dc4::/64' },
prefix6 = '2a0f:b506:ff18::/64',
extra_prefixes6 = { 'fd74:fdaa:9dc4::/64', '2a06:e881:2000:4302::/64' },
prefix4 = '10.18.160.0/21',
wifi24 = {
ap = {
ssid = 'test.nordwest.freifunk.net',
owe_ssid = 'owe.test.nordwest.freifunk.net',
ssid = 'nordwest.freifunk.net',
owe_ssid = 'owe.nordwest.freifunk.net',
owe_transition_mode = true,
},
mesh = {
id = 't-ffnw-mesh_02:00:0a:12:a0:00',
id = 'ffnw-mesh_02:00:0a:12:a0:00',
},
},
wifi5 = {
ap = {
ssid = 'test.nordwest.freifunk.net',
owe_ssid = 'owe.test.nordwest.freifunk.net',
ssid = 'nordwest.freifunk.net',
owe_ssid = 'owe.nordwest.freifunk.net',
owe_transition_mode = true,
},
mesh = {
id = 't-ffnw-mesh_02:00:0a:12:a0:00',
id = 'ffnw-mesh_02:00:0a:12:a0:00',
},
},
......
......@@ -2,28 +2,28 @@
domain_names = { suedost = 'Südost' },
domain_seed = '644056d244937557f31b224f1b5b52d941ae63874ab13826c9966a58b9df6aff',
prefix6 = '2a06:e881:2000:4902::/64',
extra_prefixes6 = { 'fd74:fdaa:9dc4::/64' },
prefix6 = '2a0f:b506:ff19::/64',
extra_prefixes6 = { 'fd74:fdaa:9dc4::/64', '2a06:e881:2000:4902::/64' },
prefix4 = '10.18.48.0/21',
wifi24 = {
ap = {
ssid = 'test.nordwest.freifunk.net',
owe_ssid = 'owe.test.nordwest.freifunk.net',
ssid = 'nordwest.freifunk.net',
owe_ssid = 'owe.nordwest.freifunk.net',
owe_transition_mode = true,
},
mesh = {
id = 't-ffnw-mesh_02:00:0a:12:30:00',
id = 'ffnw-mesh_02:00:0a:12:30:00',
},
},
wifi5 = {
ap = {
ssid = 'test.nordwest.freifunk.net',
owe_ssid = 'owe.test.nordwest.freifunk.net',
ssid = 'nordwest.freifunk.net',
owe_ssid = 'owe.nordwest.freifunk.net',
owe_transition_mode = true,
},
mesh = {
id = 't-ffnw-mesh_02:00:0a:12:30:00',
id = 'ffnw-mesh_02:00:0a:12:30:00',
},
},
......
......@@ -2,28 +2,28 @@
domain_names = { tossens = 'Tossens' },
domain_seed = '08d037cae17c5a9cbc5b9fa19bdf873e7c66b9fa5b92a2e2e74c1866440bdc00',
prefix6 = '2a06:e881:2000:4900::/64',
extra_prefixes6 = { 'fd74:fdaa:9dc4::/64' },
prefix6 = '2a0f:b506:ff1a::/64',
extra_prefixes6 = { 'fd74:fdaa:9dc4::/64', '2a06:e881:2000:4900::/64' },
prefix4 = '10.18.216.0/21',
wifi24 = {
ap = {
ssid = 'test.nordwest.freifunk.net',
owe_ssid = 'owe.test.nordwest.freifunk.net',
ssid = 'nordwest.freifunk.net',
owe_ssid = 'owe.nordwest.freifunk.net',
owe_transition_mode = true,
},
mesh = {
id = 't-ffnw-mesh_02:00:0a:12:d8:00',
id = 'ffnw-mesh_02:00:0a:12:d8:00',
},
},
wifi5 = {
ap = {
ssid = 'test.nordwest.freifunk.net',
owe_ssid = 'owe.test.nordwest.freifunk.net',
ssid = 'nordwest.freifunk.net',
owe_ssid = 'owe.nordwest.freifunk.net',
owe_transition_mode = true,
},
mesh = {
id = 't-ffnw-mesh_02:00:0a:12:d8:00',
id = 'ffnw-mesh_02:00:0a:12:d8:00',
},
},
......
......@@ -2,28 +2,28 @@
domain_names = { wilhelmshaven = 'Wilhelmshaven' },
domain_seed = 'c4773223c43939b50f66bd1dd3129fe4d75f81dbfe49969adf36db159d58d236',
prefix6 = '2a06:e881:2000:4601::/64',
extra_prefixes6 = { 'fd74:fdaa:9dc4::/64' },
prefix6 = '2a0f:b506:ff1b::/64',
extra_prefixes6 = { 'fd74:fdaa:9dc4::/64', '2a06:e881:2000:4601::/64' },
prefix4 = '10.18.232.0/21',
wifi24 = {
ap = {
ssid = 'test.nordwest.freifunk.net',
owe_ssid = 'owe.test.nordwest.freifunk.net',
ssid = 'nordwest.freifunk.net',
owe_ssid = 'owe.nordwest.freifunk.net',
owe_transition_mode = true,
},
mesh = {
id = 't-ffnw-mesh_02:00:0a:12:e8:00',
id = 'ffnw-mesh_02:00:0a:12:e8:00',
},
},
wifi5 = {
ap = {
ssid = 'test.nordwest.freifunk.net',
owe_ssid = 'owe.test.nordwest.freifunk.net',
ssid = 'nordwest.freifunk.net',
owe_ssid = 'owe.nordwest.freifunk.net',
owe_transition_mode = true,
},
mesh = {
id = 't-ffnw-mesh_02:00:0a:12:e8:00',
id = 'ffnw-mesh_02:00:0a:12:e8:00',
},
},
......
From 16e48445555a8597a7d6dde41138dff4bc66d139 Mon Sep 17 00:00:00 2001
From: Jan-Tarek Butt <tarek@ring0.de>
Date: Sat, 5 Sep 2020 11:45:57 +0200
Subject: [PATCH 4/4] patches/openwrt: add
0016-ath9k-check-for-deaf-rx-path-state.patch to fix 0% bug on meshlinks
Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>
---
...6-ath9k-check-for-deaf-rx-path-state.patch | 126 ++++++++++++++++++
1 file changed, 126 insertions(+)
create mode 100644 patches/openwrt/0016-ath9k-check-for-deaf-rx-path-state.patch
diff --git a/patches/openwrt/0016-ath9k-check-for-deaf-rx-path-state.patch b/patches/openwrt/0016-ath9k-check-for-deaf-rx-path-state.patch
new file mode 100644
index 00000000..1c200536
--- /dev/null
+++ b/patches/openwrt/0016-ath9k-check-for-deaf-rx-path-state.patch
@@ -0,0 +1,126 @@
+From: Jan-Tarek Butt <tarek@ring0.de>
+Date: Sat, 5 Sep 2020 11:18:59 +0200
+Subject: ath9k: check for deaf rx path state
+
+Various chips occasionally run into a state where the tx path still
+appears to be working normally, but the rx path is deaf.
+
+There is no known register signature to check for this state explicitly,
+so use the lack of rx interrupts as an indicator.
+
+This detection is prone to false positives, since a device could also
+simply be in an environment where there are no frames on the air.
+However, in this case doing a reset should be harmless since it's
+obviously not interrupting any real activity. To avoid confusion, call
+the reset counters in this case "Rx path inactive" instead of something
+like "Rx path deaf", since it may not be an indication of a real
+hardware failure.
+
+Signed-off-by: Jan-Tarek Butt <tarek@ring0.de>
+
+diff --git a/package/kernel/mac80211/patches/ath/359-ath9k-check-for-deaf-rx-path-state.patch b/package/kernel/mac80211/patches/ath/359-ath9k-check-for-deaf-rx-path-state.patch
+new file mode 100644
+index 0000000000000000000000000000000000000000..347d06ec888c56102523ed40b38aa4b5083d4c9c
+--- /dev/null
++++ b/package/kernel/mac80211/patches/ath/359-ath9k-check-for-deaf-rx-path-state.patch
+@@ -0,0 +1,100 @@
++From: Felix Fietkau <nbd@nbd.name>
++Date: Wed, 25 Jan 2017 13:00:58 +0100
++Subject: [PATCH] ath9k: check for deaf rx path state
++
++Various chips occasionally run into a state where the tx path still
++appears to be working normally, but the rx path is deaf.
++
++There is no known register signature to check for this state explicitly,
++so use the lack of rx interrupts as an indicator.
++
++This detection is prone to false positives, since a device could also
++simply be in an environment where there are no frames on the air.
++However, in this case doing a reset should be harmless since it's
++obviously not interrupting any real activity. To avoid confusion, call
++the reset counters in this case "Rx path inactive" instead of something
++like "Rx path deaf", since it may not be an indication of a real
++hardware failure.
++
++Signed-off-by: Felix Fietkau <nbd@nbd.name>
++---
++
++--- a/drivers/net/wireless/ath/ath9k/ath9k.h
+++++ b/drivers/net/wireless/ath/ath9k/ath9k.h
++@@ -1027,6 +1027,7 @@ struct ath_softc {
++
++ u8 gtt_cnt;
++ u32 intrstatus;
+++ u32 rx_active;
++ u16 ps_flags; /* PS_* */
++ bool ps_enabled;
++ bool ps_idle;
++--- a/drivers/net/wireless/ath/ath9k/debug.c
+++++ b/drivers/net/wireless/ath/ath9k/debug.c
++@@ -763,6 +763,7 @@ static int read_file_reset(struct seq_fi
++ [RESET_TYPE_BEACON_STUCK] = "Stuck Beacon",
++ [RESET_TYPE_MCI] = "MCI Reset",
++ [RESET_TYPE_CALIBRATION] = "Calibration error",
+++ [RESET_TYPE_RX_INACTIVE] = "Rx path inactive",
++ [RESET_TX_DMA_ERROR] = "Tx DMA stop error",
++ [RESET_RX_DMA_ERROR] = "Rx DMA stop error",
++ };
++--- a/drivers/net/wireless/ath/ath9k/debug.h
+++++ b/drivers/net/wireless/ath/ath9k/debug.h
++@@ -50,6 +50,7 @@ enum ath_reset_type {
++ RESET_TYPE_BEACON_STUCK,
++ RESET_TYPE_MCI,
++ RESET_TYPE_CALIBRATION,
+++ RESET_TYPE_RX_INACTIVE,
++ RESET_TX_DMA_ERROR,
++ RESET_RX_DMA_ERROR,
++ __RESET_TYPE_MAX
++--- a/drivers/net/wireless/ath/ath9k/link.c
+++++ b/drivers/net/wireless/ath/ath9k/link.c
++@@ -53,13 +53,27 @@ reset:
++
++ }
++
+++static bool ath_rx_active_check(struct ath_softc *sc)
+++{
+++ if (sc->rx_active) {
+++ sc->rx_active = 0;
+++ return true;
+++ }
+++
+++ ath_dbg(ath9k_hw_common(sc->sc_ah), RESET,
+++ "rx path inactive, resetting the chip\n");
+++ ath9k_queue_reset(sc, RESET_TYPE_RX_INACTIVE);
+++ return false;
+++}
+++
++ void ath_hw_check_work(struct work_struct *work)
++ {
++ struct ath_softc *sc = container_of(work, struct ath_softc,
++ hw_check_work.work);
++
++ if (!ath_hw_check(sc) ||
++- !ath_tx_complete_check(sc))
+++ !ath_tx_complete_check(sc) ||
+++ !ath_rx_active_check(sc))
++ return;
++
++ ieee80211_queue_delayed_work(sc->hw, &sc->hw_check_work,
++--- a/drivers/net/wireless/ath/ath9k/main.c
+++++ b/drivers/net/wireless/ath/ath9k/main.c
++@@ -269,6 +269,7 @@ static bool ath_complete_reset(struct at
++ }
++
++ sc->gtt_cnt = 0;
+++ sc->rx_active = 1;
++
++ ath9k_hw_set_interrupts(ah);
++ ath9k_hw_enable_interrupts(ah);
++@@ -452,6 +453,7 @@ void ath9k_tasklet(unsigned long data)
++ ath_rx_tasklet(sc, 0, true);
++
++ ath_rx_tasklet(sc, 0, false);
+++ sc->rx_active = 1;
++ }
++
++ if (status & ATH9K_INT_TX) {
--
2.20.1
......@@ -24,6 +24,7 @@
},
wifi5 = {
channel = 44,
outdoor_chanlist = '100-140',
mesh = {
mcast_rate = 12000,
},
......@@ -70,10 +71,24 @@
'e3d2e96563b9be3e95a3d748c0ff50a6f854208b68b4a1181667641d74754c76', --stefan
},
},
rc = {
name = 'stable',
mirrors = {
%C
},
good_signatures = 1,
pubkeys = {
'99c420e95dd0923ee6277af5c306f9ae6b97f8793b08edd41448925df5fe35b9', --floh1111
'5d95cc2ef3ad17fe3716469e1effde4a49a25d4de9befa4a6eb260e4cda79ab0', --tata
'0e6704ba26c150185514a391658455a612839c35bd83e0faffa81e0be48356e2', --sk
'd3a4cbc90a2d4dbfc5386dd035016a04bfdfe1e7615fa8ea25bea5c048a7f106', --lrnzo
'e3d2e96563b9be3e95a3d748c0ff50a6f854208b68b4a1181667641d74754c76', --stefan
},
},
testing = {
name = 'testing',
mirrors = {
%C
%D
},
good_signatures = 1,
pubkeys = {
......@@ -87,7 +102,7 @@
nightly_master = {
name = 'nightly_master',
mirrors = {
%D
%E
},
good_signatures = 1,
pubkeys = {
......