Adding Support for Verizon CR1000A

No luck so far:

  1. i have this in DTS spi@4 part is from OEM dts
&blsp1_spi5 {
	pinctrl-0 = <&spi_4_pins>;
	pinctrl-names = "default";
	status = "ok";
	spi@4 {
	 	compatible = "qca,spidev";
		reg = <0x00>;
		spi-max-frequency = <0xb71b00>;
	};
};
  1. I've added kmod-spi-dev spidev-test spi-tools to the image (and i see kmod loaded and tools available)

but still no /dev/spidevXXXX available.

I hear some compatible hacks are needed?

qca,spidev isnt a thing in the kernel, for spidev you either need to add compatible or for testing reuse one of these:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tree/drivers/spi/spidev.c?h=v6.3#n733

ok, that was the issue. i guess OEM added it to their spidev white list...

now it works, i guess

root@OpenWrt:/# spidev_test -D /dev/spidev1.0 -v
spi mode: 0x0
bits per word: 8
max speed: 500000 Hz (500 kHz)
TX | FF FF FF FF FF FF 40 00 00 00 00 95 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF F0 0D  |......@.........................|
RX | 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00  |................................|

Now to the actual commands: is there a way to capture/replay spidev communication? just to have it working till we make sense of it bit by bit?

That I am not sure, there is some tooling for sure but I never really worked with it

So next, is to read the first register, which sits at offset 0x4
https://www.svanheule.net/realtek/longan/register/model_name_info

You'll recognize the rtl9301 string for sure :slight_smile:
So lets see if you can get that :slight_smile:

Trying to read it - no luck

root@OpenWrt:/# spidev_test  -D /dev/spidev1.0 -p "\x04" -v
spi mode: 0x0
bits per word: 8
max speed: 500000 Hz (500 kHz)
TX | 04 __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __  |.|
RX | 00 __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __  |.|

This is where it becomes interesting; this is something you'll need to figure out/get right. But we have the binary from the vendor, you can always try running that and see if it works still.

or, on the vendor firmware (the one where you get the really long SPI address) run your program and see.

Well, just tried spidev_test on OEM fimrware. same result

root@CR1000A:/mnt# ./spidev_test  -D /dev/spidev32765.0  -p "\x04" -v
spi mode: 0x0
bits per word: 8
max speed: 500000 Hz (500 kHz)
TX | 04 __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __  |.|
RX | 00 __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __ __  |.|

Tried to run oem's usrApp too (created link first via ln /dev/spidev1.0 /dev/spidev32765.0)

No luck:

root@OpenWrt:/mnt# ./usrApp 
RTK User Space SDK Initialize
RTCORE Driver Module Initialize
  IOAL init
  IOAL init
[2][] !rtkErr: unit 0 ioal_init fail
*** [RT_ERR] /home/chunpin_shao/verizon_chr2f_qcm_3.1phase1_release-Build_Number_73/openwrt/build_dir/target-aarch64-openwrt-linux_musl/rtl-9303-3.6.2.56/sdk/system/common/rtcore/user/rtcore_init.c:385: In function 'rtcore_init'
             Error Code: 0xFFFFFFFF

[2][] !rtkErr: rtcore_init failed!!

*** [RT_ERR] /home/chunpin_shao/verizon_chr2f_qcm_3.1phase1_release-Build_Number_73/openwrt/build_dir/target-aarch64-openwrt-linux_musl/rtl-9303-3.6.2.56/sdk/system/linux/usrAppStart.c:382: In function 'main'
             Error Code: 0xFFFFFFFF



So a step back, run your app on the vendor firmware; if this DOES work; your SPI node is not setup properly, if this also fails, everything is wrong :slight_smile:

Maybe these things are useful:

and https://svanheule.net/switches/network_driver_refactor/sdk_uboot_init (which I know is broken :p). I traced some functions from U-boot on how init works. My guess is 75% chance that the SPI init bit is also in there somewhere, u-boot/linux is just not using it.

See above - I did run standard openwrt spidev_test on vendor firmware. Negative results, same as on my kernel.

Now that I'm thinking of it more: looking at it all again. Indeed they load 2nd AQR firmware using SPI. Seems like it's not the rtl9301 sitting there at spi@4 after all?

How is rtl3901 controlled then?

I'm band packet is also a thing, could be they use that

We saw the script that was used earlier no?

Also, wasn't the rtl9301 on spi@5? even so; the AQR firmware could very well be loaded via the rtl9301, as it's likely loaded through MDIO?

AQR113C can either load the FW itself from a SPI-NOR storage or have it loaded via MDIO, it cannot be controlled or anything via SPI.

ok, I see that SPI1 has this 128Mbit flash at @0. Could it be the AQR#2 firmware? How could I dump it?

      spi@78b5000 {
...
			m25p80@0 {
				#address-cells = <0x01>;
				#size-cells = <0x01>;
				compatible = "n25q128a11";
				linux,modalias = "m25p80\0n25q128a11";
				reg = <0x00>;
				spi-max-frequency = <0x2faf080>;
				use-default-sizes;
			};
		};

QCA has been abusing that compatible for years, it could be any SPI-NOR if there even is one

@a_guy Backport for the 6GHz WIPHY has been merged, so now registering the 6GHz radio should not fail

Thanks it worked; but partially? rebased and now I have this

It initializes correctly but

  • 6G radio is now 6G only. I hoped it would be 5G + 6G?
  • some valid channels like 177 are disabled?
root@OpenWrt:/# iw phy 
Wiphy phy2
	wiphy index: 2
	max # scan SSIDs: 16
	max scan IEs length: 184 bytes
	max # sched scan SSIDs: 0
	max # match sets: 0
	Retry short limit: 7
	Retry long limit: 4
	Coverage class: 0 (up to 0m)
	Device supports AP-side u-APSD.
	Available Antennas: TX 0xf RX 0xf
	Configured Antennas: TX 0xf RX 0xf
	Supported interface modes:
		 * managed
		 * AP
		 * monitor
		 * mesh point
	Band 4:
		HE Iftypes: managed
			HE MAC Capabilities (0x000b9a181040):
				+HTC HE Supported
				TWT Requester
				Dynamic BA Fragementation Level: 1
				BSR
				Broadcast TWT
				OM Control
				Maximum A-MPDU Length Exponent: 3
				RX Control Frame to MultiBSS
				A-MSDU in A-MPDU
				OM Control UL MU Data Disable RX
			HE PHY Capabilities: (0x1c604c89ffdb839c110c00):
				HE40/HE80/5GHz
				HE160/5GHz
				HE160/HE80+80/5GHz
				LDPC Coding in Payload
				HE SU PPDU with 1x HE-LTF and 0.8us GI
				STBC Tx <= 80MHz
				STBC Rx <= 80MHz
				Full Bandwidth UL MU-MIMO
				DCM Max Constellation: 1
				DCM Max Constellation Rx: 1
				SU Beamformer
				SU Beamformee
				MU Beamformer
				Beamformee STS <= 80Mhz: 7
				Beamformee STS > 80Mhz: 7
				Sounding Dimensions <= 80Mhz: 3
				Sounding Dimensions > 80Mhz: 3
				Ng = 16 SU Feedback
				Ng = 16 MU Feedback
				Codebook Size SU Feedback
				Codebook Size MU Feedback
				PPE Threshold Present
				HE SU PPDU & HE PPDU 4x HE-LTF 0.8us GI
				Max NC: 3
				STBC Rx > 80MHz
				HE ER SU PPDU 4x HE-LTF 0.8us GI
				HE ER SU PPDU 1x HE-LTF 0.8us GI
				TX 1024-QAM
				RX 1024-QAM
			HE RX MCS and NSS set <= 80 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: MCS 0-11
				4 streams: MCS 0-11
				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: MCS 0-11
				4 streams: MCS 0-11
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
			HE RX MCS and NSS set 160 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: MCS 0-11
				4 streams: MCS 0-11
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
			HE TX MCS and NSS set 160 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: MCS 0-11
				4 streams: MCS 0-11
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
		EHT Iftypes: managed
			EHT MAC Capabilities (0x0000):
			EHT PHY Capabilities: (0x0000000000000000):
			EHT MCS/NSS: (0x):
			EHT bw <= 80 MHz, max NSS for MCS 8-9: Rx=0, Tx=0
			EHT bw <= 80 MHz, max NSS for MCS 10-11: Rx=0, Tx=0
			EHT bw <= 80 MHz, max NSS for MCS 12-13: Rx=0, Tx=0
			EHT bw=160 MHz, max NSS for MCS 8-9: Rx=0, Tx=0
			EHT bw=160 MHz, max NSS for MCS 10-11: Rx=0, Tx=0
			EHT bw=160 MHz, max NSS for MCS 12-13: Rx=0, Tx=0
		HE Iftypes: AP
			HE MAC Capabilities (0x000d9a181040):
				+HTC HE Supported
				TWT Responder
				Dynamic BA Fragementation Level: 1
				BSR
				Broadcast TWT
				OM Control
				Maximum A-MPDU Length Exponent: 3
				RX Control Frame to MultiBSS
				A-MSDU in A-MPDU
				OM Control UL MU Data Disable RX
			HE PHY Capabilities: (0x1c604c88ffdb839c110c00):
				HE40/HE80/5GHz
				HE160/5GHz
				HE160/HE80+80/5GHz
				LDPC Coding in Payload
				HE SU PPDU with 1x HE-LTF and 0.8us GI
				STBC Tx <= 80MHz
				STBC Rx <= 80MHz
				Full Bandwidth UL MU-MIMO
				DCM Max Constellation Rx: 1
				SU Beamformer
				SU Beamformee
				MU Beamformer
				Beamformee STS <= 80Mhz: 7
				Beamformee STS > 80Mhz: 7
				Sounding Dimensions <= 80Mhz: 3
				Sounding Dimensions > 80Mhz: 3
				Ng = 16 SU Feedback
				Ng = 16 MU Feedback
				Codebook Size SU Feedback
				Codebook Size MU Feedback
				PPE Threshold Present
				HE SU PPDU & HE PPDU 4x HE-LTF 0.8us GI
				Max NC: 3
				STBC Rx > 80MHz
				HE ER SU PPDU 4x HE-LTF 0.8us GI
				HE ER SU PPDU 1x HE-LTF 0.8us GI
				TX 1024-QAM
				RX 1024-QAM
			HE RX MCS and NSS set <= 80 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: MCS 0-11
				4 streams: MCS 0-11
				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: MCS 0-11
				4 streams: MCS 0-11
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
			HE RX MCS and NSS set 160 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: MCS 0-11
				4 streams: MCS 0-11
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
			HE TX MCS and NSS set 160 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: MCS 0-11
				4 streams: MCS 0-11
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
		EHT Iftypes: AP
			EHT MAC Capabilities (0x0000):
			EHT PHY Capabilities: (0x0000000000000000):
			EHT MCS/NSS: (0x):
			EHT bw <= 80 MHz, max NSS for MCS 8-9: Rx=0, Tx=0
			EHT bw <= 80 MHz, max NSS for MCS 10-11: Rx=0, Tx=0
			EHT bw <= 80 MHz, max NSS for MCS 12-13: Rx=0, Tx=0
			EHT bw=160 MHz, max NSS for MCS 8-9: Rx=0, Tx=0
			EHT bw=160 MHz, max NSS for MCS 10-11: Rx=0, Tx=0
			EHT bw=160 MHz, max NSS for MCS 12-13: Rx=0, Tx=0
		HE Iftypes: mesh point
			HE MAC Capabilities (0x00098a081040):
				+HTC HE Supported
				Dynamic BA Fragementation Level: 1
				BSR
				OM Control
				Maximum A-MPDU Length Exponent: 1
				RX Control Frame to MultiBSS
				A-MSDU in A-MPDU
				OM Control UL MU Data Disable RX
			HE PHY Capabilities: (0x1c600c80fd5b811c100000):
				HE40/HE80/5GHz
				HE160/5GHz
				HE160/HE80+80/5GHz
				LDPC Coding in Payload
				HE SU PPDU with 1x HE-LTF and 0.8us GI
				STBC Tx <= 80MHz
				STBC Rx <= 80MHz
				SU Beamformer
				SU Beamformee
				Beamformee STS <= 80Mhz: 7
				Beamformee STS > 80Mhz: 7
				Sounding Dimensions <= 80Mhz: 3
				Sounding Dimensions > 80Mhz: 3
				Ng = 16 SU Feedback
				Codebook Size SU Feedback
				PPE Threshold Present
				HE SU PPDU & HE PPDU 4x HE-LTF 0.8us GI
				Max NC: 3
				HE ER SU PPDU 1x HE-LTF 0.8us GI
			HE RX MCS and NSS set <= 80 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: MCS 0-11
				4 streams: MCS 0-11
				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: MCS 0-11
				4 streams: MCS 0-11
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
			HE RX MCS and NSS set 160 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: MCS 0-11
				4 streams: MCS 0-11
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
			HE TX MCS and NSS set 160 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: MCS 0-11
				4 streams: MCS 0-11
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
		EHT Iftypes: mesh point
			EHT MAC Capabilities (0x0000):
			EHT PHY Capabilities: (0x0000000000000000):
			EHT MCS/NSS: (0x):
			EHT bw <= 80 MHz, max NSS for MCS 8-9: Rx=0, Tx=0
			EHT bw <= 80 MHz, max NSS for MCS 10-11: Rx=0, Tx=0
			EHT bw <= 80 MHz, max NSS for MCS 12-13: Rx=0, Tx=0
			EHT bw=160 MHz, max NSS for MCS 8-9: Rx=0, Tx=0
			EHT bw=160 MHz, max NSS for MCS 10-11: Rx=0, Tx=0
			EHT bw=160 MHz, max NSS for MCS 12-13: Rx=0, Tx=0
		Frequencies:
			* 5955 MHz [1] (disabled)
			* 5975 MHz [5] (disabled)
			* 5995 MHz [9] (disabled)
			* 6015 MHz [13] (disabled)
			* 6035 MHz [17] (disabled)
			* 6055 MHz [21] (disabled)
			* 6075 MHz [25] (disabled)
			* 6095 MHz [29] (disabled)
			* 6115 MHz [33] (30.0 dBm)
			* 6135 MHz [37] (30.0 dBm)
			* 6155 MHz [41] (30.0 dBm)
			* 6175 MHz [45] (30.0 dBm)
			* 6195 MHz [49] (30.0 dBm)
			* 6215 MHz [53] (30.0 dBm)
			* 6235 MHz [57] (30.0 dBm)
			* 6255 MHz [61] (30.0 dBm)
			* 6275 MHz [65] (30.0 dBm)
			* 6295 MHz [69] (30.0 dBm)
			* 6315 MHz [73] (30.0 dBm)
			* 6335 MHz [77] (30.0 dBm)
			* 6355 MHz [81] (30.0 dBm)
			* 6375 MHz [85] (30.0 dBm)
			* 6395 MHz [89] (30.0 dBm)
			* 6415 MHz [93] (30.0 dBm)
			* 6435 MHz [97] (30.0 dBm)
			* 6455 MHz [101] (30.0 dBm)
			* 6475 MHz [105] (30.0 dBm)
			* 6495 MHz [109] (30.0 dBm)
			* 6515 MHz [113] (30.0 dBm)
			* 6535 MHz [117] (30.0 dBm)
			* 6555 MHz [121] (30.0 dBm)
			* 6575 MHz [125] (30.0 dBm)
			* 6595 MHz [129] (30.0 dBm)
			* 6615 MHz [133] (30.0 dBm)
			* 6635 MHz [137] (30.0 dBm)
			* 6655 MHz [141] (30.0 dBm)
			* 6675 MHz [145] (30.0 dBm)
			* 6695 MHz [149] (30.0 dBm)
			* 6715 MHz [153] (30.0 dBm)
			* 6735 MHz [157] (30.0 dBm)
			* 6755 MHz [161] (30.0 dBm)
			* 6775 MHz [165] (30.0 dBm)
			* 6795 MHz [169] (30.0 dBm)
			* 6815 MHz [173] (30.0 dBm)
			* 6835 MHz [177] (30.0 dBm)
			* 6855 MHz [181] (30.0 dBm)
			* 6875 MHz [185] (30.0 dBm)
			* 6895 MHz [189] (30.0 dBm)
			* 6915 MHz [193] (30.0 dBm)
			* 6935 MHz [197] (30.0 dBm)
			* 6955 MHz [201] (30.0 dBm)
			* 6975 MHz [205] (30.0 dBm)
			* 6995 MHz [209] (30.0 dBm)
			* 7015 MHz [213] (30.0 dBm)
			* 7035 MHz [217] (30.0 dBm)
			* 7055 MHz [221] (30.0 dBm)
			* 7075 MHz [225] (30.0 dBm)
			* 7095 MHz [229] (30.0 dBm)
			* 7115 MHz [233] (disabled)
			* 5935 MHz [2] (disabled)
	valid interface combinations:
		 * #{ managed } <= 1, #{ AP, mesh point } <= 16,
		   total <= 16, #channels <= 1, STA/AP BI must match, radar detect widths: { 20 MHz (no HT), 20 MHz, 40 MHz, 80 MHz, 80+80 MHz, 160 MHz }

	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
	max # scan plans: 1
	max scan plan interval: -1
	max scan plan iterations: 0
	Maximum associated stations in AP mode: 128
	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
		* [ ACK_SIGNAL_SUPPORT ]: ack signal level support
		* [ TXQS ]: FQ-CoDel-enabled intermediate TXQs
		* [ ENABLE_FTM_RESPONDER ]: enable FTM (Fine Time Measurement) responder
		* [ STA_TX_PWR ]: TX power control per station
		* [ CONTROL_PORT_NO_PREAUTH ]: disable pre-auth over nl80211 control port support
		* [ SCAN_FREQ_KHZ ]: scan on kHz frequency support
		* [ CONTROL_PORT_OVER_NL80211_TX_STATUS ]: tx status for nl80211 control port support
		* [ FILS_DISCOVERY ]: FILS discovery frame transmission support
		* [ UNSOL_BCAST_PROBE_RESP ]: unsolicated broadcast probe response transmission support
		* [ BSS_COLOR ]: BSS coloring support
Wiphy phy1
	wiphy index: 1
	max # scan SSIDs: 16
	max scan IEs length: 152 bytes
	max # sched scan SSIDs: 0
	max # match sets: 0
	Retry short limit: 7
	Retry long limit: 4
	Coverage class: 0 (up to 0m)
	Device supports AP-side u-APSD.
	Available Antennas: TX 0xf RX 0xf
	Configured Antennas: TX 0xf RX 0xf
	Supported interface modes:
		 * managed
		 * AP
		 * monitor
		 * mesh point
	Band 1:
		Capabilities: 0x11ef
			RX LDPC
			HT20/HT40
			SM Power Save disabled
			RX HT20 SGI
			RX HT40 SGI
			TX STBC
			RX STBC 1-stream
			Max AMSDU length: 3839 bytes
			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-31
		HE Iftypes: managed
			HE MAC Capabilities (0x000b9a180040):
				+HTC HE Supported
				TWT Requester
				Dynamic BA Fragementation Level: 1
				BSR
				Broadcast TWT
				OM Control
				Maximum A-MPDU Length Exponent: 3
				RX Control Frame to MultiBSS
				A-MSDU in A-MPDU
			HE PHY Capabilities: (0x02600c897fc3839c010c00):
				HE40/2.4GHz
				LDPC Coding in Payload
				HE SU PPDU with 1x HE-LTF and 0.8us GI
				STBC Tx <= 80MHz
				STBC Rx <= 80MHz
				DCM Max Constellation: 1
				DCM Max Constellation Rx: 1
				SU Beamformer
				SU Beamformee
				MU Beamformer
				Beamformee STS <= 80Mhz: 7
				Beamformee STS > 80Mhz: 3
				Sounding Dimensions <= 80Mhz: 3
				Ng = 16 SU Feedback
				Ng = 16 MU Feedback
				Codebook Size SU Feedback
				Codebook Size MU Feedback
				PPE Threshold Present
				HE SU PPDU & HE PPDU 4x HE-LTF 0.8us GI
				Max NC: 3
				STBC Rx > 80MHz
				HE ER SU PPDU 4x HE-LTF 0.8us GI
				TX 1024-QAM
				RX 1024-QAM
			HE RX MCS and NSS set <= 80 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: MCS 0-11
				4 streams: MCS 0-11
				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: MCS 0-11
				4 streams: MCS 0-11
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
			PPE Threshold 0x1b 0x1c 0xc7 0x71 0x1c 0xc7 0x71 
		EHT Iftypes: managed
			EHT MAC Capabilities (0x0000):
			EHT PHY Capabilities: (0x0000000000000000):
			EHT MCS/NSS: (0x):
			EHT bw=20 MHz, max NSS for MCS 0-7: Rx=0, Tx=0
			EHT bw=20 MHz, max NSS for MCS 8-9: Rx=0, Tx=0
			EHT bw=20 MHz, max NSS for MCS 10-11: Rx=0, Tx=0
			EHT bw=20 MHz, max NSS for MCS 12-13: Rx=0, Tx=0
		HE Iftypes: AP
			HE MAC Capabilities (0x000d9a180040):
				+HTC HE Supported
				TWT Responder
				Dynamic BA Fragementation Level: 1
				BSR
				Broadcast TWT
				OM Control
				Maximum A-MPDU Length Exponent: 3
				RX Control Frame to MultiBSS
				A-MSDU in A-MPDU
			HE PHY Capabilities: (0x02600c887fc3839c010c00):
				HE40/2.4GHz
				LDPC Coding in Payload
				HE SU PPDU with 1x HE-LTF and 0.8us GI
				STBC Tx <= 80MHz
				STBC Rx <= 80MHz
				DCM Max Constellation Rx: 1
				SU Beamformer
				SU Beamformee
				MU Beamformer
				Beamformee STS <= 80Mhz: 7
				Beamformee STS > 80Mhz: 3
				Sounding Dimensions <= 80Mhz: 3
				Ng = 16 SU Feedback
				Ng = 16 MU Feedback
				Codebook Size SU Feedback
				Codebook Size MU Feedback
				PPE Threshold Present
				HE SU PPDU & HE PPDU 4x HE-LTF 0.8us GI
				Max NC: 3
				STBC Rx > 80MHz
				HE ER SU PPDU 4x HE-LTF 0.8us GI
				TX 1024-QAM
				RX 1024-QAM
			HE RX MCS and NSS set <= 80 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: MCS 0-11
				4 streams: MCS 0-11
				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: MCS 0-11
				4 streams: MCS 0-11
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
			PPE Threshold 0x1b 0x1c 0xc7 0x71 0x1c 0xc7 0x71 
		EHT Iftypes: AP
			EHT MAC Capabilities (0x0000):
			EHT PHY Capabilities: (0x0000000000000000):
			EHT MCS/NSS: (0x):
			EHT bw=20 MHz, max NSS for MCS 0-7: Rx=0, Tx=0
			EHT bw=20 MHz, max NSS for MCS 8-9: Rx=0, Tx=0
			EHT bw=20 MHz, max NSS for MCS 10-11: Rx=0, Tx=0
			EHT bw=20 MHz, max NSS for MCS 12-13: Rx=0, Tx=0
		HE Iftypes: mesh point
			HE MAC Capabilities (0x00098a080040):
				+HTC HE Supported
				Dynamic BA Fragementation Level: 1
				BSR
				OM Control
				Maximum A-MPDU Length Exponent: 1
				RX Control Frame to MultiBSS
				A-MSDU in A-MPDU
			HE PHY Capabilities: (0x02600c807d43811c000000):
				HE40/2.4GHz
				LDPC Coding in Payload
				HE SU PPDU with 1x HE-LTF and 0.8us GI
				STBC Tx <= 80MHz
				STBC Rx <= 80MHz
				SU Beamformer
				SU Beamformee
				Beamformee STS <= 80Mhz: 7
				Beamformee STS > 80Mhz: 3
				Sounding Dimensions <= 80Mhz: 3
				Ng = 16 SU Feedback
				Codebook Size SU Feedback
				PPE Threshold Present
				HE SU PPDU & HE PPDU 4x HE-LTF 0.8us GI
				Max NC: 3
			HE RX MCS and NSS set <= 80 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: MCS 0-11
				4 streams: MCS 0-11
				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: MCS 0-11
				4 streams: MCS 0-11
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
			PPE Threshold 0x1b 0x1c 0xc7 0x71 0x1c 0xc7 0x71 
		EHT Iftypes: mesh point
			EHT MAC Capabilities (0x0000):
			EHT PHY Capabilities: (0x0000000000000000):
			EHT MCS/NSS: (0x):
			EHT bw=20 MHz, max NSS for MCS 0-7: Rx=0, Tx=0
			EHT bw=20 MHz, max NSS for MCS 8-9: Rx=0, Tx=0
			EHT bw=20 MHz, max NSS for MCS 10-11: Rx=0, Tx=0
			EHT bw=20 MHz, max NSS for MCS 12-13: Rx=0, Tx=0
		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)
	valid interface combinations:
		 * #{ managed } <= 1, #{ AP, mesh point } <= 16,
		   total <= 16, #channels <= 1, STA/AP BI must match, radar detect widths: { 20 MHz (no HT), 20 MHz, 40 MHz, 80 MHz, 80+80 MHz, 160 MHz }

	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
	max # scan plans: 1
	max scan plan interval: -1
	max scan plan iterations: 0
	Maximum associated stations in AP mode: 512
	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
		* [ ACK_SIGNAL_SUPPORT ]: ack signal level support
		* [ TXQS ]: FQ-CoDel-enabled intermediate TXQs
		* [ ENABLE_FTM_RESPONDER ]: enable FTM (Fine Time Measurement) responder
		* [ STA_TX_PWR ]: TX power control per station
		* [ CONTROL_PORT_NO_PREAUTH ]: disable pre-auth over nl80211 control port support
		* [ SCAN_FREQ_KHZ ]: scan on kHz frequency support
		* [ CONTROL_PORT_OVER_NL80211_TX_STATUS ]: tx status for nl80211 control port support
		* [ BSS_COLOR ]: BSS coloring support
Wiphy phy0
	wiphy index: 0
	max # scan SSIDs: 16
	max scan IEs length: 142 bytes
	max # sched scan SSIDs: 0
	max # match sets: 0
	Retry short limit: 7
	Retry long limit: 4
	Coverage class: 0 (up to 0m)
	Device supports AP-side u-APSD.
	Available Antennas: TX 0xf0 RX 0xf0
	Configured Antennas: TX 0xf0 RX 0xf0
	Supported interface modes:
		 * managed
		 * AP
		 * monitor
		 * mesh point
	Band 2:
		Capabilities: 0x19ef
			RX LDPC
			HT20/HT40
			SM Power Save disabled
			RX HT20 SGI
			RX HT40 SGI
			TX STBC
			RX STBC 1-stream
			Max AMSDU length: 7935 bytes
			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-31
		VHT Capabilities (0x339b79fa):
			Max MPDU length: 11454
			Supported Channel Width: 160 MHz, 80+80 MHz
			RX LDPC
			short GI (80 MHz)
			short GI (160/80+80 MHz)
			TX STBC
			SU Beamformer
			SU Beamformee
			MU Beamformer
			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: MCS 0-9
			4 streams: MCS 0-9
			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: MCS 0-9
			4 streams: MCS 0-9
			5 streams: not supported
			6 streams: not supported
			7 streams: not supported
			8 streams: not supported
		VHT TX highest supported: 0 Mbps
		VHT extended NSS: supported
		HE Iftypes: managed
			HE MAC Capabilities (0x000b9a181040):
				+HTC HE Supported
				TWT Requester
				Dynamic BA Fragementation Level: 1
				BSR
				Broadcast TWT
				OM Control
				Maximum A-MPDU Length Exponent: 3
				RX Control Frame to MultiBSS
				A-MSDU in A-MPDU
				OM Control UL MU Data Disable RX
			HE PHY Capabilities: (0x1c604c897fdb839c010c00):
				HE40/HE80/5GHz
				HE160/5GHz
				HE160/HE80+80/5GHz
				LDPC Coding in Payload
				HE SU PPDU with 1x HE-LTF and 0.8us GI
				STBC Tx <= 80MHz
				STBC Rx <= 80MHz
				Full Bandwidth UL MU-MIMO
				DCM Max Constellation: 1
				DCM Max Constellation Rx: 1
				SU Beamformer
				SU Beamformee
				MU Beamformer
				Beamformee STS <= 80Mhz: 7
				Beamformee STS > 80Mhz: 3
				Sounding Dimensions <= 80Mhz: 3
				Sounding Dimensions > 80Mhz: 3
				Ng = 16 SU Feedback
				Ng = 16 MU Feedback
				Codebook Size SU Feedback
				Codebook Size MU Feedback
				PPE Threshold Present
				HE SU PPDU & HE PPDU 4x HE-LTF 0.8us GI
				Max NC: 3
				STBC Rx > 80MHz
				HE ER SU PPDU 4x HE-LTF 0.8us GI
				TX 1024-QAM
				RX 1024-QAM
			HE RX MCS and NSS set <= 80 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: MCS 0-11
				4 streams: MCS 0-11
				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: MCS 0-11
				4 streams: MCS 0-11
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
			HE RX MCS and NSS set 160 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: MCS 0-11
				4 streams: MCS 0-11
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
			HE TX MCS and NSS set 160 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: MCS 0-11
				4 streams: MCS 0-11
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
		EHT Iftypes: managed
			EHT MAC Capabilities (0x0000):
			EHT PHY Capabilities: (0x0000000000000000):
			EHT MCS/NSS: (0x):
			EHT bw <= 80 MHz, max NSS for MCS 8-9: Rx=0, Tx=0
			EHT bw <= 80 MHz, max NSS for MCS 10-11: Rx=0, Tx=0
			EHT bw <= 80 MHz, max NSS for MCS 12-13: Rx=0, Tx=0
			EHT bw=160 MHz, max NSS for MCS 8-9: Rx=0, Tx=0
			EHT bw=160 MHz, max NSS for MCS 10-11: Rx=0, Tx=0
			EHT bw=160 MHz, max NSS for MCS 12-13: Rx=0, Tx=0
		HE Iftypes: AP
			HE MAC Capabilities (0x000d9a181040):
				+HTC HE Supported
				TWT Responder
				Dynamic BA Fragementation Level: 1
				BSR
				Broadcast TWT
				OM Control
				Maximum A-MPDU Length Exponent: 3
				RX Control Frame to MultiBSS
				A-MSDU in A-MPDU
				OM Control UL MU Data Disable RX
			HE PHY Capabilities: (0x1c604c887fdb839c010c00):
				HE40/HE80/5GHz
				HE160/5GHz
				HE160/HE80+80/5GHz
				LDPC Coding in Payload
				HE SU PPDU with 1x HE-LTF and 0.8us GI
				STBC Tx <= 80MHz
				STBC Rx <= 80MHz
				Full Bandwidth UL MU-MIMO
				DCM Max Constellation Rx: 1
				SU Beamformer
				SU Beamformee
				MU Beamformer
				Beamformee STS <= 80Mhz: 7
				Beamformee STS > 80Mhz: 3
				Sounding Dimensions <= 80Mhz: 3
				Sounding Dimensions > 80Mhz: 3
				Ng = 16 SU Feedback
				Ng = 16 MU Feedback
				Codebook Size SU Feedback
				Codebook Size MU Feedback
				PPE Threshold Present
				HE SU PPDU & HE PPDU 4x HE-LTF 0.8us GI
				Max NC: 3
				STBC Rx > 80MHz
				HE ER SU PPDU 4x HE-LTF 0.8us GI
				TX 1024-QAM
				RX 1024-QAM
			HE RX MCS and NSS set <= 80 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: MCS 0-11
				4 streams: MCS 0-11
				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: MCS 0-11
				4 streams: MCS 0-11
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
			HE RX MCS and NSS set 160 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: MCS 0-11
				4 streams: MCS 0-11
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
			HE TX MCS and NSS set 160 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: MCS 0-11
				4 streams: MCS 0-11
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
		EHT Iftypes: AP
			EHT MAC Capabilities (0x0000):
			EHT PHY Capabilities: (0x0000000000000000):
			EHT MCS/NSS: (0x):
			EHT bw <= 80 MHz, max NSS for MCS 8-9: Rx=0, Tx=0
			EHT bw <= 80 MHz, max NSS for MCS 10-11: Rx=0, Tx=0
			EHT bw <= 80 MHz, max NSS for MCS 12-13: Rx=0, Tx=0
			EHT bw=160 MHz, max NSS for MCS 8-9: Rx=0, Tx=0
			EHT bw=160 MHz, max NSS for MCS 10-11: Rx=0, Tx=0
			EHT bw=160 MHz, max NSS for MCS 12-13: Rx=0, Tx=0
		HE Iftypes: mesh point
			HE MAC Capabilities (0x00098a081040):
				+HTC HE Supported
				Dynamic BA Fragementation Level: 1
				BSR
				OM Control
				Maximum A-MPDU Length Exponent: 1
				RX Control Frame to MultiBSS
				A-MSDU in A-MPDU
				OM Control UL MU Data Disable RX
			HE PHY Capabilities: (0x1c600c807d5b811c000000):
				HE40/HE80/5GHz
				HE160/5GHz
				HE160/HE80+80/5GHz
				LDPC Coding in Payload
				HE SU PPDU with 1x HE-LTF and 0.8us GI
				STBC Tx <= 80MHz
				STBC Rx <= 80MHz
				SU Beamformer
				SU Beamformee
				Beamformee STS <= 80Mhz: 7
				Beamformee STS > 80Mhz: 3
				Sounding Dimensions <= 80Mhz: 3
				Sounding Dimensions > 80Mhz: 3
				Ng = 16 SU Feedback
				Codebook Size SU Feedback
				PPE Threshold Present
				HE SU PPDU & HE PPDU 4x HE-LTF 0.8us GI
				Max NC: 3
			HE RX MCS and NSS set <= 80 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: MCS 0-11
				4 streams: MCS 0-11
				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: MCS 0-11
				4 streams: MCS 0-11
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
			HE RX MCS and NSS set 160 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: MCS 0-11
				4 streams: MCS 0-11
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
			HE TX MCS and NSS set 160 MHz
				1 streams: MCS 0-11
				2 streams: MCS 0-11
				3 streams: MCS 0-11
				4 streams: MCS 0-11
				5 streams: not supported
				6 streams: not supported
				7 streams: not supported
				8 streams: not supported
		EHT Iftypes: mesh point
			EHT MAC Capabilities (0x0000):
			EHT PHY Capabilities: (0x0000000000000000):
			EHT MCS/NSS: (0x):
			EHT bw <= 80 MHz, max NSS for MCS 8-9: Rx=0, Tx=0
			EHT bw <= 80 MHz, max NSS for MCS 10-11: Rx=0, Tx=0
			EHT bw <= 80 MHz, max NSS for MCS 12-13: Rx=0, Tx=0
			EHT bw=160 MHz, max NSS for MCS 8-9: Rx=0, Tx=0
			EHT bw=160 MHz, max NSS for MCS 10-11: Rx=0, Tx=0
			EHT bw=160 MHz, max NSS for MCS 12-13: Rx=0, Tx=0
		Frequencies:
			* 5180 MHz [36] (30.0 dBm)
			* 5200 MHz [40] (30.0 dBm)
			* 5220 MHz [44] (30.0 dBm)
			* 5240 MHz [48] (30.0 dBm)
			* 5260 MHz [52] (24.0 dBm) (radar detection)
			* 5280 MHz [56] (24.0 dBm) (radar detection)
			* 5300 MHz [60] (24.0 dBm) (radar detection)
			* 5320 MHz [64] (24.0 dBm) (radar detection)
			* 5500 MHz [100] (24.0 dBm) (radar detection)
			* 5520 MHz [104] (24.0 dBm) (radar detection)
			* 5540 MHz [108] (24.0 dBm) (radar detection)
			* 5560 MHz [112] (24.0 dBm) (radar detection)
			* 5580 MHz [116] (24.0 dBm) (radar detection)
			* 5600 MHz [120] (24.0 dBm) (radar detection)
			* 5620 MHz [124] (24.0 dBm) (radar detection)
			* 5640 MHz [128] (24.0 dBm) (radar detection)
			* 5660 MHz [132] (24.0 dBm) (radar detection)
			* 5680 MHz [136] (24.0 dBm) (radar detection)
			* 5700 MHz [140] (24.0 dBm) (radar detection)
			* 5720 MHz [144] (24.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] (disabled)
			* 5865 MHz [173] (disabled)
			* 5885 MHz [177] (disabled)
	valid interface combinations:
		 * #{ managed } <= 1, #{ AP, mesh point } <= 16,
		   total <= 16, #channels <= 1, STA/AP BI must match, radar detect widths: { 20 MHz (no HT), 20 MHz, 40 MHz, 80 MHz, 80+80 MHz, 160 MHz }

	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
	max # scan plans: 1
	max scan plan interval: -1
	max scan plan iterations: 0
	Maximum associated stations in AP mode: 512
	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
		* [ ACK_SIGNAL_SUPPORT ]: ack signal level support
		* [ TXQS ]: FQ-CoDel-enabled intermediate TXQs
		* [ ENABLE_FTM_RESPONDER ]: enable FTM (Fine Time Measurement) responder
		* [ STA_TX_PWR ]: TX power control per station
		* [ CONTROL_PORT_NO_PREAUTH ]: disable pre-auth over nl80211 control port support
		* [ SCAN_FREQ_KHZ ]: scan on kHz frequency support
		* [ CONTROL_PORT_OVER_NL80211_TX_STATUS ]: tx status for nl80211 control port support
		* [ BSS_COLOR ]: BSS coloring support
root@OpenWrt:/# 

Well, BDF regulatory can be outdated, etc.

The fix was for 6G only radios, but AFAIK you also have dedicated 2.4 and 5GHz radios as well, so why would this one be 5+6G as well?
This is the first one actually using the max number of radios IPQ8074 can have via AHB, also first one actually using 6E

The 6e radios was working as second 5g with upstream bdf. It would be cool to have user-controllable optionality for 3rd radio: to make it work as 2nd 5G (like ax9000) or a dedicated 6g one.