Lorenzo Bianconi and Felix Fietkau
40b7b5354a
mt76: mt7615: fix NULL pointer deref in mt7615_register_ext_phy
...
Fix following NULL pointer dereference in mt7615_register_ext_phy routine
[ 27.648860] Unable to handle kernel NULL pointer dereference at virtual address 0000000000000060
[ 27.657697] Mem abort info:
[ 27.660495] ESR = 0x96000046
[ 27.663549] EC = 0x25: DABT (current EL), IL = 32 bits
[ 27.668857] SET = 0, FnV = 0
[ 27.671910] EA = 0, S1PTW = 0
[ 27.675040] Data abort info:
[ 27.677918] ISV = 0, ISS = 0x00000046
[ 27.681751] CM = 0, WnR = 1
[ 27.684717] user pgtable: 4k pages, 39-bit VAs, pgdp=000000007d8cc000
[ 27.691156] [0000000000000060] pgd=000000007d281003, pud=000000007d281003, pmd=0000000000000000
[ 27.699857] Internal error: Oops: 96000046 [#1 ] SMP
[ 27.774939] CPU: 1 PID: 701 Comm: ash Not tainted 5.4.41 #0
[ 27.780500] Hardware name: Bananapi BPI-R64 (DT)
[ 27.785108] pstate: 60000005 (nZCv daif -PAN -UAO)
[ 27.789897] pc : mt7615_register_ext_phy+0x60/0x2c8 [mt7615_common]
[ 27.796156] lr : mt7615_init_debugfs+0x99c/0x18e0 [mt7615_common]
[ 27.802237] sp : ffffffc0115dbcb0
[ 27.805541] x29: ffffffc0115dbcb0 x28: ffffff803e309600
[ 27.810843] x27: 0000000000000000 x26: 0000000000000000
[ 27.816144] x25: ffffff803d936928 x24: ffffff803d936950
[ 27.821447] x23: 0000000000000000 x22: 0000000fffffffe0
[ 27.826749] x21: 0000000000000002 x20: ffffff8001e82620
[ 27.832050] x19: 0000000000000000 x18: 0000000000000000
[ 27.837352] x17: 0000000000000000 x16: 0000000000000000
[ 27.842653] x15: 0000000000000000 x14: 0000000000000000
[ 27.847955] x13: 0000000000000000 x12: 0000000000000000
[ 27.853256] x11: 0000000000000000 x10: 0000000000000040
[ 27.858558] x9 : ffffffc0112b3eb0 x8 : ffffffc0112b3ea8
[ 27.863859] x7 : ffffff803e400048 x6 : 0000000000000000
[ 27.869161] x5 : ffffff803e400000 x4 : 0000000000000000
[ 27.874462] x3 : 0000000000000001 x2 : 0000000000007615
[ 27.879764] x1 : 0000000000000068 x0 : ffffffc0088ccc58
[ 27.885066] Call trace:
[ 27.887505] mt7615_register_ext_phy+0x60/0x2c8 [mt7615_common]
[ 27.893416] mt7615_init_debugfs+0x99c/0x18e0 [mt7615_common]
[ 27.899156] simple_attr_write+0xf0/0x178
[ 27.903158] debugfs_attr_write+0x4c/0x70
[ 27.907159] full_proxy_write+0x60/0x90
[ 27.910987] __vfs_write+0x18/0x40
[ 27.914379] vfs_write+0xb0/0x1b8
[ 27.917685] ksys_write+0x4c/0xc8
[ 27.920989] __arm64_sys_write+0x18/0x20
Signed-off-by: Lorenzo Bianconi <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-20 10:37:17 +02:00
Ryder Lee and Felix Fietkau
01b784174c
mt76: mt7915: fix sparse warnings: incorrect type initializer
...
drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:2317:31: sparse: sparse:
incorrect type in initializer (different base types)
Fixes: 5517f78b0063 ("mt76: mt7915: enable firmware module debug support")
Reported-by: kbuild test robot <[email protected] >
Signed-off-by: Ryder Lee <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-20 10:37:17 +02:00
Ryder Lee and Felix Fietkau
1e3dc5b766
mt76: mt7915: fix some sparse warnings
...
This fixes the following sparse warning:
drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:253:16: sparse: sparse: mixing different enum types:
drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:253:16: sparse: unsigned int enum mt7915_txq_id
drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:253:16: sparse: unsigned int enum mt76_txq_id
drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:758:63: sparse: sparse: incorrect type in argument 2 (different address spaces)
drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:758:63: sparse: expected unsigned char const [usertype] *ies
drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:758:63: sparse: got unsigned char const [noderef] <asn:4> *
drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1390:23: sparse: sparse: incorrect type in argument 1 (different base types)
drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1390:23: sparse: expected unsigned int w
drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1390:23: sparse: got restricted __le32 [usertype] supp_ht_mcs
drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1390:23: sparse: sparse: restricted __le32 degrades to integer
drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1429:60: sparse: sparse: bad assignment (>>=) to restricted __le16
drivers/net/wireless/mediatek/mt76/mt7915/mcu.c:1773:16: sparse: sparse: restricted __le32 degrades to integer
Fixes: 6094f86fb371 ("mt76: mt7915: add HE bss_conf support for interfaces")
Reported-by: kbuild test robot <[email protected] >
Signed-off-by: Ryder Lee <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-20 10:37:17 +02:00
Ryder Lee and Felix Fietkau
7005aa8914
mt76: mt7915: add spatial reuse support
...
Enable or disable OBSS PD when the bss config changes or we
assoc to an AP that broadcasts the IE.
With this patch, we can get ~20% gain in OBSS OTA environment.
Tested-by: Evelyn Tsai <[email protected] >
Signed-off-by: Ryder Lee <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-20 10:37:17 +02:00
Lorenzo Bianconi and Felix Fietkau
44f2262c02
mt76: mt76x02: remove check in mt76x02_mcu_msg_send
...
mt76x02_mcu_msg_send is run just by mmio code so get rid of
mt76_is_mmio() check
Signed-off-by: Lorenzo Bianconi <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-20 10:37:17 +02:00
Lorenzo Bianconi and Felix Fietkau
fa81da5bb4
mt76: mt7615: introduce remain_on_channel support
...
Introduce remain_on_channel support to mt7615 driver if the device is
running offload firmware
Co-developed-by: Sean Wang <[email protected] >
Signed-off-by: Sean Wang <[email protected] >
Signed-off-by: Lorenzo Bianconi <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-20 10:37:17 +02:00
Sean Wang and Felix Fietkau
1ea444d0e8
mt76: mt7615: configure bss info adding the interface
...
Introduce essential bss information for multiple vifs hw_scan in
mt7615_mcu_uni_add_dev adding the interface
Signed-off-by: Sean Wang <[email protected] >
Co-developed-by: Lorenzo Bianconi <[email protected] >
Signed-off-by: Lorenzo Bianconi <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-20 10:37:11 +02:00
Lorenzo Bianconi and Felix Fietkau
8bd88a1b18
mt76: enable p2p support
...
Introduce p2p-go/p2p-client suppor to mt76 driver
Co-developed-by: Sean Wang <[email protected] >
Signed-off-by: Sean Wang <[email protected] >
Signed-off-by: Lorenzo Bianconi <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-20 10:37:11 +02:00
Lorenzo Bianconi and Felix Fietkau
8c9e4847d0
mt76: mt7615: reduce hw scan timeout
...
Differentiate hw scan channel time between passive and active scan
Signed-off-by: Lorenzo Bianconi <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-20 10:37:11 +02:00
Lorenzo Bianconi and Felix Fietkau
7270b56389
mt76: mt7615: do not report scan_complete twice to mac80211
...
Fix the following kernel warning that occurs if scan work is scheduled
and the hw scan has been cancelled by mac80211
WARNING: CPU: 1 PID: 502 at net/mac80211/scan.c:391 __ieee80211_scan_completed+0x299/0x690
Modules linked in:
CPU: 1 PID: 502 Comm: kworker/u4:4 Not tainted 5.7.0-rc1+ #2882
Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 1.13.0-2.fc32 04/01/2014
Workqueue: phy0 ieee80211_scan_work
RIP: 0010:__ieee80211_scan_completed+0x299/0x690
RSP: 0018:ffffc9000036fda8 EFLAGS: 00010246
RAX: 0000000000000000 RBX: 0000000000000000 RCX: 8c6318c6318c6320
RDX: 0000000000000000 RSI: 00000000ffffffff RDI: ffff88803bb129b8
RBP: ffff88803bb10d80 R08: 0000000000000001 R09: 0000000000000001
R10: 0000000000000001 R11: 0000000000000000 R12: 0000000000000000
R13: 0000000000000000 R14: 0000000000000000 R15: ffff88803bb12ae8
FS: 0000000000000000(0000) GS:ffff88803ec00000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 00007f13ee5c1470 CR3: 000000003c790000 CR4: 00000000000006a0
Call Trace:
ieee80211_scan_work+0x170/0x850
? sched_clock_cpu+0x11/0xb0
process_one_work+0x24f/0x580
? worker_thread+0xcc/0x3e0
worker_thread+0x4f/0x3e0
? process_one_work+0x580/0x580
kthread+0x11b/0x140
? __kthread_bind_mask+0x60/0x60
ret_from_fork+0x3a/0x50
irq event stamp: 9255532
hardirqs last enabled at (9255531): [<ffffffff81a504e4>] _raw_spin_unlock_irq+0x24/0x30
hardirqs last disabled at (9255532): [<ffffffff81001b3f>] trace_hardirqs_off_thunk+0x1a/0x1c
softirqs last enabled at (9255526): [<ffffffff8107c9ef>] process_one_work+0x24f/0x580
softirqs last disabled at (9255524): [<ffffffff815f2f41>] mt7615_scan_work+0x91/0xc0
Signed-off-by: Lorenzo Bianconi <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-20 10:37:11 +02:00
Felix Fietkau
060e375a92
mt76: fix per-driver wcid range checks after wcid array size bump
...
All drivers before MT7915 have a limit of 128 WCID entries. Stop relying
on ARRAY_SIZE(dev->mt76.wcid), since it no longer reflects that limit.
Fixes: 49e649c3e0a6 ("mt76: adjust wcid size to support new 802.11ax generation")
Reported-by: kbuild test robot <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-20 08:11:08 +02:00
Lorenzo Bianconi and Felix Fietkau
9b07251b00
mt76: mt7615: fix typo defining ps work
...
Fix typo defining ps_work in mt7615_register_ext_phy(). This is not a
real issue since 802.11 power save is not yet support by the external phy
Signed-off-by: Lorenzo Bianconi <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-14 11:08:57 +02:00
Felix Fietkau
f85c1f3fc1
firmware: add mt7915 firmware
...
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-12 19:22:30 +02:00
Ryder Lee and Felix Fietkau
26eb1ed659
mt76: mt7915: fix possible deadlock in mt7915_stop
...
make mac_work per phy instead of per device and fix a possible deadlock
in mt7915_stop since mt7915_mac_work runs holding mt76 mutex
Signed-off-by: Ryder Lee <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-12 19:19:02 +02:00
Ryder Lee and Felix Fietkau
9590db0254
mt76: mt7915: allocate proper size for tlv tags
...
Allocating proper memory size according to tlv usage.
Signed-off-by: Ryder Lee <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-12 19:19:02 +02:00
Ryder Lee and Felix Fietkau
6656bebd39
mt76: mt7915: add debugfs to track TxBF status
...
Add debug counters to track status of beamformer and beamformee.
Signed-off-by: Ryder Lee <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-12 19:19:02 +02:00
Ryder Lee and Felix Fietkau
ac505404c3
mt76: mt7915: add TxBF capabilities
...
This allows to set HE TxBF runtime stream capabilities
Signed-off-by: Ryder Lee <[email protected] >
Tested-by: Evelyn Tsai <[email protected]
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-12 19:19:02 +02:00
Ryder Lee and Felix Fietkau
5f9e7664cd
mt76: mt7915: add Tx beamformee support
...
Enable beamformee support.
Signed-off-by: Ryder Lee <[email protected] >
Tested-by: Evelyn Tsai <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-12 19:19:02 +02:00
Ryder Lee and Felix Fietkau
095c72c81c
mt76: mt7915: add Tx beamformer support
...
Enable TxBF modules and trigger sounding process to support Tx beamformer.
Signed-off-by: Ryder Lee <[email protected] >
Tested-by: Evelyn Tsai <[email protected]
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-12 19:19:02 +02:00
Ryder Lee and Felix Fietkau
1d0903de21
mt76: mt7915: introduce mt7915_get_he_phy_cap
...
Add a helper to reduce duplicate codes.
This is a preliminary patch to add Tx beamforming support.
Signed-off-by: Ryder Lee <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-12 19:19:02 +02:00
Lorenzo Bianconi and Felix Fietkau
e236ea5be3
mt76: mt7615: usb: cancel ps work stopping the vif
...
Cancel possible power_save work before stopping the mt7663u interface
Signed-off-by: Lorenzo Bianconi <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-12 19:19:02 +02:00
Lorenzo Bianconi and Felix Fietkau
3aa810bde8
mt76: mt7663u: add missing register definitions
...
Add missing PLE/PSE base register definitions for mt7663u
Signed-off-by: Lorenzo Bianconi <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-12 19:19:02 +02:00
Lorenzo Bianconi and Felix Fietkau
9200732e85
mt76: mt7663u: copy key pointer in mt7663u_mac_write_txwi
...
Copy key pointer value before running mt76_tx_status_skb_add() in
mt7663u_mac_write_txwi since it will be overwritten setting
mt76_tx_cb for probing frames
Co-developed-by: Johannes Berg <[email protected] >
Signed-off-by: Johannes Berg <[email protected] >
Signed-off-by: Lorenzo Bianconi <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-12 19:19:02 +02:00
Felix Fietkau
d7a10094c4
mt7663: add client offload firmware
...
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-12 19:12:52 +02:00
Lorenzo Bianconi and Felix Fietkau
6bbf1a35c0
linux-firmware: add rebb firmware for mt7663
...
Add binary rebb rom patch and n9 firmware for mt7663 based devices
Signed-off-by: Lorenzo Bianconi <[email protected] >
2020-05-09 10:28:04 +02:00
Ryder Lee and Felix Fietkau
56405976fc
mt76: set runtime stream caps by mt76_phy
...
This patch can support concurrent dual-band operation.
Signed-off-by: Ryder Lee <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-09 10:24:04 +02:00
Ryder Lee and Felix Fietkau
509fceb432
mt76: mt7915: enable firmware module debug support
...
This allows host driver to get useful information of some important modules.
Signed-off-by: Ryder Lee <[email protected] >
Signed-off-by: Chih-Min Chen <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-09 10:24:04 +02:00
Ryder Lee and Felix Fietkau
4f79c516be
mt76: mt7915: add tsf related callbacks
...
It is useful for IBSS Mesh to adjust t_clockdrift.
Signed-off-by: Ryder Lee <[email protected] >
Reported-by: Shayne Chen <[email protected] >
Tested-by: Evelyn Tsai <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-09 10:24:04 +02:00
Ryder Lee and Felix Fietkau
a5368e5cad
mt76: mt7915: set peer Tx fixed rate through debugfs
...
Driver can manually set fixed rate for each peer through debugfs.
May use .set_bitrate_mask callback and iterate stations under the
current vif to achieve the aim once it supports HE rate.
Signed-off-by: Ryder Lee <[email protected] >
Signed-off-by: Shayne Chen <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-09 10:24:04 +02:00
Ryder Lee and Felix Fietkau
7f40e8c2b9
mt76: mt7915: add .sta_statistics support
...
Add useful debug counters since this generation uses struct rate_info
to report HE tx rate.
Signed-off-by: Ryder Lee <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-09 10:24:04 +02:00
Ryder Lee and Felix Fietkau
158253e2c1
mt76: mt7915: add .sta_add_debugfs support
...
This generation supports much more per-peer statistics than legacy ones,
so add .sta_add_debugfs accordingly.
This is convenient to set/get more settings/counters in the long run.
Signed-off-by: Ryder Lee <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-09 10:24:04 +02:00
Ryder Lee and Felix Fietkau
3b5d908dae
mt76: mt7915: add Rx radiotap header support
...
mac80211 expects the definition of what HE rate info is available
inside astruct prepended to the skb.
Signed-off-by: Ryder Lee <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-09 10:24:04 +02:00
Ryder Lee and Felix Fietkau
135a508593
mt76: mt7915: add HE capabilities support for peers
...
Set peer's bsic HE capabilities through starec.
Signed-off-by: Ryder Lee <[email protected] >
Suggested-by: Shihwei Lin <[email protected] >
Tested-by: Shayne Chen <[email protected] >
Tested-by: Chih-Min Chen <[email protected] >
Tested-by: Evelyn Tsai <[email protected] >
Acked-by: Yiwei Chung <[email protected] >
Acked-by: YF Luo <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-09 10:24:04 +02:00
Ryder Lee and Felix Fietkau
de1e8af96e
mt76: mt7915: add HE bss_conf support for interfaces
...
Add basic HE BSS's info for interfaces. As for the advanced features
will be added gradually in the future patches.
(i.e. BSS color, TWT, spatial reuse and OFDMA)
Signed-off-by: Ryder Lee <[email protected] >
Tested-by: Shayne Chen <[email protected] >
Tested-by: Chih-Min Chen <[email protected] >
Tested-by: Evelyn Tsai <[email protected] >
Acked-by: Yiwei Chung <[email protected] >
Acked-by: YF Luo <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-09 10:24:04 +02:00
Ryder Lee and Felix Fietkau
c8f4b6cf1a
mt76: mt7915: register per-phy HE capabilities for each interface
...
The capabilities for the HE interfaces are generated from the capabilities
reported by the firmware.
This should move to common file once we got other HE devices support.
Signed-off-by: Ryder Lee <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-09 10:24:04 +02:00
Ryder Lee and Felix Fietkau
2300540961
mt76: mt7915: implement HE per-rate tx power support
...
Use firmware support for applying per-rate limit and power offsets.
This can support all HE RU types.
Signed-off-by: Shayne Chen <[email protected] >
Signed-off-by: Ryder Lee <[email protected] >
Tested-by: Chih-Min Chen <[email protected] >
Tested-by: Evelyn Tsai <[email protected] >
Acked-by: Yiwei Chung <[email protected] >
Acked-by: YF Luo <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-09 10:24:04 +02:00
Ryder Lee and Felix Fietkau
b96af50395
mt76: mt7915: enable Rx HE rate reporting
...
Enable HE rate reporting in Rx path
Signed-off-by: Ryder Lee <[email protected] >
Signed-off-by: Shayne Chen <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-09 10:24:04 +02:00
Ryder Lee and Felix Fietkau
c6b002bcdf
mt76: add mac80211 driver for MT7915 PCIe-based chipsets
...
Add support for the MediaTek latest generation IEEE 802.11ax 4x4
device MT7915E, which supports concurrent dual-band operation at
both 5GHz and 2.4GHz.
Note that this patch just add basic part and will add more HE
capabilities support in the further patches.
The driver supports AP, Station, Mesh and monitor mode.
Signed-off-by: Ryder Lee <[email protected] >
Signed-off-by: Shayne Chen <[email protected] >
Signed-off-by: Chih-Min Chen <[email protected] >
Suggested-by: Shihwei Lin <[email protected] >
Tested-by: Evelyn Tsai <[email protected] >
Acked-by: Yiwei Chung <[email protected] >
Acked-by: YF Luo <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-09 10:24:04 +02:00
Ryder Lee and Felix Fietkau
0a9f4173dd
mt76: add HE phy modes and hardware queue
...
This is a preliminary patch to support 11ax deivces.
Signed-off-by: Ryder Lee <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-09 10:23:48 +02:00
Ryder Lee and Felix Fietkau
3ec47f2fba
mt76: adjust wcid size to support new 802.11ax generation
...
The newer 802.11ax devices (i.e. MT7915E) can connect to much more
peers than previous generations.
Signed-off-by: Ryder Lee <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-09 10:23:48 +02:00
Ryder Lee and Felix Fietkau
cc68782bab
mt76: add Rx stats support for radiotap
...
HE deivces need to add Rx radiotap header.
Signed-off-by: Ryder Lee <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-09 10:23:48 +02:00
Ryder Lee and Felix Fietkau
f0117d3107
mt76: add support for HE RX rate reporting
...
Add support for encoding and reporting HE RX rates.
Signed-off-by: Ryder Lee <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-09 10:23:48 +02:00
Ryder Lee and Felix Fietkau
690b84821c
mt76: avoid rx reorder buffer overflow
...
Enlarge slot to support 11ax 256 BA (256 MPDUs in an AMPDU)
Signed-off-by: Chih-Min Chen <[email protected] >
Signed-off-by: Ryder Lee <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-09 10:23:48 +02:00
Lorenzo Bianconi and Felix Fietkau
82e4d3ebe9
mt76: mt7615: scan all channels if not specified
...
Configure the mcu to scan all available channels if mac80211 does not
provide any frequency list
Signed-off-by: Lorenzo Bianconi <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-07 16:17:16 +02:00
Sean Wang and Felix Fietkau
891136ab99
mt76: mt7663: add support to sched scan with randomise addr
...
Add support to sched scan with randomise addr
Co-developed-by: Wan-Feng Jiang <[email protected] >
Signed-off-by: Wan-Feng Jiang <[email protected] >
Co-developed-by: Soul Huang <[email protected] >
Signed-off-by: Soul Huang <[email protected] >
Signed-off-by: Sean Wang <[email protected] >
Co-developed-by: Lorenzo Bianconi <[email protected] >
Signed-off-by: Lorenzo Bianconi <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-07 16:17:16 +02:00
Sean Wang and Felix Fietkau
c1d3ad194a
mt76: mt7663: introduce WoW with net detect support
...
Introduce WoW with net detect support
Co-developed-by: Wan-Feng Jiang <[email protected] >
Signed-off-by: Wan-Feng Jiang <[email protected] >
Co-developed-by: Soul Huang <[email protected] >
Signed-off-by: Soul Huang <[email protected] >
Signed-off-by: Sean Wang <[email protected] >
Co-developed-by: Lorenzo Bianconi <[email protected] >
Signed-off-by: Lorenzo Bianconi <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-07 16:17:16 +02:00
Lorenzo Bianconi and Felix Fietkau
3e6968593b
mt76: mt7615: fix delta tx power for mt7663
...
Fix mt7663 eeprom definitions for delta tx power parsing
Signed-off-by: Lorenzo Bianconi <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-05 17:54:09 +02:00
Lorenzo Bianconi and Felix Fietkau
83f2ba3101
mt76: mt7663: fix target power parsing
...
Fix target parsing from eeprom/efuse partition for 7663 chipsets
Fixes: f40ac0f3d3c0 ("mt76: mt7615: introduce mt7663e support")
Signed-off-by: Lorenzo Bianconi <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-05 17:54:09 +02:00
Lorenzo Bianconi and Felix Fietkau
0a9f716529
mt76: mt7615: fix ibss mode for mt7663
...
Fix the following kernel warning adding an adhoc interface to a
mt7663e device
[ 233.363394] WARNING: CPU: 0 PID: 2345 at drivers/net/wireless/mt76/mt7615/mcu.c:1449 mt7615_mcu_uni_add_bss+0x15f/0x24e [mt7615_common]
[ 233.363432] CPU: 0 PID: 2345 Comm: iw Tainted: G W 4.14.171 #12
[ 233.363434] Hardware name: HP Meep/Meep, BIOS Google_Meep.11297.75.0 06/17/2019
[ 233.363436] task: ffff9a1a4020e3c0 task.stack: ffffb9124113c000
[ 233.363441] RIP: 0010:mt7615_mcu_uni_add_bss+0x15f/0x24e [mt7615_common]
[ 233.363443] RSP: 0018:ffffb9124113f730 EFLAGS: 00010246
[ 233.363446] RAX: 0000000000000024 RBX: ffff9a1a788c74e8 RCX: 41826d413aea9200
[ 233.363448] RDX: 0000000000000007 RSI: 0000000000000006 RDI: ffff9a1a7fc15418
[ 233.363450] RBP: ffffb9124113f7c0 R08: 0000000000000356 R09: 00000000ffff0a10
[ 233.363452] R10: 0000001000000000 R11: ffffffff93f2a4be R12: 0000000000000000
[ 233.363454] R13: ffff9a1a7383bd48 R14: ffffb9124113f77a R15: 0000000000000000
[ 233.363456] FS: 00007f203314ab80(0000) GS:ffff9a1a7fc00000(0000) knlGS:0000000000000000
[ 233.363458] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 233.363460] CR2: 00005a13d647c950 CR3: 0000000171238000 CR4: 00000000003406f0
[ 233.363462] Call Trace:
[ 233.363470] mt7615_bss_info_changed+0x98/0xf4 [mt7615_common]
[ 233.363484] ieee80211_bss_info_change_notify+0x139/0x1d4 [mt76_mac80211]
[ 233.363496] ieee80211_ibss_disconnect+0x183/0x1bb [mt76_mac80211]
[ 233.363507] ieee80211_ibss_leave+0x14/0xa0 [mt76_mac80211]
[ 233.363519] __cfg80211_leave_ibss+0xa6/0x13a [cfg80211]
[ 233.363528] cfg80211_netdev_notifier_call+0x8b/0x631 [cfg80211]
[ 233.363535] ? packet_notifier+0x196/0x1a3
[ 233.363540] raw_notifier_call_chain+0x39/0x58
[ 233.363544] __dev_close_many+0x6b/0xf0
[ 233.363548] dev_close_many+0x62/0xe8
[ 233.363552] ? _raw_spin_unlock_irq+0xe/0x21
[ 233.363555] rollback_registered_many+0xf6/0x35c
[ 233.363560] ? __rcu_read_unlock+0x4a/0x4a
[ 233.363563] unregister_netdevice_queue+0x7f/0x105
[ 233.363573] ieee80211_del_iface+0x12/0x16 [mt76_mac80211]
[ 233.363582] nl80211_del_interface+0xa8/0x124 [cfg80211]
[ 233.363588] genl_rcv_msg+0x40b/0x481
[ 233.363592] ? genl_unbind+0xb8/0xb8
[ 233.363595] netlink_rcv_skb+0x85/0xf8
[ 233.363598] genl_rcv+0x28/0x36
[ 233.363601] netlink_unicast+0x165/0x1f8
[ 233.363604] netlink_sendmsg+0x35f/0x3a6
[ 233.363608] sock_sendmsg+0x38/0x48
[ 233.363611] ___sys_sendmsg+0x1bf/0x267
[ 233.363615] ? __inode_wait_for_writeback+0x72/0xd7
[ 233.363619] ? dentry_kill+0x69/0x76
[ 233.363622] ? dput+0xd1/0x170
[ 233.363624] __sys_sendmsg+0x52/0x8f
[ 233.363628] do_syscall_64+0x6b/0xf7
[ 233.363632] entry_SYSCALL_64_after_hwframe+0x3d/0xa2
[ 233.363635] RIP: 0033:0x7f2032ca1264
[ 233.363637] RSP: 002b:00007ffec3668e38 EFLAGS: 00000246 ORIG_RAX: 000000000000002e
[ 233.363639] RAX: ffffffffffffffda RBX: 000058f7175e7880 RCX: 00007f2032ca1264
[ 233.363641] RDX: 0000000000000000 RSI: 00007ffec3668e98 RDI: 0000000000000003
[ 233.363643] RBP: 00007ffec3668e70 R08: 0000000000000001 R09: 00007f2032ce1fd0
[ 233.363645] R10: 000058f7175e2010 R11: 0000000000000246 R12: 000058f7175e7740
[ 233.363646] R13: 00007ffec3668ff0 R14: 000058f7175e2350 R15: 00007ffec3668e98
Fixes: f40ac0f3d3c0 ("mt76: mt7615: introduce mt7663e support")
Signed-off-by: Lorenzo Bianconi <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-05 17:54:06 +02:00
Lorenzo Bianconi and Felix Fietkau
f25a43cc53
mt76: mt7615: check return value of mt7615_eeprom_get_power_index
...
mt7615_eeprom_get_power_index can return negative error value.
Check mt7615_eeprom_get_power_index return value before using it
Signed-off-by: Lorenzo Bianconi <[email protected] >
Signed-off-by: Felix Fietkau <[email protected] >
2020-05-05 17:54:06 +02:00