diff options
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-csr.h')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-csr.h | 28 |
1 files changed, 20 insertions, 8 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-csr.h b/drivers/net/wireless/iwlwifi/iwl-csr.h index 59750543fce7..34a5287dfc2f 100644 --- a/drivers/net/wireless/iwlwifi/iwl-csr.h +++ b/drivers/net/wireless/iwlwifi/iwl-csr.h | |||
@@ -97,13 +97,10 @@ | |||
97 | /* | 97 | /* |
98 | * Hardware revision info | 98 | * Hardware revision info |
99 | * Bit fields: | 99 | * Bit fields: |
100 | * 31-8: Reserved | 100 | * 31-16: Reserved |
101 | * 7-4: Type of device: see CSR_HW_REV_TYPE_xxx definitions | 101 | * 15-4: Type of device: see CSR_HW_REV_TYPE_xxx definitions |
102 | * 3-2: Revision step: 0 = A, 1 = B, 2 = C, 3 = D | 102 | * 3-2: Revision step: 0 = A, 1 = B, 2 = C, 3 = D |
103 | * 1-0: "Dash" (-) value, as in A-1, etc. | 103 | * 1-0: "Dash" (-) value, as in A-1, etc. |
104 | * | ||
105 | * NOTE: Revision step affects calculation of CCK txpower for 4965. | ||
106 | * NOTE: See also CSR_HW_REV_WA_REG (work-around for bug in 4965). | ||
107 | */ | 104 | */ |
108 | #define CSR_HW_REV (CSR_BASE+0x028) | 105 | #define CSR_HW_REV (CSR_BASE+0x028) |
109 | 106 | ||
@@ -155,9 +152,21 @@ | |||
155 | #define CSR_DBG_LINK_PWR_MGMT_REG (CSR_BASE+0x250) | 152 | #define CSR_DBG_LINK_PWR_MGMT_REG (CSR_BASE+0x250) |
156 | 153 | ||
157 | /* Bits for CSR_HW_IF_CONFIG_REG */ | 154 | /* Bits for CSR_HW_IF_CONFIG_REG */ |
158 | #define CSR_HW_IF_CONFIG_REG_MSK_BOARD_VER (0x00000C00) | 155 | #define CSR_HW_IF_CONFIG_REG_MSK_MAC_DASH (0x00000003) |
159 | #define CSR_HW_IF_CONFIG_REG_BIT_MAC_SI (0x00000100) | 156 | #define CSR_HW_IF_CONFIG_REG_MSK_MAC_STEP (0x0000000C) |
157 | #define CSR_HW_IF_CONFIG_REG_MSK_BOARD_VER (0x000000C0) | ||
158 | #define CSR_HW_IF_CONFIG_REG_BIT_MAC_SI (0x00000100) | ||
160 | #define CSR_HW_IF_CONFIG_REG_BIT_RADIO_SI (0x00000200) | 159 | #define CSR_HW_IF_CONFIG_REG_BIT_RADIO_SI (0x00000200) |
160 | #define CSR_HW_IF_CONFIG_REG_MSK_PHY_TYPE (0x00000C00) | ||
161 | #define CSR_HW_IF_CONFIG_REG_MSK_PHY_DASH (0x00003000) | ||
162 | #define CSR_HW_IF_CONFIG_REG_MSK_PHY_STEP (0x0000C000) | ||
163 | |||
164 | #define CSR_HW_IF_CONFIG_REG_POS_MAC_DASH (0) | ||
165 | #define CSR_HW_IF_CONFIG_REG_POS_MAC_STEP (2) | ||
166 | #define CSR_HW_IF_CONFIG_REG_POS_BOARD_VER (6) | ||
167 | #define CSR_HW_IF_CONFIG_REG_POS_PHY_TYPE (10) | ||
168 | #define CSR_HW_IF_CONFIG_REG_POS_PHY_DASH (12) | ||
169 | #define CSR_HW_IF_CONFIG_REG_POS_PHY_STEP (14) | ||
161 | 170 | ||
162 | #define CSR_HW_IF_CONFIG_REG_BIT_HAP_WAKE_L1A (0x00080000) | 171 | #define CSR_HW_IF_CONFIG_REG_BIT_HAP_WAKE_L1A (0x00080000) |
163 | #define CSR_HW_IF_CONFIG_REG_BIT_EEPROM_OWN_SEM (0x00200000) | 172 | #define CSR_HW_IF_CONFIG_REG_BIT_EEPROM_OWN_SEM (0x00200000) |
@@ -270,7 +279,10 @@ | |||
270 | 279 | ||
271 | 280 | ||
272 | /* HW REV */ | 281 | /* HW REV */ |
273 | #define CSR_HW_REV_TYPE_MSK (0x00001F0) | 282 | #define CSR_HW_REV_DASH(_val) (((_val) & 0x0000003) >> 0) |
283 | #define CSR_HW_REV_STEP(_val) (((_val) & 0x000000C) >> 2) | ||
284 | |||
285 | #define CSR_HW_REV_TYPE_MSK (0x000FFF0) | ||
274 | #define CSR_HW_REV_TYPE_5300 (0x0000020) | 286 | #define CSR_HW_REV_TYPE_5300 (0x0000020) |
275 | #define CSR_HW_REV_TYPE_5350 (0x0000030) | 287 | #define CSR_HW_REV_TYPE_5350 (0x0000030) |
276 | #define CSR_HW_REV_TYPE_5100 (0x0000050) | 288 | #define CSR_HW_REV_TYPE_5100 (0x0000050) |