Commit Graph
45 Commits
Author SHA1 Message Date
Lorenzo BianconiandFelix Fietkau ced433d006 mt76x2: add mac80211 {set,get}_antenna callbacks
Add capability to select tx/rx antennas. Possible values are:
 - 1: to use only the first antenna
 - 2: to use only the second antenna
 - 3: to use both of them

Signed-off-by: Lorenzo Bianconi <[email protected]>
2018-03-21 11:23:10 +01:00
Lorenzo BianconiandFelix Fietkau 6469dcafb5 mt76: add mt76_init_stream_cap routine
Add mt76_init_stream_cap utility routine to set ht/vht sta capabilities
related to number of streams currently used by the device
(it will be used by mac80211 set_antenna callback)

Signed-off-by: Lorenzo Bianconi <[email protected]>
2018-03-21 11:23:10 +01:00
Lorenzo BianconiandFelix Fietkau 7e6e00bf0a mt76: initialize available_antennas_{tx,rx} info
Initialize available_antennas related info in wiphy data structure
according to antenna_mask field; antenna_mask info is initialized
in device specific code and will be used in mac80211 {set,get}_antenna
callbacks

Signed-off-by: Lorenzo Bianconi <[email protected]>
2018-03-21 11:23:10 +01:00
Felix Fietkau cda627fd8f mt76: add missing VHT maximum A-MPDU length capability
Signficantly improves throughput with some clients

Signed-off-by: Felix Fietkau <[email protected]>
2018-02-26 21:54:53 +01:00
Felix Fietkau 246d548b06 mt76: stop tx queues from the driver callback instead of common code
Allows the driver to control whether to send a BlockAckReq after waking
up. MT76x2 needs this set to true, for MT7603 it needs to be false

Signed-off-by: Felix Fietkau <[email protected]>
2018-02-09 16:01:39 +01:00
Felix Fietkau c60e6dbc4a mt76: toggle driver station powersave bit before notifying mac80211
Avoids race conditions from mac80211 enqueueing tx packets before the
tx-drop bit is cleared

Signed-off-by: Felix Fietkau <[email protected]>
2018-02-09 14:14:02 +01:00
Felix Fietkau f515dfcca1 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-26 11:41:38 +01:00
Felix Fietkau c6f8caced2 mt76: let mac80211 validate CCMP PN for fragmented frames
The rules for those are more complex and performance is not an issue
here

Signed-off-by: Felix Fietkau <[email protected]>
2018-01-25 11:29:25 +01:00
Felix Fietkau 9b2c77826d 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-22 11:06:19 +01:00
Felix Fietkau cf3cfc43af mt76: split mt76_rx_complete
Add a separate function for processing frames after A-MPDU reordering,
reduce code duplication

Signed-off-by: Felix Fietkau <[email protected]>
2018-01-22 10:43:22 +01:00
Felix Fietkau b0508d3044 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-22 10:43:21 +01:00
Felix Fietkau 58a41f17aa mt76: get station pointer by wcid and pass it to mac80211
Avoids the rhashtable lookup based on the MAC address inside mac80211

Signed-off-by: Felix Fietkau <[email protected]>
2018-01-22 10:14:25 +01:00
Felix Fietkau ad3f8e924e mt76: add an intermediate struct for rx status information
Preparation for passing in more internal rx data via skb->cb

Signed-off-by: Felix Fietkau <[email protected]>
2018-01-21 10:48:29 +01:00
Felix Fietkau fc28872399 mac80211: add missing include
Signed-off-by: Felix Fietkau <[email protected]>
2017-11-21 09:48:19 +01:00
Felix Fietkau cc02e495cd mac80211: move DT led configuration to the "led" child node
Signed-off-by: Felix Fietkau <[email protected]>
2017-11-07 12:42:18 +01:00
Lorenzo BianconiandFelix Fietkau c9bdcd850d mt76: add led support using mac80211 led framework
use tpt-trigger as default trigger

Signed-off-by: Lorenzo Bianconi <[email protected]>
Signed-off-by: Felix Fietkau <[email protected]>
2017-10-31 10:21:14 +01:00
AlejandroandFelix Fietkau 712b8e8f69 mac80211: claim RSN IBSS support
Signed-off-by: Alejandro <[email protected]>
2017-03-17 13:29:26 +01:00
Felix Fietkau a5eaeb27d6 revert mt76_eeprom_override call reordering
This call order is necessary for handling the device MAC address

Signed-off-by: Felix Fietkau <[email protected]>
2017-02-03 14:25:08 +01:00
Felix Fietkau 184e068b6f use wiphy_read_of_freq_limits to parse band capability overrides
Signed-off-by: Felix Fietkau <[email protected]>
2017-02-01 16:11:35 +01:00
Stijn TintelandFelix Fietkau 85d12fea1a mac80211: enable 802.11w support
Signed-off-by: Stijn Tintel <[email protected]>
2017-01-15 13:22:50 +01:00
Felix Fietkau b18d66f749 core: fix checkpatch errors
Signed-off-by: Felix Fietkau <[email protected]>
2016-09-05 11:12:19 +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 810eef8383 sync with mac80211 ieee80211_rx_napi API change
Signed-off-by: Felix Fietkau <[email protected]>
2016-05-14 16:52:23 +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 4994946a29 mt7603: fix cleanup order
Signed-off-by: Felix Fietkau <[email protected]>
2016-03-03 22:05:07 +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 2bd92acfa2 dma: optimize icache footprint of rx path, batch frames before passing them to mac80211
Signed-off-by: Felix Fietkau <[email protected]>
2016-02-08 17:35:40 +01:00
Felix Fietkau 9e305ef093 add rx helper function which uses ieee80211_rx_napi
Signed-off-by: Felix Fietkau <[email protected]>
2016-02-08 15:06:21 +01:00
Felix Fietkau 4cddea7193 mac80211: sync with updated version of A-MSDU patch
Signed-off-by: Felix Fietkau <[email protected]>
2016-02-08 13:33:09 +01:00
Felix Fietkau ba004c0067 mac80211: add A-MSDU tx support
Signed-off-by: Felix Fietkau <[email protected]>
2016-02-05 17:37:09 +01:00
Felix Fietkau 78155b54ac unify drvdata handling
Signed-off-by: Felix Fietkau <[email protected]>
2016-02-05 01:06:07 +01:00
Felix Fietkau 68c393623b mt76: support a-msdu in a-mpdu
Signed-off-by: Felix Fietkau <[email protected]>
2016-02-03 20:31:45 +01:00
Felix Fietkau 54cb9c330c mac80211: indicate support for cloned skbs
Signed-off-by: Felix Fietkau <[email protected]>
2016-01-14 01:29:51 +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 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