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

Commit 266ab689 authored by Luca Coelho's avatar Luca Coelho
Browse files

iwlwifi: mvm: remove dead gscan code



There was a bunch of code to support gscan which has never been used.
Remove it all to cleanup and get rid of a lot of dead code.

Signed-off-by: default avatarLuca Coelho <luciano.coelho@intel.com>
parent f137c097
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -14,7 +14,6 @@ iwlwifi-$(CONFIG_IWLMVM) += cfg/7000.o cfg/8000.o cfg/9000.o cfg/22000.o
iwlwifi-objs		+= iwl-trans.o
iwlwifi-objs		+= fw/notif-wait.o
iwlwifi-$(CONFIG_IWLMVM) += fw/paging.o fw/smem.o fw/init.o fw/dbg.o
iwlwifi-$(CONFIG_IWLMVM) += fw/common_rx.o
iwlwifi-$(CONFIG_ACPI) += fw/acpi.o
iwlwifi-$(CONFIG_IWLWIFI_DEBUGFS) += fw/debugfs.o

+1 −36
Original line number Diff line number Diff line
@@ -321,7 +321,7 @@ typedef unsigned int __bitwise iwl_ucode_tlv_capa_t;
 *	IWL_UCODE_TLV_API_WIFI_MCC_UPDATE. When either is set, multi-source LAR
 *	is supported.
 * @IWL_UCODE_TLV_CAPA_BT_COEX_RRC: supports BT Coex RRC
 * @IWL_UCODE_TLV_CAPA_GSCAN_SUPPORT: supports gscan
 * @IWL_UCODE_TLV_CAPA_GSCAN_SUPPORT: supports gscan (no longer used)
 * @IWL_UCODE_TLV_CAPA_STA_PM_NOTIF: firmware will send STA PM notification
 * @IWL_UCODE_TLV_CAPA_TLC_OFFLOAD: firmware implements rate scaling algorithm
 * @IWL_UCODE_TLV_CAPA_DYNAMIC_QUOTA: firmware implements quota related
@@ -892,39 +892,4 @@ struct iwl_fw_dbg_conf_tlv {
	struct iwl_fw_dbg_conf_hcmd hcmd;
} __packed;

/**
 * struct iwl_fw_gscan_capabilities - gscan capabilities supported by FW
 * @max_scan_cache_size: total space allocated for scan results (in bytes).
 * @max_scan_buckets: maximum number of channel buckets.
 * @max_ap_cache_per_scan: maximum number of APs that can be stored per scan.
 * @max_rssi_sample_size: number of RSSI samples used for averaging RSSI.
 * @max_scan_reporting_threshold: max possible report threshold. in percentage.
 * @max_hotlist_aps: maximum number of entries for hotlist APs.
 * @max_significant_change_aps: maximum number of entries for significant
 *	change APs.
 * @max_bssid_history_entries: number of BSSID/RSSI entries that the device can
 *	hold.
 * @max_hotlist_ssids: maximum number of entries for hotlist SSIDs.
 * @max_number_epno_networks: max number of epno entries.
 * @max_number_epno_networks_by_ssid: max number of epno entries if ssid is
 *	specified.
 * @max_number_of_white_listed_ssid: max number of white listed SSIDs.
 * @max_number_of_black_listed_ssid: max number of black listed SSIDs.
 */
struct iwl_fw_gscan_capabilities {
	__le32 max_scan_cache_size;
	__le32 max_scan_buckets;
	__le32 max_ap_cache_per_scan;
	__le32 max_rssi_sample_size;
	__le32 max_scan_reporting_threshold;
	__le32 max_hotlist_aps;
	__le32 max_significant_change_aps;
	__le32 max_bssid_history_entries;
	__le32 max_hotlist_ssids;
	__le32 max_number_epno_networks;
	__le32 max_number_epno_networks_by_ssid;
	__le32 max_number_of_white_listed_ssid;
	__le32 max_number_of_black_listed_ssid;
} __packed;

#endif  /* __iwl_fw_file_h__ */
+0 −36
Original line number Diff line number Diff line
@@ -192,41 +192,6 @@ struct iwl_fw_cscheme_list {
	struct iwl_fw_cipher_scheme cs[];
} __packed;

/**
 * struct iwl_gscan_capabilities - gscan capabilities supported by FW
 * @max_scan_cache_size: total space allocated for scan results (in bytes).
 * @max_scan_buckets: maximum number of channel buckets.
 * @max_ap_cache_per_scan: maximum number of APs that can be stored per scan.
 * @max_rssi_sample_size: number of RSSI samples used for averaging RSSI.
 * @max_scan_reporting_threshold: max possible report threshold. in percentage.
 * @max_hotlist_aps: maximum number of entries for hotlist APs.
 * @max_significant_change_aps: maximum number of entries for significant
 *	change APs.
 * @max_bssid_history_entries: number of BSSID/RSSI entries that the device can
 *	hold.
 * @max_hotlist_ssids: maximum number of entries for hotlist SSIDs.
 * @max_number_epno_networks: max number of epno entries.
 * @max_number_epno_networks_by_ssid: max number of epno entries if ssid is
 *	specified.
 * @max_number_of_white_listed_ssid: max number of white listed SSIDs.
 * @max_number_of_black_listed_ssid: max number of black listed SSIDs.
 */
struct iwl_gscan_capabilities {
	u32 max_scan_cache_size;
	u32 max_scan_buckets;
	u32 max_ap_cache_per_scan;
	u32 max_rssi_sample_size;
	u32 max_scan_reporting_threshold;
	u32 max_hotlist_aps;
	u32 max_significant_change_aps;
	u32 max_bssid_history_entries;
	u32 max_hotlist_ssids;
	u32 max_number_epno_networks;
	u32 max_number_epno_networks_by_ssid;
	u32 max_number_of_white_listed_ssid;
	u32 max_number_of_black_listed_ssid;
};

/**
 * enum iwl_fw_type - iwlwifi firmware type
 * @IWL_FW_DVM: DVM firmware
@@ -298,7 +263,6 @@ struct iwl_fw {
	size_t n_dbg_mem_tlv;
	size_t dbg_trigger_tlv_len[FW_DBG_TRIGGER_MAX];
	u8 dbg_dest_reg_num;
	struct iwl_gscan_capabilities gscan_capa;
	u32 dbg_dump_mask;
};

+1 −53
Original line number Diff line number Diff line
@@ -402,35 +402,6 @@ static int iwl_store_cscheme(struct iwl_fw *fw, const u8 *data, const u32 len)
	return 0;
}

static void iwl_store_gscan_capa(struct iwl_fw *fw, const u8 *data,
				 const u32 len)
{
	struct iwl_fw_gscan_capabilities *fw_capa = (void *)data;
	struct iwl_gscan_capabilities *capa = &fw->gscan_capa;

	capa->max_scan_cache_size = le32_to_cpu(fw_capa->max_scan_cache_size);
	capa->max_scan_buckets = le32_to_cpu(fw_capa->max_scan_buckets);
	capa->max_ap_cache_per_scan =
		le32_to_cpu(fw_capa->max_ap_cache_per_scan);
	capa->max_rssi_sample_size = le32_to_cpu(fw_capa->max_rssi_sample_size);
	capa->max_scan_reporting_threshold =
		le32_to_cpu(fw_capa->max_scan_reporting_threshold);
	capa->max_hotlist_aps = le32_to_cpu(fw_capa->max_hotlist_aps);
	capa->max_significant_change_aps =
		le32_to_cpu(fw_capa->max_significant_change_aps);
	capa->max_bssid_history_entries =
		le32_to_cpu(fw_capa->max_bssid_history_entries);
	capa->max_hotlist_ssids = le32_to_cpu(fw_capa->max_hotlist_ssids);
	capa->max_number_epno_networks =
		le32_to_cpu(fw_capa->max_number_epno_networks);
	capa->max_number_epno_networks_by_ssid =
		le32_to_cpu(fw_capa->max_number_epno_networks_by_ssid);
	capa->max_number_of_white_listed_ssid =
		le32_to_cpu(fw_capa->max_number_of_white_listed_ssid);
	capa->max_number_of_black_listed_ssid =
		le32_to_cpu(fw_capa->max_number_of_black_listed_ssid);
}

/*
 * Gets uCode section from tlv.
 */
@@ -644,7 +615,6 @@ static int iwl_parse_tlv_firmware(struct iwl_drv *drv,
	u32 build, paging_mem_size;
	int num_of_cpus;
	bool usniffer_req = false;
	bool gscan_capa = false;

	if (len < sizeof(*ucode)) {
		IWL_ERR(drv, "uCode has invalid length: %zd\n", len);
@@ -1090,16 +1060,7 @@ static int iwl_parse_tlv_firmware(struct iwl_drv *drv,
				paging_mem_size;
			break;
		case IWL_UCODE_TLV_FW_GSCAN_CAPA:
			/*
			 * Don't return an error in case of a shorter tlv_len
			 * to enable loading of FW that has an old format
			 * of GSCAN capabilities TLV.
			 */
			if (tlv_len < sizeof(struct iwl_fw_gscan_capabilities))
				break;

			iwl_store_gscan_capa(&drv->fw, tlv_data, tlv_len);
			gscan_capa = true;
			/* ignored */
			break;
		case IWL_UCODE_TLV_FW_MEM_SEG: {
			struct iwl_fw_dbg_mem_seg_tlv *dbg_mem =
@@ -1164,19 +1125,6 @@ static int iwl_parse_tlv_firmware(struct iwl_drv *drv,
		return -EINVAL;
	}

	/*
	 * If ucode advertises that it supports GSCAN but GSCAN
	 * capabilities TLV is not present, or if it has an old format,
	 * warn and continue without GSCAN.
	 */
	if (fw_has_capa(capa, IWL_UCODE_TLV_CAPA_GSCAN_SUPPORT) &&
	    !gscan_capa) {
		IWL_DEBUG_INFO(drv,
			       "GSCAN is supported but capabilities TLV is unavailable\n");
		__clear_bit((__force long)IWL_UCODE_TLV_CAPA_GSCAN_SUPPORT,
			    capa->_capa);
	}

	return 0;

 invalid_tlv_len: