From owner-svn-src-head@freebsd.org Mon Sep 19 22:20:48 2016 Return-Path: Delivered-To: svn-src-head@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 3403EBE0FE6; Mon, 19 Sep 2016 22:20:48 +0000 (UTC) (envelope-from ivadasz@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id F38D183A; Mon, 19 Sep 2016 22:20:47 +0000 (UTC) (envelope-from ivadasz@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.37]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id u8JMKlwc074523; Mon, 19 Sep 2016 22:20:47 GMT (envelope-from ivadasz@FreeBSD.org) Received: (from ivadasz@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id u8JMKlbo074521; Mon, 19 Sep 2016 22:20:47 GMT (envelope-from ivadasz@FreeBSD.org) Message-Id: <201609192220.u8JMKlbo074521@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: ivadasz set sender to ivadasz@FreeBSD.org using -f From: =?UTF-8?Q?Imre_Vad=c3=a1sz?= Date: Mon, 19 Sep 2016 22:20:47 +0000 (UTC) To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r306004 - head/sys/dev/iwm X-SVN-Group: head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-src-head@freebsd.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: SVN commit messages for the src tree for head/-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 19 Sep 2016 22:20:48 -0000 Author: ivadasz Date: Mon Sep 19 22:20:46 2016 New Revision: 306004 URL: https://svnweb.freebsd.org/changeset/base/306004 Log: [iwm] Remove deprecated scan API definitions. * This removes deprecated scan API definitions, which have been unused since the upgrade to version 16 firmware in change r303327. * Part of this change matches the header-file changes in Linux git commit 1f9403863c080478ad78247c89b018e95bdfb027. * No functional change. Approved by: adrian (mentor) Differential Revision: https://reviews.freebsd.org/D7937 Modified: head/sys/dev/iwm/if_iwm.c head/sys/dev/iwm/if_iwmreg.h Modified: head/sys/dev/iwm/if_iwm.c ============================================================================== --- head/sys/dev/iwm/if_iwm.c Mon Sep 19 22:16:03 2016 (r306003) +++ head/sys/dev/iwm/if_iwm.c Mon Sep 19 22:20:46 2016 (r306004) @@ -5207,7 +5207,6 @@ iwm_notif_intr(struct iwm_softc *sc) case IWM_PHY_CONTEXT_CMD: case IWM_BINDING_CONTEXT_CMD: case IWM_TIME_EVENT_CMD: - case IWM_SCAN_REQUEST_CMD: case IWM_WIDE_ID(IWM_ALWAYS_LONG_GROUP, IWM_SCAN_CFG_CMD): case IWM_WIDE_ID(IWM_ALWAYS_LONG_GROUP, IWM_SCAN_REQ_UMAC): case IWM_SCAN_OFFLOAD_REQUEST_CMD: Modified: head/sys/dev/iwm/if_iwmreg.h ============================================================================== --- head/sys/dev/iwm/if_iwmreg.h Mon Sep 19 22:16:03 2016 (r306003) +++ head/sys/dev/iwm/if_iwmreg.h Mon Sep 19 22:20:46 2016 (r306004) @@ -1839,11 +1839,9 @@ enum { IWM_REPLY_THERMAL_MNG_BACKOFF = 0x7e, /* Scanning */ - IWM_SCAN_REQUEST_CMD = 0x80, IWM_SCAN_ABORT_CMD = 0x81, IWM_SCAN_START_NOTIFICATION = 0x82, IWM_SCAN_RESULTS_NOTIFICATION = 0x83, - IWM_SCAN_COMPLETE_NOTIFICATION = 0x84, /* NVM */ IWM_NVM_ACCESS_CMD = 0x88, @@ -4767,53 +4765,11 @@ struct iwm_scd_txq_cfg_rsp { /* Masks for iwm_scan_channel.type flags */ #define IWM_SCAN_CHANNEL_TYPE_ACTIVE (1 << 0) #define IWM_SCAN_CHANNEL_NSSIDS(x) (((1 << (x)) - 1) << 1) -#define IWM_SCAN_CHANNEL_NARROW_BAND (1 << 22) /* Max number of IEs for direct SSID scans in a command */ #define IWM_PROBE_OPTION_MAX 20 /** - * struct iwm_scan_channel - entry in IWM_REPLY_SCAN_CMD channel table - * @channel: band is selected by iwm_scan_cmd "flags" field - * @tx_gain: gain for analog radio - * @dsp_atten: gain for DSP - * @active_dwell: dwell time for active scan in TU, typically 5-50 - * @passive_dwell: dwell time for passive scan in TU, typically 20-500 - * @type: type is broken down to these bits: - * bit 0: 0 = passive, 1 = active - * bits 1-20: SSID direct bit map. If any of these bits is set then - * the corresponding SSID IE is transmitted in probe request - * (bit i adds IE in position i to the probe request) - * bit 22: channel width, 0 = regular, 1 = TGj narrow channel - * - * @iteration_count: - * @iteration_interval: - * This struct is used once for each channel in the scan list. - * Each channel can independently select: - * 1) SSID for directed active scans - * 2) Txpower setting (for rate specified within Tx command) - * 3) How long to stay on-channel (behavior may be modified by quiet_time, - * quiet_plcp_th, good_CRC_th) - * - * To avoid uCode errors, make sure the following are true (see comments - * under struct iwm_scan_cmd about max_out_time and quiet_time): - * 1) If using passive_dwell (i.e. passive_dwell != 0): - * active_dwell <= passive_dwell (< max_out_time if max_out_time != 0) - * 2) quiet_time <= active_dwell - * 3) If restricting off-channel time (i.e. max_out_time !=0): - * passive_dwell < max_out_time - * active_dwell < max_out_time - */ -struct iwm_scan_channel { - uint32_t type; - uint16_t channel; - uint16_t iteration_count; - uint32_t iteration_interval; - uint16_t active_dwell; - uint16_t passive_dwell; -} __packed; /* IWM_SCAN_CHANNEL_CONTROL_API_S_VER_1 */ - -/** * struct iwm_ssid_ie - directed scan network information element * * Up to 20 of these may appear in IWM_REPLY_SCAN_CMD, @@ -4828,7 +4784,6 @@ struct iwm_ssid_ie { } __packed; /* IWM_SCAN_DIRECT_SSID_IE_API_S_VER_1 */ /* scan offload */ -#define IWM_MAX_SCAN_CHANNELS 40 #define IWM_SCAN_MAX_BLACKLIST_LEN 64 #define IWM_SCAN_SHORT_BLACKLIST_LEN 16 #define IWM_SCAN_MAX_PROFILES 11 @@ -4844,45 +4799,6 @@ struct iwm_ssid_ie { #define IWM_FAST_SCHED_SCAN_ITERATIONS 3 #define IWM_MAX_SCHED_SCAN_PLANS 2 -/** - * iwm_scan_flags - masks for scan command flags - *@IWM_SCAN_FLAGS_PERIODIC_SCAN: - *@IWM_SCAN_FLAGS_P2P_PUBLIC_ACTION_FRAME_TX: - *@IWM_SCAN_FLAGS_DELAYED_SCAN_LOWBAND: - *@IWM_SCAN_FLAGS_DELAYED_SCAN_HIGHBAND: - *@IWM_SCAN_FLAGS_FRAGMENTED_SCAN: - *@IWM_SCAN_FLAGS_PASSIVE2ACTIVE: use active scan on channels that was active - * in the past hour, even if they are marked as passive. - */ -enum iwm_scan_flags { - IWM_SCAN_FLAGS_PERIODIC_SCAN = (1 << 0), - IWM_SCAN_FLAGS_P2P_PUBLIC_ACTION_FRAME_TX = (1 << 1), - IWM_SCAN_FLAGS_DELAYED_SCAN_LOWBAND = (1 << 2), - IWM_SCAN_FLAGS_DELAYED_SCAN_HIGHBAND = (1 << 3), - IWM_SCAN_FLAGS_FRAGMENTED_SCAN = (1 << 4), - IWM_SCAN_FLAGS_PASSIVE2ACTIVE = (1 << 5), -}; - -/** - * enum iwm_scan_type - Scan types for scan command - * @IWM_SCAN_TYPE_FORCED: - * @IWM_SCAN_TYPE_BACKGROUND: - * @IWM_SCAN_TYPE_OS: - * @IWM_SCAN_TYPE_ROAMING: - * @IWM_SCAN_TYPE_ACTION: - * @IWM_SCAN_TYPE_DISCOVERY: - * @IWM_SCAN_TYPE_DISCOVERY_FORCED: - */ -enum iwm_scan_type { - IWM_SCAN_TYPE_FORCED = 0, - IWM_SCAN_TYPE_BACKGROUND = 1, - IWM_SCAN_TYPE_OS = 2, - IWM_SCAN_TYPE_ROAMING = 3, - IWM_SCAN_TYPE_ACTION = 4, - IWM_SCAN_TYPE_DISCOVERY = 5, - IWM_SCAN_TYPE_DISCOVERY_FORCED = 6, -}; /* IWM_SCAN_ACTIVITY_TYPE_E_VER_1 */ - /* Maximal number of channels to scan */ #define IWM_MAX_NUM_SCAN_CHANNELS 0x24 @@ -5076,52 +4992,6 @@ struct iwm_periodic_scan_complete { uint32_t reserved; } __packed; -/* Response to scan request contains only status with one of these values */ -#define IWM_SCAN_RESPONSE_OK 0x1 -#define IWM_SCAN_RESPONSE_ERROR 0x2 - -/* - * IWM_SCAN_ABORT_CMD = 0x81 - * When scan abort is requested, the command has no fields except the common - * header. The response contains only a status with one of these values. - */ -#define IWM_SCAN_ABORT_POSSIBLE 0x1 -#define IWM_SCAN_ABORT_IGNORED 0x2 /* no pending scans */ - -/* TODO: complete documentation */ -#define IWM_SCAN_OWNER_STATUS 0x1 -#define IWM_MEASURE_OWNER_STATUS 0x2 - -/** - * struct iwm_scan_start_notif - notifies start of scan in the device - * ( IWM_SCAN_START_NOTIFICATION = 0x82 ) - * @tsf_low: TSF timer (lower half) in usecs - * @tsf_high: TSF timer (higher half) in usecs - * @beacon_timer: structured as follows: - * bits 0:19 - beacon interval in usecs - * bits 20:23 - reserved (0) - * bits 24:31 - number of beacons - * @channel: which channel is scanned - * @band: 0 for 5.2 GHz, 1 for 2.4 GHz - * @status: one of *_OWNER_STATUS - */ -struct iwm_scan_start_notif { - uint32_t tsf_low; - uint32_t tsf_high; - uint32_t beacon_timer; - uint8_t channel; - uint8_t band; - uint8_t reserved[2]; - uint32_t status; -} __packed; /* IWM_SCAN_START_NTF_API_S_VER_1 */ - -/* scan results probe_status first bit indicates success */ -#define IWM_SCAN_PROBE_STATUS_OK 0 -#define IWM_SCAN_PROBE_STATUS_TX_FAILED (1 << 0) -/* error statuses combined with TX_FAILED */ -#define IWM_SCAN_PROBE_STATUS_FAIL_TTL (1 << 1) -#define IWM_SCAN_PROBE_STATUS_FAIL_BT (1 << 2) - /* How many statistics are gathered for each channel */ #define IWM_SCAN_RESULTS_STATISTICS 1 @@ -5176,27 +5046,6 @@ struct iwm_scan_results_notif { uint32_t statistics[IWM_SCAN_RESULTS_STATISTICS]; } __packed; /* IWM_SCAN_RESULT_NTF_API_S_VER_2 */ -/** - * struct iwm_scan_complete_notif - notifies end of scanning (all channels) - * ( IWM_SCAN_COMPLETE_NOTIFICATION = 0x84 ) - * @scanned_channels: number of channels scanned (and number of valid results) - * @status: one of IWM_SCAN_COMP_STATUS_* - * @bt_status: BT on/off status - * @last_channel: last channel that was scanned - * @tsf_low: TSF timer (lower half) in usecs - * @tsf_high: TSF timer (higher half) in usecs - * @results: all scan results, only "scanned_channels" of them are valid - */ -struct iwm_scan_complete_notif { - uint8_t scanned_channels; - uint8_t status; - uint8_t bt_status; - uint8_t last_channel; - uint32_t tsf_low; - uint32_t tsf_high; - struct iwm_scan_results_notif results[IWM_MAX_NUM_SCAN_CHANNELS]; -} __packed; /* IWM_SCAN_COMPLETE_NTF_API_S_VER_2 */ - enum iwm_scan_framework_client { IWM_SCAN_CLIENT_SCHED_SCAN = (1 << 0), IWM_SCAN_CLIENT_NETDETECT = (1 << 1), @@ -5204,83 +5053,6 @@ enum iwm_scan_framework_client { }; /** - * struct iwm_scan_offload_cmd - IWM_SCAN_REQUEST_FIXED_PART_API_S_VER_6 - * @scan_flags: see enum iwm_scan_flags - * @channel_count: channels in channel list - * @quiet_time: dwell time, in milisiconds, on quiet channel - * @quiet_plcp_th: quiet channel num of packets threshold - * @good_CRC_th: passive to active promotion threshold - * @rx_chain: RXON rx chain. - * @max_out_time: max uSec to be out of assoceated channel - * @suspend_time: pause scan this long when returning to service channel - * @flags: RXON flags - * @filter_flags: RXONfilter - * @tx_cmd: tx command for active scan; for 2GHz and for 5GHz. - * @direct_scan: list of SSIDs for directed active scan - * @scan_type: see enum iwm_scan_type. - * @rep_count: repetition count for each scheduled scan iteration. - */ -struct iwm_scan_offload_cmd { - uint16_t len; - uint8_t scan_flags; - uint8_t channel_count; - uint16_t quiet_time; - uint16_t quiet_plcp_th; - uint16_t good_CRC_th; - uint16_t rx_chain; - uint32_t max_out_time; - uint32_t suspend_time; - /* IWM_RX_ON_FLAGS_API_S_VER_1 */ - uint32_t flags; - uint32_t filter_flags; - struct iwm_tx_cmd tx_cmd[2]; - /* IWM_SCAN_DIRECT_SSID_IE_API_S_VER_1 */ - struct iwm_ssid_ie direct_scan[IWM_PROBE_OPTION_MAX]; - uint32_t scan_type; - uint32_t rep_count; -} __packed; - -enum iwm_scan_offload_channel_flags { - IWM_SCAN_OFFLOAD_CHANNEL_ACTIVE = (1 << 0), - IWM_SCAN_OFFLOAD_CHANNEL_NARROW = (1 << 22), - IWM_SCAN_OFFLOAD_CHANNEL_FULL = (1 << 24), - IWM_SCAN_OFFLOAD_CHANNEL_PARTIAL = (1 << 25), -}; - -/** - * iwm_scan_channel_cfg - IWM_SCAN_CHANNEL_CFG_S - * @type: bitmap - see enum iwm_scan_offload_channel_flags. - * 0: passive (0) or active (1) scan. - * 1-20: directed scan to i'th ssid. - * 22: channel width configuation - 1 for narrow. - * 24: full scan. - * 25: partial scan. - * @channel_number: channel number 1-13 etc. - * @iter_count: repetition count for the channel. - * @iter_interval: interval between two innteration on one channel. - * @dwell_time: entry 0 - active scan, entry 1 - passive scan. - */ -struct iwm_scan_channel_cfg { - uint32_t type[IWM_MAX_SCAN_CHANNELS]; - uint16_t channel_number[IWM_MAX_SCAN_CHANNELS]; - uint16_t iter_count[IWM_MAX_SCAN_CHANNELS]; - uint32_t iter_interval[IWM_MAX_SCAN_CHANNELS]; - uint8_t dwell_time[IWM_MAX_SCAN_CHANNELS][2]; -} __packed; - -/** - * iwm_scan_offload_cfg - IWM_SCAN_OFFLOAD_CONFIG_API_S - * @scan_cmd: scan command fixed part - * @channel_cfg: scan channel configuration - * @data: probe request frames (one per band) - */ -struct iwm_scan_offload_cfg { - struct iwm_scan_offload_cmd scan_cmd; - struct iwm_scan_channel_cfg channel_cfg; - uint8_t data[0]; -} __packed; - -/** * iwm_scan_offload_blacklist - IWM_SCAN_OFFLOAD_BLACKLIST_S * @ssid: MAC address to filter out * @reported_rssi: AP rssi reported to the host @@ -5345,48 +5117,7 @@ struct iwm_scan_offload_profile_cfg { uint8_t reserved[2]; } __packed; -/** - * iwm_scan_offload_schedule - schedule of scan offload - * @delay: delay between iterations, in seconds. - * @iterations: num of scan iterations - * @full_scan_mul: number of partial scans before each full scan - */ -struct iwm_scan_offload_schedule { - uint16_t delay; - uint8_t iterations; - uint8_t full_scan_mul; -} __packed; - -/* - * iwm_scan_offload_flags - * - * IWM_SCAN_OFFLOAD_FLAG_PASS_ALL: pass all results - no filtering. - * IWM_SCAN_OFFLOAD_FLAG_CACHED_CHANNEL: add cached channels to partial scan. - * IWM_SCAN_OFFLOAD_FLAG_ENERGY_SCAN: use energy based scan before partial scan - * on A band. - */ -enum iwm_scan_offload_flags { - IWM_SCAN_OFFLOAD_FLAG_PASS_ALL = (1 << 0), - IWM_SCAN_OFFLOAD_FLAG_CACHED_CHANNEL = (1 << 2), - IWM_SCAN_OFFLOAD_FLAG_ENERGY_SCAN = (1 << 3), -}; - -/** - * iwm_scan_offload_req - scan offload request command - * @flags: bitmap - enum iwm_scan_offload_flags. - * @watchdog: maximum scan duration in TU. - * @delay: delay in seconds before first iteration. - * @schedule_line: scan offload schedule, for fast and regular scan. - */ -struct iwm_scan_offload_req { - uint16_t flags; - uint16_t watchdog; - uint16_t delay; - uint16_t reserved; - struct iwm_scan_offload_schedule schedule_line[2]; -} __packed; - -enum iwm_scan_offload_compleate_status { +enum iwm_scan_offload_complete_status { IWM_SCAN_OFFLOAD_COMPLETED = 1, IWM_SCAN_OFFLOAD_ABORTED = 2, }; @@ -5413,30 +5144,6 @@ struct iwm_lmac_scan_complete_notif { } __packed; -/** - * iwm_scan_offload_complete - IWM_SCAN_OFFLOAD_COMPLETE_NTF_API_S_VER_1 - * @last_schedule_line: last schedule line executed (fast or regular) - * @last_schedule_iteration: last scan iteration executed before scan abort - * @status: enum iwm_scan_offload_compleate_status - */ -struct iwm_scan_offload_complete { - uint8_t last_schedule_line; - uint8_t last_schedule_iteration; - uint8_t status; - uint8_t reserved; -} __packed; - -/** - * iwm_sched_scan_results - IWM_SCAN_OFFLOAD_MATCH_FOUND_NTF_API_S_VER_1 - * @ssid_bitmap: SSIDs indexes found in this iteration - * @client_bitmap: clients that are active and wait for this notification - */ -struct iwm_sched_scan_results { - uint16_t ssid_bitmap; - uint8_t client_bitmap; - uint8_t reserved; -}; - /* * END mvm/fw-api-scan.h */