aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath5k/ath5k.h
diff options
context:
space:
mode:
authorBruno Randolf <br1@einfach.org>2008-03-05 04:35:23 -0500
committerJohn W. Linville <linville@tuxdriver.com>2008-03-07 16:07:49 -0500
commit19fd6e5510f6991148e2210753b58f0eab95e0f6 (patch)
tree1a71054afbc01d0db5f99fdc50a747eef38d1b54 /drivers/net/wireless/ath5k/ath5k.h
parentb095d03a7d724db7379b73f64b6035f7be2e0a7c (diff)
ath5k: struct ath5k_desc cleanups
* make struct ath5k_desc clearer by directly including unions of structures, which correspond to the hardware descriptors of different HW versions (5210 and 5212). before they were casted at onto ath5k_desc at different points (e.g. ds_hw[2]). * rename some structures and variable names to make their use clearer, e.g. struct ath5k_hw_4w_tx_desc to ath5k_hw_4w_tx_ctl. * substitute "old" with "5210" and "new" with "5212" (eg. rename ath5k_hw_proc_new_rx_status() to ath5k_hw_proc_5212_rx_status()) because old and new are relative and we might have a newer structure at some point. * unify structs ath5k_hw_old_rx_status and ath5k_hw_new_rx_status into one ath5k_hw_rx_status, because they only differ in the flags and masks. drivers/net/wireless/ath5k/ath5k.h: Changes-licensed-under: ISC drivers/net/wireless/ath5k/debug.c: Changes-licensed-under: GPL drivers/net/wireless/ath5k/hw.c: Changes-licensed-under: ISC drivers/net/wireless/ath5k/hw.h: Changes-licensed-under: ISC Signed-off-by: Bruno Randolf <bruno@thinktube.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath5k/ath5k.h')
-rw-r--r--drivers/net/wireless/ath5k/ath5k.h23
1 files changed, 12 insertions, 11 deletions
diff --git a/drivers/net/wireless/ath5k/ath5k.h b/drivers/net/wireless/ath5k/ath5k.h
index 04efceef95a8..2af7982f6f0d 100644
--- a/drivers/net/wireless/ath5k/ath5k.h
+++ b/drivers/net/wireless/ath5k/ath5k.h
@@ -273,12 +273,13 @@ enum ath5k_driver_mode {
273#define SHPREAMBLE_FLAG(_ix) \ 273#define SHPREAMBLE_FLAG(_ix) \
274 (HAS_SHPREAMBLE(_ix) ? AR5K_SET_SHORT_PREAMBLE : 0) 274 (HAS_SHPREAMBLE(_ix) ? AR5K_SET_SHORT_PREAMBLE : 0)
275 275
276
276/****************\ 277/****************\
277 TX DEFINITIONS 278 TX DEFINITIONS
278\****************/ 279\****************/
279 280
280/* 281/*
281 * Tx Descriptor 282 * TX Status
282 */ 283 */
283struct ath5k_tx_status { 284struct ath5k_tx_status {
284 u16 ts_seqnum; 285 u16 ts_seqnum;
@@ -426,7 +427,7 @@ enum ath5k_dmasize {
426\****************/ 427\****************/
427 428
428/* 429/*
429 * Rx Descriptor 430 * RX Status
430 */ 431 */
431struct ath5k_rx_status { 432struct ath5k_rx_status {
432 u16 rs_datalen; 433 u16 rs_datalen;
@@ -457,8 +458,6 @@ struct ath5k_mib_stats {
457}; 458};
458 459
459 460
460
461
462/**************************\ 461/**************************\
463 BEACON TIMERS DEFINITIONS 462 BEACON TIMERS DEFINITIONS
464\**************************/ 463\**************************/
@@ -500,20 +499,22 @@ struct ath5k_beacon_state {
500#define TSF_TO_TU(_tsf) (u32)((_tsf) >> 10) 499#define TSF_TO_TU(_tsf) (u32)((_tsf) >> 10)
501 500
502 501
503
504/********************\ 502/********************\
505 COMMON DEFINITIONS 503 COMMON DEFINITIONS
506\********************/ 504\********************/
507 505
508/* 506/*
509 * Atheros descriptor 507 * Atheros hardware descriptor
510 */ 508 */
511struct ath5k_desc { 509struct ath5k_desc {
512 u32 ds_link; 510 u32 ds_link; /* physical address of the next descriptor */
513 u32 ds_data; 511 u32 ds_data; /* physical address of data buffer (skb) */
514 u32 ds_ctl0; 512
515 u32 ds_ctl1; 513 union {
516 u32 ds_hw[4]; 514 struct ath5k_hw_5210_tx_desc ds_tx5210;
515 struct ath5k_hw_5212_tx_desc ds_tx5212;
516 struct ath5k_hw_all_rx_desc ds_rx;
517 } ud;
517 518
518 union { 519 union {
519 struct ath5k_rx_status rx; 520 struct ath5k_rx_status rx;