]>
Commit | Line | Data |
---|---|---|
712a4342 DK |
1 | /* Encapsulate basic setting changes on Hermes hardware |
2 | * | |
3 | * See copyright notice in main.c | |
4 | */ | |
5 | #ifndef _ORINOCO_HW_H_ | |
6 | #define _ORINOCO_HW_H_ | |
7 | ||
8 | #include <linux/types.h> | |
9 | #include <linux/wireless.h> | |
c63cdbe8 | 10 | #include <net/cfg80211.h> |
712a4342 DK |
11 | |
12 | /* Hardware BAPs */ | |
13 | #define USER_BAP 0 | |
14 | #define IRQ_BAP 1 | |
15 | ||
16 | /* WEP key sizes */ | |
17 | #define SMALL_KEY_SIZE 5 | |
18 | #define LARGE_KEY_SIZE 13 | |
19 | ||
20 | /* Number of supported channels */ | |
21 | #define NUM_CHANNELS 14 | |
22 | ||
23 | /* Forward declarations */ | |
24 | struct orinoco_private; | |
712a4342 | 25 | |
3414fc3f DK |
26 | int determine_fw_capabilities(struct orinoco_private *priv, char *fw_name, |
27 | size_t fw_name_len, u32 *hw_ver); | |
e9e3d010 | 28 | int orinoco_hw_read_card_settings(struct orinoco_private *priv, u8 *dev_addr); |
42a51b93 | 29 | int orinoco_hw_allocate_fid(struct orinoco_private *priv); |
712a4342 DK |
30 | int orinoco_get_bitratemode(int bitrate, int automatic); |
31 | void orinoco_get_ratemode_cfg(int ratemode, int *bitrate, int *automatic); | |
32 | ||
721aa2f7 | 33 | int orinoco_hw_program_rids(struct orinoco_private *priv); |
712a4342 DK |
34 | int orinoco_hw_get_tkip_iv(struct orinoco_private *priv, int key, u8 *tsc); |
35 | int __orinoco_hw_set_bitrate(struct orinoco_private *priv); | |
36 | int orinoco_hw_get_act_bitrate(struct orinoco_private *priv, int *bitrate); | |
37 | int __orinoco_hw_set_wap(struct orinoco_private *priv); | |
38 | int __orinoco_hw_setup_wepkeys(struct orinoco_private *priv); | |
39 | int __orinoco_hw_setup_enc(struct orinoco_private *priv); | |
98e5f404 | 40 | int __orinoco_hw_set_tkip_key(struct orinoco_private *priv, int key_idx, |
16e15848 DK |
41 | int set_tx, u8 *key, u8 *rsc, size_t rsc_len, |
42 | u8 *tsc, size_t tsc_len); | |
712a4342 DK |
43 | int orinoco_clear_tkip_key(struct orinoco_private *priv, int key_idx); |
44 | int __orinoco_hw_set_multicast_list(struct orinoco_private *priv, | |
655ffee2 | 45 | struct net_device *dev, |
712a4342 DK |
46 | int mc_count, int promisc); |
47 | int orinoco_hw_get_essid(struct orinoco_private *priv, int *active, | |
48 | char buf[IW_ESSID_MAX_SIZE+1]); | |
49 | int orinoco_hw_get_freq(struct orinoco_private *priv); | |
50 | int orinoco_hw_get_bitratelist(struct orinoco_private *priv, | |
51 | int *numrates, s32 *rates, int max); | |
c63cdbe8 DK |
52 | int orinoco_hw_trigger_scan(struct orinoco_private *priv, |
53 | const struct cfg80211_ssid *ssid); | |
07542d08 DK |
54 | int orinoco_hw_disassociate(struct orinoco_private *priv, |
55 | u8 *addr, u16 reason_code); | |
2b260351 DK |
56 | int orinoco_hw_get_current_bssid(struct orinoco_private *priv, |
57 | u8 *addr); | |
712a4342 DK |
58 | |
59 | #endif /* _ORINOCO_HW_H_ */ |