Felix Fietkau
2a092e2b1d
mt7603: fix per-rate retry accounting
...
Each rate retry slot takes up MT7603_RATE_RETRY tries, and cannot be altered
based on mac80211 provided rate retry counts.
Signed-off-by: Felix Fietkau <[email protected] >
2018-12-29 19:42:15 +01:00
Felix Fietkau
148219d572
mt7603: fix checkpatch issues
...
Signed-off-by: Felix Fietkau <[email protected] >
2018-12-29 13:27:35 +01:00
Felix Fietkau
bce700dd0c
mt7603: fix signal strength reporting on single-stream devices
...
The second chain value is 0 if the second chain is disabled, which
would make the reported signal strength 0 as well.
Signed-off-by: Felix Fietkau <[email protected] >
2018-12-29 13:03:20 +01:00
Felix Fietkau
294e095a48
mt7603: reset DMA scheduler on MT7628
...
Should improve stability
Signed-off-by: Felix Fietkau <[email protected] >
2018-12-09 17:18:12 +01:00
Felix Fietkau
9d009be68d
mt7603: add dynamic sensitivity tuning based on false CCA events
...
This reduces sensitivity in cases where it could help throughput/stability.
Signed-off-by: Felix Fietkau <[email protected] >
2018-12-05 18:26:20 +01:00
Felix Fietkau
417ab779a0
mt7603: improve recovery from PSE reset failure
...
Only clear reset status and switch to DMA reset after 3 tries.
Signed-off-by: Felix Fietkau <[email protected] >
2018-12-05 15:31:43 +01:00
Felix Fietkau
80843237fa
mt7603: implement code for adjusting energy detect CCA thresholds
...
Ported from the reference driver.
Should fix compliance with ETSI rules on preventing transmission while
energy detect values are above the threshold.
Relax rules for non-ETSI regdomains
Signed-off-by: Felix Fietkau <[email protected] >
2018-12-03 18:03:52 +01:00
Felix Fietkau
2a136cb2fd
mt7603: fix TKIP key setup
...
Rx and Tx MIC keys are swapped compared to the order provided by mac80211
Signed-off-by: Felix Fietkau <[email protected] >
2018-11-28 14:55:27 +01:00
Felix Fietkau
4063ae1ecb
mt7603: check for PSE hang / stuck beacon first
...
Ensure that PSE reset is issued when necessary
Signed-off-by: Felix Fietkau <[email protected] >
2018-11-28 13:55:37 +01:00
Felix Fietkau
31cd20eb6a
mt7603: issue PSE reset on stuck beacon
...
Improves reliability of recovery
Signed-off-by: Felix Fietkau <[email protected] >
2018-11-28 13:54:47 +01:00
Felix Fietkau
5fb60a7d7a
mt7603: fix aggregation size handling
...
Do not step over the 32 subframe limit.
Fix staying under the limit
Signed-off-by: Felix Fietkau <[email protected] >
2018-11-21 19:04:19 +01:00
Felix Fietkau
da666a74a6
mt7603: issue PSE reset if firmware debug register indicates stuck queues
...
Signed-off-by: Felix Fietkau <[email protected] >
2018-11-21 15:10:31 +01:00
Felix Fietkau
b38fe7d531
mt7603: only issue PSE reset on PSE stuck
...
The reset can take quite a bit of time, so only issue it when necessary
Signed-off-by: Felix Fietkau <[email protected] >
2018-11-21 15:04:47 +01:00
Felix Fietkau
94cebfc31a
mt7603: fix handling lost interrupt events during watchdog reset
...
Schedule tx tasklet and rx napi poll after reset to ensure that processing
of DMA queues resumes
Signed-off-by: Felix Fietkau <[email protected] >
2018-11-21 15:00:15 +01:00
Felix Fietkau
a301decead
mt7603: add back PSE client reset code
...
Should help with MT7628 reliability
Signed-off-by: Felix Fietkau <[email protected] >
2018-11-21 13:52:04 +01:00
Felix Fietkau
b3f82a33c0
mt7603: report PSE reset failures via debugfs
...
Signed-off-by: Felix Fietkau <[email protected] >
2018-11-21 13:18:28 +01:00
Felix Fietkau
9428e34d1f
mt7603: fix watchdog reset sequence
...
- issue PSE reset first
- skip DMA reset if PSE reset failed
- schedule tx after reset has completed
Signed-off-by: Felix Fietkau <[email protected] >
2018-11-21 13:08:16 +01:00
Felix Fietkau
c09e8a489f
mt7603: fix buffering of tx packets for powersave clients
...
Use PSE registers to loop back any pending tx packets for a client that
just went to sleep back into the MCU rx queue.
Re-queue those packets to the tx queue immediately after a client wakes up.
Signed-off-by: Felix Fietkau <[email protected] >
2018-11-20 16:18:22 +01:00
Felix Fietkau
d0fdf01a95
mt7603: avoid unnecessary wtbl writes for ps-filter
...
Only clear the skip_tx flag if powersave mode is enabled
Signed-off-by: Felix Fietkau <[email protected] >
2018-11-16 12:41:17 +01:00
Felix Fietkau
90e2c1b616
mt7603: add mt7603_wtbl_set_skip_tx, change mt7603_wtbl_set_ps users
...
Avoids unnecessary toggling of the MT_WTBL1_OR_PSM_WRITE flag
Signed-off-by: Felix Fietkau <[email protected] >
2018-11-16 12:28:30 +01:00
Felix Fietkau
13f1e82f6f
mt7603: clear wtbl entry for removed stations
...
Should fix some issues with reassociating stations
Signed-off-by: Felix Fietkau <[email protected] >
2018-11-16 12:09:52 +01:00
Felix Fietkau
75aa36e0a3
mt7603: use wcid/wcid_mask from struct mt76_dev
...
Signed-off-by: Felix Fietkau <[email protected] >
2018-11-13 11:51:49 +01:00
Felix Fietkau
417cf49ce8
mt7603: improve recovery from MCU hang
...
Fix forcing watchdog reset after a MCU hang
Run watchdog work immediately after a failed channel change
Signed-off-by: Felix Fietkau <[email protected] >
2018-11-07 18:46:47 +01:00
Felix Fietkau
5ee05239fa
mt7603: fix tx status rate reporting for fixed-rate packets
...
Add support for parsing legacy rates, use a flag in the tx status info
as indicator for fixed rate packets
Signed-off-by: Felix Fietkau <[email protected] >
2018-11-06 22:19:20 +01:00
Felix Fietkau
a1afefdbf0
mt7603: fix handling of fixed rate packets
...
The FIXED_RATE flag of txd6 does not enable fixed rate, it only configures
the use of the fixed rate register as rate source.
Set the right flag in txd2 instead.
Signed-off-by: Felix Fietkau <[email protected] >
2018-11-06 17:42:10 +01:00
Felix Fietkau
498d716353
mt7603: fix checkpatch issues
...
Signed-off-by: Felix Fietkau <[email protected] >
2018-11-06 15:41:37 +01:00
Felix Fietkau
d9b5324ecc
mt7603: add SPDX license identifiers
...
Signed-off-by: Felix Fietkau <[email protected] >
2018-11-06 13:53:26 +01:00
Felix Fietkau
ac6fc78aee
mt7603: add debugfs file to trigger watchdog resets
...
Makes it easier to verify that the reset code is working properly
Signed-off-by: Felix Fietkau <[email protected] >
2018-11-06 13:39:41 +01:00
Felix Fietkau
87bad3a592
mt7603: stop MAC on watchdog reset
...
Prevent further rx activity while shutting down DMA and resetting PSE
Signed-off-by: Felix Fietkau <[email protected] >
2018-11-06 13:24:58 +01:00
Felix Fietkau
3c8e8a789b
mt7603: use irq_lock/irqmask from struct mt76_dev
...
Signed-off-by: Felix Fietkau <[email protected] >
2018-11-06 12:24:48 +01:00
Felix Fietkau
01815e9ac2
mt7603: use mutex from struct mt76_dev
...
Signed-off-by: Felix Fietkau <[email protected] >
2018-11-06 12:21:50 +01:00
Felix Fietkau
ef06c3074f
mt76: avoid queue/status spinlocks while passing tx status to mac80211
...
There is some code in the mac80211 tx status processing code that could
potentially call back into the tx codepath.
To avoid deadlocks, make sure that no tx related spinlocks are taken
during the ieee80211_tx_status call.
Signed-off-by: Felix Fietkau <[email protected] >
2018-11-05 21:11:42 +01:00
Felix Fietkau
ed17ba23e8
mt7603: use common tx status handling code
...
Signed-off-by: Felix Fietkau <[email protected] >
2018-10-25 18:50:28 +02:00
Felix Fietkau
62ce3245da
move mt7603 source files to mt7603/
...
Signed-off-by: Felix Fietkau <[email protected] >
2018-09-28 18:02:01 +02:00