Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 0e10b33a authored by David S. Miller's avatar David S. Miller
Browse files
parents b42282e5 4a39e781
Loading
Loading
Loading
Loading
+10 −2
Original line number Diff line number Diff line
@@ -1376,7 +1376,6 @@ static void ath9k_calculate_summary_state(struct ieee80211_hw *hw,

	ath9k_calculate_iter_data(hw, vif, &iter_data);

	ath9k_ps_wakeup(sc);
	/* Set BSSID mask. */
	memcpy(common->bssidmask, iter_data.mask, ETH_ALEN);
	ath_hw_setbssidmask(common);
@@ -1411,7 +1410,6 @@ static void ath9k_calculate_summary_state(struct ieee80211_hw *hw,
	}

	ath9k_hw_set_interrupts(ah, ah->imask);
	ath9k_ps_restore(sc);

	/* Set up ANI */
	if ((iter_data.naps + iter_data.nadhocs) > 0) {
@@ -1457,6 +1455,7 @@ static int ath9k_add_interface(struct ieee80211_hw *hw,
	struct ath_vif *avp = (void *)vif->drv_priv;
	int ret = 0;

	ath9k_ps_wakeup(sc);
	mutex_lock(&sc->mutex);

	switch (vif->type) {
@@ -1503,6 +1502,7 @@ static int ath9k_add_interface(struct ieee80211_hw *hw,
	ath9k_do_vif_add_setup(hw, vif);
out:
	mutex_unlock(&sc->mutex);
	ath9k_ps_restore(sc);
	return ret;
}

@@ -1517,6 +1517,7 @@ static int ath9k_change_interface(struct ieee80211_hw *hw,

	ath_dbg(common, ATH_DBG_CONFIG, "Change Interface\n");
	mutex_lock(&sc->mutex);
	ath9k_ps_wakeup(sc);

	/* See if new interface type is valid. */
	if ((new_type == NL80211_IFTYPE_ADHOC) &&
@@ -1546,6 +1547,7 @@ static int ath9k_change_interface(struct ieee80211_hw *hw,

	ath9k_do_vif_add_setup(hw, vif);
out:
	ath9k_ps_restore(sc);
	mutex_unlock(&sc->mutex);
	return ret;
}
@@ -1558,6 +1560,7 @@ static void ath9k_remove_interface(struct ieee80211_hw *hw,

	ath_dbg(common, ATH_DBG_CONFIG, "Detach Interface\n");

	ath9k_ps_wakeup(sc);
	mutex_lock(&sc->mutex);

	sc->nvifs--;
@@ -1569,6 +1572,7 @@ static void ath9k_remove_interface(struct ieee80211_hw *hw,
	ath9k_calculate_summary_state(hw, NULL);

	mutex_unlock(&sc->mutex);
	ath9k_ps_restore(sc);
}

static void ath9k_enable_ps(struct ath_softc *sc)
@@ -1809,6 +1813,7 @@ static int ath9k_conf_tx(struct ieee80211_hw *hw, u16 queue,

	txq = sc->tx.txq_map[queue];

	ath9k_ps_wakeup(sc);
	mutex_lock(&sc->mutex);

	memset(&qi, 0, sizeof(struct ath9k_tx_queue_info));
@@ -1832,6 +1837,7 @@ static int ath9k_conf_tx(struct ieee80211_hw *hw, u16 queue,
			ath_beaconq_config(sc);

	mutex_unlock(&sc->mutex);
	ath9k_ps_restore(sc);

	return ret;
}
@@ -1894,6 +1900,7 @@ static void ath9k_bss_info_changed(struct ieee80211_hw *hw,
	int slottime;
	int error;

	ath9k_ps_wakeup(sc);
	mutex_lock(&sc->mutex);

	if (changed & BSS_CHANGED_BSSID) {
@@ -1994,6 +2001,7 @@ static void ath9k_bss_info_changed(struct ieee80211_hw *hw,
	}

	mutex_unlock(&sc->mutex);
	ath9k_ps_restore(sc);
}

static u64 ath9k_get_tsf(struct ieee80211_hw *hw)
+1 −0
Original line number Diff line number Diff line
@@ -195,6 +195,7 @@ static struct reg_dmn_pair_mapping regDomainPairs[] = {
	{APL9_WORLD, CTL_ETSI, CTL_ETSI},

	{APL3_FCCA, CTL_FCC, CTL_FCC},
	{APL7_FCCA, CTL_FCC, CTL_FCC},
	{APL1_ETSIC, CTL_FCC, CTL_ETSI},
	{APL2_ETSIC, CTL_FCC, CTL_ETSI},
	{APL2_APLD, CTL_FCC, NO_CTL},
+5 −4
Original line number Diff line number Diff line
config IWLWIFI_LEGACY
	tristate "Intel Wireless Wifi legacy devices"
	depends on PCI && MAC80211
	tristate
	select FW_LOADER
	select NEW_LEDS
	select LEDS_CLASS
@@ -65,7 +64,8 @@ endmenu

config IWL4965
	tristate "Intel Wireless WiFi 4965AGN (iwl4965)"
	depends on IWLWIFI_LEGACY
	depends on PCI && MAC80211
	select IWLWIFI_LEGACY
	---help---
	  This option enables support for

@@ -92,7 +92,8 @@ config IWL4965

config IWL3945
	tristate "Intel PRO/Wireless 3945ABG/BG Network Connection (iwl3945)"
	depends on IWLWIFI_LEGACY
	depends on PCI && MAC80211
	select IWLWIFI_LEGACY
	---help---
	  Select to build the driver supporting the:

+3 −0
Original line number Diff line number Diff line
@@ -530,6 +530,9 @@ static struct iwl_ht_params iwl5000_ht_params = {
struct iwl_cfg iwl5300_agn_cfg = {
	.name = "Intel(R) Ultimate N WiFi Link 5300 AGN",
	IWL_DEVICE_5000,
	/* at least EEPROM 0x11A has wrong info */
	.valid_tx_ant = ANT_ABC,	/* .cfg overwrite */
	.valid_rx_ant = ANT_ABC,	/* .cfg overwrite */
	.ht_params = &iwl5000_ht_params,
};

+8 −1
Original line number Diff line number Diff line
@@ -137,6 +137,7 @@ struct mwl8k_tx_queue {
struct mwl8k_priv {
	struct ieee80211_hw *hw;
	struct pci_dev *pdev;
	int irq;

	struct mwl8k_device_info *device_info;

@@ -3761,9 +3762,11 @@ static int mwl8k_start(struct ieee80211_hw *hw)
	rc = request_irq(priv->pdev->irq, mwl8k_interrupt,
			 IRQF_SHARED, MWL8K_NAME, hw);
	if (rc) {
		priv->irq = -1;
		wiphy_err(hw->wiphy, "failed to register IRQ handler\n");
		return -EIO;
	}
	priv->irq = priv->pdev->irq;

	/* Enable TX reclaim and RX tasklets.  */
	tasklet_enable(&priv->poll_tx_task);
@@ -3800,6 +3803,7 @@ static int mwl8k_start(struct ieee80211_hw *hw)
	if (rc) {
		iowrite32(0, priv->regs + MWL8K_HIU_A2H_INTERRUPT_MASK);
		free_irq(priv->pdev->irq, hw);
		priv->irq = -1;
		tasklet_disable(&priv->poll_tx_task);
		tasklet_disable(&priv->poll_rx_task);
	}
@@ -3818,7 +3822,10 @@ static void mwl8k_stop(struct ieee80211_hw *hw)

	/* Disable interrupts */
	iowrite32(0, priv->regs + MWL8K_HIU_A2H_INTERRUPT_MASK);
	if (priv->irq != -1) {
		free_irq(priv->pdev->irq, hw);
		priv->irq = -1;
	}

	/* Stop finalize join worker */
	cancel_work_sync(&priv->finalize_join_worker);
Loading