wifi: mt76: mt7996: add sanity checks for background radar trigger
[ Upstream commit ec55d8e7df ]
Check if background radar is enabled or not before manually triggering it,
and also add more checks in radar detected event.
Signed-off-by: StanleyYP Wang <StanleyYP.Wang@mediatek.com>
Signed-off-by: Shayne Chen <shayne.chen@mediatek.com>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
ff6b26be13
commit
547cb99314
@@ -225,6 +225,11 @@ mt7996_radar_trigger(void *data, u64 val)
|
||||
if (val > MT_RX_SEL2)
|
||||
return -EINVAL;
|
||||
|
||||
if (val == MT_RX_SEL2 && !dev->rdd2_phy) {
|
||||
dev_err(dev->mt76.dev, "Background radar is not enabled\n");
|
||||
return -EINVAL;
|
||||
}
|
||||
|
||||
return mt7996_mcu_rdd_cmd(dev, RDD_RADAR_EMULATE,
|
||||
val, 0, 0);
|
||||
}
|
||||
|
||||
@@ -339,7 +339,10 @@ mt7996_mcu_rx_radar_detected(struct mt7996_dev *dev, struct sk_buff *skb)
|
||||
if (r->band_idx >= ARRAY_SIZE(dev->mt76.phys))
|
||||
return;
|
||||
|
||||
if (dev->rdd2_phy && r->band_idx == MT_RX_SEL2)
|
||||
if (r->band_idx == MT_RX_SEL2 && !dev->rdd2_phy)
|
||||
return;
|
||||
|
||||
if (r->band_idx == MT_RX_SEL2)
|
||||
mphy = dev->rdd2_phy->mt76;
|
||||
else
|
||||
mphy = dev->mt76.phys[r->band_idx];
|
||||
|
||||
Reference in New Issue
Block a user