View | Details | Raw Unified | Return to bug 208285
Collapse All | Expand All

(-)a/drivers/net/wireless/intel/iwlwifi/mvm/mac80211.c (-4 / +8 lines)
Lines 1513-1522 static void iwl_mvm_abort_channel_switch(struct ieee80211_hw *hw, Link Here
1513
	IWL_DEBUG_MAC80211(mvm, "Abort CSA on mac %d\n", mvmvif->id);
1513
	IWL_DEBUG_MAC80211(mvm, "Abort CSA on mac %d\n", mvmvif->id);
1514
1514
1515
	mutex_lock(&mvm->mutex);
1515
	mutex_lock(&mvm->mutex);
1516
	WARN_ON(iwl_mvm_send_cmd_pdu(mvm,
1516
	if (!fw_has_capa(&mvm->fw->ucode_capa,
1517
				     WIDE_ID(MAC_CONF_GROUP,
1517
			 IWL_UCODE_TLV_CAPA_CHANNEL_SWITCH_CMD))
1518
					     CHANNEL_SWITCH_TIME_EVENT_CMD),
1518
		iwl_mvm_remove_csa_period(mvm, vif);
1519
				     0, sizeof(cmd), &cmd));
1519
	else
1520
		WARN_ON(iwl_mvm_send_cmd_pdu(mvm,
1521
					     WIDE_ID(MAC_CONF_GROUP,
1522
						     CHANNEL_SWITCH_TIME_EVENT_CMD),
1523
					     0, sizeof(cmd), &cmd));
1520
	mutex_unlock(&mvm->mutex);
1524
	mutex_unlock(&mvm->mutex);
1521
1525
1522
	WARN_ON(iwl_mvm_post_channel_switch(hw, vif));
1526
	WARN_ON(iwl_mvm_post_channel_switch(hw, vif));
(-)a/drivers/net/wireless/intel/iwlwifi/mvm/time-event.c (-2 / +24 lines)
Lines 8-14 Link Here
8
 * Copyright(c) 2012 - 2014 Intel Corporation. All rights reserved.
8
 * Copyright(c) 2012 - 2014 Intel Corporation. All rights reserved.
9
 * Copyright(c) 2013 - 2015 Intel Mobile Communications GmbH
9
 * Copyright(c) 2013 - 2015 Intel Mobile Communications GmbH
10
 * Copyright(c) 2017 Intel Deutschland GmbH
10
 * Copyright(c) 2017 Intel Deutschland GmbH
11
 * Copyright(c) 2018 - 2019 Intel Corporation
11
 * Copyright(c) 2018 - 2020 Intel Corporation
12
 *
12
 *
13
 * This program is free software; you can redistribute it and/or modify
13
 * This program is free software; you can redistribute it and/or modify
14
 * it under the terms of version 2 of the GNU General Public License as
14
 * it under the terms of version 2 of the GNU General Public License as
Lines 31-37 Link Here
31
 * Copyright(c) 2012 - 2014 Intel Corporation. All rights reserved.
31
 * Copyright(c) 2012 - 2014 Intel Corporation. All rights reserved.
32
 * Copyright(c) 2013 - 2015 Intel Mobile Communications GmbH
32
 * Copyright(c) 2013 - 2015 Intel Mobile Communications GmbH
33
 * Copyright(c) 2017 Intel Deutschland GmbH
33
 * Copyright(c) 2017 Intel Deutschland GmbH
34
 * Copyright(c) 2018 - 2019 Intel Corporation
34
 * Copyright(c) 2018 - 2020 Intel Corporation
35
 * All rights reserved.
35
 * All rights reserved.
36
 *
36
 *
37
 * Redistribution and use in source and binary forms, with or without
37
 * Redistribution and use in source and binary forms, with or without
Lines 1013-1018 void iwl_mvm_stop_roc(struct iwl_mvm *mvm, struct ieee80211_vif *vif) Link Here
1013
	iwl_mvm_roc_finished(mvm);
1013
	iwl_mvm_roc_finished(mvm);
1014
}
1014
}
1015
1015
1016
void iwl_mvm_remove_csa_period(struct iwl_mvm *mvm,
1017
			       struct ieee80211_vif *vif)
1018
{
1019
	struct iwl_mvm_vif *mvmvif = iwl_mvm_vif_from_mac80211(vif);
1020
	struct iwl_mvm_time_event_data *te_data = &mvmvif->time_event_data;
1021
	u32 id;
1022
1023
	lockdep_assert_held(&mvm->mutex);
1024
1025
	if (!te_data->running)
1026
		return;
1027
1028
	spin_lock_bh(&mvm->time_event_lock);
1029
	id = te_data->id;
1030
	spin_unlock_bh(&mvm->time_event_lock);
1031
1032
	if (id != TE_CHANNEL_SWITCH_PERIOD)
1033
		return;
1034
1035
	iwl_mvm_remove_time_event(mvm, mvmvif, te_data);
1036
}
1037
1016
int iwl_mvm_schedule_csa_period(struct iwl_mvm *mvm,
1038
int iwl_mvm_schedule_csa_period(struct iwl_mvm *mvm,
1017
				struct ieee80211_vif *vif,
1039
				struct ieee80211_vif *vif,
1018
				u32 duration, u32 apply_time)
1040
				u32 duration, u32 apply_time)
(-)a/drivers/net/wireless/intel/iwlwifi/mvm/time-event.h (-3 / +5 lines)
Lines 7-13 Link Here
7
 *
7
 *
8
 * Copyright(c) 2012 - 2014 Intel Corporation. All rights reserved.
8
 * Copyright(c) 2012 - 2014 Intel Corporation. All rights reserved.
9
 * Copyright(c) 2013 - 2014 Intel Mobile Communications GmbH
9
 * Copyright(c) 2013 - 2014 Intel Mobile Communications GmbH
10
 * Copyright (C) 2019 Intel Corporation
10
 * Copyright (C) 2019 - 2020 Intel Corporation
11
 *
11
 *
12
 * This program is free software; you can redistribute it and/or modify
12
 * This program is free software; you can redistribute it and/or modify
13
 * it under the terms of version 2 of the GNU General Public License as
13
 * it under the terms of version 2 of the GNU General Public License as
Lines 29-35 Link Here
29
 *
29
 *
30
 * Copyright(c) 2012 - 2014 Intel Corporation. All rights reserved.
30
 * Copyright(c) 2012 - 2014 Intel Corporation. All rights reserved.
31
 * Copyright(c) 2013 - 2014 Intel Mobile Communications GmbH
31
 * Copyright(c) 2013 - 2014 Intel Mobile Communications GmbH
32
 * Copyright (C) 2019 Intel Corporation
32
 * Copyright (C) 2019 - 2020 Intel Corporation
33
 * All rights reserved.
33
 * All rights reserved.
34
 *
34
 *
35
 * Redistribution and use in source and binary forms, with or without
35
 * Redistribution and use in source and binary forms, with or without
Lines 216-221 void iwl_mvm_te_clear_data(struct iwl_mvm *mvm, Link Here
216
void iwl_mvm_cleanup_roc_te(struct iwl_mvm *mvm);
216
void iwl_mvm_cleanup_roc_te(struct iwl_mvm *mvm);
217
void iwl_mvm_roc_done_wk(struct work_struct *wk);
217
void iwl_mvm_roc_done_wk(struct work_struct *wk);
218
218
219
void iwl_mvm_remove_csa_period(struct iwl_mvm *mvm,
220
			       struct ieee80211_vif *vif);
221
219
/**
222
/**
220
 * iwl_mvm_schedule_csa_period - request channel switch absence period
223
 * iwl_mvm_schedule_csa_period - request channel switch absence period
221
 * @mvm: the mvm component
224
 * @mvm: the mvm component
222
- 

Return to bug 208285