rt2x00: add throughput LED trigger
authorDavid Bauer <mail@david-bauer.net>
Mon, 30 Dec 2019 00:52:59 +0000 (01:52 +0100)
committerDaniel Golle <daniel@makrotopia.org>
Mon, 30 Dec 2019 11:09:14 +0000 (13:09 +0200)
This adds a (currently missing) throughput LED trigger for the rt2x00
driver. Previously, LED triggers had to be assigned to the netdev, which
was limited to a single VAP.

Signed-off-by: David Bauer <mail@david-bauer.net>
Tested-by: Christoph Krapp <achterin@googlemail.com>
package/kernel/mac80211/patches/rt2x00/612-rt2x00-led-tpt-trigger-support.patch [new file with mode: 0644]

diff --git a/package/kernel/mac80211/patches/rt2x00/612-rt2x00-led-tpt-trigger-support.patch b/package/kernel/mac80211/patches/rt2x00/612-rt2x00-led-tpt-trigger-support.patch
new file mode 100644 (file)
index 0000000..25d15b6
--- /dev/null
@@ -0,0 +1,44 @@
+From: David Bauer <mail@david-bauer.net>
+Date: Mon, 16 Dec 2019 20:47:06 +0100
+Subject: [PATCH] rt2x00: add throughput LED trigger
+
+This adds a (currently missing) throughput LED trigger for the rt2x00
+driver. Previously, LED triggers had to be assigned to the netdev, which
+was limited to a single VAP.
+
+Signed-off-by: David Bauer <mail@david-bauer.net>
+Tested-by: Christoph Krapp <achterin@googlemail.com>
+
+--- a/drivers/net/wireless/ralink/rt2x00/rt2x00dev.c
++++ b/drivers/net/wireless/ralink/rt2x00/rt2x00dev.c
+@@ -1129,6 +1129,19 @@ static void rt2x00lib_remove_hw(struct r
+       kfree(rt2x00dev->spec.channels_info);
+ }
++static const struct ieee80211_tpt_blink rt2x00_tpt_blink[] = {
++      { .throughput = 0 * 1024, .blink_time = 334 },
++      { .throughput = 1 * 1024, .blink_time = 260 },
++      { .throughput = 2 * 1024, .blink_time = 220 },
++      { .throughput = 5 * 1024, .blink_time = 190 },
++      { .throughput = 10 * 1024, .blink_time = 170 },
++      { .throughput = 25 * 1024, .blink_time = 150 },
++      { .throughput = 54 * 1024, .blink_time = 130 },
++      { .throughput = 120 * 1024, .blink_time = 110 },
++      { .throughput = 265 * 1024, .blink_time = 80 },
++      { .throughput = 586 * 1024, .blink_time = 50 },
++};
++
+ static int rt2x00lib_probe_hw(struct rt2x00_dev *rt2x00dev)
+ {
+       struct hw_mode_spec *spec = &rt2x00dev->spec;
+@@ -1211,6 +1225,10 @@ static int rt2x00lib_probe_hw(struct rt2
+ #undef RT2X00_TASKLET_INIT
++      ieee80211_create_tpt_led_trigger(rt2x00dev->hw,
++              IEEE80211_TPT_LEDTRIG_FL_RADIO, rt2x00_tpt_blink,
++              ARRAY_SIZE(rt2x00_tpt_blink));
++
+       /*
+        * Register HW.
+        */