diff options
Diffstat (limited to 'drivers/net/wireless/rt2x00/rt2x00.h')
-rw-r--r-- | drivers/net/wireless/rt2x00/rt2x00.h | 31 |
1 files changed, 12 insertions, 19 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2x00.h b/drivers/net/wireless/rt2x00/rt2x00.h index 4506f6cfc0c3..baccea7184b5 100644 --- a/drivers/net/wireless/rt2x00/rt2x00.h +++ b/drivers/net/wireless/rt2x00/rt2x00.h | |||
@@ -92,6 +92,16 @@ | |||
92 | DEBUG_PRINTK(__dev, KERN_DEBUG, "EEPROM recovery", __msg, ##__args) | 92 | DEBUG_PRINTK(__dev, KERN_DEBUG, "EEPROM recovery", __msg, ##__args) |
93 | 93 | ||
94 | /* | 94 | /* |
95 | * Duration calculations | ||
96 | * The rate variable passed is: 100kbs. | ||
97 | * To convert from bytes to bits we multiply size with 8, | ||
98 | * then the size is multiplied with 10 to make the | ||
99 | * real rate -> rate argument correction. | ||
100 | */ | ||
101 | #define GET_DURATION(__size, __rate) (((__size) * 8 * 10) / (__rate)) | ||
102 | #define GET_DURATION_RES(__size, __rate)(((__size) * 8 * 10) % (__rate)) | ||
103 | |||
104 | /* | ||
95 | * Standard timing and size defines. | 105 | * Standard timing and size defines. |
96 | * These values should follow the ieee80211 specifications. | 106 | * These values should follow the ieee80211 specifications. |
97 | */ | 107 | */ |
@@ -109,9 +119,9 @@ | |||
109 | #define DIFS ( PIFS + SLOT_TIME ) | 119 | #define DIFS ( PIFS + SLOT_TIME ) |
110 | #define SHORT_DIFS ( SHORT_PIFS + SHORT_SLOT_TIME ) | 120 | #define SHORT_DIFS ( SHORT_PIFS + SHORT_SLOT_TIME ) |
111 | #define EIFS ( SIFS + DIFS + \ | 121 | #define EIFS ( SIFS + DIFS + \ |
112 | (8 * (IEEE80211_HEADER + ACK_SIZE)) ) | 122 | GET_DURATION(IEEE80211_HEADER + ACK_SIZE, 10) ) |
113 | #define SHORT_EIFS ( SIFS + SHORT_DIFS + \ | 123 | #define SHORT_EIFS ( SIFS + SHORT_DIFS + \ |
114 | (8 * (IEEE80211_HEADER + ACK_SIZE)) ) | 124 | GET_DURATION(IEEE80211_HEADER + ACK_SIZE, 10) ) |
115 | 125 | ||
116 | /* | 126 | /* |
117 | * Chipset identification | 127 | * Chipset identification |
@@ -920,23 +930,6 @@ static inline u16 rt2x00_check_rev(const struct rt2x00_chip *chipset, | |||
920 | !!(chipset->rev & 0x0000f)); | 930 | !!(chipset->rev & 0x0000f)); |
921 | } | 931 | } |
922 | 932 | ||
923 | /* | ||
924 | * Duration calculations | ||
925 | * The rate variable passed is: 100kbs. | ||
926 | * To convert from bytes to bits we multiply size with 8, | ||
927 | * then the size is multiplied with 10 to make the | ||
928 | * real rate -> rate argument correction. | ||
929 | */ | ||
930 | static inline u16 get_duration(const unsigned int size, const u8 rate) | ||
931 | { | ||
932 | return ((size * 8 * 10) / rate); | ||
933 | } | ||
934 | |||
935 | static inline u16 get_duration_res(const unsigned int size, const u8 rate) | ||
936 | { | ||
937 | return ((size * 8 * 10) % rate); | ||
938 | } | ||
939 | |||
940 | /** | 933 | /** |
941 | * rt2x00queue_map_txskb - Map a skb into DMA for TX purposes. | 934 | * rt2x00queue_map_txskb - Map a skb into DMA for TX purposes. |
942 | * @rt2x00dev: Pointer to &struct rt2x00_dev. | 935 | * @rt2x00dev: Pointer to &struct rt2x00_dev. |