aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath/ath5k/rfbuffer.h
diff options
context:
space:
mode:
authorJonathan Herman <hermanjl@cs.unc.edu>2013-01-17 16:15:55 -0500
committerJonathan Herman <hermanjl@cs.unc.edu>2013-01-17 16:15:55 -0500
commit8dea78da5cee153b8af9c07a2745f6c55057fe12 (patch)
treea8f4d49d63b1ecc92f2fddceba0655b2472c5bd9 /drivers/net/wireless/ath/ath5k/rfbuffer.h
parent406089d01562f1e2bf9f089fd7637009ebaad589 (diff)
Patched in Tegra support.
Diffstat (limited to 'drivers/net/wireless/ath/ath5k/rfbuffer.h')
-rw-r--r--drivers/net/wireless/ath/ath5k/rfbuffer.h59
1 files changed, 17 insertions, 42 deletions
diff --git a/drivers/net/wireless/ath/ath5k/rfbuffer.h b/drivers/net/wireless/ath/ath5k/rfbuffer.h
index aed34d9954c..5d11c23b429 100644
--- a/drivers/net/wireless/ath/ath5k/rfbuffer.h
+++ b/drivers/net/wireless/ath/ath5k/rfbuffer.h
@@ -18,9 +18,7 @@
18 */ 18 */
19 19
20 20
21/** 21/*
22 * DOC: RF Buffer registers
23 *
24 * There are some special registers on the RF chip 22 * There are some special registers on the RF chip
25 * that control various operation settings related mostly to 23 * that control various operation settings related mostly to
26 * the analog parts (channel, gain adjustment etc). 24 * the analog parts (channel, gain adjustment etc).
@@ -46,63 +44,40 @@
46 */ 44 */
47 45
48 46
49/** 47/*
50 * struct ath5k_ini_rfbuffer - Initial RF Buffer settings
51 * @rfb_bank: RF Bank number
52 * @rfb_ctrl_register: RF Buffer control register
53 * @rfb_mode_data: RF Buffer data for each mode
54 *
55 * Struct to hold default mode specific RF 48 * Struct to hold default mode specific RF
56 * register values (RF Banks) for each chip. 49 * register values (RF Banks)
57 */ 50 */
58struct ath5k_ini_rfbuffer { 51struct ath5k_ini_rfbuffer {
59 u8 rfb_bank; 52 u8 rfb_bank; /* RF Bank number */
60 u16 rfb_ctrl_register; 53 u16 rfb_ctrl_register; /* RF Buffer control register */
61 u32 rfb_mode_data[3]; 54 u32 rfb_mode_data[3]; /* RF Buffer data for each mode */
62}; 55};
63 56
64/** 57/*
65 * struct ath5k_rfb_field - An RF Buffer field (register/value)
66 * @len: Field length
67 * @pos: Offset on the raw packet
68 * @col: Used for shifting
69 *
70 * Struct to hold RF Buffer field 58 * Struct to hold RF Buffer field
71 * infos used to access certain RF 59 * infos used to access certain RF
72 * analog registers 60 * analog registers
73 */ 61 */
74struct ath5k_rfb_field { 62struct ath5k_rfb_field {
75 u8 len; 63 u8 len; /* Field length */
76 u16 pos; 64 u16 pos; /* Offset on the raw packet */
77 u8 col; 65 u8 col; /* Column -used for shifting */
78}; 66};
79 67
80/** 68/*
81 * struct ath5k_rf_reg - RF analog register definition 69 * RF analog register definition
82 * @bank: RF Buffer Bank number
83 * @index: Register's index on ath5k_rf_regx_idx
84 * @field: The &struct ath5k_rfb_field
85 *
86 * We use this struct to define the set of RF registers
87 * on each chip that we want to tweak. Some RF registers
88 * are common between different chip versions so this saves
89 * us space and complexity because we can refer to an rf
90 * register by it's index no matter what chip we work with
91 * as long as it has that register.
92 */ 70 */
93struct ath5k_rf_reg { 71struct ath5k_rf_reg {
94 u8 bank; 72 u8 bank; /* RF Buffer Bank number */
95 u8 index; 73 u8 index; /* Register's index on rf_regs_idx */
96 struct ath5k_rfb_field field; 74 struct ath5k_rfb_field field; /* RF Buffer field for this register */
97}; 75};
98 76
99/** 77/* Map RF registers to indexes
100 * enum ath5k_rf_regs_idx - Map RF registers to indexes
101 *
102 * We do this to handle common bits and make our 78 * We do this to handle common bits and make our
103 * life easier by using an index for each register 79 * life easier by using an index for each register
104 * instead of a full rfb_field 80 * instead of a full rfb_field */
105 */
106enum ath5k_rf_regs_idx { 81enum ath5k_rf_regs_idx {
107 /* BANK 2 */ 82 /* BANK 2 */
108 AR5K_RF_TURBO = 0, 83 AR5K_RF_TURBO = 0,