Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 13575
b: refs/heads/master
c: 3b9990c
h: refs/heads/master
i:
  13573: 68a58f1
  13571: 7d9a868
  13567: 033ad91
v: v3
  • Loading branch information
James Ketrenos committed Nov 7, 2005
1 parent cb836eb commit 7888684
Show file tree
Hide file tree
Showing 2 changed files with 36 additions and 27 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 1fe0adb4314009362d28205bbf09f6d758e82002
refs/heads/master: 3b9990cb1751d3d267c0e5c94bff0f155c944c66
61 changes: 35 additions & 26 deletions trunk/drivers/net/wireless/ipw2200.c
Original file line number Diff line number Diff line change
Expand Up @@ -1925,7 +1925,8 @@ static int ipw_send_cmd(struct ipw_priv *priv, struct host_cmd *cmd)
goto exit;
}
spin_unlock_irqrestore(&priv->lock, flags);
}
} else
rc = 0;

if (priv->status & STATUS_RF_KILL_HW) {
IPW_ERROR("Failed to send %s: Aborted due to RF kill switch.\n",
Expand Down Expand Up @@ -7011,9 +7012,9 @@ u8 ipw_qos_current_mode(struct ipw_priv * priv)
/*
* Handle management frame beacon and probe response
*/
static int ipw_qos_handle_probe_reponse(struct ipw_priv *priv,
int active_network,
struct ieee80211_network *network)
static int ipw_qos_handle_probe_response(struct ipw_priv *priv,
int active_network,
struct ieee80211_network *network)
{
u32 size = sizeof(struct ieee80211_qos_parameters);

Expand Down Expand Up @@ -7407,35 +7408,41 @@ static void ipw_bg_qos_activate(void *data)
up(&priv->sem);
}

/*
* Handler for probe responce and beacon frame
*/
static int ipw_handle_management(struct net_device *dev,
struct ieee80211_network *network, u16 type)
static int ipw_handle_probe_response(struct net_device *dev,
struct ieee80211_probe_response *resp,
struct ieee80211_network *network)
{
struct ipw_priv *priv = ieee80211_priv(dev);
int active_network;
int active_network = ((priv->status & STATUS_ASSOCIATED) &&
(network == priv->assoc_network));

if (priv->status & STATUS_ASSOCIATED && network == priv->assoc_network)
active_network = 1;
else
active_network = 0;
ipw_qos_handle_probe_response(priv, active_network, network);

switch (type) {
case IEEE80211_STYPE_PROBE_RESP:
case IEEE80211_STYPE_BEACON:
ipw_qos_handle_probe_reponse(priv, active_network, network);
break;
case IEEE80211_STYPE_ASSOC_RESP:
ipw_qos_association_resp(priv, network);
break;
default:
break;
}
return 0;
}

static int ipw_handle_beacon(struct net_device *dev,
struct ieee80211_beacon *resp,
struct ieee80211_network *network)
{
struct ipw_priv *priv = ieee80211_priv(dev);
int active_network = ((priv->status & STATUS_ASSOCIATED) &&
(network == priv->assoc_network));

ipw_qos_handle_probe_response(priv, active_network, network);

return 0;
}

static int ipw_handle_assoc_response(struct net_device *dev,
struct ieee80211_assoc_response *resp,
struct ieee80211_network *network)
{
struct ipw_priv *priv = ieee80211_priv(dev);
ipw_qos_association_resp(priv, network);
return 0;
}

static int ipw_send_qos_params_command(struct ipw_priv *priv, struct ieee80211_qos_parameters
*qos_param)
{
Expand Down Expand Up @@ -11260,7 +11267,9 @@ static int ipw_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
priv->ieee->is_queue_full = ipw_net_is_queue_full;

#ifdef CONFIG_IPW_QOS
priv->ieee->handle_management = ipw_handle_management;
priv->ieee->handle_probe_response = ipw_handle_beacon;
priv->ieee->handle_beacon = ipw_handle_probe_response;
priv->ieee->handle_assoc_response = ipw_handle_assoc_response;
#endif /* CONFIG_IPW_QOS */

priv->ieee->perfect_rssi = -20;
Expand Down

0 comments on commit 7888684

Please sign in to comment.