Commit Graph
47 Commits
Author SHA1 Message Date
Felix Fietkau afa61bcd61 mt76: implement AP_LINK_PS
With software A-MPDU reordering in place, frames that notify mac80211 of
powersave changes are reordered as well, which can cause connection
stalls. Fix this by implementing powersave state processing in the
driver.

Signed-off-by: Felix Fietkau <[email protected]>
2018-01-30 10:35:36 +01:00
Lorenzo BianconiandFelix Fietkau b242e2b109 mt76x2: init: disable all pending tasklets during device removal
There is a possible race in mt76x2_stop_hardware() since pre_tbtt and
dfs tasklets could run during driver cleanup. Fix it disabling all
pending tasklets during device removal

Signed-off-by: Lorenzo Bianconi <[email protected]>
2018-01-30 10:34:04 +01:00
Felix Fietkau 2b5ea6f4e7 mt76: validate rx CCMP PN
Apparently hardware does not perform CCMP PN validation in hardware, so
we need to take care of this in the driver.

Signed-off-by: Felix Fietkau <[email protected]>
2018-01-30 10:34:03 +01:00
Felix Fietkau f0a63aeba0 mt76: implement A-MPDU rx reordering in the driver code
This is required for performing CCMP PN validation in software

Signed-off-by: Felix Fietkau <[email protected]>
2018-01-30 10:33:40 +01:00
Lorenzo BianconiandFelix Fietkau 149295ad97 mt76x2: dfs: add set_domain handler
Add mt76x2_dfs_set_domain routine in order to properly reconfigure
pattern detector when DFS domain has been changed

Signed-off-by: Lorenzo Bianconi <[email protected]>
2018-01-30 10:23:03 +01:00
Felix Fietkau 808c1c571a mt76x2: add functions for setting extended MAC address registers
Signed-off-by: Felix Fietkau <[email protected]>
2018-01-30 10:23:03 +01:00
Lorenzo BianconiandFelix Fietkau a3323a115a mt76x2: init: fix rx filter default value during init
mt76x2_mac_start writes dev->rxfilter to the hardware. It also happens
during init, before dev->rxfilter is filled with the initval register
value, leading to issues like promisc mode being enabled
unconditionally.

Fix this by reading the default value into dev->rxfilter earlier

Signed-off-by: Lorenzo Bianconi <[email protected]>
Signed-off-by: Felix Fietkau <[email protected]>
2018-01-30 10:23:03 +01:00
Felix Fietkau c2bd89ee91 mt76x2: convert between per-chain tx power and combined output
Using both chains adds max. 3 dBm.

Signed-off-by: Felix Fietkau <[email protected]>
2017-12-03 21:45:43 +01:00
Felix Fietkau 58364a2ac4 mt76x2: initialize channel power limits
Signed-off-by: Felix Fietkau <[email protected]>
2017-12-03 21:45:43 +01:00
Felix Fietkau f9d9c22491 mt76x2: clear drop flag for all WCIDs on init
Signed-off-by: Felix Fietkau <[email protected]>
2017-11-16 20:34:45 +01:00
Lorenzo BianconiandFelix Fietkau dfd64fc882 mt76x2: init: add ma80211 led callbacks
Signed-off-by: Lorenzo Bianconi <[email protected]>
2017-11-16 20:34:45 +01:00
Lorenzo BianconiandFelix Fietkau b9f3193a24 mt76x2: init: unlock DFS channels
Signed-off-by: Lorenzo Bianconi <[email protected]>
2016-09-25 18:13:37 +02:00
Lorenzo BianconiandFelix Fietkau 6375fc1abe mt76x2: add hw radar detector
add hw DFS pattern detector support for mt76x2 based devices
DFS region supported:
 - FCC
 - ETSI
 - JAPAN_W53
 - JAPAN_W56

Signed-off-by: Lorenzo Bianconi <[email protected]>
2016-09-25 18:13:12 +02:00
Felix Fietkau d7f5112c09 mt76x2: fix checkpatch warnings
Signed-off-by: Felix Fietkau <[email protected]>
2016-09-04 18:59:22 +02:00
Felix Fietkau b300bdc42e use the new bitfield accessor macros
Signed-off-by: Felix Fietkau <[email protected]>
2016-09-04 17:37:26 +02:00
Felix Fietkau 53c1b7f6ac update my email address
Signed-off-by: Felix Fietkau <[email protected]>
2016-09-04 17:33:28 +02:00
Felix Fietkau ced81a3458 relicense to ISC (except for util.h which is based on GPL'd kernel code
Signed-off-by: Felix Fietkau <[email protected]>
2016-07-12 08:38:46 +02:00
Felix Fietkau 3c8a4bc30e mt76x2: implement survey support
Signed-off-by: Felix Fietkau <[email protected]>
2016-06-15 16:47:23 +02:00
Felix Fietkau 6c4b37be98 move dev->chandef to mt76 struct
Signed-off-by: Felix Fietkau <[email protected]>
2016-06-15 15:47:49 +02:00
Felix Fietkau 11e0a12ce4 mt76x2: fix crash on monitor mode injection
Signed-off-by: Felix Fietkau <[email protected]>
2016-06-15 14:59:13 +02:00
Felix Fietkau 13c29223ef Use NL80211_BAND_2GHZ instead of IEEE80211_BAND_2GHZ
Signed-off-by: Felix Fietkau <[email protected]>
2016-05-14 16:49:30 +02:00
Felix Fietkau 9af6f18974 mt7603: disable HT CCK rates, they fail under A-MPDU sessions
Signed-off-by: Felix Fietkau <[email protected]>
2016-03-04 20:55:38 +01:00
Felix Fietkau 8023b07408 mt7603: disable LDPC
Signed-off-by: Felix Fietkau <[email protected]>
2016-02-27 16:10:46 +01:00
Felix Fietkau 079ad90fe2 update copyright lines
Signed-off-by: Felix Fietkau <[email protected]>
2016-02-25 18:09:13 +01:00
Felix Fietkau fa3ee92842 unify tx completion handling, allow a driver callback to clean up tx skbs
Signed-off-by: Felix Fietkau <[email protected]>
2016-02-06 16:14:02 +01:00
Felix Fietkau b08f5433d1 tx: move dma mapping code to core, unify tx callbacks into one that prepares tx_info, skb and txwi
Signed-off-by: Felix Fietkau <[email protected]>
2016-02-03 20:14:53 +01:00
Felix Fietkau ebb8d3a74b mt76x2: move mt76x2_write_reg_pairs to mt76x2_init.c
Signed-off-by: Felix Fietkau <[email protected]>
2016-02-03 15:57:25 +01:00
Felix Fietkau a6d7949f67 move rx polling to core
Signed-off-by: Felix Fietkau <[email protected]>
2016-02-03 15:51:17 +01:00
Felix Fietkau 812bcc3a78 mt76x2: move rx queue processing to core
Signed-off-by: Felix Fietkau <[email protected]>
2016-02-03 14:51:07 +01:00
Felix Fietkau 82510f818c mt76x2: initialize protection registers
Signed-off-by: Felix Fietkau <[email protected]>
2016-01-28 00:46:33 +01:00
Felix Fietkau b0f112bb72 mt76x2: enable VHT IBSS support
Signed-off-by: Felix Fietkau <[email protected]>
2016-01-13 23:38:02 +01:00
Felix Fietkau 6ca2852f65 move mac address validation to core
Signed-off-by: Felix Fietkau <[email protected]>
2016-01-01 19:38:59 +01:00
Felix Fietkau 1389db799a move txwi cache to core
Signed-off-by: Felix Fietkau <[email protected]>
2015-12-17 15:50:01 +01:00
Felix Fietkau 3abdc2e96b move interface combinations back to individual drivers to deal with different maximum number of interfaces
Signed-off-by: Felix Fietkau <[email protected]>
2015-12-17 01:17:08 +01:00
Felix Fietkau 5fa73b3331 set txq data size in common code
Signed-off-by: Felix Fietkau <[email protected]>
2015-12-16 20:01:33 +01:00
Felix Fietkau a08c4a3cd4 add a driver ops struct to allow mt76 to call into driver specific code, will be used for queueing tx packets (incl. mac header processing)
Signed-off-by: Felix Fietkau <[email protected]>
2015-12-16 18:38:39 +01:00
Felix Fietkau 42b9c4db0a move wcid and txq struct to mt76.h in preparation for making tx scheduling code more generic
Signed-off-by: Felix Fietkau <[email protected]>
2015-12-16 17:45:46 +01:00
Felix Fietkau 239b67204c move eeprom related code to common
Signed-off-by: Felix Fietkau <[email protected]>
2015-12-16 02:09:26 +01:00
Felix Fietkau 1dcd197ae3 move hw feature flags to common code
Signed-off-by: Felix Fietkau <[email protected]>
2015-12-08 10:22:13 +01:00
Felix Fietkau 89c32b4b58 move mac80211 device registration to common code
Signed-off-by: Felix Fietkau <[email protected]>
2015-12-08 10:21:52 +01:00
Felix Fietkau 2044de5229 move mt76 state enum/storage to mt76.h
Signed-off-by: Felix Fietkau <[email protected]>
2015-12-06 22:05:42 +01:00
Felix Fietkau 38702fa03a move the struct device pointer to struct mt76_device
Signed-off-by: Felix Fietkau <[email protected]>
2015-12-06 20:36:08 +01:00
Felix Fietkau b0f76bb5d9 move register poll functions to core
Signed-off-by: Felix Fietkau <[email protected]>
2015-12-06 19:20:00 +01:00
Felix Fietkau 62ecfb9730 move more register accessor functions to mt76.h
Signed-off-by: Felix Fietkau <[email protected]>
2015-12-06 18:01:45 +01:00
Felix Fietkau e20a9c13a5 move mmio functions/init to mt76.ko
Signed-off-by: Felix Fietkau <[email protected]>
2015-12-06 17:52:00 +01:00
Felix Fietkau 00af5f3105 add accessor function for struct ieee80211_hw from mt76x2_dev
Signed-off-by: Felix Fietkau <[email protected]>
2015-12-06 17:37:45 +01:00
Felix Fietkau a0ee20716f add a mt76x2_ prefix to all files
Signed-off-by: Felix Fietkau <[email protected]>
2015-12-06 16:54:53 +01:00