diff options
author | David Kilroy <kilroyd@googlemail.com> | 2009-08-05 16:23:30 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2009-08-14 09:12:42 -0400 |
commit | 07542d08ee573b6d8281f38430117b52fccaf50a (patch) | |
tree | a2ad2dd7b1a45a9c81f4e7989e42fc2c1c01226a /drivers/net/wireless/orinoco/wext.c | |
parent | 16e158480d542f3909b5aca8b125af986ae128c1 (diff) |
orinoco: move disassociation to hw.c
This allows the disassociation to be called via cfg80211.
Signed-off-by: David Kilroy <kilroyd@googlemail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/orinoco/wext.c')
-rw-r--r-- | drivers/net/wireless/orinoco/wext.c | 17 |
1 files changed, 4 insertions, 13 deletions
diff --git a/drivers/net/wireless/orinoco/wext.c b/drivers/net/wireless/orinoco/wext.c index 7e18bb404935..f324bf919bc8 100644 --- a/drivers/net/wireless/orinoco/wext.c +++ b/drivers/net/wireless/orinoco/wext.c | |||
@@ -1136,7 +1136,6 @@ static int orinoco_ioctl_set_mlme(struct net_device *dev, | |||
1136 | union iwreq_data *wrqu, char *extra) | 1136 | union iwreq_data *wrqu, char *extra) |
1137 | { | 1137 | { |
1138 | struct orinoco_private *priv = ndev_priv(dev); | 1138 | struct orinoco_private *priv = ndev_priv(dev); |
1139 | hermes_t *hw = &priv->hw; | ||
1140 | struct iw_mlme *mlme = (struct iw_mlme *)extra; | 1139 | struct iw_mlme *mlme = (struct iw_mlme *)extra; |
1141 | unsigned long flags; | 1140 | unsigned long flags; |
1142 | int ret = 0; | 1141 | int ret = 0; |
@@ -1150,19 +1149,11 @@ static int orinoco_ioctl_set_mlme(struct net_device *dev, | |||
1150 | break; | 1149 | break; |
1151 | 1150 | ||
1152 | case IW_MLME_DISASSOC: | 1151 | case IW_MLME_DISASSOC: |
1153 | { | 1152 | |
1154 | struct { | 1153 | ret = orinoco_hw_disassociate(priv, mlme->addr.sa_data, |
1155 | u8 addr[ETH_ALEN]; | 1154 | mlme->reason_code); |
1156 | __le16 reason_code; | ||
1157 | } __attribute__ ((packed)) buf; | ||
1158 | |||
1159 | memcpy(buf.addr, mlme->addr.sa_data, ETH_ALEN); | ||
1160 | buf.reason_code = cpu_to_le16(mlme->reason_code); | ||
1161 | ret = HERMES_WRITE_RECORD(hw, USER_BAP, | ||
1162 | HERMES_RID_CNFDISASSOCIATE, | ||
1163 | &buf); | ||
1164 | break; | 1155 | break; |
1165 | } | 1156 | |
1166 | default: | 1157 | default: |
1167 | ret = -EOPNOTSUPP; | 1158 | ret = -EOPNOTSUPP; |
1168 | } | 1159 | } |