OLD | NEW |
(Empty) | |
| 1 // ------------------------------------------------------------------ |
| 2 // Copyright (c) 2004-2007 Atheros Corporation. All rights reserved. |
| 3 // |
| 4 // This program is free software; you can redistribute it and/or modify |
| 5 // it under the terms of the GNU General Public License version 2 as |
| 6 // published by the Free Software Foundation; |
| 7 // |
| 8 // Software distributed under the License is distributed on an "AS |
| 9 // IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or |
| 10 // implied. See the License for the specific language governing |
| 11 // rights and limitations under the License. |
| 12 // |
| 13 // |
| 14 // ------------------------------------------------------------------ |
| 15 //=================================================================== |
| 16 // Author(s): ="Atheros" |
| 17 //=================================================================== |
| 18 |
| 19 |
| 20 #ifndef _MBOX_HOST_REG_REG_H_ |
| 21 #define _MBOX_HOST_REG_REG_H_ |
| 22 |
| 23 #define HOST_INT_STATUS_ADDRESS 0x00000400 |
| 24 #define HOST_INT_STATUS_OFFSET 0x00000400 |
| 25 #define HOST_INT_STATUS_ERROR_MSB 7 |
| 26 #define HOST_INT_STATUS_ERROR_LSB 7 |
| 27 #define HOST_INT_STATUS_ERROR_MASK 0x00000080 |
| 28 #define HOST_INT_STATUS_ERROR_GET(x) (((x) & HOST_INT_STATUS_ERROR_M
ASK) >> HOST_INT_STATUS_ERROR_LSB) |
| 29 #define HOST_INT_STATUS_ERROR_SET(x) (((x) << HOST_INT_STATUS_ERROR_
LSB) & HOST_INT_STATUS_ERROR_MASK) |
| 30 #define HOST_INT_STATUS_CPU_MSB 6 |
| 31 #define HOST_INT_STATUS_CPU_LSB 6 |
| 32 #define HOST_INT_STATUS_CPU_MASK 0x00000040 |
| 33 #define HOST_INT_STATUS_CPU_GET(x) (((x) & HOST_INT_STATUS_CPU_MAS
K) >> HOST_INT_STATUS_CPU_LSB) |
| 34 #define HOST_INT_STATUS_CPU_SET(x) (((x) << HOST_INT_STATUS_CPU_LS
B) & HOST_INT_STATUS_CPU_MASK) |
| 35 #define HOST_INT_STATUS_DRAGON_INT_MSB 5 |
| 36 #define HOST_INT_STATUS_DRAGON_INT_LSB 5 |
| 37 #define HOST_INT_STATUS_DRAGON_INT_MASK 0x00000020 |
| 38 #define HOST_INT_STATUS_DRAGON_INT_GET(x) (((x) & HOST_INT_STATUS_DRAGON_
INT_MASK) >> HOST_INT_STATUS_DRAGON_INT_LSB) |
| 39 #define HOST_INT_STATUS_DRAGON_INT_SET(x) (((x) << HOST_INT_STATUS_DRAGON
_INT_LSB) & HOST_INT_STATUS_DRAGON_INT_MASK) |
| 40 #define HOST_INT_STATUS_COUNTER_MSB 4 |
| 41 #define HOST_INT_STATUS_COUNTER_LSB 4 |
| 42 #define HOST_INT_STATUS_COUNTER_MASK 0x00000010 |
| 43 #define HOST_INT_STATUS_COUNTER_GET(x) (((x) & HOST_INT_STATUS_COUNTER
_MASK) >> HOST_INT_STATUS_COUNTER_LSB) |
| 44 #define HOST_INT_STATUS_COUNTER_SET(x) (((x) << HOST_INT_STATUS_COUNTE
R_LSB) & HOST_INT_STATUS_COUNTER_MASK) |
| 45 #define HOST_INT_STATUS_MBOX_DATA_MSB 3 |
| 46 #define HOST_INT_STATUS_MBOX_DATA_LSB 0 |
| 47 #define HOST_INT_STATUS_MBOX_DATA_MASK 0x0000000f |
| 48 #define HOST_INT_STATUS_MBOX_DATA_GET(x) (((x) & HOST_INT_STATUS_MBOX_DA
TA_MASK) >> HOST_INT_STATUS_MBOX_DATA_LSB) |
| 49 #define HOST_INT_STATUS_MBOX_DATA_SET(x) (((x) << HOST_INT_STATUS_MBOX_D
ATA_LSB) & HOST_INT_STATUS_MBOX_DATA_MASK) |
| 50 |
| 51 #define CPU_INT_STATUS_ADDRESS 0x00000401 |
| 52 #define CPU_INT_STATUS_OFFSET 0x00000401 |
| 53 #define CPU_INT_STATUS_BIT_MSB 7 |
| 54 #define CPU_INT_STATUS_BIT_LSB 0 |
| 55 #define CPU_INT_STATUS_BIT_MASK 0x000000ff |
| 56 #define CPU_INT_STATUS_BIT_GET(x) (((x) & CPU_INT_STATUS_BIT_MASK
) >> CPU_INT_STATUS_BIT_LSB) |
| 57 #define CPU_INT_STATUS_BIT_SET(x) (((x) << CPU_INT_STATUS_BIT_LSB
) & CPU_INT_STATUS_BIT_MASK) |
| 58 |
| 59 #define ERROR_INT_STATUS_ADDRESS 0x00000402 |
| 60 #define ERROR_INT_STATUS_OFFSET 0x00000402 |
| 61 #define ERROR_INT_STATUS_SPI_MSB 3 |
| 62 #define ERROR_INT_STATUS_SPI_LSB 3 |
| 63 #define ERROR_INT_STATUS_SPI_MASK 0x00000008 |
| 64 #define ERROR_INT_STATUS_SPI_GET(x) (((x) & ERROR_INT_STATUS_SPI_MA
SK) >> ERROR_INT_STATUS_SPI_LSB) |
| 65 #define ERROR_INT_STATUS_SPI_SET(x) (((x) << ERROR_INT_STATUS_SPI_L
SB) & ERROR_INT_STATUS_SPI_MASK) |
| 66 #define ERROR_INT_STATUS_WAKEUP_MSB 2 |
| 67 #define ERROR_INT_STATUS_WAKEUP_LSB 2 |
| 68 #define ERROR_INT_STATUS_WAKEUP_MASK 0x00000004 |
| 69 #define ERROR_INT_STATUS_WAKEUP_GET(x) (((x) & ERROR_INT_STATUS_WAKEUP
_MASK) >> ERROR_INT_STATUS_WAKEUP_LSB) |
| 70 #define ERROR_INT_STATUS_WAKEUP_SET(x) (((x) << ERROR_INT_STATUS_WAKEU
P_LSB) & ERROR_INT_STATUS_WAKEUP_MASK) |
| 71 #define ERROR_INT_STATUS_RX_UNDERFLOW_MSB 1 |
| 72 #define ERROR_INT_STATUS_RX_UNDERFLOW_LSB 1 |
| 73 #define ERROR_INT_STATUS_RX_UNDERFLOW_MASK 0x00000002 |
| 74 #define ERROR_INT_STATUS_RX_UNDERFLOW_GET(x) (((x) & ERROR_INT_STATUS_RX_UND
ERFLOW_MASK) >> ERROR_INT_STATUS_RX_UNDERFLOW_LSB) |
| 75 #define ERROR_INT_STATUS_RX_UNDERFLOW_SET(x) (((x) << ERROR_INT_STATUS_RX_UN
DERFLOW_LSB) & ERROR_INT_STATUS_RX_UNDERFLOW_MASK) |
| 76 #define ERROR_INT_STATUS_TX_OVERFLOW_MSB 0 |
| 77 #define ERROR_INT_STATUS_TX_OVERFLOW_LSB 0 |
| 78 #define ERROR_INT_STATUS_TX_OVERFLOW_MASK 0x00000001 |
| 79 #define ERROR_INT_STATUS_TX_OVERFLOW_GET(x) (((x) & ERROR_INT_STATUS_TX_OVE
RFLOW_MASK) >> ERROR_INT_STATUS_TX_OVERFLOW_LSB) |
| 80 #define ERROR_INT_STATUS_TX_OVERFLOW_SET(x) (((x) << ERROR_INT_STATUS_TX_OV
ERFLOW_LSB) & ERROR_INT_STATUS_TX_OVERFLOW_MASK) |
| 81 |
| 82 #define COUNTER_INT_STATUS_ADDRESS 0x00000403 |
| 83 #define COUNTER_INT_STATUS_OFFSET 0x00000403 |
| 84 #define COUNTER_INT_STATUS_COUNTER_MSB 7 |
| 85 #define COUNTER_INT_STATUS_COUNTER_LSB 0 |
| 86 #define COUNTER_INT_STATUS_COUNTER_MASK 0x000000ff |
| 87 #define COUNTER_INT_STATUS_COUNTER_GET(x) (((x) & COUNTER_INT_STATUS_COUN
TER_MASK) >> COUNTER_INT_STATUS_COUNTER_LSB) |
| 88 #define COUNTER_INT_STATUS_COUNTER_SET(x) (((x) << COUNTER_INT_STATUS_COU
NTER_LSB) & COUNTER_INT_STATUS_COUNTER_MASK) |
| 89 |
| 90 #define MBOX_FRAME_ADDRESS 0x00000404 |
| 91 #define MBOX_FRAME_OFFSET 0x00000404 |
| 92 #define MBOX_FRAME_RX_EOM_MSB 7 |
| 93 #define MBOX_FRAME_RX_EOM_LSB 4 |
| 94 #define MBOX_FRAME_RX_EOM_MASK 0x000000f0 |
| 95 #define MBOX_FRAME_RX_EOM_GET(x) (((x) & MBOX_FRAME_RX_EOM_MASK)
>> MBOX_FRAME_RX_EOM_LSB) |
| 96 #define MBOX_FRAME_RX_EOM_SET(x) (((x) << MBOX_FRAME_RX_EOM_LSB)
& MBOX_FRAME_RX_EOM_MASK) |
| 97 #define MBOX_FRAME_RX_SOM_MSB 3 |
| 98 #define MBOX_FRAME_RX_SOM_LSB 0 |
| 99 #define MBOX_FRAME_RX_SOM_MASK 0x0000000f |
| 100 #define MBOX_FRAME_RX_SOM_GET(x) (((x) & MBOX_FRAME_RX_SOM_MASK)
>> MBOX_FRAME_RX_SOM_LSB) |
| 101 #define MBOX_FRAME_RX_SOM_SET(x) (((x) << MBOX_FRAME_RX_SOM_LSB)
& MBOX_FRAME_RX_SOM_MASK) |
| 102 |
| 103 #define RX_LOOKAHEAD_VALID_ADDRESS 0x00000405 |
| 104 #define RX_LOOKAHEAD_VALID_OFFSET 0x00000405 |
| 105 #define RX_LOOKAHEAD_VALID_MBOX_MSB 3 |
| 106 #define RX_LOOKAHEAD_VALID_MBOX_LSB 0 |
| 107 #define RX_LOOKAHEAD_VALID_MBOX_MASK 0x0000000f |
| 108 #define RX_LOOKAHEAD_VALID_MBOX_GET(x) (((x) & RX_LOOKAHEAD_VALID_MBOX
_MASK) >> RX_LOOKAHEAD_VALID_MBOX_LSB) |
| 109 #define RX_LOOKAHEAD_VALID_MBOX_SET(x) (((x) << RX_LOOKAHEAD_VALID_MBO
X_LSB) & RX_LOOKAHEAD_VALID_MBOX_MASK) |
| 110 |
| 111 #define RX_LOOKAHEAD0_ADDRESS 0x00000408 |
| 112 #define RX_LOOKAHEAD0_OFFSET 0x00000408 |
| 113 #define RX_LOOKAHEAD0_DATA_MSB 7 |
| 114 #define RX_LOOKAHEAD0_DATA_LSB 0 |
| 115 #define RX_LOOKAHEAD0_DATA_MASK 0x000000ff |
| 116 #define RX_LOOKAHEAD0_DATA_GET(x) (((x) & RX_LOOKAHEAD0_DATA_MASK
) >> RX_LOOKAHEAD0_DATA_LSB) |
| 117 #define RX_LOOKAHEAD0_DATA_SET(x) (((x) << RX_LOOKAHEAD0_DATA_LSB
) & RX_LOOKAHEAD0_DATA_MASK) |
| 118 |
| 119 #define RX_LOOKAHEAD1_ADDRESS 0x0000040c |
| 120 #define RX_LOOKAHEAD1_OFFSET 0x0000040c |
| 121 #define RX_LOOKAHEAD1_DATA_MSB 7 |
| 122 #define RX_LOOKAHEAD1_DATA_LSB 0 |
| 123 #define RX_LOOKAHEAD1_DATA_MASK 0x000000ff |
| 124 #define RX_LOOKAHEAD1_DATA_GET(x) (((x) & RX_LOOKAHEAD1_DATA_MASK
) >> RX_LOOKAHEAD1_DATA_LSB) |
| 125 #define RX_LOOKAHEAD1_DATA_SET(x) (((x) << RX_LOOKAHEAD1_DATA_LSB
) & RX_LOOKAHEAD1_DATA_MASK) |
| 126 |
| 127 #define RX_LOOKAHEAD2_ADDRESS 0x00000410 |
| 128 #define RX_LOOKAHEAD2_OFFSET 0x00000410 |
| 129 #define RX_LOOKAHEAD2_DATA_MSB 7 |
| 130 #define RX_LOOKAHEAD2_DATA_LSB 0 |
| 131 #define RX_LOOKAHEAD2_DATA_MASK 0x000000ff |
| 132 #define RX_LOOKAHEAD2_DATA_GET(x) (((x) & RX_LOOKAHEAD2_DATA_MASK
) >> RX_LOOKAHEAD2_DATA_LSB) |
| 133 #define RX_LOOKAHEAD2_DATA_SET(x) (((x) << RX_LOOKAHEAD2_DATA_LSB
) & RX_LOOKAHEAD2_DATA_MASK) |
| 134 |
| 135 #define RX_LOOKAHEAD3_ADDRESS 0x00000414 |
| 136 #define RX_LOOKAHEAD3_OFFSET 0x00000414 |
| 137 #define RX_LOOKAHEAD3_DATA_MSB 7 |
| 138 #define RX_LOOKAHEAD3_DATA_LSB 0 |
| 139 #define RX_LOOKAHEAD3_DATA_MASK 0x000000ff |
| 140 #define RX_LOOKAHEAD3_DATA_GET(x) (((x) & RX_LOOKAHEAD3_DATA_MASK
) >> RX_LOOKAHEAD3_DATA_LSB) |
| 141 #define RX_LOOKAHEAD3_DATA_SET(x) (((x) << RX_LOOKAHEAD3_DATA_LSB
) & RX_LOOKAHEAD3_DATA_MASK) |
| 142 |
| 143 #define INT_STATUS_ENABLE_ADDRESS 0x00000418 |
| 144 #define INT_STATUS_ENABLE_OFFSET 0x00000418 |
| 145 #define INT_STATUS_ENABLE_ERROR_MSB 7 |
| 146 #define INT_STATUS_ENABLE_ERROR_LSB 7 |
| 147 #define INT_STATUS_ENABLE_ERROR_MASK 0x00000080 |
| 148 #define INT_STATUS_ENABLE_ERROR_GET(x) (((x) & INT_STATUS_ENABLE_ERROR
_MASK) >> INT_STATUS_ENABLE_ERROR_LSB) |
| 149 #define INT_STATUS_ENABLE_ERROR_SET(x) (((x) << INT_STATUS_ENABLE_ERRO
R_LSB) & INT_STATUS_ENABLE_ERROR_MASK) |
| 150 #define INT_STATUS_ENABLE_CPU_MSB 6 |
| 151 #define INT_STATUS_ENABLE_CPU_LSB 6 |
| 152 #define INT_STATUS_ENABLE_CPU_MASK 0x00000040 |
| 153 #define INT_STATUS_ENABLE_CPU_GET(x) (((x) & INT_STATUS_ENABLE_CPU_M
ASK) >> INT_STATUS_ENABLE_CPU_LSB) |
| 154 #define INT_STATUS_ENABLE_CPU_SET(x) (((x) << INT_STATUS_ENABLE_CPU_
LSB) & INT_STATUS_ENABLE_CPU_MASK) |
| 155 #define INT_STATUS_ENABLE_DRAGON_INT_MSB 5 |
| 156 #define INT_STATUS_ENABLE_DRAGON_INT_LSB 5 |
| 157 #define INT_STATUS_ENABLE_DRAGON_INT_MASK 0x00000020 |
| 158 #define INT_STATUS_ENABLE_DRAGON_INT_GET(x) (((x) & INT_STATUS_ENABLE_DRAGO
N_INT_MASK) >> INT_STATUS_ENABLE_DRAGON_INT_LSB) |
| 159 #define INT_STATUS_ENABLE_DRAGON_INT_SET(x) (((x) << INT_STATUS_ENABLE_DRAG
ON_INT_LSB) & INT_STATUS_ENABLE_DRAGON_INT_MASK) |
| 160 #define INT_STATUS_ENABLE_COUNTER_MSB 4 |
| 161 #define INT_STATUS_ENABLE_COUNTER_LSB 4 |
| 162 #define INT_STATUS_ENABLE_COUNTER_MASK 0x00000010 |
| 163 #define INT_STATUS_ENABLE_COUNTER_GET(x) (((x) & INT_STATUS_ENABLE_COUNT
ER_MASK) >> INT_STATUS_ENABLE_COUNTER_LSB) |
| 164 #define INT_STATUS_ENABLE_COUNTER_SET(x) (((x) << INT_STATUS_ENABLE_COUN
TER_LSB) & INT_STATUS_ENABLE_COUNTER_MASK) |
| 165 #define INT_STATUS_ENABLE_MBOX_DATA_MSB 3 |
| 166 #define INT_STATUS_ENABLE_MBOX_DATA_LSB 0 |
| 167 #define INT_STATUS_ENABLE_MBOX_DATA_MASK 0x0000000f |
| 168 #define INT_STATUS_ENABLE_MBOX_DATA_GET(x) (((x) & INT_STATUS_ENABLE_MBOX_
DATA_MASK) >> INT_STATUS_ENABLE_MBOX_DATA_LSB) |
| 169 #define INT_STATUS_ENABLE_MBOX_DATA_SET(x) (((x) << INT_STATUS_ENABLE_MBOX
_DATA_LSB) & INT_STATUS_ENABLE_MBOX_DATA_MASK) |
| 170 |
| 171 #define CPU_INT_STATUS_ENABLE_ADDRESS 0x00000419 |
| 172 #define CPU_INT_STATUS_ENABLE_OFFSET 0x00000419 |
| 173 #define CPU_INT_STATUS_ENABLE_BIT_MSB 7 |
| 174 #define CPU_INT_STATUS_ENABLE_BIT_LSB 0 |
| 175 #define CPU_INT_STATUS_ENABLE_BIT_MASK 0x000000ff |
| 176 #define CPU_INT_STATUS_ENABLE_BIT_GET(x) (((x) & CPU_INT_STATUS_ENABLE_B
IT_MASK) >> CPU_INT_STATUS_ENABLE_BIT_LSB) |
| 177 #define CPU_INT_STATUS_ENABLE_BIT_SET(x) (((x) << CPU_INT_STATUS_ENABLE_
BIT_LSB) & CPU_INT_STATUS_ENABLE_BIT_MASK) |
| 178 |
| 179 #define ERROR_STATUS_ENABLE_ADDRESS 0x0000041a |
| 180 #define ERROR_STATUS_ENABLE_OFFSET 0x0000041a |
| 181 #define ERROR_STATUS_ENABLE_WAKEUP_MSB 2 |
| 182 #define ERROR_STATUS_ENABLE_WAKEUP_LSB 2 |
| 183 #define ERROR_STATUS_ENABLE_WAKEUP_MASK 0x00000004 |
| 184 #define ERROR_STATUS_ENABLE_WAKEUP_GET(x) (((x) & ERROR_STATUS_ENABLE_WAK
EUP_MASK) >> ERROR_STATUS_ENABLE_WAKEUP_LSB) |
| 185 #define ERROR_STATUS_ENABLE_WAKEUP_SET(x) (((x) << ERROR_STATUS_ENABLE_WA
KEUP_LSB) & ERROR_STATUS_ENABLE_WAKEUP_MASK) |
| 186 #define ERROR_STATUS_ENABLE_RX_UNDERFLOW_MSB 1 |
| 187 #define ERROR_STATUS_ENABLE_RX_UNDERFLOW_LSB 1 |
| 188 #define ERROR_STATUS_ENABLE_RX_UNDERFLOW_MASK 0x00000002 |
| 189 #define ERROR_STATUS_ENABLE_RX_UNDERFLOW_GET(x) (((x) & ERROR_STATUS_ENABLE_RX_
UNDERFLOW_MASK) >> ERROR_STATUS_ENABLE_RX_UNDERFLOW_LSB) |
| 190 #define ERROR_STATUS_ENABLE_RX_UNDERFLOW_SET(x) (((x) << ERROR_STATUS_ENABLE_RX
_UNDERFLOW_LSB) & ERROR_STATUS_ENABLE_RX_UNDERFLOW_MASK) |
| 191 #define ERROR_STATUS_ENABLE_TX_OVERFLOW_MSB 0 |
| 192 #define ERROR_STATUS_ENABLE_TX_OVERFLOW_LSB 0 |
| 193 #define ERROR_STATUS_ENABLE_TX_OVERFLOW_MASK 0x00000001 |
| 194 #define ERROR_STATUS_ENABLE_TX_OVERFLOW_GET(x) (((x) & ERROR_STATUS_ENABLE_TX_
OVERFLOW_MASK) >> ERROR_STATUS_ENABLE_TX_OVERFLOW_LSB) |
| 195 #define ERROR_STATUS_ENABLE_TX_OVERFLOW_SET(x) (((x) << ERROR_STATUS_ENABLE_TX
_OVERFLOW_LSB) & ERROR_STATUS_ENABLE_TX_OVERFLOW_MASK) |
| 196 |
| 197 #define COUNTER_INT_STATUS_ENABLE_ADDRESS 0x0000041b |
| 198 #define COUNTER_INT_STATUS_ENABLE_OFFSET 0x0000041b |
| 199 #define COUNTER_INT_STATUS_ENABLE_BIT_MSB 7 |
| 200 #define COUNTER_INT_STATUS_ENABLE_BIT_LSB 0 |
| 201 #define COUNTER_INT_STATUS_ENABLE_BIT_MASK 0x000000ff |
| 202 #define COUNTER_INT_STATUS_ENABLE_BIT_GET(x) (((x) & COUNTER_INT_STATUS_ENAB
LE_BIT_MASK) >> COUNTER_INT_STATUS_ENABLE_BIT_LSB) |
| 203 #define COUNTER_INT_STATUS_ENABLE_BIT_SET(x) (((x) << COUNTER_INT_STATUS_ENA
BLE_BIT_LSB) & COUNTER_INT_STATUS_ENABLE_BIT_MASK) |
| 204 |
| 205 #define COUNT_ADDRESS 0x00000420 |
| 206 #define COUNT_OFFSET 0x00000420 |
| 207 #define COUNT_VALUE_MSB 7 |
| 208 #define COUNT_VALUE_LSB 0 |
| 209 #define COUNT_VALUE_MASK 0x000000ff |
| 210 #define COUNT_VALUE_GET(x) (((x) & COUNT_VALUE_MASK) >> CO
UNT_VALUE_LSB) |
| 211 #define COUNT_VALUE_SET(x) (((x) << COUNT_VALUE_LSB) & COU
NT_VALUE_MASK) |
| 212 |
| 213 #define COUNT_DEC_ADDRESS 0x00000440 |
| 214 #define COUNT_DEC_OFFSET 0x00000440 |
| 215 #define COUNT_DEC_VALUE_MSB 7 |
| 216 #define COUNT_DEC_VALUE_LSB 0 |
| 217 #define COUNT_DEC_VALUE_MASK 0x000000ff |
| 218 #define COUNT_DEC_VALUE_GET(x) (((x) & COUNT_DEC_VALUE_MASK) >
> COUNT_DEC_VALUE_LSB) |
| 219 #define COUNT_DEC_VALUE_SET(x) (((x) << COUNT_DEC_VALUE_LSB) &
COUNT_DEC_VALUE_MASK) |
| 220 |
| 221 #define SCRATCH_ADDRESS 0x00000460 |
| 222 #define SCRATCH_OFFSET 0x00000460 |
| 223 #define SCRATCH_VALUE_MSB 7 |
| 224 #define SCRATCH_VALUE_LSB 0 |
| 225 #define SCRATCH_VALUE_MASK 0x000000ff |
| 226 #define SCRATCH_VALUE_GET(x) (((x) & SCRATCH_VALUE_MASK) >>
SCRATCH_VALUE_LSB) |
| 227 #define SCRATCH_VALUE_SET(x) (((x) << SCRATCH_VALUE_LSB) & S
CRATCH_VALUE_MASK) |
| 228 |
| 229 #define FIFO_TIMEOUT_ADDRESS 0x00000468 |
| 230 #define FIFO_TIMEOUT_OFFSET 0x00000468 |
| 231 #define FIFO_TIMEOUT_VALUE_MSB 7 |
| 232 #define FIFO_TIMEOUT_VALUE_LSB 0 |
| 233 #define FIFO_TIMEOUT_VALUE_MASK 0x000000ff |
| 234 #define FIFO_TIMEOUT_VALUE_GET(x) (((x) & FIFO_TIMEOUT_VALUE_MASK
) >> FIFO_TIMEOUT_VALUE_LSB) |
| 235 #define FIFO_TIMEOUT_VALUE_SET(x) (((x) << FIFO_TIMEOUT_VALUE_LSB
) & FIFO_TIMEOUT_VALUE_MASK) |
| 236 |
| 237 #define FIFO_TIMEOUT_ENABLE_ADDRESS 0x00000469 |
| 238 #define FIFO_TIMEOUT_ENABLE_OFFSET 0x00000469 |
| 239 #define FIFO_TIMEOUT_ENABLE_SET_MSB 0 |
| 240 #define FIFO_TIMEOUT_ENABLE_SET_LSB 0 |
| 241 #define FIFO_TIMEOUT_ENABLE_SET_MASK 0x00000001 |
| 242 #define FIFO_TIMEOUT_ENABLE_SET_GET(x) (((x) & FIFO_TIMEOUT_ENABLE_SET
_MASK) >> FIFO_TIMEOUT_ENABLE_SET_LSB) |
| 243 #define FIFO_TIMEOUT_ENABLE_SET_SET(x) (((x) << FIFO_TIMEOUT_ENABLE_SE
T_LSB) & FIFO_TIMEOUT_ENABLE_SET_MASK) |
| 244 |
| 245 #define DISABLE_SLEEP_ADDRESS 0x0000046a |
| 246 #define DISABLE_SLEEP_OFFSET 0x0000046a |
| 247 #define DISABLE_SLEEP_FOR_INT_MSB 1 |
| 248 #define DISABLE_SLEEP_FOR_INT_LSB 1 |
| 249 #define DISABLE_SLEEP_FOR_INT_MASK 0x00000002 |
| 250 #define DISABLE_SLEEP_FOR_INT_GET(x) (((x) & DISABLE_SLEEP_FOR_INT_M
ASK) >> DISABLE_SLEEP_FOR_INT_LSB) |
| 251 #define DISABLE_SLEEP_FOR_INT_SET(x) (((x) << DISABLE_SLEEP_FOR_INT_
LSB) & DISABLE_SLEEP_FOR_INT_MASK) |
| 252 #define DISABLE_SLEEP_ON_MSB 0 |
| 253 #define DISABLE_SLEEP_ON_LSB 0 |
| 254 #define DISABLE_SLEEP_ON_MASK 0x00000001 |
| 255 #define DISABLE_SLEEP_ON_GET(x) (((x) & DISABLE_SLEEP_ON_MASK)
>> DISABLE_SLEEP_ON_LSB) |
| 256 #define DISABLE_SLEEP_ON_SET(x) (((x) << DISABLE_SLEEP_ON_LSB)
& DISABLE_SLEEP_ON_MASK) |
| 257 |
| 258 #define LOCAL_BUS_ADDRESS 0x00000470 |
| 259 #define LOCAL_BUS_OFFSET 0x00000470 |
| 260 #define LOCAL_BUS_STATE_MSB 1 |
| 261 #define LOCAL_BUS_STATE_LSB 0 |
| 262 #define LOCAL_BUS_STATE_MASK 0x00000003 |
| 263 #define LOCAL_BUS_STATE_GET(x) (((x) & LOCAL_BUS_STATE_MASK) >
> LOCAL_BUS_STATE_LSB) |
| 264 #define LOCAL_BUS_STATE_SET(x) (((x) << LOCAL_BUS_STATE_LSB) &
LOCAL_BUS_STATE_MASK) |
| 265 |
| 266 #define INT_WLAN_ADDRESS 0x00000472 |
| 267 #define INT_WLAN_OFFSET 0x00000472 |
| 268 #define INT_WLAN_VECTOR_MSB 7 |
| 269 #define INT_WLAN_VECTOR_LSB 0 |
| 270 #define INT_WLAN_VECTOR_MASK 0x000000ff |
| 271 #define INT_WLAN_VECTOR_GET(x) (((x) & INT_WLAN_VECTOR_MASK) >
> INT_WLAN_VECTOR_LSB) |
| 272 #define INT_WLAN_VECTOR_SET(x) (((x) << INT_WLAN_VECTOR_LSB) &
INT_WLAN_VECTOR_MASK) |
| 273 |
| 274 #define WINDOW_DATA_ADDRESS 0x00000474 |
| 275 #define WINDOW_DATA_OFFSET 0x00000474 |
| 276 #define WINDOW_DATA_DATA_MSB 7 |
| 277 #define WINDOW_DATA_DATA_LSB 0 |
| 278 #define WINDOW_DATA_DATA_MASK 0x000000ff |
| 279 #define WINDOW_DATA_DATA_GET(x) (((x) & WINDOW_DATA_DATA_MASK)
>> WINDOW_DATA_DATA_LSB) |
| 280 #define WINDOW_DATA_DATA_SET(x) (((x) << WINDOW_DATA_DATA_LSB)
& WINDOW_DATA_DATA_MASK) |
| 281 |
| 282 #define WINDOW_WRITE_ADDR_ADDRESS 0x00000478 |
| 283 #define WINDOW_WRITE_ADDR_OFFSET 0x00000478 |
| 284 #define WINDOW_WRITE_ADDR_ADDR_MSB 7 |
| 285 #define WINDOW_WRITE_ADDR_ADDR_LSB 0 |
| 286 #define WINDOW_WRITE_ADDR_ADDR_MASK 0x000000ff |
| 287 #define WINDOW_WRITE_ADDR_ADDR_GET(x) (((x) & WINDOW_WRITE_ADDR_ADDR_
MASK) >> WINDOW_WRITE_ADDR_ADDR_LSB) |
| 288 #define WINDOW_WRITE_ADDR_ADDR_SET(x) (((x) << WINDOW_WRITE_ADDR_ADDR
_LSB) & WINDOW_WRITE_ADDR_ADDR_MASK) |
| 289 |
| 290 #define WINDOW_READ_ADDR_ADDRESS 0x0000047c |
| 291 #define WINDOW_READ_ADDR_OFFSET 0x0000047c |
| 292 #define WINDOW_READ_ADDR_ADDR_MSB 7 |
| 293 #define WINDOW_READ_ADDR_ADDR_LSB 0 |
| 294 #define WINDOW_READ_ADDR_ADDR_MASK 0x000000ff |
| 295 #define WINDOW_READ_ADDR_ADDR_GET(x) (((x) & WINDOW_READ_ADDR_ADDR_M
ASK) >> WINDOW_READ_ADDR_ADDR_LSB) |
| 296 #define WINDOW_READ_ADDR_ADDR_SET(x) (((x) << WINDOW_READ_ADDR_ADDR_
LSB) & WINDOW_READ_ADDR_ADDR_MASK) |
| 297 |
| 298 #define SPI_CONFIG_ADDRESS 0x00000480 |
| 299 #define SPI_CONFIG_OFFSET 0x00000480 |
| 300 #define SPI_CONFIG_SPI_RESET_MSB 4 |
| 301 #define SPI_CONFIG_SPI_RESET_LSB 4 |
| 302 #define SPI_CONFIG_SPI_RESET_MASK 0x00000010 |
| 303 #define SPI_CONFIG_SPI_RESET_GET(x) (((x) & SPI_CONFIG_SPI_RESET_MA
SK) >> SPI_CONFIG_SPI_RESET_LSB) |
| 304 #define SPI_CONFIG_SPI_RESET_SET(x) (((x) << SPI_CONFIG_SPI_RESET_L
SB) & SPI_CONFIG_SPI_RESET_MASK) |
| 305 #define SPI_CONFIG_INTERRUPT_ENABLE_MSB 3 |
| 306 #define SPI_CONFIG_INTERRUPT_ENABLE_LSB 3 |
| 307 #define SPI_CONFIG_INTERRUPT_ENABLE_MASK 0x00000008 |
| 308 #define SPI_CONFIG_INTERRUPT_ENABLE_GET(x) (((x) & SPI_CONFIG_INTERRUPT_EN
ABLE_MASK) >> SPI_CONFIG_INTERRUPT_ENABLE_LSB) |
| 309 #define SPI_CONFIG_INTERRUPT_ENABLE_SET(x) (((x) << SPI_CONFIG_INTERRUPT_E
NABLE_LSB) & SPI_CONFIG_INTERRUPT_ENABLE_MASK) |
| 310 #define SPI_CONFIG_TEST_MODE_MSB 2 |
| 311 #define SPI_CONFIG_TEST_MODE_LSB 2 |
| 312 #define SPI_CONFIG_TEST_MODE_MASK 0x00000004 |
| 313 #define SPI_CONFIG_TEST_MODE_GET(x) (((x) & SPI_CONFIG_TEST_MODE_MA
SK) >> SPI_CONFIG_TEST_MODE_LSB) |
| 314 #define SPI_CONFIG_TEST_MODE_SET(x) (((x) << SPI_CONFIG_TEST_MODE_L
SB) & SPI_CONFIG_TEST_MODE_MASK) |
| 315 #define SPI_CONFIG_DATA_SIZE_MSB 1 |
| 316 #define SPI_CONFIG_DATA_SIZE_LSB 0 |
| 317 #define SPI_CONFIG_DATA_SIZE_MASK 0x00000003 |
| 318 #define SPI_CONFIG_DATA_SIZE_GET(x) (((x) & SPI_CONFIG_DATA_SIZE_MA
SK) >> SPI_CONFIG_DATA_SIZE_LSB) |
| 319 #define SPI_CONFIG_DATA_SIZE_SET(x) (((x) << SPI_CONFIG_DATA_SIZE_L
SB) & SPI_CONFIG_DATA_SIZE_MASK) |
| 320 |
| 321 #define SPI_STATUS_ADDRESS 0x00000481 |
| 322 #define SPI_STATUS_OFFSET 0x00000481 |
| 323 #define SPI_STATUS_ADDR_ERR_MSB 3 |
| 324 #define SPI_STATUS_ADDR_ERR_LSB 3 |
| 325 #define SPI_STATUS_ADDR_ERR_MASK 0x00000008 |
| 326 #define SPI_STATUS_ADDR_ERR_GET(x) (((x) & SPI_STATUS_ADDR_ERR_MAS
K) >> SPI_STATUS_ADDR_ERR_LSB) |
| 327 #define SPI_STATUS_ADDR_ERR_SET(x) (((x) << SPI_STATUS_ADDR_ERR_LS
B) & SPI_STATUS_ADDR_ERR_MASK) |
| 328 #define SPI_STATUS_RD_ERR_MSB 2 |
| 329 #define SPI_STATUS_RD_ERR_LSB 2 |
| 330 #define SPI_STATUS_RD_ERR_MASK 0x00000004 |
| 331 #define SPI_STATUS_RD_ERR_GET(x) (((x) & SPI_STATUS_RD_ERR_MASK)
>> SPI_STATUS_RD_ERR_LSB) |
| 332 #define SPI_STATUS_RD_ERR_SET(x) (((x) << SPI_STATUS_RD_ERR_LSB)
& SPI_STATUS_RD_ERR_MASK) |
| 333 #define SPI_STATUS_WR_ERR_MSB 1 |
| 334 #define SPI_STATUS_WR_ERR_LSB 1 |
| 335 #define SPI_STATUS_WR_ERR_MASK 0x00000002 |
| 336 #define SPI_STATUS_WR_ERR_GET(x) (((x) & SPI_STATUS_WR_ERR_MASK)
>> SPI_STATUS_WR_ERR_LSB) |
| 337 #define SPI_STATUS_WR_ERR_SET(x) (((x) << SPI_STATUS_WR_ERR_LSB)
& SPI_STATUS_WR_ERR_MASK) |
| 338 #define SPI_STATUS_READY_MSB 0 |
| 339 #define SPI_STATUS_READY_LSB 0 |
| 340 #define SPI_STATUS_READY_MASK 0x00000001 |
| 341 #define SPI_STATUS_READY_GET(x) (((x) & SPI_STATUS_READY_MASK)
>> SPI_STATUS_READY_LSB) |
| 342 #define SPI_STATUS_READY_SET(x) (((x) << SPI_STATUS_READY_LSB)
& SPI_STATUS_READY_MASK) |
| 343 |
| 344 #define NON_ASSOC_SLEEP_EN_ADDRESS 0x00000482 |
| 345 #define NON_ASSOC_SLEEP_EN_OFFSET 0x00000482 |
| 346 #define NON_ASSOC_SLEEP_EN_BIT_MSB 0 |
| 347 #define NON_ASSOC_SLEEP_EN_BIT_LSB 0 |
| 348 #define NON_ASSOC_SLEEP_EN_BIT_MASK 0x00000001 |
| 349 #define NON_ASSOC_SLEEP_EN_BIT_GET(x) (((x) & NON_ASSOC_SLEEP_EN_BIT_
MASK) >> NON_ASSOC_SLEEP_EN_BIT_LSB) |
| 350 #define NON_ASSOC_SLEEP_EN_BIT_SET(x) (((x) << NON_ASSOC_SLEEP_EN_BIT
_LSB) & NON_ASSOC_SLEEP_EN_BIT_MASK) |
| 351 |
| 352 #define CIS_WINDOW_ADDRESS 0x00000600 |
| 353 #define CIS_WINDOW_OFFSET 0x00000600 |
| 354 #define CIS_WINDOW_DATA_MSB 7 |
| 355 #define CIS_WINDOW_DATA_LSB 0 |
| 356 #define CIS_WINDOW_DATA_MASK 0x000000ff |
| 357 #define CIS_WINDOW_DATA_GET(x) (((x) & CIS_WINDOW_DATA_MASK) >
> CIS_WINDOW_DATA_LSB) |
| 358 #define CIS_WINDOW_DATA_SET(x) (((x) << CIS_WINDOW_DATA_LSB) &
CIS_WINDOW_DATA_MASK) |
| 359 |
| 360 |
| 361 #ifndef __ASSEMBLER__ |
| 362 |
| 363 typedef struct mbox_host_reg_reg_s { |
| 364 unsigned char pad0[1024]; /* pad to 0x400 */ |
| 365 volatile unsigned char host_int_status; |
| 366 volatile unsigned char cpu_int_status; |
| 367 volatile unsigned char error_int_status; |
| 368 volatile unsigned char counter_int_status; |
| 369 volatile unsigned char mbox_frame; |
| 370 volatile unsigned char rx_lookahead_valid; |
| 371 unsigned char pad1[2]; /* pad to 0x408 */ |
| 372 volatile unsigned char rx_lookahead0[4]; |
| 373 volatile unsigned char rx_lookahead1[4]; |
| 374 volatile unsigned char rx_lookahead2[4]; |
| 375 volatile unsigned char rx_lookahead3[4]; |
| 376 volatile unsigned char int_status_enable; |
| 377 volatile unsigned char cpu_int_status_enable; |
| 378 volatile unsigned char error_status_enable; |
| 379 volatile unsigned char counter_int_status_enable; |
| 380 unsigned char pad2[4]; /* pad to 0x420 */ |
| 381 volatile unsigned char count[8]; |
| 382 unsigned char pad3[24]; /* pad to 0x440 */ |
| 383 volatile unsigned char count_dec[32]; |
| 384 volatile unsigned char scratch[8]; |
| 385 volatile unsigned char fifo_timeout; |
| 386 volatile unsigned char fifo_timeout_enable; |
| 387 volatile unsigned char disable_sleep; |
| 388 unsigned char pad4[5]; /* pad to 0x470 */ |
| 389 volatile unsigned char local_bus; |
| 390 unsigned char pad5[1]; /* pad to 0x472 */ |
| 391 volatile unsigned char int_wlan; |
| 392 unsigned char pad6[1]; /* pad to 0x474 */ |
| 393 volatile unsigned char window_data[4]; |
| 394 volatile unsigned char window_write_addr[4]; |
| 395 volatile unsigned char window_read_addr[4]; |
| 396 volatile unsigned char spi_config; |
| 397 volatile unsigned char spi_status; |
| 398 volatile unsigned char non_assoc_sleep_en; |
| 399 unsigned char pad7[381]; /* pad to 0x600 */ |
| 400 volatile unsigned char cis_window[512]; |
| 401 } mbox_host_reg_reg_t; |
| 402 |
| 403 #endif /* __ASSEMBLER__ */ |
| 404 |
| 405 #endif /* _MBOX_HOST_REG_H_ */ |
OLD | NEW |