> Actions like that have caused great problems in the past, as the > kernel won't allow channel control of a monitor interface at all when > there is a managed interface on the same phy (afaik). > > But just for fun and codepath testing here are two test scenarios: > > Test 1: "iwconfig t2u mode monitor" > Sees nothing on any channel, no packets reported > > Test 2(requested test): "iw phy phy11 interface add t2uhmon type monitor" > Sees nothing on any channel, no packets reported. > Despite having a monitor and managed interface on the same phy, > iwconfig is reporting that the channel is changing as requested. So > perhaps my above "afaik" comment is partially outdated. > > For both tests the interface was not used to connect to any ap prior > to or during testing. > Could you please try following patch? Regards, Lorenzo --- a/drivers/net/wireless/mediatek/mt76/mt76x0/phy.c +++ b/drivers/net/wireless/mediatek/mt76/mt76x0/phy.c @@ -756,11 +756,10 @@ __mt76x0_phy_set_channel(struct mt76x0_dev *dev, /* Vendor driver don't do it */ /* mt76x0_phy_set_tx_power(dev, channel, rf_bw_band); */ + mt76x0_vco_cal(dev, channel); if (scan) - mt76x0_vco_cal(dev, channel); - - mt76x0_mcu_calibrate(dev, MCU_CAL_RXDCOC, 1); + mt76x0_mcu_calibrate(dev, MCU_CAL_RXDCOC, 1); mt76x0_phy_set_chan_pwr(dev, channel); dev->mt76.chandef = *chandef;