Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Mediatek MT7921K "Question about AP mode" #66

Open
craiganderson opened this issue Mar 7, 2022 · 27 comments
Open

Mediatek MT7921K "Question about AP mode" #66

craiganderson opened this issue Mar 7, 2022 · 27 comments

Comments

@craiganderson
Copy link

Using the mt7921e driver on a 5.15.12 kernel for a MT7921K device.

When attempting to bring up an AP hosted with wpa_supplicant v2.11 I get the following error:

wlp3s0: Driver does not support AP mode

Would you be able to confirm (or add to your table) the last kernel version that was successfully tested for the devices listed there? And meanwhile if anyone has successfully used this card in AP mode and can supply their kernel version and environment details, that would be helpful.

Thanks!

@morrownr
Copy link
Owner

morrownr commented Mar 7, 2022

Hi Craig,

As hard as i try to keep with all of the details related to the new mt7921 chipsets and drivers, I am not where I would like to be.

I am under the impression that the mt7921k supports 6 GHz and I saw the new k device IDs go in about 3 months ago which means they would not be in kernel 5.15 yet. Are you sure your card is not based on the mt7921?

Can you post the results of the following so I can get a better handle on what you have?

iw list
lsusb

My laptop has a mt7921 based card. It is dual band, not triple band like you would get from a mt7921k based card. I just ran iw list and it certainly shows support for AP mode. I'd test but my to-do list for this coming week is overflowing.

Nick

@morrownr morrownr changed the title Mediatek MT7921K "Driver does not support AP mode" Mediatek MT7921K "Question about AP mode" Mar 7, 2022
@craiganderson
Copy link
Author

I updated to 5.17.0-rc3 for good measure but no change in behavior. I'm for sure using the MT7921K, the 6GHz bands show up in iw list but I can't create AP on any band (not even 2.4GHz), but it looks like this is expected since AP mode does not show up in the listed of Supported interface modes reported by iw list.

Can you confirm that your card uses the mt7921e driver? You can find this under Kernel driver in use for your Mediatek device after running lspci -vv

$ lsusb | grep -i media
Bus 005 Device 003: ID 0e8d:0608 MediaTek Inc. Wireless_Device
Bus 002 Device 003: ID 0e8d:7612 MediaTek Inc. USB3.0 Hub
$ iw list
Wiphy phy0
	max # scan SSIDs: 4
	max scan IEs length: 482 bytes
	max # sched scan SSIDs: 10
	max # match sets: 16
	Retry short limit: 7
	Retry long limit: 4
	Coverage class: 0 (up to 0m)
	Device supports AP-side u-APSD.
	Device supports T-DLS.
	Supported Ciphers:
		* WEP40 (00-0f-ac:1)
		* WEP104 (00-0f-ac:5)
		* TKIP (00-0f-ac:2)
		* CCMP-128 (00-0f-ac:4)
		* CCMP-256 (00-0f-ac:10)
		* GCMP-128 (00-0f-ac:8)
		* GCMP-256 (00-0f-ac:9)
		* CMAC (00-0f-ac:6)
		* CMAC-256 (00-0f-ac:13)
		* GMAC-128 (00-0f-ac:11)
		* GMAC-256 (00-0f-ac:12)
	Available Antennas: TX 0x3 RX 0x3
	Configured Antennas: TX 0x3 RX 0x3
	Supported interface modes:
		 * managed
		 * monitor
	Band 1:
		Capabilities: 0x9ff
			RX LDPC
			HT20/HT40
			SM Power Save disabled
			RX Greenfield
			RX HT20 SGI
			RX HT40 SGI
			TX STBC
			RX STBC 1-stream
			Max AMSDU length: 7935 bytes
			No DSSS/CCK HT40
		Maximum RX AMPDU length 65535 bytes (exponent: 0x003)
		Minimum RX AMPDU time spacing: No restriction (0x00)
		HT TX/RX MCS rate indexes supported: 0-15
		HE Iftypes: Station
			HE MAC Capabilities (0x08011a000040):
				+HTC HE Supported
				Trigger Frame MAC Padding Duration: 2
				OM Control
				Maximum A-MPDU Length Exponent: 3
				A-MSDU in A-MPDU
			HE PHY Capabilities: (0x2270ce120dc0b306423f00):
				HE40/2.4GHz
				242 tone RUs/2.4GHz
				Device Class: 1
				LDPC Coding in Payload
				HE SU PPDU with 1x HE-LTF and 0.8us GI
				NDP with 4x HE-LTF and 3.2us GI
				STBC Tx <= 80MHz
				STBC Rx <= 80MHz
				Full Bandwidth UL MU-MIMO
				Partial Bandwidth UL MU-MIMO
				DCM Max Constellation: 2
				DCM Max Constellation Rx: 2
				SU Beamformee
				Beamformee STS <= 80Mhz: 3
				Ng = 16 SU Feedback
				Ng = 16 MU Feedback
				Codebook Size SU Feedback
				Codebook Size MU Feedback
				Triggered CQI Feedback
				Partial Bandwidth Extended Range
				PPE Threshold Present
				Power Boost Factor ar
				HE SU PPDU & HE PPDU 4x HE-LTF 0.8us GI
				20MHz in 40MHz HE PPDU 2.4GHz
				DCM Max BW: 1
				Longer Than 16HE SIG-B OFDM Symbols
				Non-Triggered CQI Feedback
				TX 1024-QAM
				RX 1024-QAM
				RX Full BW SU Using HE MU PPDU with Compression SIGB
				RX Full BW SU Using HE MU PPDU with Non-Compression SIGB
			HE RX MCS and NSS set <= 80 MHz
					 1 streams: MCS 0-11
					 2 streams: MCS 0-11
					 3 streams: not supported
					 4 streams: not supported
					 5 streams: not supported
					 6 streams: not supported
					 7 streams: not supported
					 8 streams: not supported
			HE TX MCS and NSS set <= 80 MHz
					 1 streams: MCS 0-11
					 2 streams: MCS 0-11
					 3 streams: not supported
					 4 streams: not supported
					 5 streams: not supported
					 6 streams: not supported
					 7 streams: not supported
					 8 streams: not supported
			PPE Threshold 0x39 0x1c 0xc7 0x71 0x1c 0x07 
		Bitrates (non-HT):
			* 1.0 Mbps (short preamble supported)
			* 2.0 Mbps (short preamble supported)
			* 5.5 Mbps (short preamble supported)
			* 11.0 Mbps (short preamble supported)
			* 6.0 Mbps
			* 9.0 Mbps
			* 12.0 Mbps
			* 18.0 Mbps
			* 24.0 Mbps
			* 36.0 Mbps
			* 48.0 Mbps
			* 54.0 Mbps
		Frequencies:
			* 2412 MHz [1] (20.0 dBm)
			* 2417 MHz [2] (20.0 dBm)
			* 2422 MHz [3] (20.0 dBm)
			* 2427 MHz [4] (20.0 dBm)
			* 2432 MHz [5] (20.0 dBm)
			* 2437 MHz [6] (20.0 dBm)
			* 2442 MHz [7] (20.0 dBm)
			* 2447 MHz [8] (20.0 dBm)
			* 2452 MHz [9] (20.0 dBm)
			* 2457 MHz [10] (20.0 dBm)
			* 2462 MHz [11] (20.0 dBm)
			* 2467 MHz [12] (20.0 dBm) (no IR)
			* 2472 MHz [13] (20.0 dBm) (no IR)
			* 2484 MHz [14] (20.0 dBm) (no IR)
	Band 2:
		Capabilities: 0x9ff
			RX LDPC
			HT20/HT40
			SM Power Save disabled
			RX Greenfield
			RX HT20 SGI
			RX HT40 SGI
			TX STBC
			RX STBC 1-stream
			Max AMSDU length: 7935 bytes
			No DSSS/CCK HT40
		Maximum RX AMPDU length 65535 bytes (exponent: 0x003)
		Minimum RX AMPDU time spacing: No restriction (0x00)
		HT TX/RX MCS rate indexes supported: 0-15
		VHT Capabilities (0x339071b1):
			Max MPDU length: 7991
			Supported Channel Width: neither 160 nor 80+80
			RX LDPC
			short GI (80 MHz)
			TX STBC
			SU Beamformee
			MU Beamformee
			RX antenna pattern consistency
			TX antenna pattern consistency
		VHT RX MCS set:
			1 streams: MCS 0-9
			2 streams: MCS 0-9
			3 streams: not supported
			4 streams: not supported
			5 streams: not supported
			6 streams: not supported
			7 streams: not supported
			8 streams: not supported
		VHT RX highest supported: 0 Mbps
		VHT TX MCS set:
			1 streams: MCS 0-9
			2 streams: MCS 0-9
			3 streams: not supported
			4 streams: not supported
			5 streams: not supported
			6 streams: not supported
			7 streams: not supported
			8 streams: not supported
		VHT TX highest supported: 0 Mbps
		HE Iftypes: Station
			HE MAC Capabilities (0x08011a000040):
				+HTC HE Supported
				Trigger Frame MAC Padding Duration: 2
				OM Control
				Maximum A-MPDU Length Exponent: 3
				A-MSDU in A-MPDU
			HE PHY Capabilities: (0x4470ce120dc0b306423f00):
				HE40/HE80/5GHz
				242 tone RUs/5GHz
				Device Class: 1
				LDPC Coding in Payload
				HE SU PPDU with 1x HE-LTF and 0.8us GI
				NDP with 4x HE-LTF and 3.2us GI
				STBC Tx <= 80MHz
				STBC Rx <= 80MHz
				Full Bandwidth UL MU-MIMO
				Partial Bandwidth UL MU-MIMO
				DCM Max Constellation: 2
				DCM Max Constellation Rx: 2
				SU Beamformee
				Beamformee STS <= 80Mhz: 3
				Ng = 16 SU Feedback
				Ng = 16 MU Feedback
				Codebook Size SU Feedback
				Codebook Size MU Feedback
				Triggered CQI Feedback
				Partial Bandwidth Extended Range
				PPE Threshold Present
				Power Boost Factor ar
				HE SU PPDU & HE PPDU 4x HE-LTF 0.8us GI
				20MHz in 40MHz HE PPDU 2.4GHz
				DCM Max BW: 1
				Longer Than 16HE SIG-B OFDM Symbols
				Non-Triggered CQI Feedback
				TX 1024-QAM
				RX 1024-QAM
				RX Full BW SU Using HE MU PPDU with Compression SIGB
				RX Full BW SU Using HE MU PPDU with Non-Compression SIGB
			HE RX MCS and NSS set <= 80 MHz
					 1 streams: MCS 0-11
					 2 streams: MCS 0-11
					 3 streams: not supported
					 4 streams: not supported
					 5 streams: not supported
					 6 streams: not supported
					 7 streams: not supported
					 8 streams: not supported
			HE TX MCS and NSS set <= 80 MHz
					 1 streams: MCS 0-11
					 2 streams: MCS 0-11
					 3 streams: not supported
					 4 streams: not supported
					 5 streams: not supported
					 6 streams: not supported
					 7 streams: not supported
					 8 streams: not supported
			PPE Threshold 0x39 0x1c 0xc7 0x71 0x1c 0x07 
		Bitrates (non-HT):
			* 6.0 Mbps
			* 9.0 Mbps
			* 12.0 Mbps
			* 18.0 Mbps
			* 24.0 Mbps
			* 36.0 Mbps
			* 48.0 Mbps
			* 54.0 Mbps
		Frequencies:
			* 5180 MHz [36] (20.0 dBm) (no IR)
			* 5200 MHz [40] (20.0 dBm) (no IR)
			* 5220 MHz [44] (20.0 dBm)
			* 5240 MHz [48] (20.0 dBm) (no IR)
			* 5260 MHz [52] (20.0 dBm) (no IR, radar detection)
			* 5280 MHz [56] (20.0 dBm) (no IR, radar detection)
			* 5300 MHz [60] (20.0 dBm) (no IR, radar detection)
			* 5320 MHz [64] (20.0 dBm) (no IR, radar detection)
			* 5500 MHz [100] (20.0 dBm) (no IR, radar detection)
			* 5520 MHz [104] (20.0 dBm) (no IR, radar detection)
			* 5540 MHz [108] (20.0 dBm) (no IR, radar detection)
			* 5560 MHz [112] (20.0 dBm) (no IR, radar detection)
			* 5580 MHz [116] (20.0 dBm) (no IR, radar detection)
			* 5600 MHz [120] (20.0 dBm) (no IR, radar detection)
			* 5620 MHz [124] (20.0 dBm) (no IR, radar detection)
			* 5640 MHz [128] (20.0 dBm) (no IR, radar detection)
			* 5660 MHz [132] (20.0 dBm) (no IR, radar detection)
			* 5680 MHz [136] (20.0 dBm) (no IR, radar detection)
			* 5700 MHz [140] (20.0 dBm) (no IR, radar detection)
			* 5720 MHz [144] (20.0 dBm) (no IR, radar detection)
			* 5745 MHz [149] (20.0 dBm)
			* 5765 MHz [153] (20.0 dBm) (no IR)
			* 5785 MHz [157] (20.0 dBm) (no IR)
			* 5805 MHz [161] (20.0 dBm) (no IR)
			* 5825 MHz [165] (20.0 dBm) (no IR)
			* 5845 MHz [169] (disabled)
			* 5865 MHz [173] (disabled)
	Band 4:
		HE Iftypes: Station
			HE MAC Capabilities (0x08011a000040):
				+HTC HE Supported
				Trigger Frame MAC Padding Duration: 2
				OM Control
				Maximum A-MPDU Length Exponent: 3
				A-MSDU in A-MPDU
			HE PHY Capabilities: (0x4470ce120dc0b306423f00):
				HE40/HE80/5GHz
				242 tone RUs/5GHz
				Device Class: 1
				LDPC Coding in Payload
				HE SU PPDU with 1x HE-LTF and 0.8us GI
				NDP with 4x HE-LTF and 3.2us GI
				STBC Tx <= 80MHz
				STBC Rx <= 80MHz
				Full Bandwidth UL MU-MIMO
				Partial Bandwidth UL MU-MIMO
				DCM Max Constellation: 2
				DCM Max Constellation Rx: 2
				SU Beamformee
				Beamformee STS <= 80Mhz: 3
				Ng = 16 SU Feedback
				Ng = 16 MU Feedback
				Codebook Size SU Feedback
				Codebook Size MU Feedback
				Triggered CQI Feedback
				Partial Bandwidth Extended Range
				PPE Threshold Present
				Power Boost Factor ar
				HE SU PPDU & HE PPDU 4x HE-LTF 0.8us GI
				20MHz in 40MHz HE PPDU 2.4GHz
				DCM Max BW: 1
				Longer Than 16HE SIG-B OFDM Symbols
				Non-Triggered CQI Feedback
				TX 1024-QAM
				RX 1024-QAM
				RX Full BW SU Using HE MU PPDU with Compression SIGB
				RX Full BW SU Using HE MU PPDU with Non-Compression SIGB
			HE RX MCS and NSS set <= 80 MHz
					 1 streams: MCS 0-11
					 2 streams: MCS 0-11
					 3 streams: not supported
					 4 streams: not supported
					 5 streams: not supported
					 6 streams: not supported
					 7 streams: not supported
					 8 streams: not supported
			HE TX MCS and NSS set <= 80 MHz
					 1 streams: MCS 0-11
					 2 streams: MCS 0-11
					 3 streams: not supported
					 4 streams: not supported
					 5 streams: not supported
					 6 streams: not supported
					 7 streams: not supported
					 8 streams: not supported
			PPE Threshold 0x39 0x1c 0xc7 0x71 0x1c 0x07 
		Bitrates (non-HT):
			* 6.0 Mbps
			* 9.0 Mbps
			* 12.0 Mbps
			* 18.0 Mbps
			* 24.0 Mbps
			* 36.0 Mbps
			* 48.0 Mbps
			* 54.0 Mbps
		Frequencies:
			* 5955 MHz [191] (disabled)
			* 5975 MHz [195] (disabled)
			* 5995 MHz [199] (disabled)
			* 6015 MHz [203] (disabled)
			* 6035 MHz [207] (disabled)
			* 6055 MHz [211] (disabled)
			* 6075 MHz [215] (disabled)
			* 6095 MHz [219] (disabled)
			* 6115 MHz [223] (disabled)
			* 6135 MHz [227] (disabled)
			* 6155 MHz [231] (disabled)
			* 6175 MHz [235] (disabled)
			* 6195 MHz [239] (disabled)
			* 6215 MHz [243] (disabled)
			* 6235 MHz [247] (disabled)
			* 6255 MHz [251] (disabled)
			* 6275 MHz [255] (disabled)
			* 6295 MHz [259] (disabled)
			* 6315 MHz [263] (disabled)
			* 6335 MHz [267] (disabled)
			* 6355 MHz [271] (disabled)
			* 6375 MHz [275] (disabled)
			* 6395 MHz [279] (disabled)
			* 6415 MHz [283] (disabled)
			* 6435 MHz [287] (disabled)
			* 6455 MHz [291] (disabled)
			* 6475 MHz [295] (disabled)
			* 6495 MHz [299] (disabled)
			* 6515 MHz [303] (disabled)
			* 6535 MHz [307] (disabled)
			* 6555 MHz [311] (disabled)
			* 6575 MHz [315] (disabled)
			* 6595 MHz [319] (disabled)
			* 6615 MHz [323] (disabled)
			* 6635 MHz [327] (disabled)
			* 6655 MHz [331] (disabled)
			* 6675 MHz [335] (disabled)
			* 6695 MHz [339] (disabled)
			* 6715 MHz [343] (disabled)
			* 6735 MHz [347] (disabled)
			* 6755 MHz [351] (disabled)
			* 6775 MHz [355] (disabled)
			* 6795 MHz [359] (disabled)
			* 6815 MHz [363] (disabled)
			* 6835 MHz [367] (disabled)
			* 6855 MHz [371] (disabled)
			* 6875 MHz [375] (disabled)
			* 6895 MHz [379] (disabled)
			* 6915 MHz [383] (disabled)
			* 6935 MHz [387] (disabled)
			* 6955 MHz [391] (disabled)
			* 6975 MHz [395] (disabled)
			* 6995 MHz [399] (disabled)
			* 7015 MHz [403] (disabled)
			* 7035 MHz [407] (disabled)
			* 7055 MHz [411] (disabled)
			* 7075 MHz [415] (disabled)
			* 7095 MHz [419] (disabled)
			* 7115 MHz [423] (disabled)
	Supported commands:
		 * new_interface
		 * set_interface
		 * new_key
		 * start_ap
		 * new_station
		 * new_mpath
		 * set_mesh_config
		 * set_bss
		 * authenticate
		 * associate
		 * deauthenticate
		 * disassociate
		 * join_ibss
		 * join_mesh
		 * remain_on_channel
		 * set_tx_bitrate_mask
		 * frame
		 * frame_wait_cancel
		 * set_wiphy_netns
		 * set_channel
		 * tdls_mgmt
		 * tdls_oper
		 * start_sched_scan
		 * probe_client
		 * set_noack_map
		 * register_beacons
		 * start_p2p_device
		 * set_mcast_rate
		 * connect
		 * disconnect
		 * channel_switch
		 * set_qos_map
		 * set_multicast_to_unicast
		 * Unknown command (140)
	WoWLAN support:
		 * wake up on disconnect
		 * wake up on magic packet
		 * wake up on pattern match, up to 1 patterns of 1-128 bytes,
		   maximum packet offset 0 bytes
		 * can do GTK rekeying
		 * wake up on network detection, up to 10 match sets
	software interface modes (can always be added):
		 * monitor
	valid interface combinations:
		 * #{ managed } <= 4,
		   total <= 4, #channels <= 1, STA/AP BI must match
	HT Capability overrides:
		 * MCS: ff ff ff ff ff ff ff ff ff ff
		 * maximum A-MSDU length
		 * supported channel width
		 * short GI for 40 MHz
		 * max A-MPDU length exponent
		 * min MPDU start spacing
	Device supports TX status socket option.
	Device supports HT-IBSS.
	Device supports SAE with AUTHENTICATE command
	Device supports scan flush.
	Device supports per-vif TX power setting
	Driver supports full state transitions for AP/GO clients
	Driver supports a userspace MPM
	Device supports active monitor (which will ACK incoming frames)
	Device supports configuring vdev MAC-addr on create.
	Device supports randomizing MAC-addr in scans.
	Device supports randomizing MAC-addr in sched scans.
	max # scan plans: 1
	max scan plan interval: 65535
	max scan plan iterations: 0
	Supported TX frame types:
		 * IBSS: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
		 * managed: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
		 * AP: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
		 * AP/VLAN: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
		 * mesh point: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
		 * P2P-client: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
		 * P2P-GO: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
		 * P2P-device: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
	Supported RX frame types:
		 * IBSS: 0x40 0xb0 0xc0 0xd0
		 * managed: 0x40 0xb0 0xd0
		 * AP: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0
		 * AP/VLAN: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0
		 * mesh point: 0xb0 0xc0 0xd0
		 * P2P-client: 0x40 0xd0
		 * P2P-GO: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0
		 * P2P-device: 0x40 0xd0
	Supported extended features:
		* [ RRM ]: RRM
		* [ SET_SCAN_DWELL ]: scan dwell setting
		* [ FILS_STA ]: STA FILS (Fast Initial Link Setup)
		* [ CQM_RSSI_LIST ]: multiple CQM_RSSI_THOLD records
		* [ CONTROL_PORT_OVER_NL80211 ]: control port over nl80211
		* [ TXQS ]: FQ-CoDel-enabled intermediate TXQs
		* [ AIRTIME_FAIRNESS ]: airtime fairness scheduling

@morrownr
Copy link
Owner

morrownr commented Mar 7, 2022

My laptop with mt7921:

$ lspci

0000:02:00.0 Network controller: MEDIATEK Corp. Device 7961

$ iw list
Wiphy phy0
wiphy index: 0
max # scan SSIDs: 4
max scan IEs length: 482 bytes
max # sched scan SSIDs: 10
max # match sets: 16
Retry short limit: 7
Retry long limit: 4
Coverage class: 0 (up to 0m)
Device supports RSN-IBSS.
Device supports AP-side u-APSD.
Device supports T-DLS.
Supported Ciphers:
* WEP40 (00-0f-ac:1)
* WEP104 (00-0f-ac:5)
* TKIP (00-0f-ac:2)
* CCMP-128 (00-0f-ac:4)
* CCMP-256 (00-0f-ac:10)
* GCMP-128 (00-0f-ac:8)
* GCMP-256 (00-0f-ac:9)
* CMAC (00-0f-ac:6)
* CMAC-256 (00-0f-ac:13)
* GMAC-128 (00-0f-ac:11)
* GMAC-256 (00-0f-ac:12)
Available Antennas: TX 0x3 RX 0x3
Configured Antennas: TX 0x3 RX 0x3
Supported interface modes:
* IBSS
* managed
* AP
* AP/VLAN
* monitor
* mesh point
* P2P-client
* P2P-GO
Band 1:
Capabilities: 0x9ff
RX LDPC
HT20/HT40
SM Power Save disabled
RX Greenfield
RX HT20 SGI
RX HT40 SGI
TX STBC
RX STBC 1-stream
Max AMSDU length: 7935 bytes
No DSSS/CCK HT40
Maximum RX AMPDU length 65535 bytes (exponent: 0x003)
Minimum RX AMPDU time spacing: No restriction (0x00)
HT TX/RX MCS rate indexes supported: 0-15
HE Iftypes: Station
HE MAC Capabilities (0x08031a000040):
+HTC HE Supported
TWT Requester
Trigger Frame MAC Padding Duration: 2
OM Control
Maximum A-MPDU Length Exponent: 3
A-MSDU in A-MPDU
HE PHY Capabilities: (0x22700c120000b006423f00):
HE40/2.4GHz
242 tone RUs/2.4GHz
Device Class: 1
LDPC Coding in Payload
HE SU PPDU with 1x HE-LTF and 0.8us GI
STBC Tx <= 80MHz
STBC Rx <= 80MHz
DCM Max Constellation: 2
DCM Max Constellation Rx: 2
Triggered CQI Feedback
Partial Bandwidth Extended Range
PPE Threshold Present
Power Boost Factor ar
HE SU PPDU & HE PPDU 4x HE-LTF 0.8us GI
20MHz in 40MHz HE PPDU 2.4GHz
DCM Max BW: 1
Longer Than 16HE SIG-B OFDM Symbols
Non-Triggered CQI Feedback
TX 1024-QAM
RX 1024-QAM
RX Full BW SU Using HE MU PPDU with Compression SIGB
RX Full BW SU Using HE MU PPDU with Non-Compression SIGB
HE RX MCS and NSS set <= 80 MHz
1 streams: MCS 0-11
2 streams: MCS 0-11
3 streams: not supported
4 streams: not supported
5 streams: not supported
6 streams: not supported
7 streams: not supported
8 streams: not supported
HE TX MCS and NSS set <= 80 MHz
1 streams: MCS 0-11
2 streams: MCS 0-11
3 streams: not supported
4 streams: not supported
5 streams: not supported
6 streams: not supported
7 streams: not supported
8 streams: not supported
PPE Threshold 0x39 0x1c 0xc7 0x71 0x1c 0x07
Bitrates (non-HT):
* 1.0 Mbps (short preamble supported)
* 2.0 Mbps (short preamble supported)
* 5.5 Mbps (short preamble supported)
* 11.0 Mbps (short preamble supported)
* 6.0 Mbps
* 9.0 Mbps
* 12.0 Mbps
* 18.0 Mbps
* 24.0 Mbps
* 36.0 Mbps
* 48.0 Mbps
* 54.0 Mbps
Frequencies:
* 2412 MHz [1] (30.0 dBm)
* 2417 MHz [2] (30.0 dBm)
* 2422 MHz [3] (30.0 dBm)
* 2427 MHz [4] (30.0 dBm)
* 2432 MHz [5] (30.0 dBm)
* 2437 MHz [6] (30.0 dBm)
* 2442 MHz [7] (30.0 dBm)
* 2447 MHz [8] (30.0 dBm)
* 2452 MHz [9] (30.0 dBm)
* 2457 MHz [10] (30.0 dBm)
* 2462 MHz [11] (30.0 dBm)
* 2467 MHz [12] (disabled)
* 2472 MHz [13] (disabled)
* 2484 MHz [14] (disabled)
Band 2:
Capabilities: 0x9ff
RX LDPC
HT20/HT40
SM Power Save disabled
RX Greenfield
RX HT20 SGI
RX HT40 SGI
TX STBC
RX STBC 1-stream
Max AMSDU length: 7935 bytes
No DSSS/CCK HT40
Maximum RX AMPDU length 65535 bytes (exponent: 0x003)
Minimum RX AMPDU time spacing: No restriction (0x00)
HT TX/RX MCS rate indexes supported: 0-15
VHT Capabilities (0x338001b1):
Max MPDU length: 7991
Supported Channel Width: neither 160 nor 80+80
RX LDPC
short GI (80 MHz)
TX STBC
RX antenna pattern consistency
TX antenna pattern consistency
VHT RX MCS set:
1 streams: MCS 0-9
2 streams: MCS 0-9
3 streams: not supported
4 streams: not supported
5 streams: not supported
6 streams: not supported
7 streams: not supported
8 streams: not supported
VHT RX highest supported: 0 Mbps
VHT TX MCS set:
1 streams: MCS 0-9
2 streams: MCS 0-9
3 streams: not supported
4 streams: not supported
5 streams: not supported
6 streams: not supported
7 streams: not supported
8 streams: not supported
VHT TX highest supported: 0 Mbps
HE Iftypes: Station
HE MAC Capabilities (0x08031a000040):
+HTC HE Supported
TWT Requester
Trigger Frame MAC Padding Duration: 2
OM Control
Maximum A-MPDU Length Exponent: 3
A-MSDU in A-MPDU
HE PHY Capabilities: (0x44700c120000b006423f00):
HE40/HE80/5GHz
242 tone RUs/5GHz
Device Class: 1
LDPC Coding in Payload
HE SU PPDU with 1x HE-LTF and 0.8us GI
STBC Tx <= 80MHz
STBC Rx <= 80MHz
DCM Max Constellation: 2
DCM Max Constellation Rx: 2
Triggered CQI Feedback
Partial Bandwidth Extended Range
PPE Threshold Present
Power Boost Factor ar
HE SU PPDU & HE PPDU 4x HE-LTF 0.8us GI
20MHz in 40MHz HE PPDU 2.4GHz
DCM Max BW: 1
Longer Than 16HE SIG-B OFDM Symbols
Non-Triggered CQI Feedback
TX 1024-QAM
RX 1024-QAM
RX Full BW SU Using HE MU PPDU with Compression SIGB
RX Full BW SU Using HE MU PPDU with Non-Compression SIGB
HE RX MCS and NSS set <= 80 MHz
1 streams: MCS 0-11
2 streams: MCS 0-11
3 streams: not supported
4 streams: not supported
5 streams: not supported
6 streams: not supported
7 streams: not supported
8 streams: not supported
HE TX MCS and NSS set <= 80 MHz
1 streams: MCS 0-11
2 streams: MCS 0-11
3 streams: not supported
4 streams: not supported
5 streams: not supported
6 streams: not supported
7 streams: not supported
8 streams: not supported
PPE Threshold 0x39 0x1c 0xc7 0x71 0x1c 0x07
Bitrates (non-HT):
* 6.0 Mbps
* 9.0 Mbps
* 12.0 Mbps
* 18.0 Mbps
* 24.0 Mbps
* 36.0 Mbps
* 48.0 Mbps
* 54.0 Mbps
Frequencies:
* 5180 MHz [36] (23.0 dBm)
* 5200 MHz [40] (23.0 dBm)
* 5220 MHz [44] (23.0 dBm)
* 5240 MHz [48] (23.0 dBm)
* 5260 MHz [52] (23.0 dBm) (radar detection)
* 5280 MHz [56] (23.0 dBm) (radar detection)
* 5300 MHz [60] (23.0 dBm) (radar detection)
* 5320 MHz [64] (23.0 dBm) (radar detection)
* 5500 MHz [100] (23.0 dBm) (radar detection)
* 5520 MHz [104] (23.0 dBm) (radar detection)
* 5540 MHz [108] (23.0 dBm) (radar detection)
* 5560 MHz [112] (23.0 dBm) (radar detection)
* 5580 MHz [116] (23.0 dBm) (radar detection)
* 5600 MHz [120] (23.0 dBm) (radar detection)
* 5620 MHz [124] (23.0 dBm) (radar detection)
* 5640 MHz [128] (23.0 dBm) (radar detection)
* 5660 MHz [132] (23.0 dBm) (radar detection)
* 5680 MHz [136] (23.0 dBm) (radar detection)
* 5700 MHz [140] (23.0 dBm) (radar detection)
* 5720 MHz [144] (23.0 dBm) (radar detection)
* 5745 MHz [149] (30.0 dBm)
* 5765 MHz [153] (30.0 dBm)
* 5785 MHz [157] (30.0 dBm)
* 5805 MHz [161] (30.0 dBm)
* 5825 MHz [165] (30.0 dBm)
* 5845 MHz [169] (27.0 dBm) (no IR)
* 5865 MHz [173] (27.0 dBm) (no IR)
Supported commands:
* new_interface
* set_interface
* new_key
* start_ap
* new_station
* new_mpath
* set_mesh_config
* set_bss
* authenticate
* associate
* deauthenticate
* disassociate
* join_ibss
* join_mesh
* remain_on_channel
* set_tx_bitrate_mask
* frame
* frame_wait_cancel
* set_wiphy_netns
* set_channel
* tdls_mgmt
* tdls_oper
* start_sched_scan
* probe_client
* set_noack_map
* register_beacons
* start_p2p_device
* set_mcast_rate
* connect
* disconnect
* channel_switch
* set_qos_map
* set_multicast_to_unicast
WoWLAN support:
* wake up on disconnect
* wake up on magic packet
* wake up on pattern match, up to 1 patterns of 1-128 bytes,
maximum packet offset 0 bytes
* can do GTK rekeying
* wake up on network detection, up to 10 match sets
software interface modes (can always be added):
* AP/VLAN
* monitor
valid interface combinations:
* #{ managed } <= 4,
total <= 4, #channels <= 1, STA/AP BI must match
HT Capability overrides:
* MCS: ff ff ff ff ff ff ff ff ff ff
* maximum A-MSDU length
* supported channel width
* short GI for 40 MHz
* max A-MPDU length exponent
* min MPDU start spacing
Device supports TX status socket option.
Device supports HT-IBSS.
Device supports SAE with AUTHENTICATE command
Device supports scan flush.
Device supports per-vif TX power setting
Driver supports full state transitions for AP/GO clients
Driver supports a userspace MPM
Device supports active monitor (which will ACK incoming frames)
Device supports configuring vdev MAC-addr on create.
Device supports randomizing MAC-addr in scans.
max # scan plans: 1
max scan plan interval: 65535
max scan plan iterations: 0
Supported TX frame types:
* IBSS: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
* managed: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
* AP: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
* AP/VLAN: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
* mesh point: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
* P2P-client: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
* P2P-GO: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
* P2P-device: 0x00 0x10 0x20 0x30 0x40 0x50 0x60 0x70 0x80 0x90 0xa0 0xb0 0xc0 0xd0 0xe0 0xf0
Supported RX frame types:
* IBSS: 0x40 0xb0 0xc0 0xd0
* managed: 0x40 0xb0 0xd0
* AP: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0
* AP/VLAN: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0
* mesh point: 0xb0 0xc0 0xd0
* P2P-client: 0x40 0xd0
* P2P-GO: 0x00 0x20 0x40 0xa0 0xb0 0xc0 0xd0
* P2P-device: 0x40 0xd0
Supported extended features:
* [ RRM ]: RRM
* [ SET_SCAN_DWELL ]: scan dwell setting
* [ FILS_STA ]: STA FILS (Fast Initial Link Setup)
* [ CQM_RSSI_LIST ]: multiple CQM_RSSI_THOLD records
* [ CONTROL_PORT_OVER_NL80211 ]: control port over nl80211
* [ TXQS ]: FQ-CoDel-enabled intermediate TXQs
* [ AIRTIME_FAIRNESS ]: airtime fairness scheduling
* [ AQL ]: Airtime Queue Limits (AQL)
* [ CONTROL_PORT_NO_PREAUTH ]: disable pre-auth over nl80211 control port support
* [ DEL_IBSS_STA ]: deletion of IBSS station support
* [ SCAN_FREQ_KHZ ]: scan on kHz frequency support
* [ CONTROL_PORT_OVER_NL80211_TX_STATUS ]: tx status for nl80211 control port support

@craiganderson
Copy link
Author

Can you run lspci -vv to get the driver you're using? If your card were using a different driver, that could explain the difference in behavior. (Note last two lines)

$ lspci -vv
03:00.0 Network controller: MEDIATEK Corp. Device 0608
	Subsystem: MEDIATEK Corp. Device 0608
	Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
	Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx-
	Latency: 0, Cache Line Size: 64 bytes
	Interrupt: pin A routed to IRQ 82
	Region 0: Memory at e0300000 (64-bit, prefetchable) [size=1M]
	Region 2: Memory at e0400000 (64-bit, prefetchable) [size=16K]
	Region 4: Memory at e0404000 (64-bit, prefetchable) [size=4K]
	Capabilities: [80] Express (v2) Endpoint, MSI 00
		DevCap:	MaxPayload 128 bytes, PhantFunc 0, Latency L0s unlimited, L1 unlimited
			ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset+ SlotPowerLimit 75.000W
		DevCtl:	CorrErr- NonFatalErr- FatalErr- UnsupReq-
			RlxdOrd+ ExtTag+ PhantFunc- AuxPwr- NoSnoop+ FLReset-
			MaxPayload 128 bytes, MaxReadReq 512 bytes
		DevSta:	CorrErr+ NonFatalErr- FatalErr- UnsupReq+ AuxPwr- TransPend-
		LnkCap:	Port #1, Speed 5GT/s, Width x1, ASPM L0s L1, Exit Latency L0s <2us, L1 <8us
			ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+
		LnkCtl:	ASPM L1 Enabled; RCB 64 bytes Disabled- CommClk+
			ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
		LnkSta:	Speed 5GT/s (ok), Width x1 (ok)
			TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
		DevCap2: Completion Timeout: Range ABCD, TimeoutDis+, NROPrPrP-, LTR+
			 10BitTagComp-, 10BitTagReq-, OBFF Not Supported, ExtFmt+, EETLPPrefix-
			 EmergencyPowerReduction Not Supported, EmergencyPowerReductionInit-
			 FRS-, TPHComp-, ExtTPHComp-
			 AtomicOpsCap: 32bit- 64bit- 128bitCAS-
		DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis-, LTR+, OBFF Disabled
			 AtomicOpsCtl: ReqEn-
		LnkCtl2: Target Link Speed: 5GT/s, EnterCompliance- SpeedDis-
			 Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
			 Compliance De-emphasis: -6dB
		LnkSta2: Current De-emphasis Level: -3.5dB, EqualizationComplete-, EqualizationPhase1-
			 EqualizationPhase2-, EqualizationPhase3-, LinkEqualizationRequest-
	Capabilities: [e0] MSI: Enable+ Count=1/32 Maskable+ 64bit+
		Address: 00000000fee00000  Data: 0000
		Masking: fffffffe  Pending: 00000000
	Capabilities: [f8] Power Management version 3
		Flags: PMEClk- DSI+ D1+ D2+ AuxCurrent=0mA PME(D0+,D1+,D2+,D3hot+,D3cold+)
		Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
	Capabilities: [100 v1] Vendor Specific Information: ID=1556 Rev=1 Len=008 <?>
	Capabilities: [108 v1] Latency Tolerance Reporting
		Max snoop latency: 1048576ns
		Max no snoop latency: 1048576ns
	Capabilities: [110 v1] L1 PM Substates
		L1SubCap: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+ L1_PM_Substates+
			  PortCommonModeRestoreTime=3us PortTPowerOnTime=28us
		L1SubCtl1: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+
			   T_CommonMode=0us LTR1.2_Threshold=163840ns
		L1SubCtl2: T_PwrOn=150us
	Capabilities: [200 v2] Advanced Error Reporting
		UESta:	DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
		UEMsk:	DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
		UESvrt:	DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP+ ECRC- UnsupReq- ACSViol-
		CESta:	RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr-
		CEMsk:	RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr+
		AERCap:	First Error Pointer: 00, ECRCGenCap- ECRCGenEn- ECRCChkCap- ECRCChkEn-
			MultHdrRecCap- MultHdrRecEn- TLPPfxPres- HdrLogCap-
		HeaderLog: 00000000 00000000 00000000 00000000
	Kernel driver in use: mt7921e
	Kernel modules: mt7921e

@morrownr
Copy link
Owner

morrownr commented Mar 7, 2022

$ sudo lspci -vv

0000:02:00.0 Network controller: MEDIATEK Corp. Device 7961
Subsystem: Lite-On Communications Inc Device 3802
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+
Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- SERR- <PERR- INTx-
Latency: 0, Cache Line Size: 64 bytes
Interrupt: pin A routed to IRQ 158
Region 0: Memory at 6003000000 (64-bit, prefetchable) [size=1M]
Region 2: Memory at 6003100000 (64-bit, prefetchable) [size=16K]
Region 4: Memory at 6003104000 (64-bit, prefetchable) [size=4K]
Capabilities: [80] Express (v2) Endpoint, MSI 00
DevCap: MaxPayload 128 bytes, PhantFunc 0, Latency L0s unlimited, L1 unlimited
ExtTag+ AttnBtn- AttnInd- PwrInd- RBE+ FLReset+ SlotPowerLimit 10.000W
DevCtl: CorrErr- NonFatalErr- FatalErr- UnsupReq-
RlxdOrd+ ExtTag+ PhantFunc- AuxPwr- NoSnoop+ FLReset-
MaxPayload 128 bytes, MaxReadReq 512 bytes
DevSta: CorrErr- NonFatalErr- FatalErr- UnsupReq- AuxPwr- TransPend-
LnkCap: Port #1, Speed 5GT/s, Width x1, ASPM L0s L1, Exit Latency L0s <2us, L1 <8us
ClockPM- Surprise- LLActRep- BwNot- ASPMOptComp+
LnkCtl: ASPM Disabled; RCB 64 bytes, Disabled- CommClk+
ExtSynch- ClockPM- AutWidDis- BWInt- AutBWInt-
LnkSta: Speed 5GT/s (ok), Width x1 (ok)
TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
DevCap2: Completion Timeout: Range ABCD, TimeoutDis+ NROPrPrP- LTR+
10BitTagComp- 10BitTagReq- OBFF Not Supported, ExtFmt+ EETLPPrefix-
EmergencyPowerReduction Not Supported, EmergencyPowerReductionInit-
FRS- TPHComp- ExtTPHComp-
AtomicOpsCap: 32bit- 64bit- 128bitCAS-
DevCtl2: Completion Timeout: 50us to 50ms, TimeoutDis- LTR+ OBFF Disabled,
AtomicOpsCtl: ReqEn-
LnkCap2: Supported Link Speeds: 2.5-5GT/s, Crosslink- Retimer- 2Retimers- DRS-
LnkCtl2: Target Link Speed: 5GT/s, EnterCompliance- SpeedDis-
Transmit Margin: Normal Operating Range, EnterModifiedCompliance- ComplianceSOS-
Compliance De-emphasis: -6dB
LnkSta2: Current De-emphasis Level: -6dB, EqualizationComplete- EqualizationPhase1-
EqualizationPhase2- EqualizationPhase3- LinkEqualizationRequest-
Retimer- 2Retimers- CrosslinkRes: unsupported
Capabilities: [e0] MSI: Enable+ Count=1/32 Maskable+ 64bit+
Address: 00000000fee005b8 Data: 0000
Masking: fffffffe Pending: 00000000
Capabilities: [f8] Power Management version 3
Flags: PMEClk- DSI+ D1+ D2+ AuxCurrent=0mA PME(D0+,D1+,D2+,D3hot+,D3cold+)
Status: D0 NoSoftRst+ PME-Enable- DSel=0 DScale=0 PME-
Capabilities: [100 v1] Vendor Specific Information: ID=1556 Rev=1 Len=008 <?>
Capabilities: [108 v1] Latency Tolerance Reporting
Max snoop latency: 3145728ns
Max no snoop latency: 3145728ns
Capabilities: [110 v1] L1 PM Substates
L1SubCap: PCI-PM_L1.2+ PCI-PM_L1.1+ ASPM_L1.2+ ASPM_L1.1+ L1_PM_Substates+
PortCommonModeRestoreTime=3us PortTPowerOnTime=28us
L1SubCtl1: PCI-PM_L1.2- PCI-PM_L1.1- ASPM_L1.2- ASPM_L1.1-
T_CommonMode=0us LTR1.2_Threshold=65536ns
L1SubCtl2: T_PwrOn=44us
Capabilities: [200 v2] Advanced Error Reporting
UESta: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
UEMsk: DLP- SDES- TLP- FCP- CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP- ECRC- UnsupReq- ACSViol-
UESvrt: DLP+ SDES+ TLP- FCP+ CmpltTO- CmpltAbrt- UnxCmplt- RxOF- MalfTLP+ ECRC- UnsupReq- ACSViol-
CESta: RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr-
CEMsk: RxErr- BadTLP- BadDLLP- Rollover- Timeout- AdvNonFatalErr+
AERCap: First Error Pointer: 00, ECRCGenCap- ECRCGenEn- ECRCChkCap- ECRCChkEn-
MultHdrRecCap- MultHdrRecEn- TLPPfxPres- HdrLogCap-
HeaderLog: 00000000 00000000 00000000 00000000
Kernel driver in use: mt7921e
Kernel modules: mt7921e

@craiganderson
Copy link
Author

Ok, same driver then.

I'm guessing that at a minimum, the mt7921e driver code needs to be updated to properly recognize the presence of AP mode with the newer WiFi cards.

I'll reach out to the driver maintainer to confirm and report back with my findings.

Thanks

@craiganderson
Copy link
Author

The principal dev for this driver got back to me quickly and confirmed that "mt7921 only supports sta (client) and monitor mode at the moment." I'm not sure why your card would like AP Mode support in this case since it sounds like it won't work for any mt7921 devices. Anyway, feel free to update your table with these findings to remove indication of AP mode support.

@morrownr
Copy link
Owner

morrownr commented Mar 7, 2022

I changed AP mode in the PCIe chart to show in progress for the mt7921k.

There is very heavy development going on with the mt7921 driver right now.

@craiganderson
Copy link
Author

Sounds good! Hopefully we get something soon.

One other small nit - technically the AX200 and AX210 drivers do support AP mode, it's just handicapped for LAR affected bands. So in the AP Mode row for these, you could say something like "2.4 GHz only" to be more precise.

@craiganderson
Copy link
Author

craiganderson commented Mar 7, 2022

Also I just happened to have a MediaTek MT7921 lying around (same card as you), so I tried it:

But it gives the same results, no AP supported with the mt7921e driver:

	Supported interface modes:
		 * managed
		 * monitor

I actually had two 7961 cards with different sub-models, 7961:4680 which didn't match yours, and 7961:3802 which did match. However the results were the same for both, and neither showed up with AP mode. I have no explanation for how AP mode shows up on your MT7921 when the devs are telling me the mt7921e driver doesn't support AP mode.

Are you certain the iw list output you pasted above showing AP mode support is coming from your MT7921 and not another WiFi card? Otherwise I'm stumped...

@morrownr
Copy link
Owner

morrownr commented Mar 7, 2022

Are you certain the iw list output you pasted above showing AP mode support is coming from your MT7921?

I am sure. No other internal wifi in that laptop and no usb adapter plugged in. You are just going to have to face the fact that my driver is better than yours. ... he he he. Seriously, I'm running kernel 5.13. I've not checked to see if AP mode is working. I have checked monitor and managed modes. Just because my driver says AP mode is working does not make it so. This site is mostly about USB adapters and there are no USB adapters based on the mt7921 yet so there is very little testing going on at this point.

@gitclint
Copy link

gitclint commented Mar 8, 2022

The principal dev for this driver got back to me quickly and confirmed that "mt7921 only supports sta (client) and monitor mode at the moment." I'm not sure why your card would like AP Mode support in this case since it sounds like it won't work for any mt7921 devices. Anyway, feel free to update your table with these findings to remove indication of AP mode support.

Sorry for the dumb question, but where is the table with the AP Mode support? Does it also show how many SSIDs are supported? I've been looking everywhere for a document like this and it sounds like it may have been under my nose the whole time! xD

@craiganderson
Copy link
Author

craiganderson commented Mar 8, 2022

The principal dev for this driver got back to me quickly and confirmed that "mt7921 only supports sta (client) and monitor mode at the moment." I'm not sure why your card would like AP Mode support in this case since it sounds like it won't work for any mt7921 devices. Anyway, feel free to update your table with these findings to remove indication of AP mode support.

Sorry for the dumb question, but where is the table with the AP Mode support? Does it also show how many SSIDs are supported? I've been looking everywhere for a document like this and it sounds like it may have been under my nose the whole time! xD

@morrownr
Copy link
Owner

Hi @craiganderson

But it gives the same results, no AP supported with the mt7921e driver:

	Supported interface modes:
		 * managed
		 * monitor

Word from a source that would know is that the AP mode support should be in the firmware very soon. It appears to me that Mediatek is going as fast as they can and they decided to go ahead and release the firmware and driver with support as you see it so that Linux users would have at least good managed mode support in the short term but are working very hard to get the rest of the parts in as fast as they can. These WiFi 6 chipsets and drivers are incredibly complex. It astounds me how well the 7921 based card in my laptop works given this new generation of wifi.

All indications are that the 7921e and 7921u will be full featured once everything is complete.

Are you certain the iw list output you pasted above showing AP mode support is coming from your MT7921 and not another WiFi card? Otherwise I'm stumped...

Hopefully the above info helped. I still haven't had time to use AP mode but managed mode works great. I am busy. Golden Rule that I learned working on the Realtek drivers: Just because iw list or iw dev says something does not make it so. They probably had forgotten to remove the AP support statement in the version of the driver I have.

So, a little patience and we will have what we seek.

Regards

@morrownr
Copy link
Owner

Hi @craiganderson

Word from a source that would know is that the AP mode support should be in the firmware very soon.

The following was submitted last week:

Update binary firmware for MT7921 WiFi devices

File: mediatek/WIFI_MT7961_patch_mcu_1_2_hdr.bin
Version: 20220311230842a
File: mediatek/WIFI_RAM_CODE_MT7961_1.bin
Version: 20220311230931

I suspect that these new firmware files include the AP support for the mt7921e/u. You can keep an eye on the log at the following site:

https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/log/mediatek

Once you see a new entry for those files then you can go to tree and download them and replace your current versions and see what the results are. Please let us know.

Regards

@morrownr
Copy link
Owner

morrownr commented Apr 5, 2022

Hi @craiganderson

Today the follow patch was submitted. It appears that more than the new firmware was needed to turn AP Mode on:

From: Sean Wang <sean.wang@mediatek.com>

add AP mode support to mt7921 that can work for mt7921[e,s,u]
with the common code.

Tested-by: Deren Wu <deren.wu@mediatek.com>
Signed-off-by: Sean Wang <sean.wang@mediatek.com>
---
 .../net/wireless/mediatek/mt76/mt7921/init.c  | 11 ++-
 .../net/wireless/mediatek/mt76/mt7921/mac.c   |  9 +++
 .../net/wireless/mediatek/mt76/mt7921/main.c  | 46 +++++++++++
 .../net/wireless/mediatek/mt76/mt7921/mcu.c   | 79 ++++++++++++++++++-
 .../wireless/mediatek/mt76/mt7921/mt7921.h    |  4 +
 5 files changed, 147 insertions(+), 2 deletions(-)

As you know, I keep a watch on the linux-wireless mailing list. The amount of work required for the WiFi 6 drivers is incredible. As best I can tell Mediatek has all hands on desk in an effort to finish work on the remaining features for the mt7921[e,s,u].

FWIW: I've used Linux since before WiFi, as we know it, existed. If my memory is correct, the mt7921u will be the first USB WiFi driver that will be in the kernel and fully ready to go BEFORE adapters are available.

@zzxxtt
Copy link

zzxxtt commented May 3, 2022

Hello, Although their's a patch on mt7921 ap mode, It seems it not merged to mainline kernel yet? I installed the latest 5.17.5 kernel and download the latest formware but still not have ap mode in iw list. Any idea how to build it by ourselve, like dkms?

@morrownr
Copy link
Owner

morrownr commented May 3, 2022

hi @zzxxtt

After I looked at the date on my message above about the latest commit, I can see the date is only 29 days ago. It won't be in 5.17. It may not have made it into 5.18 but for sure will be in 5.19. It is possible to compile and use a module that is in-kernel, however, that is on my to-do list. I need to learn how to do it. Let me know if you find a good guide.

FYI: I updated my guide about Mediatek firmware:

https://github.com/morrownr/USB-WiFi/blob/main/How_to_Install_Firmware_for_Mediatek_based_USB_WiFi_adapters.md

@morrownr
Copy link
Owner

Hi @zzxxtt @craiganderson @gitclint @Malvineous

Regarding the mt7921 AP mode issue:

A message came through linux-wireless today and I am posting it below. Driver support for AP mode is going into kernel 5.19. New firmware is also required and has been uploaded to the normal place and I have updated the instructions that I keep in the following document...

https://github.com/morrownr/USB-WiFi/blob/main/home/How_to_Install_Firmware_for_Mediatek_based_USB_WiFi_adapters.md


mt76 patches for 5.19

  • tx locking improvements
  • wireless ethernet dispatch support for flow offload
  • non-standard VHT MCS10-11 support
  • fixes
  • runtime PM improvements
  • mt7921 AP mode support
  • mt7921 ipv6 NS offload support

Bo Jiao (2):
mt76: mt7915: disable RX_HDR_TRANS_SHORT
mt76: mt7615/mt7915: do reset_work with mt76's work queue

Christophe JAILLET (1):
mt76: mt7921: Fix the error handling path of mt7921_pci_probe()

Colin Ian King (2):
mt76: mt7915: make read-only array ppet16_ppet8_ru3_ru0 static const
mt76: mt7921: make read-only array ppet16_ppet8_ru3_ru0 static const

Deren Wu (2):
mt76: fix antenna config missing in 6G cap
mt76: mt7921: add ipv6 NS offload support

Evelyn Tsai (1):
mt76: fix MBSS index condition in DBDC mode

Felix Fietkau (15):
mt76: mt7915: fix DBDC default band selection on MT7915D
mt76: mt7915: rework hardware/phy initialization
mt76: reduce tx queue lock hold time
mt76: dma: use kzalloc instead of devm_kzalloc for txwi
mt76: mt7915: accept rx frames with non-standard VHT MCS10-11
mt76: mt7921: accept rx frames with non-standard VHT MCS10-11
mt76: fix use-after-free by removing a non-RCU wcid pointer
mt76: fix rx reordering with non explicit / psmp ack policy
mt76: do not attempt to reorder received 802.3 packets without agg session
mt76: fix encap offload ethernet type check
mt76: fix tx status related use-after-free race on station removal
mt76: dma: add wrapper macro for accessing queue registers
mt76: add support for overriding the device used for DMA mapping
mt76: make number of tokens configurable dynamically
mt76: mt7915: add Wireless Ethernet Dispatch support

Lorenzo Bianconi (11):
mt76: mt7921u: add suspend/resume support
mt76: mt7921: rely on mt76_dev rxfilter in mt7921_configure_filter
mt76: mt7921: honor pm user configuration in mt7921_sniffer_interface_iter
mt76: mt7915: fix unbounded shift in mt7915_mcu_beacon_mbss
mt76: mt7915: fix possible uninitialized pointer dereference in mt7986_wmac_gpio_setup
mt76: mt7915: fix possible NULL pointer dereference in mt7915_mac_fill_rx_vector
mt76: mt7915: do not pass data pointer to mt7915_mcu_muru_debug_set
mt76: mt7915: report rx mode value in mt7915_mac_fill_rx_rate
mt76: mt7915: use 0xff to initialize bitrate_mask in mt7915_init_bitrate_mask
mt76: mt7915: configure soc clocks in mt7986_wmac_init
mt76: add gfp to mt76_mcu_msg_alloc signature

MeiChia Chiu (1):
mt76: mt7915: add support for 6G in-band discovery

Peter Chiu (4):
mt76: mt7915: update mt7986 patch in mt7986_wmac_adie_patch_7976()
mt76: mt7915: fix twt table_mask to u16 in mt7915_dev
mt76: mt7915: reject duplicated twt flows
mt76: mt7915: limit minimum twt duration

Ryder Lee (7):
mt76: mt7915: always call mt7915_wfsys_reset() during init
mt76: mt7915: remove SCS feature
mt76: mt7915: rework SER debugfs knob
mt76: mt7915: introduce mt7915_mac_severe_check()
mt76: mt7915: move MT_INT_MASK_CSR to init.c
mt76: mt7915: improve error handling for fw_debug knobs
mt76: mt7915: add more statistics from fw_util debugfs knobs

Sean Wang (3):
mt76: mt7921: Add AP mode support
mt76: mt7921: fix kernel crash at mt7921_pci_remove
mt76: connac: use skb_put_data instead of open coding

Shayne Chen (1):
mt76: mt7915: add debugfs knob for RF registers read/write

Yunbo Yu (1):
mt76: mt7603: move spin_lock_bh() to spin_lock()


@zeddit
Copy link

zeddit commented Feb 22, 2024

hi all, I am using RZ608 wifi card on ubuntu 22.04 to set up an wifi access point.
I am using netplan and NetworkManager to set the wifi in ap mode.
However, devices could not connect to the ap and sudo wpa_cli -i wlp2s0 status shows

bssid=10:6f:d9:af:56:c5
freq=2412
ssid=test
id=0
mode=AP
pairwise_cipher=CCMP
group_cipher=CCMP
key_mgmt=UNKNOWN <- this problem. 
wpa_state=COMPLETED
ip_address=192.168.18.1

key_mgmt should be WPA2-PSK or something else. so is the issue related to the driver mt7921e.
how could I fix it, great thanks.

@morrownr
Copy link
Owner

Hi @zeddit

Recommend that you start a new issue. Very few people will see this issue in this location.

I'd help if I could but using netplan and NM for AP mode is not something I know anything about. I do use AP mode a lot. In fact, I have an AP mode guide called Bridged Wireless Access Point on the Main Menu.

@morrownr

@zeddit
Copy link

zeddit commented Feb 23, 2024

@morrownr great thanks for your kindness and reply.
The problem solved after I changed to use hostapd rather than NetworkManager.
It's a problem of NetworkManager.
thank you again.

@rohithhackthlon
Copy link

any updates about mt7921 ap mode support

@morrownr
Copy link
Owner

@craiganderson

This is a very old thread that has drifted toward various topics. I have various adapters/cards that use the mt7921u and mt7921e drivers and AP works fine for me.

Recommend you start a new issue with details on your adapter/card, distro and what you are trying to do.

@dreirund
Copy link

dreirund commented Nov 5, 2024

@craiganderson wrote:

https://github.com/morrownr/USB-WiFi/blob/main/PCIe_WiFi_Devices.md

Ahoj (@morrownr, too),
I just wanted to see that site, but it gives a HTTP error 404 "Not Found".

It now seems to be at https://github.com/morrownr/USB-WiFi/blob/main/home/PCIe_WiFi_Devices.md.

So, maybe you update your comment, @craiganderson?

Regards!

@morrownr
Copy link
Owner

morrownr commented Nov 6, 2024

@dreirund

Where is the location of the bad link?

@dreirund
Copy link

dreirund commented Nov 6, 2024

Where is the location of the bad link?

In the comment in this thread which I linked in my citation: #issuecomment-1061385080.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants