Skip to content

Commit

Permalink
libertas: remove numprobes
Browse files Browse the repository at this point in the history
Remove the ability to specify number of probes via debugfs

Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de>
Acked-by: Dan Williams <dcbw@redhat.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
  • Loading branch information
Holger Schurig authored and David S. Miller committed Jan 28, 2008
1 parent 01affb6 commit dd1d12d
Show file tree
Hide file tree
Showing 4 changed files with 11 additions and 53 deletions.
21 changes: 10 additions & 11 deletions drivers/net/wireless/libertas/README
Original file line number Diff line number Diff line change
Expand Up @@ -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:
Expand All @@ -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.
Expand Down
18 changes: 0 additions & 18 deletions drivers/net/wireless/libertas/debugfs.c
Original file line number Diff line number Diff line change
Expand Up @@ -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)
{
Expand Down Expand Up @@ -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);
Expand Down
20 changes: 1 addition & 19 deletions drivers/net/wireless/libertas/scan.c
Original file line number Diff line number Diff line change
Expand Up @@ -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)

Expand Down Expand Up @@ -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
Expand Down Expand Up @@ -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;
Expand Down Expand Up @@ -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).
Expand Down Expand Up @@ -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.
*/
Expand Down
5 changes: 0 additions & 5 deletions drivers/net/wireless/libertas/scan.h
Original file line number Diff line number Diff line change
Expand Up @@ -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
*/
Expand Down

0 comments on commit dd1d12d

Please sign in to comment.