Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 90286
b: refs/heads/master
c: d9e9778
h: refs/heads/master
v: v3
  • Loading branch information
Holger Schurig authored and John W. Linville committed Mar 25, 2008
1 parent e5f809c commit e06a0c5
Show file tree
Hide file tree
Showing 6 changed files with 23 additions and 24 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: 835d3ac5e8cbe1fec2c02c7fc662586b30b1f5a8
refs/heads/master: d9e9778c2ac5bac02fc118e9a2954e4c70f88eb6
8 changes: 4 additions & 4 deletions trunk/drivers/net/wireless/libertas/assoc.c
Original file line number Diff line number Diff line change
Expand Up @@ -268,11 +268,11 @@ static int assoc_helper_wep_keys(struct lbs_private *priv,

/* enable/disable the MAC's WEP packet filter */
if (assoc_req->secinfo.wep_enabled)
priv->currentpacketfilter |= CMD_ACT_MAC_WEP_ENABLE;
priv->mac_control |= CMD_ACT_MAC_WEP_ENABLE;
else
priv->currentpacketfilter &= ~CMD_ACT_MAC_WEP_ENABLE;
priv->mac_control &= ~CMD_ACT_MAC_WEP_ENABLE;

ret = lbs_set_mac_packet_filter(priv);
ret = lbs_set_mac_control(priv);
if (ret)
goto out;

Expand Down Expand Up @@ -304,7 +304,7 @@ static int assoc_helper_secinfo(struct lbs_private *priv,
memcpy(&priv->secinfo, &assoc_req->secinfo,
sizeof(struct lbs_802_11_security));

ret = lbs_set_mac_packet_filter(priv);
ret = lbs_set_mac_control(priv);
if (ret)
goto out;

Expand Down
4 changes: 2 additions & 2 deletions trunk/drivers/net/wireless/libertas/cmd.c
Original file line number Diff line number Diff line change
Expand Up @@ -1286,15 +1286,15 @@ int lbs_set_radio_control(struct lbs_private *priv)
return ret;
}

int lbs_set_mac_packet_filter(struct lbs_private *priv)
int lbs_set_mac_control(struct lbs_private *priv)
{
int ret = 0;
struct cmd_ds_mac_control cmd;

lbs_deb_enter(LBS_DEB_CMD);

cmd.hdr.size = cpu_to_le16(sizeof(cmd));
cmd.action = cpu_to_le16(priv->currentpacketfilter);
cmd.action = cpu_to_le16(priv->mac_control);
cmd.reserved = 0;

ret = lbs_cmd_with_response(priv, CMD_MAC_CONTROL, &cmd);
Expand Down
2 changes: 1 addition & 1 deletion trunk/drivers/net/wireless/libertas/decl.h
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ struct net_device;
struct cmd_ctrl_node;
struct cmd_ds_command;

int lbs_set_mac_packet_filter(struct lbs_private *priv);
int lbs_set_mac_control(struct lbs_private *priv);

void lbs_send_tx_feedback(struct lbs_private *priv);

Expand Down
2 changes: 1 addition & 1 deletion trunk/drivers/net/wireless/libertas/dev.h
Original file line number Diff line number Diff line change
Expand Up @@ -252,7 +252,7 @@ struct lbs_private {
struct sk_buff *currenttxskb;

/** NIC Operation characteristics */
u16 currentpacketfilter;
u16 mac_control;
u32 connect_status;
u32 mesh_connect_status;
u16 regioncode;
Expand Down
29 changes: 14 additions & 15 deletions trunk/drivers/net/wireless/libertas/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -581,45 +581,45 @@ static int lbs_copy_multicast_address(struct lbs_private *priv,
static void lbs_set_multicast_list(struct net_device *dev)
{
struct lbs_private *priv = dev->priv;
int oldpacketfilter;
int old_mac_control;
DECLARE_MAC_BUF(mac);

lbs_deb_enter(LBS_DEB_NET);

oldpacketfilter = priv->currentpacketfilter;
old_mac_control = priv->mac_control;

if (dev->flags & IFF_PROMISC) {
lbs_deb_net("enable promiscuous mode\n");
priv->currentpacketfilter |=
priv->mac_control |=
CMD_ACT_MAC_PROMISCUOUS_ENABLE;
priv->currentpacketfilter &=
priv->mac_control &=
~(CMD_ACT_MAC_ALL_MULTICAST_ENABLE |
CMD_ACT_MAC_MULTICAST_ENABLE);
} else {
/* Multicast */
priv->currentpacketfilter &=
priv->mac_control &=
~CMD_ACT_MAC_PROMISCUOUS_ENABLE;

if (dev->flags & IFF_ALLMULTI || dev->mc_count >
MRVDRV_MAX_MULTICAST_LIST_SIZE) {
lbs_deb_net( "enabling all multicast\n");
priv->currentpacketfilter |=
priv->mac_control |=
CMD_ACT_MAC_ALL_MULTICAST_ENABLE;
priv->currentpacketfilter &=
priv->mac_control &=
~CMD_ACT_MAC_MULTICAST_ENABLE;
} else {
priv->currentpacketfilter &=
priv->mac_control &=
~CMD_ACT_MAC_ALL_MULTICAST_ENABLE;

if (!dev->mc_count) {
lbs_deb_net("no multicast addresses, "
"disabling multicast\n");
priv->currentpacketfilter &=
priv->mac_control &=
~CMD_ACT_MAC_MULTICAST_ENABLE;
} else {
int i;

priv->currentpacketfilter |=
priv->mac_control |=
CMD_ACT_MAC_MULTICAST_ENABLE;

priv->nr_of_multicastmacaddr =
Expand All @@ -642,9 +642,8 @@ static void lbs_set_multicast_list(struct net_device *dev)
}
}

if (priv->currentpacketfilter != oldpacketfilter) {
lbs_set_mac_packet_filter(priv);
}
if (priv->mac_control != old_mac_control)
lbs_set_mac_control(priv);

lbs_deb_leave(LBS_DEB_NET);
}
Expand Down Expand Up @@ -945,7 +944,7 @@ static int lbs_setup_firmware(struct lbs_private *priv)
goto done;
}

lbs_set_mac_packet_filter(priv);
lbs_set_mac_control(priv);

ret = lbs_get_data_rate(priv);
if (ret < 0) {
Expand Down Expand Up @@ -1036,7 +1035,7 @@ static int lbs_init_adapter(struct lbs_private *priv)
priv->secinfo.auth_mode = IW_AUTH_ALG_OPEN_SYSTEM;
priv->mode = IW_MODE_INFRA;
priv->curbssparams.channel = DEFAULT_AD_HOC_CHANNEL;
priv->currentpacketfilter = CMD_ACT_MAC_RX_ON | CMD_ACT_MAC_TX_ON;
priv->mac_control = CMD_ACT_MAC_RX_ON | CMD_ACT_MAC_TX_ON;
priv->radioon = RADIO_ON;
priv->auto_rate = 1;
priv->capability = WLAN_CAPABILITY_SHORT_PREAMBLE;
Expand Down

0 comments on commit e06a0c5

Please sign in to comment.