aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/hermes.h
diff options
context:
space:
mode:
authorDavid Kilroy <kilroyd@gmail.com>2008-08-21 18:28:05 -0400
committerJohn W. Linville <linville@tuxdriver.com>2008-08-22 19:28:07 -0400
commit23edcc4147ad36f8d55f0eb79c21e245ffb9f211 (patch)
tree20aaa2208d7ba51769639bcedd6be3bc3cd8673c /drivers/net/wireless/hermes.h
parent31afcef385bb8bf528c6fbe05b359af9f456f02a (diff)
orinoco: Add MIC on TX and check on RX
Use the MIC algorithm from the crypto subsystem. Signed-off-by: David Kilroy <kilroyd@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/hermes.h')
-rw-r--r--drivers/net/wireless/hermes.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/drivers/net/wireless/hermes.h b/drivers/net/wireless/hermes.h
index 113f3f6cb2d1..8b13c8fef3dc 100644
--- a/drivers/net/wireless/hermes.h
+++ b/drivers/net/wireless/hermes.h
@@ -184,13 +184,18 @@
184#define HERMES_RXSTAT_ERR (0x0003) 184#define HERMES_RXSTAT_ERR (0x0003)
185#define HERMES_RXSTAT_BADCRC (0x0001) 185#define HERMES_RXSTAT_BADCRC (0x0001)
186#define HERMES_RXSTAT_UNDECRYPTABLE (0x0002) 186#define HERMES_RXSTAT_UNDECRYPTABLE (0x0002)
187#define HERMES_RXSTAT_MIC (0x0010) /* Frame contains MIC */
187#define HERMES_RXSTAT_MACPORT (0x0700) 188#define HERMES_RXSTAT_MACPORT (0x0700)
188#define HERMES_RXSTAT_PCF (0x1000) /* Frame was received in CF period */ 189#define HERMES_RXSTAT_PCF (0x1000) /* Frame was received in CF period */
190#define HERMES_RXSTAT_MIC_KEY_ID (0x1800) /* MIC key used */
189#define HERMES_RXSTAT_MSGTYPE (0xE000) 191#define HERMES_RXSTAT_MSGTYPE (0xE000)
190#define HERMES_RXSTAT_1042 (0x2000) /* RFC-1042 frame */ 192#define HERMES_RXSTAT_1042 (0x2000) /* RFC-1042 frame */
191#define HERMES_RXSTAT_TUNNEL (0x4000) /* bridge-tunnel encoded frame */ 193#define HERMES_RXSTAT_TUNNEL (0x4000) /* bridge-tunnel encoded frame */
192#define HERMES_RXSTAT_WMP (0x6000) /* Wavelan-II Management Protocol frame */ 194#define HERMES_RXSTAT_WMP (0x6000) /* Wavelan-II Management Protocol frame */
193 195
196/* Shift amount for key ID in RXSTAT and TXCTRL */
197#define HERMES_MIC_KEY_ID_SHIFT 11
198
194struct hermes_tx_descriptor { 199struct hermes_tx_descriptor {
195 __le16 status; 200 __le16 status;
196 __le16 reserved1; 201 __le16 reserved1;
@@ -209,6 +214,8 @@ struct hermes_tx_descriptor {
209#define HERMES_TXCTRL_TX_OK (0x0002) /* ?? interrupt on Tx complete */ 214#define HERMES_TXCTRL_TX_OK (0x0002) /* ?? interrupt on Tx complete */
210#define HERMES_TXCTRL_TX_EX (0x0004) /* ?? interrupt on Tx exception */ 215#define HERMES_TXCTRL_TX_EX (0x0004) /* ?? interrupt on Tx exception */
211#define HERMES_TXCTRL_802_11 (0x0008) /* We supply 802.11 header */ 216#define HERMES_TXCTRL_802_11 (0x0008) /* We supply 802.11 header */
217#define HERMES_TXCTRL_MIC (0x0010) /* 802.3 + TKIP */
218#define HERMES_TXCTRL_MIC_KEY_ID (0x1800) /* MIC Key ID mask */
212#define HERMES_TXCTRL_ALT_RTRY (0x0020) 219#define HERMES_TXCTRL_ALT_RTRY (0x0020)
213 220
214/* Inquiry constants and data types */ 221/* Inquiry constants and data types */