Commit 39834c12 authored by Stanislaw Gruszka's avatar Stanislaw Gruszka Committed by Felix Fietkau
Browse files

mt76x02: minor beaconing init changes



Disable BEACON timer during init and configure interrupt registers
only for mmio devices.

Signed-off-by: default avatarStanislaw Gruszka <sgruszka@redhat.com>
Signed-off-by: default avatarFelix Fietkau <nbd@nbd.name>
parent 0b2d27e5
Loading
Loading
Loading
Loading
+12 −6
Original line number Diff line number Diff line
@@ -670,13 +670,19 @@ void mt76x02_init_beacon_config(struct mt76x02_dev *dev)
{
	int i;

	if (mt76_is_mmio(dev)) {
		/* Fire a pre-TBTT interrupt 8 ms before TBTT */
		mt76_rmw_field(dev, MT_INT_TIMER_CFG, MT_INT_TIMER_CFG_PRE_TBTT,
			       8 << 4);
		mt76_rmw_field(dev, MT_INT_TIMER_CFG, MT_INT_TIMER_CFG_GP_TIMER,
			       MT_DFS_GP_INTERVAL);
		mt76_wr(dev, MT_INT_TIMER_EN, 0);
	}

	mt76_clear(dev, MT_BEACON_TIME_CFG, (MT_BEACON_TIME_CFG_TIMER_EN |
					     MT_BEACON_TIME_CFG_SYNC_MODE |
					     MT_BEACON_TIME_CFG_TBTT_EN |
					     MT_BEACON_TIME_CFG_BEACON_TX));
	mt76_wr(dev, MT_BCN_BYPASS_MASK, 0xffff);

	for (i = 0; i < 8; i++)