diff options
Diffstat (limited to 'drivers/net')
-rw-r--r-- | drivers/net/wireless/libertas/README | 21 | ||||
-rw-r--r-- | drivers/net/wireless/libertas/debugfs.c | 18 | ||||
-rw-r--r-- | drivers/net/wireless/libertas/scan.c | 20 | ||||
-rw-r--r-- | drivers/net/wireless/libertas/scan.h | 5 |
4 files changed, 11 insertions, 53 deletions
diff --git a/drivers/net/wireless/libertas/README b/drivers/net/wireless/libertas/README index 0b133ce..05cfc29 100644 --- a/drivers/net/wireless/libertas/README +++ b/drivers/net/wireless/libertas/README @@ -201,15 +201,14 @@ setuserscan ssid="[SSID]" specify a SSID filter for the scan keep=[0 or 1] keep the previous scan results (1), discard (0) dur=[scan time] time to scan for each channel in milliseconds - probes=[#] number of probe requests to send on each chan type=[1,2,3] BSS type: 1 (Infra), 2(Adhoc), 3(Any) - Any combination of the above arguments can be supplied on the command line. - If the chan token is absent, a full channel scan will be completed by - the driver. If the dur or probes tokens are absent, the driver default - setting will be used. The bssid and ssid fields, if blank, - will produce an unfiltered scan. The type field will default to 3 (Any) - and the keep field will default to 0 (Discard). + Any combination of the above arguments can be supplied on the command + line. If the chan token is absent, a full channel scan will be + completed by the driver. If dur tokens are absent, the driver default + setting will be used. The bssid and ssid fields, if blank, will + produce an unfiltered scan. The type field will default to 3 (Any) and + the keep field will default to 0 (Discard). Examples: 1) Perform an active scan on channels 1, 6, and 11 in the 'g' band: @@ -230,10 +229,10 @@ setuserscan the current scan table intact, update existing or append new scan data: echo "bssid=00:50:43:20:12:82 keep=1" > setuserscan - 6) Scan channel 6, for all infrastructure networks, sending two probe - requests. Keep the previous scan table intact. Update any duplicate - BSSID/SSID matches with the new scan data: - echo "chan=6g type=1 probes=2 keep=1" > setuserscan + 6) Scan channel 6, for all infrastructure networks. + Keep the previous scan table intact. Update any duplicate BSSID/SSID + matches with the new scan data: + echo "chan=6g type=1 keep=1" > setuserscan All entries in the scan table (not just the new scan data when keep=1) will be displayed upon completion by use of the getscantable ioctl. diff --git a/drivers/net/wireless/libertas/debugfs.c b/drivers/net/wireless/libertas/debugfs.c index de768de..e79236c 100644 --- a/drivers/net/wireless/libertas/debugfs.c +++ b/drivers/net/wireless/libertas/debugfs.c @@ -300,23 +300,6 @@ static int lbs_parse_dur(char *buf, size_t count, return val; } -static void lbs_parse_probes(char *buf, size_t count, - struct lbs_ioctl_user_scan_cfg *scan_cfg) -{ - char *hold; - int val; - - hold = strstr(buf, "probes="); - if (!hold) - return; - hold += 7; - sscanf(hold, "%d", &val); - - scan_cfg->numprobes = val; - - return; -} - static void lbs_parse_type(char *buf, size_t count, struct lbs_ioctl_user_scan_cfg *scan_cfg) { @@ -368,7 +351,6 @@ static ssize_t lbs_setuserscan(struct file *file, scan_cfg->clear_bssid = lbs_parse_clear(buf, count, "clear_bssid="); lbs_parse_ssid(buf, count, scan_cfg); scan_cfg->clear_ssid = lbs_parse_clear(buf, count, "clear_ssid="); - lbs_parse_probes(buf, count, scan_cfg); lbs_parse_type(buf, count, scan_cfg); lbs_scan_networks(priv, scan_cfg, 1); diff --git a/drivers/net/wireless/libertas/scan.c b/drivers/net/wireless/libertas/scan.c index 4e465bb4..de9c548 100644 --- a/drivers/net/wireless/libertas/scan.c +++ b/drivers/net/wireless/libertas/scan.c @@ -41,7 +41,6 @@ //! Maximum memory needed for a lbs_scan_cmd_config with all TLVs at max #define MAX_SCAN_CFG_ALLOC (sizeof(struct lbs_scan_cmd_config) \ - + sizeof(struct mrvlietypes_numprobes) \ + CHAN_TLV_MAX_SIZE \ + SSID_TLV_MAX_SIZE) @@ -385,7 +384,6 @@ void lbs_scan_worker(struct work_struct *work) * - channel list * * If the SSID or BSSID filter is not present, disable/clear the filter. - * If the number of probes is not set, use the adapter default setting * Qualify the channel * * @param priv A pointer to struct lbs_private structure @@ -415,11 +413,9 @@ lbs_scan_setup_scan_config(struct lbs_private *priv, u8 * pfilteredscan, u8 * pscancurrentonly) { - struct mrvlietypes_numprobes *pnumprobestlv; struct mrvlietypes_ssidparamset *pssidtlv; struct lbs_scan_cmd_config *pscancfgout = NULL; u8 *ptlvpos; - u16 numprobes; int chanidx; int scantype; int scandur; @@ -468,9 +464,6 @@ lbs_scan_setup_scan_config(struct lbs_private *priv, pscancfgout->bsstype = puserscanin->bsstype ? puserscanin->bsstype : CMD_BSS_TYPE_ANY; - /* Set the number of probes to send, use adapter setting if unset */ - numprobes = puserscanin->numprobes ? puserscanin->numprobes : 0; - /* * Set the BSSID filter to the incoming configuration, * if non-zero. If not set, it will remain disabled (all zeros). @@ -502,22 +495,11 @@ lbs_scan_setup_scan_config(struct lbs_private *priv, } } else { pscancfgout->bsstype = CMD_BSS_TYPE_ANY; - numprobes = 0; - } - - /* If the input config or adapter has the number of Probes set, add tlv */ - if (numprobes) { - pnumprobestlv = (struct mrvlietypes_numprobes *) ptlvpos; - pnumprobestlv->header.type = cpu_to_le16(TLV_TYPE_NUMPROBES); - pnumprobestlv->header.len = cpu_to_le16(2); - pnumprobestlv->numprobes = cpu_to_le16(numprobes); - - ptlvpos += sizeof(*pnumprobestlv); } /* * Set the output for the channel TLV to the address in the tlv buffer - * past any TLVs that were added in this fuction (SSID, numprobes). + * past any TLVs that were added in this fuction (SSID). * channel TLVs will be added past this for each scan command, preserving * the TLVs that were previously added. */ diff --git a/drivers/net/wireless/libertas/scan.h b/drivers/net/wireless/libertas/scan.h index b231448..e420cd9 100644 --- a/drivers/net/wireless/libertas/scan.h +++ b/drivers/net/wireless/libertas/scan.h @@ -105,11 +105,6 @@ struct lbs_ioctl_user_scan_cfg { */ u8 bsstype; - /** - * @brief Configure the number of probe requests for active chan scans - */ - u8 numprobes; - /** * @brief BSSID filter sent in the firmware command to limit the results */ |