1 /* $NetBSD: sequoia.h,v 1.1 2002/02/10 01:58:10 thorpej Exp $ */ 2 3 /* 4 * Copyright 1997 5 * Digital Equipment Corporation. All rights reserved. 6 * 7 * This software is furnished under license and may be used and 8 * copied only in accordance with the following terms and conditions. 9 * Subject to these conditions, you may download, copy, install, 10 * use, modify and distribute this software in source and/or binary 11 * form. No title or ownership is transferred hereby. 12 * 13 * 1) Any source code used, modified or distributed must reproduce 14 * and retain this copyright notice and list of conditions as 15 * they appear in the source file. 16 * 17 * 2) No right is granted to use any trade name, trademark, or logo of 18 * Digital Equipment Corporation. Neither the "Digital Equipment 19 * Corporation" name nor any trademark or logo of Digital Equipment 20 * Corporation may be used to endorse or promote products derived 21 * from this software without the prior written permission of 22 * Digital Equipment Corporation. 23 * 24 * 3) This software is provided "AS-IS" and any express or implied 25 * warranties, including but not limited to, any implied warranties 26 * of merchantability, fitness for a particular purpose, or 27 * non-infringement are disclaimed. In no event shall DIGITAL be 28 * liable for any damages whatsoever, and in particular, DIGITAL 29 * shall not be liable for special, indirect, consequential, or 30 * incidental damages or damages for lost profits, loss of 31 * revenue or loss of use, whether such damages arise in contract, 32 * negligence, tort, under statute, in equity, at law or otherwise, 33 * even if advised of the possibility of such damage. 34 */ 35 36 /* 37 ** 38 ** MODULE DESCRIPTION: 39 ** 40 ** National Sequoia-1 and Sequoia-2 Definitions 41 ** 42 ** Initial Register Write Values are identified by _INIT 43 ** 44 ** CREATION DATE: 45 ** 46 ** 22-Jan-1997 47 ** 48 ** AUTHOR: 49 ** 50 ** Madeleine D. Robert 51 ** 52 ** MODIFICATION HISTORY: 53 ** 54 ** 27-Jan-1997 Maddy Added additional initial values. 55 ** 56 ** 24-Jan-1997 Maddy Initial Entry. 57 */ 58 59 60 #ifndef SEQUOIAH 61 #define SEQUOIAH 62 63 /**************************************************** 64 ** SEQUOIA ** 65 *****************************************************/ 66 #define SEQUOIA_BASE 0x24 67 #define SEQUOIA_NPORTS 0x4 68 69 #define SEQUOIA_INDEX 0x24 70 #define SEQUOIA_INDEX_OFFSET 0x0 71 72 #define SEQUOIA_DATA 0x26 73 #define SEQUOIA_DATA_OFFSET 0x2 74 75 76 /**************************************************** 77 ** SEQUOIA-1 ** 78 *****************************************************/ 79 80 /* 81 ** Power Management Control Registers 82 ** 83 */ 84 85 /* 86 ** 87 ** PMC Clock Control Register (CCR) - Index 0x000 88 ** 89 ** Loc Size Name Function 90 ** ----- ---- ---- --------------------------------- 91 ** <0> 1 CNCLKSEL0 Conserve Clock Select 0 92 ** <1> 1 CNCLKSEL1 Conserve Clock Select 1 93 ** <2> 1 CNCLKSEL2 Conserve Clock Select 2 94 ** <3> 1 CNSRVEN Conserve Mode Enable 95 ** <4> 1 SLCLKSEL0 Slow Clock Select 0 96 ** <5> 1 SLCLKSEL1 Slow Clock Select 1 97 ** <6> 1 SLCLKSEL2 Slow Clock Select 2 98 ** <7> 1 SLWCLKEN Slow Clock Enable 99 ** <8> 1 SLPSLWEN Sleep Mode, Slow Clock Enable 100 ** <9> 1 DZSLWEN Doze Mode, Slow Clock Enable 101 ** <10> 1 SPNDSLWEN Suspend Mode, Slow Clock Enable 102 ** <11> 1 LBSLWEN Low Battery Slow Enable 103 ** <12> 1 DZONHALT Doze on HALT 104 ** <14> 1 LBST Low Battery Status 105 ** <15> 1 VLBST Very Low Battery Status 106 ** 107 ** <13> Reserved 108 */ 109 #define PMC_CCR_REG 0x000 110 #define PMC_CCR_INIT 0x000 111 #define CCR_V_CNCLKSEL 0 112 #define CCR_M_CNCLKSEL 0x7 << CCR_V_CNCLKSEL 113 #define CCR_V_CNCLKSEL0 0 114 #define CCR_M_CNCLKSEL0 1 << CCR_V_CNCLKSEL0 115 #define CCR_V_CNCLKSEL1 1 116 #define CCR_M_CNCLKSEL1 1 << CCR_V_CNCLKSEL1 117 #define CCR_V_CNCLKSEL2 2 118 #define CCR_M_CNCLKSEL2 1 << CCR_V_CNCLKSEL2 119 #define CCR_V_CNSRVEN 3 120 #define CCR_M_CNSRVEN 1 << CCR_V_CNSRVEN 121 #define CCR_V_SLCLKSEL 4 122 #define CCR_M_SLCLKSEL 0x7 << CCR_V_SLCLKSEL 123 #define CCR_V_SLCLKSEL0 4 124 #define CCR_M_SLCLKSEL0 1 << CCR_V_SLCLKSEL0 125 #define CCR_V_SLCLKSEL1 5 126 #define CCR_M_SLCLKSEL1 1 << CCR_V_SLCLKSEL1 127 #define CCR_V_SLCLKSEL2 6 128 #define CCR_M_SLCLKSEL2 1 << CCR_V_SLCLKSEL2 129 #define CCR_V_SLWCLKEN 7 130 #define CCR_M_SLWCLKEN 1 << CCR_V_SLWCLKEN 131 #define CCR_V_SLPSLWEN 8 132 #define CCR_M_SLPSLWEN 1 << CCR_V_SLPSLWEN 133 #define CCR_V_DZSLWEN 9 134 #define CCR_M_DZSLWEN 1 << CCR_V_DZSLWEN 135 #define CCR_V_SPNDSLWEN 10 136 #define CCR_M_SPNDSLWEN 1 << CCR_V_SPNDSLWEN 137 #define CCR_V_LBSLWEN 11 138 #define CCR_M_LBSLWEN 1 << CCR_V_LBSLWEN 139 #define CCR_V_DZONHALT 12 140 #define CCR_M_DZONHALT 1 << CCR_V_DZONHALT 141 #define CCR_V_LBST 14 142 #define CCR_M_LBST 1 << CCR_V_LBST 143 #define CCR_V_VLBST 15 144 #define CCR_M_VLBST 1 << CCR_V_VLBST 145 146 /* 147 ** Conserve Clock Selects 148 */ 149 #define CNCLKSEL_DIV1 0x000 150 #define CNCLKSEL_DIV2 CCR_M_CNCLKSEL0 151 #define CNCLKSEL_DIV4 CCR_M_CNCLKSEL1 152 #define CNCLKSEL_DIV8 (CCR_M_CNCLKSEL0 | CCR_M_CNCLKSEL1) 153 #define CNCLKSEL_DIV16 CCR_M_CNCLKSEL2 154 #define CNCLKSEL_DIV32 (CCR_M_CNCLKSEL0 | CCR_M_CNCLKSEL2) 155 #define CNCLKSEL_DIV64 (CCR_M_CNCLKSEL1 | CCR_M_CNCLKSEL2) 156 157 /* 158 ** Slow Clock Selects 159 */ 160 #define SLCLKSEL_DIV1 0x000 161 #define SLCLKSEL_DIV2 CCR_M_SLCLKSEL0 162 #define SLCLKSEL_DIV4 CCR_M_SLCLKSEL1 163 #define SLCLKSEL_DIV8 (CCR_M_SLCLKSEL0 | CCR_M_SLCLKSEL1) 164 #define SLCLKSEL_DIV16 CCR_M_SLCLKSEL2 165 #define SLCLKSEL_DIV32 (CCR_M_SLCLKSEL0 | CCR_M_SLCLKSEL2) 166 #define SLCLKSEL_DIV64 (CCR_M_SLCLKSEL1 | CCR_M_SLCLKSEL2) 167 #define SLCLKSEL_STOPPED (CCR_M_SLCLKSEL0 | CCR_M_SLCLKSEL1 | CCR_M_SLCLKSEL2) 168 169 /* 170 ** 171 ** Power Management Status Register (PMSR) - Index 0x001 172 ** 173 ** Loc Size Name Function 174 ** ----- ---- ---- --------------------------------- 175 ** <0> 1 WAKESRC0 Wake-up Source 0 176 ** <1> 1 WAKESRC1 Wake-up Source 1 177 ** <2> 1 WAKESRC2 Wake-up Source 2 178 ** <3> 1 ACPWR AC Power 179 ** <4> 1 PMISRC0 Power Management Interrupt 0 180 ** <5> 1 PMISRC1 Power Management Interrupt 1 181 ** <6> 1 PMISRC2 Power Management Interrupt 2 182 ** <7> 1 PMISRC3 Power Management Interrupt 3 183 ** <8> 1 PMISRC4 Power Management Interrupt 4 184 ** <9> 1 RESUME Resume 185 ** <10> 1 WAKE0STATUS Wake 0 Status 186 ** <11> 1 WAKE1STATUS Wake 1 Status 187 ** <13> 1 PMMD0 Power Management Mode 0 188 ** <14> 1 PMMD1 Power Management Mode 1 189 ** <15> 1 PMMD2 Power Management Mode 2 190 ** 191 ** <12> Reserved 192 */ 193 #define PMC_PMSR_REG 0x001 194 #define PMC_PMSR_INIT ( PMSR_M_WAKESRC | PMSR_M_PMISRC | PMMD_ON ) 195 #define PMSR_V_WAKESRC 0 196 #define PMSR_M_WAKESRC 0x7 << PMSR_V_WAKESRC 197 #define PMSR_V_WAKESRC0 0 198 #define PMSR_M_WAKESRC0 1 << PMSR_V_WAKESRC0 199 #define PMSR_V_WAKESRC1 1 200 #define PMSR_M_WAKESRC1 1 << PMSR_V_WAKESRC1 201 #define PMSR_V_WAKESRC2 2 202 #define PMSR_M_WAKESRC2 1 << PMSR_V_WAKESRC2 203 #define PMSR_V_ACPWR 3 204 #define PMSR_M_ACPWR 1 << PMSR_V_ACPWR 205 #define PMSR_V_PMISRC 4 206 #define PMSR_M_PMISRC 0x1F << PMSR_V_PMISRC 207 #define PMSR_V_PMISRC0 4 208 #define PMSR_M_PMISRC0 1 << PMSR_V_PMISRC0 209 #define PMSR_V_PMISRC1 5 210 #define PMSR_M_PMISRC1 1 << PMSR_V_PMISRC1 211 #define PMSR_V_PMISRC2 6 212 #define PMSR_M_PMISRC2 1 << PMSR_V_PMISRC2 213 #define PMSR_V_PMISRC3 7 214 #define PMSR_M_PMISRC3 1 << PMSR_V_PMISRC3 215 #define PMSR_V_PMISRC4 8 216 #define PMSR_M_PMISRC4 1 << PMSR_V_PMISRC4 217 #define PMSR_V_RESUME 9 218 #define PMSR_M_RESUME 1 << PMSR_V_RESUME 219 #define PMSR_V_WAKE0STATUS 10 220 #define PMSR_M_WAKE0STATUS 1 << PMSR_V_WAKE0STATUS 221 #define PMSR_V_WAKE1STATUS 11 222 #define PMSR_M_WAKE1STATUS 1 << PMSR_V_WAKE1STATUS 223 #define PMSR_V_PMMD 13 224 #define PMSR_M_PMMD 0x7 << PMSR_V_PMMD 225 #define PMSR_V_PMMD0 13 226 #define PMSR_M_PMMD0 1 << PMSR_V_PMMD0 227 #define PMSR_V_PMMD1 14 228 #define PMSR_M_PMMD1 1 << PMSR_V_PMMD1 229 #define PMSR_V_PMMD2 15 230 #define PMSR_M_PMMD2 1 << PMSR_V_PMMD2 231 232 /* 233 ** Wake-up Source 234 */ 235 #define WAKESRC_NONE 0x000 236 #define WAKESRC_RING PMSR_M_WAKESRC0 237 #define WAKESRC_RTCI PMSR_M_WAKESRC1 238 #define WAKESRC_SWTCH (PMSR_M_WAKESRC0 | PMSR_M_WAKESRC1) 239 #define WAKESRC_GPTC PMSR_M_WAKESRC2 240 #define WAKESRC_WAKE0 (PMSR_M_WAKESRC0 | PMSR_M_WAKESRC2) 241 #define WAKESRC_WAKE1 (PMSR_M_WAKESRC1 | PMSR_M_WAKESRC2) 242 #define WAKESRC_WAKECLR (PMSR_M_WAKESRC0 | PMSR_M_WAKESRC1 | PMSR_M_WAKESRC2) 243 244 /* 245 ** Power Management Interrupt Source 246 */ 247 #define PMISRC_NONE 0x000 248 #define PMISRC_IRQI PMSR_M_PMISRC0 249 #define PMISRC_LBC PMSR_M_PMISRC1 250 #define PMISRC_SUSTO (PMSR_M_PMISRC0 | PMSR_M_PMISRC1) 251 #define PMISRC_SLPTO PMSR_M_PMISRC2 252 #define PMISRC_DZTO (PMSR_M_PMISRC0 | PMSR_M_PMISRC2) 253 #define PMISRC_GENTO (PMSR_M_PMISRC1 | PMSR_M_PMISRC2) 254 #define PMISRC_GENACT (PMSR_M_PMISRC0 | PMSR_M_PMISRC1 | PMSR_M_PMISRC2) 255 #define PMISRC_PRIACT PMSR_M_PMISRC3 256 #define PMISRC_SCDACT (PMSR_M_PMISRC0 | PMSR_M_PMISRC3) 257 #define PMISRC_SCDACTTO (PMSR_M_PMISRC1 | PMSR_M_PMISRC3) 258 #define PMISRC_SWTCH (PMSR_M_PMISRC0 | PMSR_M_PMISRC1 | PMSR_M_PMISRC3) 259 #define PMISRC_ACPWR (PMSR_M_PMISRC2 | PMSR_M_PMISRC3) 260 #define PMISRC_PRGTTO (PMSR_M_PMISRC0 | PMSR_M_PMISRC2 | PMSR_M_PMISRC3) 261 #define PMISRC_GPTCOMP (PMSR_M_PMISRC1 | PMSR_M_PMISRC2 | PMSR_M_PMISRC3) 262 #define PMISRC_RTC (PMSR_M_PMISRC0 | PMSR_M_PMISRC4) 263 #define PMISRC_RESCHPMI (PMSR_M_PMISRC1 | PMSR_M_PMISRC4) 264 #define PMISRC_SWSMI (PMSR_M_PMISRC0 | PMSR_M_PMISRC1 | PMSR_M_PMISRC4) 265 266 /* 267 ** Power Management Mode 268 */ 269 #define PMMD_STDBY 0x000 270 #define PMMD_ON PMSR_M_PMMD0 271 #define PMMD_CONSERVE PMSR_M_PMMD1 272 #define PMMD_DOZE (PMSR_M_PMMD0 | PMSR_M_PMMD1) 273 #define PMMD_SLEEP PMSR_M_PMMD2 274 #define PMMD_SUSPEND (PMSR_M_PMMD0 | PMSR_M_PMMD2) 275 276 277 /* 278 ** 279 ** Activity Source Register (ASR) - Index 0x002 280 ** 281 ** Loc Size Name Function 282 ** ----- ---- ---- --------------------------------- 283 ** <0> 1 VIDACTV Video Active 284 ** <1> 1 HDACTV Hard Disk Active 285 ** <2> 1 FLPACTV Floppy Disk Active 286 ** <3> 1 KBDACTV Keyboard Active 287 ** <4> 1 SIOACTV Serial I/O Active 288 ** <5> 1 PIOACTV Parallel I/O Active 289 ** <6> 1 PROG0ACTV PRM 0 Active 290 ** <7> 1 PROG1ACTV PRM 1 Active 291 ** <8> 1 PROG2ACTV PRM 2 Active 292 ** <9> 1 PROG3ACTV PRM 3 Active 293 ** <12> 1 EXT0ACTV Primary Activity Mask EXTACT0 294 ** <13> 1 EXT1ACTV Primary Activity Mask EXTACT1 295 ** <14> 1 EXT2ACTV Primary Activity Mask EXTACT2 296 ** <15> 1 EXT3ACTV Primary Activity Mask EXTACT3 297 ** 298 ** <10:11> Reserved 299 */ 300 #define PMC_ASR_REG 0x002 301 #define PMC_ASR_INIT 0x0000 302 #define ASR_V_VIDACTV 0 303 #define ASR_M_VIDACTV 1 << ASR_V_VIDACTV 304 #define ASR_V_HDACTV 1 305 #define ASR_M_HDACTV 1 << ASR_V_HDACTV 306 #define ASR_V_FLPACTV 2 307 #define ASR_M_FLPACTV 1 << ASR_V_FLPACTV 308 #define ASR_V_KBDACTV 3 309 #define ASR_M_KBDACTV 1 << ASR_V_KBDACTV 310 #define ASR_V_SIOACTV 4 311 #define ASR_M_SIOACTV 1 << ASR_V_SIOACTV 312 #define ASR_V_PIOACTV 5 313 #define ASR_M_PIOACTV 1 << ASR_V_PIOACTV 314 #define ASR_V_PROG0ACTV 6 315 #define ASR_M_PROG0ACTV 1 << ASR_V_PROG0ACTV 316 #define ASR_V_PROG1ACTV 7 317 #define ASR_M_PROG1ACTV 1 << ASR_V_PROG1ACTV 318 #define ASR_V_PROG2ACTV 8 319 #define ASR_M_PROG2ACTV 1 << ASR_V_PROG2ACTV 320 #define ASR_V_PROG3ACTV 9 321 #define ASR_M_PROG3ACTV 1 << ASR_V_PROG3ACTV 322 #define ASR_V_EXT0ACTV 12 323 #define ASR_M_EXT0ACTV 1 << ASR_V_EXT0ACTV 324 #define ASR_V_EXT1ACTV 13 325 #define ASR_M_EXT1ACTV 1 << ASR_V_EXT1ACTV 326 #define ASR_V_EXT2ACTV 14 327 #define ASR_M_EXT2ACTV 1 << ASR_V_EXT2ACTV 328 #define ASR_V_EXT3ACTV 15 329 #define ASR_M_EXT3ACTV 1 << ASR_V_EXT3ACTV 330 331 /* 332 ** 333 ** Primary Activity Mask Register (PAMR) - Index 0x003 334 ** 335 ** Loc Size Name Function 336 ** ----- ---- ---- --------------------------------- 337 ** <0> 1 PAMSKVID PAM Video Accesses 338 ** <1> 1 PAMSKHD PAM Hard Disk Accesses 339 ** <2> 1 PAMSKFLP PAM Floppy Accesses 340 ** <3> 1 PAMSKKDB PAM Keyboard Accesses 341 ** <4> 1 PAMSKSIO PAM Serial I/O Accesses 342 ** <5> 1 PAMSKPIO PAM Parallel I/O Accesses 343 ** <6> 1 PAMSKPROG0 PAM Programmable Range 0 344 ** <7> 1 PAMSKPROG1 PAM Programmable Range 1 345 ** <8> 1 PAMSKPROG2 PAM Programmable Range 2 346 ** <9> 1 PAMSKPROG3 PAM Programmable Range 3 347 ** <12> 1 PAMSKEACT0 PAM EXTACT0 348 ** <13> 1 PAMSKEACT1 PAM EXTACT1 349 ** <14> 1 PAMSKEACT2 PAM EXTACT2 350 ** <15> 1 PAMSKEACT3 PAM EXTACT3 351 ** 352 ** <10:11> Reserved 353 */ 354 #define PMC_PAMR_REG 0x003 355 #define PMC_PAMR_INIT 0x0000 356 #define PAMR_V_PAMSKVID 0 357 #define PAMR_M_PAMSKVID 1 << PAMR_V_PAMSKVID 358 #define PAMR_V_PAMSKHD 1 359 #define PAMR_M_PAMSKHD 1 << PAMR_V_PAMSKHD 360 #define PAMR_V_PAMSKFLP 2 361 #define PAMR_M_PAMSKFLP 1 << PAMR_V_PAMSKFLP 362 #define PAMR_V_PAMSKKDB 3 363 #define PAMR_M_PAMSKKDB 1 << PAMR_V_PAMSKKDB 364 #define PAMR_V_PAMSKSIO 4 365 #define PAMR_M_PAMSKSIO 1 << PAMR_V_PAMSKSIO 366 #define PAMR_V_PAMSKPIO 5 367 #define PAMR_M_PAMSKPIO 1 << PAMR_V_PAMSKPIO 368 #define PAMR_V_PAMSKPROG0 6 369 #define PAMR_M_PAMSKPROG0 1 << PAMR_V_PAMSKPROG0 370 #define PAMR_V_PAMSKPROG1 7 371 #define PAMR_M_PAMSKPROG1 1 << PAMR_V_PAMSKPROG1 372 #define PAMR_V_PAMSKPROG2 8 373 #define PAMR_M_PAMSKPROG2 1 << PAMR_V_PAMSKPROG2 374 #define PAMR_V_PAMSKPROG3 9 375 #define PAMR_M_PAMSKPROG3 1 << PAMR_V_PAMSKPROG3 376 #define PAMR_V_PAMSKEACT0 12 377 #define PAMR_M_PAMSKEACT0 1 << PAMR_V_PAMSKEACT0 378 #define PAMR_V_PAMSKEACT1 13 379 #define PAMR_M_PAMSKEACT1 1 << PAMR_V_PAMSKEACT1 380 #define PAMR_V_PAMSKEACT2 14 381 #define PAMR_M_PAMSKEACT2 1 << PAMR_V_PAMSKEACT2 382 #define PAMR_V_PAMSKEACT3 15 383 #define PAMR_M_PAMSKEACT3 1 << PAMR_V_PAMSKEACT3 384 385 /* 386 ** 387 ** PMI Mask Register (PMIMR) - Index 0x004 388 ** 389 ** Loc Size Name Function 390 ** ----- ---- ---- --------------------------------- 391 ** <0> 1 IMSKVID PMI Mask Video Accesses 392 ** <1> 1 IMSKHD PMI Mask Hard Disk Accesses 393 ** <2> 1 IMSKFLP PMI Mask Floppy Accesses 394 ** <3> 1 IMSKKDB PMI Mask Keyboard Accesses 395 ** <4> 1 IMSKSIO PMI Mask Serial I/O Accesses 396 ** <5> 1 IMSKPIO PMI Mask Parallel I/O Accesses 397 ** <6> 1 IMSKPROG0 PMI Mask Programmable Range 0 398 ** <7> 1 IMSKPROG1 PMI Mask Programmable Range 1 399 ** <8> 1 IMSKPROG2 PMI Mask Programmable Range 2 400 ** <9> 1 IMSKPROG3 PMI Mask Programmable Range 3 401 ** <12> 1 IMSKEACT0 PMI Mask EXTACT0 402 ** <13> 1 IMSKEACT1 PMI Mask EXTACT1 403 ** <14> 1 IMSKEACT2 PMI Mask EXTACT2 404 ** <15> 1 IMSKEACT3 PMI Mask EXTACT3 405 ** 406 ** <10:11> Reserved 407 */ 408 #define PMC_PMIMR_REG 0x004 409 #define PMC_PMIMR_INIT ( PMIMR_M_IMSKVID | PMIMR_M_IMSKHD | \ 410 PMIMR_M_IMSKFLP | PMIMR_M_IMSKKDB | \ 411 PMIMR_M_IMSKSIO | PMIMR_M_IMSKPIO | \ 412 PMIMR_M_IMSKPROG0 | PMIMR_M_IMSKPROG1 | \ 413 PMIMR_M_IMSKPROG2 | PMIMR_M_IMSKPROG3 | \ 414 PMIMR_M_IMSKEACT0 | PMIMR_M_IMSKEACT1 | \ 415 PMIMR_M_IMSKEACT2 | PMIMR_M_IMSKEACT3 ) 416 #define PMIMR_V_IMSKVID 0 417 #define PMIMR_M_IMSKVID 1 << PMIMR_V_IMSKVID 418 #define PMIMR_V_IMSKHD 1 419 #define PMIMR_M_IMSKHD 1 << PMIMR_V_IMSKHD 420 #define PMIMR_V_IMSKFLP 2 421 #define PMIMR_M_IMSKFLP 1 << PMIMR_V_IMSKFLP 422 #define PMIMR_V_IMSKKDB 3 423 #define PMIMR_M_IMSKKDB 1 << PMIMR_V_IMSKKDB 424 #define PMIMR_V_IMSKSIO 4 425 #define PMIMR_M_IMSKSIO 1 << PMIMR_V_IMSKSIO 426 #define PMIMR_V_IMSKPIO 5 427 #define PMIMR_M_IMSKPIO 1 << PMIMR_V_IMSKPIO 428 #define PMIMR_V_IMSKPROG0 6 429 #define PMIMR_M_IMSKPROG0 1 << PMIMR_V_IMSKPROG0 430 #define PMIMR_V_IMSKPROG1 7 431 #define PMIMR_M_IMSKPROG1 1 << PMIMR_V_IMSKPROG1 432 #define PMIMR_V_IMSKPROG2 8 433 #define PMIMR_M_IMSKPROG2 1 << PMIMR_V_IMSKPROG2 434 #define PMIMR_V_IMSKPROG3 9 435 #define PMIMR_M_IMSKPROG3 1 << PMIMR_V_IMSKPROG3 436 #define PMIMR_V_IMSKEACT0 12 437 #define PMIMR_M_IMSKEACT0 1 << PMIMR_V_IMSKEACT0 438 #define PMIMR_V_IMSKEACT1 13 439 #define PMIMR_M_IMSKEACT1 1 << PMIMR_V_IMSKEACT1 440 #define PMIMR_V_IMSKEACT2 14 441 #define PMIMR_M_IMSKEACT2 1 << PMIMR_V_IMSKEACT2 442 #define PMIMR_V_IMSKEACT3 15 443 #define PMIMR_M_IMSKEACT3 1 << PMIMR_V_IMSKEACT3 444 445 /* 446 ** 447 ** Heat Regulator Control Register (HRCR) - Index 0x005 448 ** 449 ** Loc Size Name Function 450 ** ----- ---- ---- --------------------------------- 451 ** <0> 1 HTRGDLY0 Heat Regulator Delay 0 452 ** <1> 1 HTRGDLY1 Heat Regulator Delay 1 453 ** <2> 1 HTRGDLY2 Heat Regulator Delay 2 454 ** <3> 1 HTRGRAT0 Heat Regulator Ratio 0 455 ** <4> 1 HTRGRAT1 Heat Regulator Ratio 1 456 ** <5> 1 HTRGRAT2 Heat Regulator Ratio 2 457 ** <6> 1 HTRGEN Heat Regulator Enable 458 ** <7> 1 HTRGLOCK Heat Regulator Configuration Lock 459 ** <14> 1 FRCSLWEN Force SLOW Enable 460 ** <15> 1 FRCSLWLOCK Force Slow Lock 461 ** 462 ** <8:13> Reserved 463 */ 464 #define PMC_HRCR_REG 0x005 465 #define PMC_HRCR_INIT 0x0000 466 #define HRCR_V_HTRGDLY 0 467 #define HRCR_M_HTRGDLY 0x7 << HRCR_V_HTRGDLY 468 #define HRCR_V_HTRGDLY0 0 469 #define HRCR_M_HTRGDLY0 1 << HRCR_V_HTRGDLY0 470 #define HRCR_V_HTRGDLY1 1 471 #define HRCR_M_HTRGDLY1 1 << HRCR_V_HTRGDLY1 472 #define HRCR_V_HTRGDLY2 2 473 #define HRCR_M_HTRGDLY2 1 << HRCR_V_HTRGDLY2 474 #define HRCR_V_HTRGRAT 3 475 #define HRCR_M_HTRGRAT 0x7 << HRCR_V_HTRGRAT 476 #define HRCR_V_HTRGRAT0 3 477 #define HRCR_M_HTRGRAT0 1 << HRCR_V_HTRGRAT0 478 #define HRCR_V_HTRGRAT1 4 479 #define HRCR_M_HTRGRAT1 1 << HRCR_V_HTRGRAT1 480 #define HRCR_V_HTRGRAT2 5 481 #define HRCR_M_HTRGRAT2 1 << HRCR_V_HTRGRAT2 482 #define HRCR_V_HTRGEN 6 483 #define HRCR_M_HTRGEN 1 << HRCR_V_HTRGEN 484 #define HRCR_V_HTRGLOCK 7 485 #define HRCR_M_HTRGLOCK 1 << HRCR_V_HTRGLOCK 486 #define HRCR_V_FRCSLWEN 14 487 #define HRCR_M_FRCSLWEN 1 << HRCR_V_FRCSLWEN 488 #define HRCR_V_FRCSLWLOCK 15 489 #define HRCR_M_FRCSLWLOCK 1 << HRCR_V_FRCSLWLOCK 490 491 /* 492 ** Heater Regulator Delay 493 */ 494 #define HTRGDLY_16SEC 0x000 495 #define HTRGDLY_32SEC HRCR_M_HTRGDLY0 496 #define HTRGDLY_60SEC HRCR_M_HTRGDLY1 497 #define HTRGDLY_120SEC HRCR_M_HTRGDLY2 498 #define HTRGDLY_240SEC (HRCR_M_HTRGDLY1 | HRCR_M_HTRGDLY2) 499 #define HTRGDLY_480SEC (HRCR_M_HTRGDLY0 | HRCR_M_HTRGDLY1 | HRCR_M_HTRGDLY2) 500 501 /* 502 ** Heater Regulator Ratio (Percent) 503 */ 504 #define HTRGRAT_50 0x000 505 #define HTRGRAT_66 HRCR_M_HTRGRAT0 506 #define HTRGRAT_80 HRCR_M_HTRGRAT1 507 #define HTRGRAT_90 (HRCR_M_HTRGRAT0 | HRCR_M_HTRGRAT1) 508 509 /* 510 ** 511 ** PMI Mask and Control Register (PMIMCR) - Index 0x006 512 ** 513 ** Loc Size Name Function 514 ** ----- ---- ---- --------------------------------- 515 ** <0> 1 IMSKSQ2PMI Mask SEQUOIA-2 Source from PMI 516 ** <1> 1 IMSKLB Mask Low Battery from PMI 517 ** <2> 1 IMSKSPNDTO Mask Suspend Time-out from PMI 518 ** <3> 1 IMSKSLPTO Mask Sleep Time-out from PMI 519 ** <4> 1 IMSKDZTO Mask Doze Time-out from PMI 520 ** <5> 1 IMSKGENTO Mask Generic Time-out from PMI 521 ** <6> 1 IMSKACTV Mask Generic Activity from PMI 522 ** <7> 1 IMSKPACTV Mask Primary Activity from PMI 523 ** <8> 1 IMSKSACTV Mask Secondary Activity from PMI 524 ** <10> 1 IMSKSWSTBY Mask SWTCH from PMI 525 ** <11> 1 IMSKACPWR Mask ACPWR from PMI 526 ** <12> 1 IMSKPROGTO Mask Programmable Time-out from PMI 527 ** <13> 1 IMSKGPTMR Mask GP Timer from PMI 528 ** 529 ** <9><14:15> Reserved 530 */ 531 #define PMC_PMIMCR_REG 0x006 532 #define PMC_PMIMCR_INIT ( PMIMCR_M_IMSKSQ2PMI | PMIMCR_M_IMSKLB | \ 533 PMIMCR_M_IMSKSPNDTO | PMIMCR_M_IMSKSLPTO | \ 534 PMIMCR_M_IMSKDZTO | PMIMCR_M_IMSKGENTO | \ 535 PMIMCR_M_IMSKACTV | PMIMCR_M_IMSKPACTV | \ 536 PMIMCR_M_IMSKSACTV | PMIMCR_M_IMSKSWSTBY | \ 537 PMIMCR_M_IMSKACPWR | PMIMCR_M_IMSKPROGTO | \ 538 PMIMCR_M_IMSKGPTMR ) 539 #define PMIMCR_V_IMSKSQ2PMI 0 540 #define PMIMCR_M_IMSKSQ2PMI 1 << PMIMCR_V_IMSKSQ2PMI 541 #define PMIMCR_V_IMSKLB 1 542 #define PMIMCR_M_IMSKLB 1 << PMIMCR_V_IMSKLB 543 #define PMIMCR_V_IMSKSPNDTO 2 544 #define PMIMCR_M_IMSKSPNDTO 1 << PMIMCR_V_IMSKSPNDTO 545 #define PMIMCR_V_IMSKSLPTO 3 546 #define PMIMCR_M_IMSKSLPTO 1 << PMIMCR_V_IMSKSLPTO 547 #define PMIMCR_V_IMSKDZTO 4 548 #define PMIMCR_M_IMSKDZTO 1 << PMIMCR_V_IMSKDZTO 549 #define PMIMCR_V_IMSKGENTO 5 550 #define PMIMCR_M_IMSKGENTO 1 << PMIMCR_V_IMSKGENTO 551 #define PMIMCR_V_IMSKACTV 6 552 #define PMIMCR_M_IMSKACTV 1 << PMIMCR_V_IMSKACTV 553 #define PMIMCR_V_IMSKPACTV 7 554 #define PMIMCR_M_IMSKPACTV 1 << PMIMCR_V_IMSKPACTV 555 #define PMIMCR_V_IMSKSACTV 8 556 #define PMIMCR_M_IMSKSACTV 1 << PMIMCR_V_IMSKSACTV 557 #define PMIMCR_V_IMSKSWSTBY 10 558 #define PMIMCR_M_IMSKSWSTBY 1 << PMIMCR_V_IMSKSWSTBY 559 #define PMIMCR_V_IMSKACPWR 11 560 #define PMIMCR_M_IMSKACPWR 1 << PMIMCR_V_IMSKACPWR 561 #define PMIMCR_V_IMSKPROGTO 12 562 #define PMIMCR_M_IMSKPROGTO 1 << PMIMCR_V_IMSKPROGTO 563 #define PMIMCR_V_IMSKGPTMR 13 564 #define PMIMCR_M_IMSKGPTMR 1 << PMIMCR_V_IMSKGPTMR 565 566 /* 567 ** 568 ** General Purpose Control Register (GPCR) - Index 0x007 569 ** 570 ** Loc Size Name Function 571 ** ----- ---- ---- --------------------------------- 572 ** <0> 1 ACDISCNSRV ACPWR Disable Conserve Mode 573 ** <1> 1 ACON ACPWR On 574 ** <2> 1 REFRPRD0 Refresh Period 0 575 ** <3> 1 REFRPRD1 Refresh Period 1 576 ** <4> 1 REFRPRD2 Refresh Period 2 577 ** <5> 1 SLFREFEN Self Refresh Enable 578 ** <6> 1 RINGS0 Modem RING Select 0 579 ** <7> 1 RINGS1 Modem RING Select 1 580 ** <8> 1 GPIODATA0 General Purpose I/O Data 0 581 ** <9> 1 GPIODATA1 General Purpose I/O Data 1 582 ** <10> 1 GPIODATA2 General Purpose I/O Data 2 583 ** <11> 1 GPIODATA3 General Purpose I/O Data 3 584 ** <12> 1 GPIODIR0 General Purpose I/O Direction 0 585 ** <13> 1 GPIODIR1 General Purpose I/O Direction 1 586 ** <14> 1 GPIODIR2 General Purpose I/O Direction 2 587 ** <15> 1 GPIODIR3 General Purpose I/O Direction 3 588 ** 589 */ 590 #define PMC_GPCR_REG 0x007 591 #define PMC_GPCR_INIT ( REFRPRD_STOPPED | GPCR_M_GPIODIR0 | \ 592 GPCR_M_GPIODIR1 ) 593 #define GPCR_V_ACDISCNSRV 0 594 #define GPCR_M_ACDISCNSRV 1 << GPCR_V_ACDISCNSRV 595 #define GPCR_V_ACON 1 596 #define GPCR_M_ACON 1 << GPCR_V_ACON 597 #define GPCR_V_REFRPRD 2 598 #define GPCR_M_REFRPRD 0x7 << GPCR_V_REFRPRD 599 #define GPCR_V_REFRPRD0 2 600 #define GPCR_M_REFRPRD0 1 << GPCR_V_REFRPRD0 601 #define GPCR_V_REFRPRD1 3 602 #define GPCR_M_REFRPRD1 1 << GPCR_V_REFRPRD1 603 #define GPCR_V_REFRPRD2 4 604 #define GPCR_M_REFRPRD2 1 << GPCR_V_REFRPRD2 605 #define GPCR_V_SLFREFEN 5 606 #define GPCR_M_SLFREFEN 1 << GPCR_V_SLFREFEN 607 #define GPCR_V_RINGS 6 608 #define GPCR_M_RINGS 0x3 << GPCR_V_RINGS 609 #define GPCR_V_GPIODATA 8 610 #define GPCR_M_GPIODATA 0xF << GPCR_V_GPIODATA 611 #define GPCR_V_GPIODATA0 8 612 #define GPCR_M_GPIODATA0 1 << GPCR_V_GPIODATA0 613 #define GPCR_V_GPIODATA1 9 614 #define GPCR_M_GPIODATA1 1 << GPCR_V_GPIODATA1 615 #define GPCR_V_GPIODATA2 10 616 #define GPCR_M_GPIODATA2 1 << GPCR_V_GPIODATA2 617 #define GPCR_V_GPIODATA3 11 618 #define GPCR_M_GPIODATA3 1 << GPCR_V_GPIODATA3 619 #define GPCR_V_GPIODIR 12 620 #define GPCR_M_GPIODIR 0xF << GPCR_V_GPIODIR 621 #define GPCR_V_GPIODIR0 12 622 #define GPCR_M_GPIODIR0 1 << GPCR_V_GPIODIR0 623 #define GPCR_V_GPIODIR1 13 624 #define GPCR_M_GPIODIR1 1 << GPCR_V_GPIODIR1 625 #define GPCR_V_GPIODIR2 14 626 #define GPCR_M_GPIODIR2 1 << GPCR_V_GPIODIR2 627 #define GPCR_V_GPIODIR3 15 628 #define GPCR_M_GPIODIR3 1 << GPCR_V_GPIODIR3 629 630 /* 631 ** Refresh Period 632 */ 633 #define REFRPRD_15US 0x000 634 #define REFRPRD_30US GPCR_M_REFRPRD0 635 #define REFRPRD_120US GPCR_M_REFRPRD1 636 #define REFRPRD_STOPPED GPCR_M_REFRPRD2 637 #define REFRPRD_60US (GPCR_M_REFRPRD1 | GPCR_M_REFRPRD2) 638 639 /* 640 ** 641 ** Stop Clock Control Register (SCCR) - Index 0x008 642 ** 643 ** Loc Size Name Function 644 ** ----- ---- ---- --------------------------------- 645 ** <0> 1 STPGLBEN Stop Clock Global Enable 646 ** <1> 1 MORESTOP More Stop Enable 647 ** <2> 1 STPRELDLY0 STPCLK Release Delay 0 648 ** <3> 1 STPRELDLY1 STPCLK Release Delay 1 649 ** <4> 1 GRNTDLY0 STPCLK Latency Delay Select 0 650 ** <5> 1 GRNTDLY1 STPCLK Latency Delay Select 1 651 ** <6> 1 WMSKINTR Wake Mask INTR 652 ** <7> 1 WAIT4GRNT Wait for Stop Grant 653 ** <9> 1 IOTRAPDIS I/O Trap Disable 654 ** <10> 1 SVNCLKPLS SMI PULSE Width Select 655 ** <11> 1 PCSTGSEL0 PC Staggering Select 0 656 ** <12> 1 PCSTGSEL1 PC Staggering Select 1 657 ** <13> 1 PCSTGDIS PC Stagger Disable 658 ** <14> 1 PCSLWEN PC Slow Enable 659 ** 660 ** <8><15> Reserved 661 */ 662 #define PMC_SCCR_REG 0x008 663 #define PMC_SCCR_INIT SCCR_M_WMSKINTR 664 #define SCCR_V_STPGLBEN 0 665 #define SCCR_M_STPGLBEN 1 << SCCR_V_STPGLBEN 666 #define SCCR_V_MORESTOP 1 667 #define SCCR_M_MORESTOP 1 << SCCR_V_MORESTOP 668 #define SCCR_V_STPRELDLY 2 669 #define SCCR_M_STPRELDLY 0x3 << SCCR_V_STPRELDLY 670 #define SCCR_V_STPRELDLY0 2 671 #define SCCR_M_STPRELDLY0 1 << SCCR_V_STPRELDLY0 672 #define SCCR_V_STPRELDLY1 3 673 #define SCCR_M_STPRELDLY1 1 << SCCR_V_STPRELDLY1 674 #define SCCR_V_GRNTDLY 4 675 #define SCCR_M_GRNTDLY 0x3 << SCCR_V_GRNTDLY 676 #define SCCR_V_GRNTDLY0 4 677 #define SCCR_M_GRNTDLY0 1 << SCCR_V_GRNTDLY0 678 #define SCCR_V_GRNTDLY1 5 679 #define SCCR_M_GRNTDLY1 1 << SCCR_V_GRNTDLY1 680 #define SCCR_V_WMSKINTR 6 681 #define SCCR_M_WMSKINTR 1 << SCCR_V_WMSKINTR 682 #define SCCR_V_WAIT4GRNT 7 683 #define SCCR_M_WAIT4GRNT 1 << SCCR_V_WAIT4GRNT 684 #define SCCR_V_IOTRAPDIS 9 685 #define SCCR_M_IOTRAPDIS 1 << SCCR_V_IOTRAPDIS 686 #define SCCR_V_SVNCLKPLS 10 687 #define SCCR_M_SVNCLKPLS 1 << SCCR_V_SVNCLKPLS 688 #define SCCR_V_PCSTGSEL 11 689 #define SCCR_M_PCSTGSEL 0x3 << SCCR_V_PCSTGSEL 690 #define SCCR_V_PCSTGSEL0 11 691 #define SCCR_M_PCSTGSEL0 1 << SCCR_V_PCSTGSEL0 692 #define SCCR_V_PCSTGSEL1 12 693 #define SCCR_M_PCSTGSEL1 1 << SCCR_V_PCSTGSEL1 694 #define SCCR_V_PCSTGDIS 13 695 #define SCCR_M_PCSTGDIS 1 << SCCR_V_PCSTGDIS 696 #define SCCR_V_PCSLWEN 14 697 #define SCCR_M_PCSLWEN 1 << SCCR_V_PCSLWEN 698 699 /* 700 ** STPCLK Release Delay 701 */ 702 #define STPRELDLY_0S 0x000 703 #define STPRELDLY_1US SCCR_M_STPRELDLY0 704 #define STPRELDLY_45US SCCR_M_STPRELDLY1 705 #define STPRELDLY_1MS (SCCR_M_STPRELDLY0 | SCCR_M_STPRELDLY1) 706 707 /* 708 ** STPCLK Release Delay Select 709 */ 710 #define GRNTDLY_GRANTBUS 0x000 711 #define GRNTDLY_30US SCCR_M_GRNTDLY0 712 #define GRNTDLY_125US SCCR_M_GRNTDLY1 713 #define GRNTDLY_1MS (SCCR_M_GRNTDLY0 | SCCR_M_GRNTDLY1) 714 715 /* 716 ** PC Staggering Select 717 */ 718 #define PCSTGSEL_240US 0x000 719 #define PCSTGSEL_4US SCCR_M_PCSTGSEL0 720 #define PCSTGSEL_16US SCCR_M_PCSTGSEL1 721 #define PCSTGSEL_64MS (SCCR_M_PCSTGSEL0 | SCCR_M_PCSTGSEL1) 722 723 /* 724 ** 725 ** Fully-On Mode Power Control Register (FOMPCR) - Index 0x009 726 ** 727 ** Loc Size Name Function 728 ** ----- ---- ---- --------------------------------- 729 ** <0> 1 PCON0 Power Control Fully-On Mode 0 730 ** <1> 1 PCON1 Power Control Fully-On Mode 1 731 ** <2> 1 PCON2 Power Control Fully-On Mode 2 732 ** <3> 1 PCON3 Power Control Fully-On Mode 3 733 ** <4> 1 PCON4 Power Control Fully-On Mode 4 734 ** <5> 1 PCON5 Power Control Fully-On Mode 5 735 ** <6> 1 PCON6 Power Control Fully-On Mode 6 736 ** <7> 1 PCON7 Power Control Fully-On Mode 7 737 ** <8> 1 PCON8 Power Control Fully-On Mode 8 738 ** <9> 1 PCON9 Power Control Fully-On Mode 9 739 ** <10> 1 GLBLPCEN Global Power Control Enable 740 ** 741 ** <11:15> Reserved 742 */ 743 #define PMC_FOMPCR_REG 0x009 744 #define PMC_FOMPCR_INIT ( FOMPCR_M_PCON0 | FOMPCR_M_PCON1 ) 745 #define FOMPCR_V_PCON 0 746 #define FOMPCR_M_PCON 0x3FF << FOMPCR_V_PCON 747 #define FOMPCR_V_PCON0 0 748 #define FOMPCR_M_PCON0 1 << FOMPCR_V_PCON0 749 #define FOMPCR_V_PCON1 1 750 #define FOMPCR_M_PCON1 1 << FOMPCR_V_PCON1 751 #define FOMPCR_V_PCON2 2 752 #define FOMPCR_M_PCON2 1 << FOMPCR_V_PCON2 753 #define FOMPCR_V_PCON3 3 754 #define FOMPCR_M_PCON3 1 << FOMPCR_V_PCON3 755 #define FOMPCR_V_PCON4 4 756 #define FOMPCR_M_PCON4 1 << FOMPCR_V_PCON4 757 #define FOMPCR_V_PCON5 5 758 #define FOMPCR_M_PCON5 1 << FOMPCR_V_PCON5 759 #define FOMPCR_V_PCON6 6 760 #define FOMPCR_M_PCON6 1 << FOMPCR_V_PCON6 761 #define FOMPCR_V_PCON7 7 762 #define FOMPCR_M_PCON7 1 << FOMPCR_V_PCON7 763 #define FOMPCR_V_PCON8 8 764 #define FOMPCR_M_PCON8 1 << FOMPCR_V_PCON8 765 #define FOMPCR_V_PCON9 9 766 #define FOMPCR_M_PCON9 1 << FOMPCR_V_PCON9 767 #define FOMPCR_V_GLBLPCEN 10 768 #define FOMPCR_M_GLBLPCEN 1 << FOMPCR_V_GLBLPCEN 769 770 /* 771 ** 772 ** Doze Mode Power Control Register (DZMPCR) - Index 0x00A 773 ** 774 ** Loc Size Name Function 775 ** ----- ---- ---- --------------------------------- 776 ** <0> 1 PCDZ0 Power Control Doze Mode 0 777 ** <1> 1 PCDZ1 Power Control Doze Mode 1 778 ** <2> 1 PCDZ2 Power Control Doze Mode 2 779 ** <3> 1 PCDZ3 Power Control Doze Mode 3 780 ** <4> 1 PCDZ4 Power Control Doze Mode 4 781 ** <5> 1 PCDZ5 Power Control Doze Mode 5 782 ** <6> 1 PCDZ6 Power Control Doze Mode 6 783 ** <7> 1 PCDZ7 Power Control Doze Mode 7 784 ** <8> 1 PCDZ8 Power Control Doze Mode 8 785 ** <9> 1 PCDZ9 Power Control Doze Mode 9 786 ** <10> 1 SPNDDLY Suspend Delay 787 ** <11> 1 STRTDLY Start Delay 788 ** 789 ** <12:15> Reserved 790 */ 791 #define PMC_DZMPCR_REG 0x00A 792 #define PMC_DZMPCR_INIT ( DZMPCR_M_PCDZ0 | DZMPCR_M_PCDZ1 | \ 793 DZMPCR_M_PCDZ2 ) 794 #define DZMPCR_V_PCDZ 0 795 #define DZMPCR_M_PCDZ 0x3FF << DZMPCR_V_PCDZ 796 #define DZMPCR_V_PCDZ0 0 797 #define DZMPCR_M_PCDZ0 1 << DZMPCR_V_PCDZ0 798 #define DZMPCR_V_PCDZ1 1 799 #define DZMPCR_M_PCDZ1 1 << DZMPCR_V_PCDZ1 800 #define DZMPCR_V_PCDZ2 2 801 #define DZMPCR_M_PCDZ2 1 << DZMPCR_V_PCDZ2 802 #define DZMPCR_V_PCDZ3 3 803 #define DZMPCR_M_PCDZ3 1 << DZMPCR_V_PCDZ3 804 #define DZMPCR_V_PCDZ4 4 805 #define DZMPCR_M_PCDZ4 1 << DZMPCR_V_PCDZ4 806 #define DZMPCR_V_PCDZ5 5 807 #define DZMPCR_M_PCDZ5 1 << DZMPCR_V_PCDZ5 808 #define DZMPCR_V_PCDZ6 6 809 #define DZMPCR_M_PCDZ6 1 << DZMPCR_V_PCDZ6 810 #define DZMPCR_V_PCDZ7 7 811 #define DZMPCR_M_PCDZ7 1 << DZMPCR_V_PCDZ7 812 #define DZMPCR_V_PCDZ8 8 813 #define DZMPCR_M_PCDZ8 1 << DZMPCR_V_PCDZ8 814 #define DZMPCR_V_PCDZ9 9 815 #define DZMPCR_M_PCDZ9 1 << DZMPCR_V_PCDZ9 816 #define DZMPCR_V_SPNDDLY 10 817 #define DZMPCR_M_SPNDDLY 1 << DZMPCR_V_SPNDDLY 818 #define DZMPCR_V_STRTDLY 11 819 #define DZMPCR_M_STRTDLY 1 << DZMPCR_V_STRTDLY 820 821 /* 822 ** 823 ** Sleep Mode Power Control Register (SLPMPCR) - Index 0x00B 824 ** 825 ** Loc Size Name Function 826 ** ----- ---- ---- --------------------------------- 827 ** <0> 1 PCSLP0 Power Control Sleep Mode 0 828 ** <1> 1 PCSLP1 Power Control Sleep Mode 1 829 ** <2> 1 PCSLP2 Power Control Sleep Mode 2 830 ** <3> 1 PCSLP3 Power Control Sleep Mode 3 831 ** <4> 1 PCSLP4 Power Control Sleep Mode 4 832 ** <5> 1 PCSLP5 Power Control Sleep Mode 5 833 ** <6> 1 PCSLP6 Power Control Sleep Mode 6 834 ** <7> 1 PCSLP7 Power Control Sleep Mode 7 835 ** <8> 1 PCSLP8 Power Control Sleep Mode 8 836 ** <9> 1 PCSLP9 Power Control Sleep Mode 9 837 ** <10> 1 LBLEDFLSH Low Battery LED Flasher Enable 838 ** <11> 1 LBFLSHRAT0 Low Battery LED Flash Rate Selects 0 839 ** <12> 1 LBFLSHRAT1 Low Battery LED Flash Rate Selects 1 840 ** <13> 1 LBFLSHDUR0 Low Battery LED Flash Rate Duration 0 841 ** <14> 1 LBFLSHDUR1 Low Battery LED Flash Rate Duration 1 842 ** <15> 1 VLBFLSHEN Very Low Battery Flash Enable 843 ** 844 */ 845 #define PMC_SLPMPCR_REG 0x00B 846 #define PMC_SLPMPCR_INIT ( SLPMPCR_M_PCSLP0 | SLPMPCR_M_PCSLP1 | \ 847 SLPMPCR_M_PCSLP2 | LBFLSHRAT_2HZ | \ 848 LBFLSHDUR_62PT5MS ) 849 #define SLPMPCR_V_PCSLP 0 850 #define SLPMPCR_M_PCSLP 0x3FF << SLPMPCR_V_PCSLP 851 #define SLPMPCR_V_PCSLP0 0 852 #define SLPMPCR_M_PCSLP0 1 << SLPMPCR_V_PCSLP0 853 #define SLPMPCR_V_PCSLP1 1 854 #define SLPMPCR_M_PCSLP1 1 << SLPMPCR_V_PCSLP1 855 #define SLPMPCR_V_PCSLP2 2 856 #define SLPMPCR_M_PCSLP2 1 << SLPMPCR_V_PCSLP2 857 #define SLPMPCR_V_PCSLP3 3 858 #define SLPMPCR_M_PCSLP3 1 << SLPMPCR_V_PCSLP3 859 #define SLPMPCR_V_PCSLP4 4 860 #define SLPMPCR_M_PCSLP4 1 << SLPMPCR_V_PCSLP4 861 #define SLPMPCR_V_PCSLP5 5 862 #define SLPMPCR_M_PCSLP5 1 << SLPMPCR_V_PCSLP5 863 #define SLPMPCR_V_PCSLP6 6 864 #define SLPMPCR_M_PCSLP6 1 << SLPMPCR_V_PCSLP6 865 #define SLPMPCR_V_PCSLP7 7 866 #define SLPMPCR_M_PCSLP7 1 << SLPMPCR_V_PCSLP7 867 #define SLPMPCR_V_PCSLP8 8 868 #define SLPMPCR_M_PCSLP8 1 << SLPMPCR_V_PCSLP8 869 #define SLPMPCR_V_PCSLP9 9 870 #define SLPMPCR_M_PCSLP9 1 << SLPMPCR_V_PCSLP9 871 #define SLPMPCR_V_LBLEDFLSH 10 872 #define SLPMPCR_M_LBLEDFLSH 1 << SLPMPCR_V_LBLEDFLSH 873 #define SLPMPCR_V_LBFLSHRAT 11 874 #define SLPMPCR_M_LBFLSHRAT 0x3 << SLPMPCR_V_LBFLSHRAT 875 #define SLPMPCR_V_LBFLSHRAT0 11 876 #define SLPMPCR_M_LBFLSHRAT0 1 << SLPMPCR_V_LBFLSHRAT0 877 #define SLPMPCR_V_LBFLSHRAT1 12 878 #define SLPMPCR_M_LBFLSHRAT1 1 << SLPMPCR_V_LBFLSHRAT1 879 #define SLPMPCR_V_LBFLSHDUR 13 880 #define SLPMPCR_M_LBFLSHDUR 0x3 << SLPMPCR_V_LBFLSHDUR 881 #define SLPMPCR_V_LBFLSHDUR0 13 882 #define SLPMPCR_M_LBFLSHDUR0 1 << SLPMPCR_V_LBFLSHDUR0 883 #define SLPMPCR_V_LBFLSHDUR1 14 884 #define SLPMPCR_M_LBFLSHDUR1 1 << SLPMPCR_V_LBFLSHDUR1 885 #define SLPMPCR_V_VLBFLSHEN 15 886 #define SLPMPCR_M_VLBFLSHEN 1 << SLPMPCR_V_VLBFLSHEN 887 888 /* 889 ** Low Battery LED Flash Rate Selects 890 */ 891 #define LBFLSHRAT_HLFHZ 0x000 892 #define LBFLSHRAT_1HZ SLPMPCR_M_LBFLSHRAT0 893 #define LBFLSHRAT_2HZ SLPMPCR_M_LBFLSHRAT1 894 #define LBFLSHRAT_4HZ (SLPMPCR_M_LBFLSHRAT0 | SLPMPCR_M_LBFLSHRAT1) 895 896 /* 897 ** Low Battery LED Flash Rate Duration (milliseconds) 898 */ 899 #define LBFLSHDUR_256MS 0x000 900 #define LBFLSHDUR_128MS SLPMPCR_M_LBFLSHDUR0 901 #define LBFLSHDUR_62PT5MS SLPMPCR_M_LBFLSHDUR1 902 #define LBFLSHDUR_31PT25MS (SLPMPCR_M_LBFLSHDUR0 | SLPMPCR_M_LBFLSHDUR1) 903 904 905 /* 906 ** 907 ** Suspend Mode Power Control Register (SPNDMPCR) - Index 0x00C 908 ** 909 ** Loc Size Name Function 910 ** ----- ---- ---- --------------------------------- 911 ** <0> 1 PCSPND0 Power Control Suspend Mode 0 912 ** <1> 1 PCSPND1 Power Control Suspend Mode 1 913 ** <2> 1 PCSPND2 Power Control Suspend Mode 2 914 ** <3> 1 PCSPND3 Power Control Suspend Mode 3 915 ** <4> 1 PCSPND4 Power Control Suspend Mode 4 916 ** <5> 1 PCSPND5 Power Control Suspend Mode 5 917 ** <6> 1 PCSPND6 Power Control Suspend Mode 6 918 ** <7> 1 PCSPND7 Power Control Suspend Mode 7 919 ** <8> 1 PCSPND8 Power Control Suspend Mode 8 920 ** <9> 1 PCSPND9 Power Control Suspend Mode 9 921 ** <10> 1 SPLEDFLSH Suspend LED Flasher Enable 922 ** <11> 1 SPFLSHRAT0 Suspend LED Flash Rate Selects 0 923 ** <12> 1 SPFLSHRAT1 Suspend LED Flash Rate Selects 1 924 ** <13> 1 SPFLSHDUR0 Suspend LED Flash Rate Duration 0 925 ** <14> 1 SPFLSHDUR1 Suspend LED Flash Rate Duration 1 926 ** 927 ** <15> Reserved 928 ** 929 */ 930 #define PMC_SPNDMPCR_REG 0x00c 931 #define PMC_SPNDMPCR_INIT ( SPNDMPCR_M_PCSPND0 | SPNDMPCR_M_PCSPND1 | \ 932 SPNDMPCR_M_PCSPND2 | SPFLSHRAT_2HZ | \ 933 SPFLSHDUR_62PT5MS ) 934 #define SPNDMPCR_V_PCSPND 0 935 #define SPNDMPCR_M_PCSPND 0x3FF << SPNDMPCR_V_PCSPND 936 #define SPNDMPCR_V_PCSPND0 0 937 #define SPNDMPCR_M_PCSPND0 1 << SPNDMPCR_V_PCSPND0 938 #define SPNDMPCR_V_PCSPND1 1 939 #define SPNDMPCR_M_PCSPND1 1 << SPNDMPCR_V_PCSPND1 940 #define SPNDMPCR_V_PCSPND2 2 941 #define SPNDMPCR_M_PCSPND2 1 << SPNDMPCR_V_PCSPND2 942 #define SPNDMPCR_V_PCSPND3 3 943 #define SPNDMPCR_M_PCSPND3 1 << SPNDMPCR_V_PCSPND3 944 #define SPNDMPCR_V_PCSPND4 4 945 #define SPNDMPCR_M_PCSPND4 1 << SPNDMPCR_V_PCSPND4 946 #define SPNDMPCR_V_PCSPND5 5 947 #define SPNDMPCR_M_PCSPND5 1 << SPNDMPCR_V_PCSPND5 948 #define SPNDMPCR_V_PCSPND6 6 949 #define SPNDMPCR_M_PCSPND6 1 << SPNDMPCR_V_PCSPND6 950 #define SPNDMPCR_V_PCSPND7 7 951 #define SPNDMPCR_M_PCSPND7 1 << SPNDMPCR_V_PCSPND7 952 #define SPNDMPCR_V_PCSPND8 8 953 #define SPNDMPCR_M_PCSPND8 1 << SPNDMPCR_V_PCSPND8 954 #define SPNDMPCR_V_PCSPND9 9 955 #define SPNDMPCR_M_PCSPND9 1 << SPNDMPCR_V_PCSPND9 956 #define SPNDMPCR_V_SPLEDFLSH 10 957 #define SPNDMPCR_M_SPLEDFLSH 1 << SPNDMPCR_V_SPLEDFLSH 958 #define SPNDMPCR_V_SPFLSHRAT 11 959 #define SPNDMPCR_M_SPFLSHRAT 0x3 << SPNDMPCR_V_SPFLSHRAT 960 #define SPNDMPCR_V_SPFLSHRAT0 11 961 #define SPNDMPCR_M_SPFLSHRAT0 1 << SPNDMPCR_V_SPFLSHRAT0 962 #define SPNDMPCR_V_SPFLSHRAT1 12 963 #define SPNDMPCR_M_SPFLSHRAT1 1 << SPNDMPCR_V_SPFLSHRAT1 964 #define SPNDMPCR_V_SPFLSHDUR 13 965 #define SPNDMPCR_M_SPFLSHDUR 0x3 << SPNDMPCR_V_SPFLSHDUR 966 #define SPNDMPCR_V_SPFLSHDUR0 13 967 #define SPNDMPCR_M_SPFLSHDUR0 1 << SPNDMPCR_V_SPFLSHDUR0 968 #define SPNDMPCR_V_SPFLSHDUR1 14 969 #define SPNDMPCR_M_SPFLSHDUR1 1 << SPNDMPCR_V_SPFLSHDUR1 970 971 /* 972 ** Suspend LED Flash Rate Selects 973 */ 974 #define SPFLSHRAT_HLFHZ 0x000 975 #define SPFLSHRAT_1HZ SPNDMPCR_M_SPFLSHRAT0 976 #define SPFLSHRAT_2HZ SPNDMPCR_M_SPFLSHRAT1 977 #define SPFLSHRAT_4HZ (SPNDMPCR_M_SPFLSHRAT0 | SPNDMPCR_M_SPFLSHRAT1) 978 979 /* 980 ** Suspend LED Flash Rate Duration (milliseconds) 981 */ 982 #define SPFLSHDUR_256MS 0x000 983 #define SPFLSHDUR_128MS SPNDMPCR_M_SPFLSHDUR0 984 #define SPFLSHDUR_62PT5MS SPNDMPCR_M_SPFLSHDUR1 985 #define SPFLSHDUR_31PT25MS (SPNDMPCR_M_SPFLSHDUR0 | SPNDMPCR_M_SPFLSHDUR1) 986 987 /* 988 ** 989 ** Timer Register (TIMERR) - Index 0x00D 990 ** 991 ** Loc Size Name Function 992 ** ----- ---- ---- --------------------------------- 993 ** <0> 1 GENTMR0 Generic Timer 0 994 ** <1> 1 GENTMR1 Generic Timer 1 995 ** <2> 1 GENTMR2 Generic Timer 2 996 ** <3> 1 GENTMR3 Generic Timer 3 997 ** <4> 1 SPMDTMR0 Suspend Mode Timer 0 998 ** <5> 1 SPMDTMR1 Suspend Mode Timer 1 999 ** <6> 1 SPMDTMR2 Suspend Mode Timer 2 1000 ** <7> 1 SLPTMR0 Sleep Mode Timer 0 1001 ** <8> 1 SLPTMR1 Sleep Mode Timer 1 1002 ** <9> 1 SLPTMR2 Sleep Mode Timer 2 1003 ** <10> 1 DZTMR0 Doze Mode Timer 0 1004 ** <11> 1 DZTMR1 Doze Mode Timer 1 1005 ** <12> 1 DZTMR2 Doze Mode Timer 2 1006 ** <15> 1 GTRSTPADIS Generic Timer Reset by PA Disable 1007 ** 1008 ** <13:14> Reserved 1009 ** 1010 */ 1011 #define PMC_TIMERR_REG 0x00D 1012 #define PMC_TIMERR_INIT 0x0000 1013 #define TIMERR_V_GENTMR 0 1014 #define TIMERR_M_GENTMR 0xF << TIMERR_V_GENTMR 1015 #define TIMERR_V_GENTMR0 0 1016 #define TIMERR_M_GENTMR0 1 << TIMERR_V_GENTMR0 1017 #define TIMERR_V_GENTMR1 1 1018 #define TIMERR_M_GENTMR1 1 << TIMERR_V_GENTMR1 1019 #define TIMERR_V_GENTMR2 2 1020 #define TIMERR_M_GENTMR2 1 << TIMERR_V_GENTMR2 1021 #define TIMERR_V_GENTMR3 3 1022 #define TIMERR_M_GENTMR3 1 << TIMERR_V_GENTMR3 1023 #define TIMERR_V_SPMDTMR 4 1024 #define TIMERR_M_SPMDTMR 0x7 << TIMERR_V_SPMDTMR 1025 #define TIMERR_V_SPMDTMR0 4 1026 #define TIMERR_M_SPMDTMR0 1 << TIMERR_V_SPMDTMR0 1027 #define TIMERR_V_SPMDTMR1 5 1028 #define TIMERR_M_SPMDTMR1 1 << TIMERR_V_SPMDTMR1 1029 #define TIMERR_V_SPMDTMR2 6 1030 #define TIMERR_M_SPMDTMR2 1 << TIMERR_V_SPMDTMR2 1031 #define TIMERR_V_SLPTMR 7 1032 #define TIMERR_M_SLPTMR 0x7 << TIMERR_V_SLPTMR 1033 #define TIMERR_V_SLPTMR0 7 1034 #define TIMERR_M_SLPTMR0 1 << TIMERR_V_SLPTMR0 1035 #define TIMERR_V_SLPTMR1 8 1036 #define TIMERR_M_SLPTMR1 1 << TIMERR_V_SLPTMR1 1037 #define TIMERR_V_SLPTMR2 9 1038 #define TIMERR_M_SLPTMR2 1 << TIMERR_V_SLPTMR2 1039 #define TIMERR_V_DZTMR 10 1040 #define TIMERR_M_DZTMR 0x7 << TIMERR_V_DZTMR 1041 #define TIMERR_V_DZTMR0 10 1042 #define TIMERR_M_DZTMR0 1 << TIMERR_V_DZTMR0 1043 #define TIMERR_V_DZTMR1 11 1044 #define TIMERR_M_DZTMR1 1 << TIMERR_V_DZTMR1 1045 #define TIMERR_V_DZTMR2 12 1046 #define TIMERR_M_DZTMR2 1 << TIMERR_V_DZTMR2 1047 #define TIMERR_V_GTRSTPADIS 15 1048 #define TIMERR_M_GTRSTPADIS 1 << TIMERR_V_GTRSTPADIS 1049 1050 /* 1051 ** Generic Timer (Seconds) 1052 */ 1053 #define GENTMR_DISABLE 0x000 1054 #define GENTMR_2S TIMERR_M_GENTMR0 1055 #define GENTMR_4S TIMERR_M_GENTMR1 1056 #define GENTMR_6S (TIMERR_M_GENTMR0 | TIMERR_M_GENTMR1) 1057 #define GENTMR_8S TIMERR_M_GENTMR2 1058 #define GENTMR_10S (TIMERR_M_GENTMR0 | TIMERR_M_GENTMR2) 1059 #define GENTMR_15S (TIMERR_M_GENTMR1 | TIMERR_M_GENTMR2) 1060 #define GENTMR_20S (TIMERR_M_GENTMR0 | TIMERR_M_GENTMR1 | TIMERR_M_GENTMR2) 1061 #define GENTMR_25S TIMERR_M_GENTMR3 1062 #define GENTMR_30S (TIMERR_M_GENTMR0 | TIMERR_M_GENTMR3) 1063 #define GENTMR_40S (TIMERR_M_GENTMR1 | TIMERR_M_GENTMR3) 1064 #define GENTMR_50S (TIMERR_M_GENTMR0 | TIMERR_M_GENTMR1 | TIMERR_M_GENTMR3) 1065 #define GENTMR_60S (TIMERR_M_GENTMR2 | TIMERR_M_GENTMR3) 1066 #define GENTMR_75S (TIMERR_M_GENTMR0 | TIMERR_M_GENTMR2 | TIMERR_M_GENTMR3) 1067 #define GENTMR_90S (TIMERR_M_GENTMR1 | TIMERR_M_GENTMR2 | TIMERR_M_GENTMR3) 1068 #define GENTMR_120S (TIMERR_M_GENTMR0 | TIMERR_M_GENTMR1 | TIMERR_M_GENTMR2 | TIMERR_M_GENTMR3) 1069 1070 /* 1071 ** Suspend Mode Timer (Minutes) 1072 */ 1073 #define SPMDTMR_DISABLE 0x000 1074 #define SPMDTMR_5MIN TIMERR_M_SPMDTMR0 1075 #define SPMDTMR_10MIN TIMERR_M_SPMDTMR1 1076 #define SPMDTMR_15MIN (TIMERR_M_SPMDTMR0 | TIMERR_M_SPMDTMR1) 1077 #define SPMDTMR_20MIN TIMERR_M_SPMDTMR2 1078 #define SPMDTMR_30MIN (TIMERR_M_SPMDTMR0 | TIMERR_M_SPMDTMR2) 1079 #define SPMDTMR_40MIN (TIMERR_M_SPMDTMR1 | TIMERR_M_SPMDTMR2) 1080 #define SPMDTMR_60MIN (TIMERR_M_SPMDTMR0 | TIMERR_M_SPMDTMR1 | TIMERR_M_SPMDTMR2) 1081 1082 /* 1083 ** Sleep Mode Timer (Minutes) 1084 */ 1085 #define SLPTMR_DISABLE 0x000 1086 #define SLPTMR_1MIN TIMERR_M_SLPTMR0 1087 #define SLPTMR_2MIN TIMERR_M_SLPTMR1 1088 #define SLPTMR_4MIN (TIMERR_M_SLPTMR0 | TIMERR_M_SLPTMR1) 1089 #define SLPTMR_6MIN TIMERR_M_SLPTMR2 1090 #define SLPTMR_8MIN (TIMERR_M_SLPTMR0 | TIMERR_M_SLPTMR2) 1091 #define SLPTMR_12MIN (TIMERR_M_SLPTMR1 | TIMERR_M_SLPTMR2) 1092 #define SLPTMR_16MIN (TIMERR_M_SLPTMR0 | TIMERR_M_SLPTMR1 | TIMERR_M_SLPTMR2) 1093 1094 /* 1095 ** Doze Mode Timer (Seconds) 1096 */ 1097 #define DZTMR_DISABLE 0x000 1098 #define DZTMR_PT125S TIMERR_M_DZTMR0 1099 #define DZTMR_PT250S TIMERR_M_DZTMR1 1100 #define DZTMR_PT500S (TIMERR_M_DZTMR0 | TIMERR_M_DZTMR1) 1101 #define DZTMR_1S TIMERR_M_DZTMR2 1102 #define DZTMR_4S (TIMERR_M_DZTMR0 | TIMERR_M_DZTMR2) 1103 #define DZTMR_8S (TIMERR_M_DZTMR1 | TIMERR_M_DZTMR2) 1104 #define DZTMR_16S (TIMERR_M_DZTMR0 | TIMERR_M_DZTMR1 | TIMERR_M_DZTMR2) 1105 1106 /* 1107 ** 1108 ** PMC Miscellaneous Control 1 Register (PMCMCR1) - Index 0x00E 1109 ** 1110 ** Loc Size Name Function 1111 ** ----- ---- ---- --------------------------------- 1112 ** <2> 1 GPCTSEL0 General Purpose Counter/Timer Select 0 1113 ** <3> 1 GPCTSEL1 General Purpose Counter/Timer Select 1 1114 ** <4> 1 GPCTEN Generic Purpose Counter/Timer Enable 1115 ** <5> 1 WMSKVLBNAC Wake Mask VLB if Not ACPWR 1116 ** <6> 1 WAKE0MSK WAKE0 Mask 1117 ** <7> 1 WAKE1MSK WAKE1 Mask 1118 ** <8> 1 WMSKRING Wake Mask RING 1119 ** <9> 1 WMSKRTC Wake Mask RTC 1120 ** <11> 1 WMSKTMR Wake Mask GP Timer 1121 ** <12> 1 PRDCTID0 Product Identification 0 1122 ** <13> 1 PRDCTID1 Product Identification 1 1123 ** <14> 1 PRDCTID2 Product Identification 2 1124 ** <15> 1 PRDCTID3 Product Identification 3 1125 ** 1126 ** <0:1><10> Reserved 1127 ** 1128 */ 1129 #define PMC_PMCMCR1_REG 0x00E 1130 #define PMC_PMCMCR1_INIT ( PMCMCR1_M_WMSKVLBNAC | PMCMCR1_M_WAKE0MSK | \ 1131 PMCMCR1_M_WAKE1MSK | PMCMCR1_M_WMSKRING | \ 1132 PMCMCR1_M_WMSKRTC | PMCMCR1_M_WMSKTMR ) 1133 #define PMCMCR1_V_GPCTSEL0 2 1134 #define PMCMCR1_M_GPCTSEL0 1 << PMCMCR1_V_GPCTSEL0 1135 #define PMCMCR1_V_GPCTSEL1 3 1136 #define PMCMCR1_M_GPCTSEL1 1 << PMCMCR1_V_GPCTSEL1 1137 #define PMCMCR1_V_GPCTEN 4 1138 #define PMCMCR1_M_GPCTEN 1 << PMCMCR1_V_GPCTEN 1139 #define PMCMCR1_V_WMSKVLBNAC 5 1140 #define PMCMCR1_M_WMSKVLBNAC 1 << PMCMCR1_V_WMSKVLBNAC 1141 #define PMCMCR1_V_WAKE0MSK 6 1142 #define PMCMCR1_M_WAKE0MSK 1 << PMCMCR1_V_WAKE0MSK 1143 #define PMCMCR1_V_WAKE1MSK 7 1144 #define PMCMCR1_M_WAKE1MSK 1 << PMCMCR1_V_WAKE1MSK 1145 #define PMCMCR1_V_WMSKRING 8 1146 #define PMCMCR1_M_WMSKRING 1 << PMCMCR1_V_WMSKRING 1147 #define PMCMCR1_V_WMSKRTC 9 1148 #define PMCMCR1_M_WMSKRTC 1 << PMCMCR1_V_WMSKRTC 1149 #define PMCMCR1_V_WMSKTMR 11 1150 #define PMCMCR1_M_WMSKTMR 1 << PMCMCR1_V_WMSKTMR 1151 #define PMCMCR1_V_PRDCTID 12 1152 #define PMCMCR1_M_PRDCTID 0xF << PMCMCR1_V_PRDCTID 1153 1154 /* 1155 ** 1156 ** GP Counter/Timer Register (GPCTR) - Index 0x010 1157 ** 1158 ** Loc Size Name Function 1159 ** ----- ---- ---- --------------------------------- 1160 ** <0> 1 GPCT0 General Purpose Counter/Timer 0 1161 ** <1> 1 GPCT1 General Purpose Counter/Timer 1 1162 ** <2> 1 GPCT2 General Purpose Counter/Timer 2 1163 ** <3> 1 GPCT3 General Purpose Counter/Timer 3 1164 ** <4> 1 GPCT4 General Purpose Counter/Timer 4 1165 ** <5> 1 GPCT5 General Purpose Counter/Timer 5 1166 ** <6> 1 GPCT6 General Purpose Counter/Timer 6 1167 ** <7> 1 GPCT7 General Purpose Counter/Timer 7 1168 ** <8> 1 GPCT8 General Purpose Counter/Timer 8 1169 ** <9> 1 GPCT9 General Purpose Counter/Timer 9 1170 ** <10> 1 GPCT10 General Purpose Counter/Timer 10 1171 ** <11> 1 GPCT11 General Purpose Counter/Timer 11 1172 ** <12> 1 GPCT12 General Purpose Counter/Timer 12 1173 ** <13> 1 GPCT13 General Purpose Counter/Timer 13 1174 ** <14> 1 GPCT14 General Purpose Counter/Timer 14 1175 ** <15> 1 GPCT15 General Purpose Counter/Timer 15 1176 ** 1177 */ 1178 #define PMC_GPCTR_REG 0x010 1179 #define GPCTR_M_GPCTR 0xFFFFFFFF 1180 1181 /* 1182 ** 1183 ** GP Timer Compare Register (GPTMRCMPR) - Index 0x011 1184 ** 1185 ** Loc Size Name Function 1186 ** ----- ---- ---- --------------------------------- 1187 ** <0> 1 GPTMRCMP0 GP Counter/Timer Compare 0 1188 ** <1> 1 GPTMRCMP1 GP Counter/Timer Compare 1 1189 ** <2> 1 GPTMRCMP2 GP Counter/Timer Compare 2 1190 ** <3> 1 GPTMRCMP3 GP Counter/Timer Compare 3 1191 ** <4> 1 GPTMRCMP4 GP Counter/Timer Compare 4 1192 ** <5> 1 GPTMRCMP5 GP Counter/Timer Compare 5 1193 ** <6> 1 GPTMRCMP6 GP Counter/Timer Compare 6 1194 ** <7> 1 GPTMRCMP7 GP Counter/Timer Compare 7 1195 ** <8> 1 GPTMRCMP8 GP Counter/Timer Compare 8 1196 ** <9> 1 GPTMRCMP9 GP Counter/Timer Compare 9 1197 ** <10> 1 GPTMRCMP10 GP Counter/Timer Compare 10 1198 ** <11> 1 GPTMRCMP11 GP Counter/Timer Compare 11 1199 ** <12> 1 GPTMRCMP12 GP Counter/Timer Compare 12 1200 ** <13> 1 GPTMRCMP13 GP Counter/Timer Compare 13 1201 ** <14> 1 GPTMRCMP14 GP Counter/Timer Compare 14 1202 ** <15> 1 GPTMRCMP15 GP Counter/Timer Compare 15 1203 ** 1204 */ 1205 #define PMC_GPTMRCMPR_REG 0x010 1206 #define GPTMRCMPR_M_GPTMRCMPR 0xFFFFFFFF 1207 1208 /* 1209 ** 1210 ** Debounce Control Register (DBCR) - Index 0x012 1211 ** 1212 ** Loc Size Name Function 1213 ** ----- ---- ---- --------------------------------- 1214 ** <0> 1 DBDIS0 Debounce Disable 0 1215 ** <2> 1 DBDIS1 Debounce Disable 1 1216 ** <3> 1 DBTMDR1 Debounce Time Duration 1 1217 ** <4> 1 DBDIS2 Debounce Disable 2 1218 ** <5> 1 DBTMDR2 Debounce Time Duration 2 1219 ** <6> 1 DBDIS3 Debounce Disable 3 1220 ** <7> 1 DBTMDR3 Debounce Time Duration 3 1221 ** <12> 1 WAKE0DBDIS WAKE0 Debounce Disable 1222 ** <13> 1 WAKE0DBTMDR WAKE0 Debounce Time Duration 1223 ** <14> 1 WAKE1DBDIS WAKE1 Debounce Disable 1224 ** <15> 1 WAKE1DBTMDR WAKE1 Debounce Time Duration 1225 ** 1226 ** <1><8:11> Reserved 1227 ** 1228 */ 1229 #define PMC_DBCR_REG 0x012 1230 #define PMC_DBCR_INIT 0x0000 1231 #define DBCR_V_DBDIS0 0 1232 #define DBCR_M_DBDIS0 1 << DBCR_V_DBDIS0 1233 #define DBCR_V_DBDIS1 2 1234 #define DBCR_M_DBDIS1 1 << DBCR_V_DBDIS1 1235 #define DBCR_V_DBTMDR1 3 1236 #define DBCR_M_DBTMDR1 1 << DBCR_V_DBTMDR1 1237 #define DBCR_V_DBDIS2 4 1238 #define DBCR_M_DBDIS2 1 << DBCR_V_DBDIS2 1239 #define DBCR_V_DBTMDR2 5 1240 #define DBCR_M_DBTMDR2 1 << DBCR_V_DBTMDR2 1241 #define DBCR_V_DBDIS3 6 1242 #define DBCR_M_DBDIS3 1 << DBCR_V_DBDIS3 1243 #define DBCR_V_DBTMDR3 7 1244 #define DBCR_M_DBTMDR3 1 << DBCR_V_DBTMDR3 1245 #define DBCR_V_WAKE0DBDIS 12 1246 #define DBCR_M_WAKE0DBDIS 1 << DBCR_V_WAKE0DBDIS 1247 #define DBCR_V_WAKE0DBTMDR 13 1248 #define DBCR_M_WAKE0DBTMDR 1 << DBCR_V_WAKE0DBTMDR 1249 #define DBCR_V_WAKE1DBDIS 14 1250 #define DBCR_M_WAKE1DBDIS 1 << DBCR_V_WAKE1DBDIS 1251 #define DBCR_V_WAKE1DBTMDR 15 1252 #define DBCR_M_WAKE1DBTMDR 1 << DBCR_V_WAKE1DBTMDR 1253 1254 /* 1255 ** 1256 ** PMC Miscellaneous Control 2 Register (PMCMCR2) - Index 0x013 1257 ** 1258 ** Loc Size Name Function 1259 ** ----- ---- ---- --------------------------------- 1260 ** <1> 1 SMIRDYEN SMIRDY# Enable 1261 ** <2> 1 PWRGDSTBYDIS PWRGOOD Standby Disable 1262 ** <3> 1 GLBLRSTEN Global Reset Enable 1263 ** <4> 1 PMCRSTEN PMC Reset Enable 1264 ** <7> 1 SPSRESETDIS Disable SRESET Upon Resume 1265 ** <8> 1 SPRSTDRVDIS Disable RSTDRV Upon Resume 1266 ** <9> 1 WAKE0TOGL WAKE0 Toggle Select 1267 ** <10> 1 WAKE1TOGL WAKE1 Toggle Select 1268 ** <14> 1 SWTCHEN SWTCH Enable 1269 ** <15> 1 RSTCPUFLG RSTCPU Flag 1270 ** 1271 ** <0><5:6><11:13> Reserved 1272 ** 1273 */ 1274 #define PMC_PMCMCR2_REG 0x013 1275 #define PMC_PMCMCR2_INIT ( PMCMCR2_M_PWRGDSTBYDIS | PMCMCR2_M_GLBLRSTEN | \ 1276 PMCMCR2_M_PMCRSTEN | \ 1277 PMCMCR2_M_SPSRESETDIS ) 1278 #define PMCMCR2_V_GPCTSEL0 1 1279 #define PMCMCR2_M_GPCTSEL0 1 << PMCMCR2_V_SMIRDYEN 1280 #define PMCMCR2_V_PWRGDSTBYDIS 2 1281 #define PMCMCR2_M_PWRGDSTBYDIS 1 << PMCMCR2_V_PWRGDSTBYDIS 1282 #define PMCMCR2_V_GLBLRSTEN 3 1283 #define PMCMCR2_M_GLBLRSTEN 1 << PMCMCR2_V_GLBLRSTEN 1284 #define PMCMCR2_V_PMCRSTEN 4 1285 #define PMCMCR2_M_PMCRSTEN 1 << PMCMCR2_V_PMCRSTEN 1286 #define PMCMCR2_V_SPSRESETDIS 7 1287 #define PMCMCR2_M_SPSRESETDIS 1 << PMCMCR2_V_SPSRESETDIS 1288 #define PMCMCR2_V_SPRSTDRVDIS 8 1289 #define PMCMCR2_M_SPRSTDRVDIS 1 << PMCMCR2_V_SPRSTDRVDIS 1290 #define PMCMCR2_V_WAKE0TOGL 9 1291 #define PMCMCR2_M_WAKE0TOGL 1 << PMCMCR2_V_WAKE0TOGL 1292 #define PMCMCR2_V_WAKE1TOGL 10 1293 #define PMCMCR2_M_WAKE1TOGL 1 << PMCMCR2_V_WAKE1TOGL 1294 #define PMCMCR2_V_SWTCHEN 14 1295 #define PMCMCR2_M_SWTCHEN 1 << PMCMCR2_V_SWTCHEN 1296 #define PMCMCR2_V_RSTCPUFLG 15 1297 #define PMCMCR2_M_RSTCPUFLG 1 << PMCMCR2_V_RSTCPUFLG 1298 1299 /* 1300 ** 1301 ** Optional GPIO Control Register 2 (GPIOCR2) - Index 0x014 1302 ** 1303 ** Loc Size Name Function 1304 ** ----- ---- ---- --------------------------------- 1305 ** <0> 1 GPIOADATA0 General Purpose I/O A Data 0 1306 ** <1> 1 GPIOADATA1 General Purpose I/O A Data 1 1307 ** <2> 1 GPIOADIR0 General Purpose I/O A Direction 0 1308 ** <3> 1 GPIOADIR1 General Purpose I/O A Direction 1 1309 ** <4> 1 GPIOBDATA0 General Purpose I/O B Data 0 1310 ** <5> 1 GPIOBDATA1 General Purpose I/O B Data 1 1311 ** <6> 1 GPIOBDIR0 General Purpose I/O B Direction 0 1312 ** <7> 1 GPIOBDIR1 General Purpose I/O B Direction 1 1313 ** <8> 1 GPIOCDATA0 General Purpose I/O C Data 0 1314 ** <9> 1 GPIOCDATA1 General Purpose I/O C Data 1 1315 ** <10> 1 GPIOCDIR0 General Purpose I/O C Direction 0 1316 ** <11> 1 GPIOCDIR1 General Purpose I/O C Direction 1 1317 ** 1318 ** <12:15> Reserved 1319 ** 1320 */ 1321 #define PMC_GPIOCR2_REG 0x014 1322 #define PMC_GPIOCR2_INIT ( GPIOCR2_M_GPIOADIR0 | GPIOCR2_M_GPIOADIR1 | \ 1323 GPIOCR2_M_GPIOBDIR1 | GPIOCR2_M_GPIOCDATA0 | \ 1324 GPIOCR2_M_GPIOCDIR0 | GPIOCR2_M_GPIOCDIR1 ) 1325 #define GPIOCR2_V_GPIOADATA 0 1326 #define GPIOCR2_M_GPIOADATA 0x3 << GPIOCR2_V_GPIOADATA 1327 #define GPIOCR2_V_GPIOADATA0 0 1328 #define GPIOCR2_M_GPIOADATA0 1 << GPIOCR2_V_GPIOADATA0 1329 #define GPIOCR2_V_GPIOADATA1 1 1330 #define GPIOCR2_M_GPIOADATA1 1 << GPIOCR2_V_GPIOADATA1 1331 #define GPIOCR2_V_GPIOADIR 2 1332 #define GPIOCR2_M_GPIOADIR 0x3 << GPIOCR2_V_GPIOADIR 1333 #define GPIOCR2_V_GPIOADIR0 2 1334 #define GPIOCR2_M_GPIOADIR0 1 << GPIOCR2_V_GPIOADIR0 1335 #define GPIOCR2_V_GPIOADIR1 3 1336 #define GPIOCR2_M_GPIOADIR1 1 << GPIOCR2_V_GPIOADIR1 1337 #define GPIOCR2_V_GPIOBDATA 4 1338 #define GPIOCR2_M_GPIOBDATA 0x3 << GPIOCR2_V_GPIOBDATA 1339 #define GPIOCR2_V_GPIOBDATA0 4 1340 #define GPIOCR2_M_GPIOBDATA0 1 << GPIOCR2_V_GPIOBDATA0 1341 #define GPIOCR2_V_GPIOBDATA1 5 1342 #define GPIOCR2_M_GPIOBDATA1 1 << GPIOCR2_V_GPIOBDATA1 1343 #define GPIOCR2_V_GPIOBDIR 6 1344 #define GPIOCR2_M_GPIOBDIR 0x3 << GPIOCR2_V_GPIOBDIR 1345 #define GPIOCR2_V_GPIOBDIR0 6 1346 #define GPIOCR2_M_GPIOBDIR0 1 << GPIOCR2_V_GPIOBDIR0 1347 #define GPIOCR2_V_GPIOBDIR1 7 1348 #define GPIOCR2_M_GPIOBDIR1 1 << GPIOCR2_V_GPIOBDIR1 1349 #define GPIOCR2_V_GPIOCDATA 8 1350 #define GPIOCR2_M_GPIOCDATA 0x3 << GPIOCR2_V_GPIOCDATA 1351 #define GPIOCR2_V_GPIOCDATA0 8 1352 #define GPIOCR2_M_GPIOCDATA0 1 << GPIOCR2_V_GPIOCDATA0 1353 #define GPIOCR2_V_GPIOCDATA1 9 1354 #define GPIOCR2_M_GPIOCDATA1 1 << GPIOCR2_V_GPIOCDATA1 1355 #define GPIOCR2_V_GPIOCDIR 10 1356 #define GPIOCR2_M_GPIOCDIR 0x3 << GPIOCR2_V_GPIOCDIR 1357 #define GPIOCR2_V_GPIOCDIR0 10 1358 #define GPIOCR2_M_GPIOCDIR0 1 << GPIOCR2_V_GPIOCDIR0 1359 #define GPIOCR2_V_GPIOCDIR1 11 1360 #define GPIOCR2_M_GPIOCDIR1 1 << GPIOCR2_V_GPIOCDIR1 1361 1362 /* 1363 ** 1364 ** Leakage Control Register (LKCR) - Index 0x015 1365 ** 1366 ** Loc Size Name Function 1367 ** ----- ---- ---- --------------------------------- 1368 ** <0> 1 CPULCDIS CPU Interface Leakage Control Disable 1369 ** <1> 1 DRAMLCDIS DRAM Interface Leakage Control Disable 1370 ** <2> 1 L2CACHELCDIS L2 Cache Leakage Control Disable 1371 ** <3> 1 ATLCDIS AT Bus Interface Leakage Control Disable 1372 ** <4> 1 BBUSLCDIS Burst Bus Interface Leakage Control Disable 1373 ** <5> 1 GPIOLCDIS GPIO Interface Leakage Control Disable 1374 ** <6> 1 PC49LCDIS PC4 to PC9 Leakage Control Disable 1375 ** <7> 1 LEDLCDIS LED Interface Leakage Control Disable 1376 ** <8> 1 BMLCDIS Battery Management Leakage Control Disable 1377 ** <9> 1 PC03LCDIS PC0 to PC3 Leakage Control Disable 1378 ** <14> 1 PWRGDLCDIS Enable Leakage Control 1379 ** <15> 1 LCDIS Global Leakage Control 1380 ** 1381 ** <10:13> Reserved 1382 ** 1383 */ 1384 #define PMC_LKCR_REG 0x015 1385 #define PMC_LKCR_INIT ( LKCR_M_CPULCDIS | LKCR_M_DRAMLCDIS | \ 1386 LKCR_M_L2CACHELCDIS | LKCR_M_ATLCDIS | \ 1387 LKCR_M_BBUSLCDIS | LKCR_M_GPIOLCDIS | \ 1388 LKCR_M_PC49LCDIS | LKCR_M_LEDLCDIS | \ 1389 LKCR_M_BMLCDIS | LKCR_M_PC03LCDIS | \ 1390 LKCR_M_PWRGDLCDIS | LKCR_M_LCDIS ) 1391 #define LKCR_V_CPULCDIS 0 1392 #define LKCR_M_CPULCDIS 1 << LKCR_V_CPULCDIS 1393 #define LKCR_V_DRAMLCDIS 1 1394 #define LKCR_M_DRAMLCDIS 1 << LKCR_V_DRAMLCDIS 1395 #define LKCR_V_L2CACHELCDIS 2 1396 #define LKCR_M_L2CACHELCDIS 1 << LKCR_V_L2CACHELCDIS 1397 #define LKCR_V_ATLCDIS 3 1398 #define LKCR_M_ATLCDIS 1 << LKCR_V_ATLCDIS 1399 #define LKCR_V_BBUSLCDIS 4 1400 #define LKCR_M_BBUSLCDIS 1 << LKCR_V_BBUSLCDIS 1401 #define LKCR_V_GPIOLCDIS 5 1402 #define LKCR_M_GPIOLCDIS 1 << LKCR_V_GPIOLCDIS 1403 #define LKCR_V_PC49LCDIS 6 1404 #define LKCR_M_PC49LCDIS 1 << LKCR_V_PC49LCDIS 1405 #define LKCR_V_LEDLCDIS 7 1406 #define LKCR_M_LEDLCDIS 1 << LKCR_V_LEDLCDIS 1407 #define LKCR_V_BMLCDIS 8 1408 #define LKCR_M_BMLCDIS 1 << LKCR_V_BMLCDIS 1409 #define LKCR_V_PC03LCDIS 9 1410 #define LKCR_M_PC03LCDIS 1 << LKCR_V_PC03LCDIS 1411 #define LKCR_V_PWRGDLCDIS 14 1412 #define LKCR_M_PWRGDLCDIS 1 << LKCR_V_PWRGDLCDIS 1413 #define LKCR_V_LCDIS 15 1414 #define LKCR_M_LCDIS 1 << LKCR_V_LCDIS 1415 1416 /* 1417 ** 1418 ** SEQUOIA-1 Miscellaneous Register 1 (SEQMR1) - Index 0x016 1419 ** 1420 ** Loc Size Name Function 1421 ** ----- ---- ---- --------------------------------- 1422 ** <11> 1 DISCREADS Driving EADS# on Non-Cacheable Region 1423 ** <12> 1 FRCBLASTDIS Forcing BLAST low During Reset 1424 ** <14> 1 P92B3EN Enable Control Bit for Port 92 Bit 3 Function 1425 ** <15> 1 SWTSTBYDIS Disable Standby on SWTCH 1426 ** 1427 ** <0:10><13> Reserved 1428 ** 1429 */ 1430 #define PMC_SEQMR1_REG 0x016 1431 #define PMC_SEQMR1_INIT 0x0000 1432 #define SEQMR1_V_DISCREADS 11 1433 #define SEQMR1_M_DISCREADS 1 << SEQMR1_V_DISCREADS 1434 #define SEQMR1_V_FRCBLASTDIS 12 1435 #define SEQMR1_M_FRCBLASTDIS 1 << SEQMR1_V_FRCBLASTDIS 1436 #define SEQMR1_V_P92B3EN 14 1437 #define SEQMR1_M_P92B3EN 1 << SEQMR1_V_P92B3EN 1438 #define SEQMR1_V_SWTSTBYDIS 15 1439 #define SEQMR1_M_SWTSTBYDIS 1 << SEQMR1_V_SWTSTBYDIS 1440 1441 /* 1442 ** 1443 ** SEQUOIA-1 Miscellaneous Register 2 (SEQMR2) - Index 0x017 1444 ** 1445 ** Loc Size Name Function 1446 ** ----- ---- ---- --------------------------------- 1447 ** <0> 1 DLYWCASEN Delay Write CAS Enable 1448 ** <1> 1 SMMWTEN SMM Write-Through Enable 1449 ** <2> 1 STATICSPNDEN Static Suspend Enable 1450 ** 1451 ** <3:15> Reserved 1452 ** 1453 */ 1454 #define PMC_SEQMR2_REG 0x017 1455 #define PMC_SEQMR2_INIT 0x0000 1456 #define SEQMR2_V_DLYWCASEN 0 1457 #define SEQMR2_M_DLYWCASEN 1 << SEQMR2_V_DLYWCASEN 1458 #define SEQMR2_V_SMMWTEN 1 1459 #define SEQMR2_M_SMMWTEN 1 << SEQMR2_V_SMMWTEN 1460 #define SEQMR2_V_STATICSPNDEN 2 1461 #define SEQMR2_M_STATICSPNDEN 1 << SEQMR2_V_STATICSPNDEN 1462 1463 /* 1464 ** 1465 ** Secondary Activity Mask Register (SAMR) - Index 0x019 1466 ** 1467 ** Loc Size Name Function 1468 ** ----- ---- ---- --------------------------------- 1469 ** <0> 1 SAMSKVID Secondary Activity Mask Video Accesses 1470 ** <3> 1 SAMSKKBD Secondary Activity Mask Keyboard Accesses 1471 ** <6> 1 SAMSKPROG0 Secondary Activity Mask PR 0 1472 ** <7> 1 SAMSKPROG1 Secondary Activity Mask PR 1 1473 ** <8> 1 SAMSKPROG2 Secondary Activity Mask PR 2 1474 ** <9> 1 SAMSKPROG3 Secondary Activity Mask PR 3 1475 ** <12> 1 SAMSKEACT0 Secondary Activity Mask EXTACT0 1476 ** <13> 1 SAMSKEACT1 Secondary Activity Mask EXTACT1 1477 ** <14> 1 SAMSKEACT2 Secondary Activity Mask EXTACT2 1478 ** <15> 1 SAMSKEACT3 Secondary Activity Mask EXTACT3 1479 ** 1480 ** <1:2><4:5><10:11> Reserved 1481 ** 1482 */ 1483 #define PMC_SAMR_REG 0x019 1484 #define PMC_SAMR_INIT ( SAMR_M_SAMSKVID | SAMR_M_SAMSKKBD | \ 1485 SAMR_M_SAMSKPROG0 | SAMR_M_SAMSKPROG1 | \ 1486 SAMR_M_SAMSKPROG2 | SAMR_M_SAMSKPROG3 | \ 1487 SAMR_M_SAMSKEACT0 | SAMR_M_SAMSKEACT1 | \ 1488 SAMR_M_SAMSKEACT2 | SAMR_M_SAMSKEACT3 ) 1489 #define SAMR_V_SAMSKVID 0 1490 #define SAMR_M_SAMSKVID 1 << SAMR_V_SAMSKVID 1491 #define SAMR_V_SAMSKKBD 3 1492 #define SAMR_M_SAMSKKBD 1 << SAMR_V_SAMSKKBD 1493 #define SAMR_V_SAMSKPROG0 6 1494 #define SAMR_M_SAMSKPROG0 1 << SAMR_V_SAMSKPROG0 1495 #define SAMR_V_SAMSKPROG1 7 1496 #define SAMR_M_SAMSKPROG1 1 << SAMR_V_SAMSKPROG1 1497 #define SAMR_V_SAMSKPROG2 8 1498 #define SAMR_M_SAMSKPROG2 1 << SAMR_V_SAMSKPROG2 1499 #define SAMR_V_SAMSKPROG3 9 1500 #define SAMR_M_SAMSKPROG3 1 << SAMR_V_SAMSKPROG3 1501 #define SAMR_V_SAMSKEACT0 12 1502 #define SAMR_M_SAMSKEACT0 1 << SAMR_V_SAMSKEACT0 1503 #define SAMR_V_SAMSKEACT1 13 1504 #define SAMR_M_SAMSKEACT1 1 << SAMR_V_SAMSKEACT1 1505 #define SAMR_V_SAMSKEACT2 14 1506 #define SAMR_M_SAMSKEACT2 1 << SAMR_V_SAMSKEACT2 1507 #define SAMR_V_SAMSKEACT3 15 1508 #define SAMR_M_SAMSKEACT3 1 << SAMR_V_SAMSKEACT3 1509 1510 /* 1511 ** 1512 ** Additional Activity Source Register (AASR) - Index 0x01A 1513 ** 1514 ** Loc Size Name Function 1515 ** ----- ---- ---- --------------------------------- 1516 ** <0> 1 WAKE0ACTV WAKE0 Active 1517 ** <1> 1 WAKE1ACTV WAKE1 Active 1518 ** <2> 1 INTRACTV Interrupt Active 1519 ** <4> 1 DZTO Doze Time-out Status 1520 ** <5> 1 SLPTO Sleep Time-out Status 1521 ** <6> 1 SPNDTO Suspend Time-out Status 1522 ** <7> 1 GENTO Generic Timer Time-out Status 1523 ** <8> 1 PRTMR0TO Programmable Timer 0 Time-out Status 1524 ** <9> 1 PRTMR1TO Programmable Timer 1 Time-out Status 1525 ** <10> 1 PRTMR2TO Programmable Timer 2 Time-out Status 1526 ** <11> 1 PRTMR3TO Programmable Timer 3 Time-out Status 1527 ** <12> 1 PRTOPMI0 Programmable Timer 0 PMI Flag 1528 ** <13> 1 PRTOPMI1 Programmable Timer 1 PMI Flag 1529 ** <14> 1 PRTOPMI2 Programmable Timer 2 PMI Flag 1530 ** <15> 1 PRTOPMI3 Programmable Timer 3 PMI Flag 1531 ** 1532 ** <3> Reserved 1533 ** 1534 */ 1535 #define PMC_AASR_REG 0x01A 1536 #define PMC_AASR_INIT 0x0000 1537 #define AASR_V_WAKE0ACTV 0 1538 #define AASR_M_WAKE0ACTV 1 << AASR_V_WAKE0ACTV 1539 #define AASR_V_WAKE1ACTV 1 1540 #define AASR_M_WAKE1ACTV 1 << AASR_V_WAKE1ACTV 1541 #define AASR_V_INTRACTV 2 1542 #define AASR_M_INTRACTV 1 << AASR_V_INTRACTV 1543 #define AASR_V_DZTO 4 1544 #define AASR_M_DZTO 1 << AASR_V_DZTO 1545 #define AASR_V_SLPTO 5 1546 #define AASR_M_SLPTO 1 << AASR_V_SLPTO 1547 #define AASR_V_SPNDTO 6 1548 #define AASR_M_SPNDTO 1 << AASR_V_SPNDTO 1549 #define AASR_V_GENTO 7 1550 #define AASR_M_GENTO 1 << AASR_V_GENTO 1551 #define AASR_V_PRTMR0TO 8 1552 #define AASR_M_PRTMR0TO 1 << AASR_V_PRTMR0TO 1553 #define AASR_V_PRTMR1TO 9 1554 #define AASR_M_PRTMR1TO 1 << AASR_V_PRTMR0T1 1555 #define AASR_V_PRTMR2TO 10 1556 #define AASR_M_PRTMR2TO 1 << AASR_V_PRTMR0T2 1557 #define AASR_V_PRTMR3TO 11 1558 #define AASR_M_PRTMR3TO 1 << AASR_V_PRTMR0T3 1559 #define AASR_V_PRTOPMI0 12 1560 #define AASR_M_PRTOPMI0 1 << AASR_V_PRTOPMI0 1561 #define AASR_V_PRTOPMI1 13 1562 #define AASR_M_PRTOPMI1 1 << AASR_V_PRTOPMI1 1563 #define AASR_V_PRTOPMI2 14 1564 #define AASR_M_PRTOPMI2 1 << AASR_V_PRTOPMI2 1565 #define AASR_V_PRTOPMI3 15 1566 #define AASR_M_PRTOPMI3 1 << AASR_V_PRTOPMI3 1567 1568 /* 1569 ** 1570 ** Additional Primary Activity Mask Register (APAMR) - Index 0x01B 1571 ** 1572 ** Loc Size Name Function 1573 ** ----- ---- ---- --------------------------------- 1574 ** <0> 1 PAMSKWAKE0 Primary Activity Mask WAKE0 1575 ** <1> 1 PAMSKWAKE1 Primary Activity Mask WAKE1 1576 ** <2> 1 PAMSKINTR Primary Activity Mask INTR 1577 ** <3> 1 PAMSKPMI Primary Activity Mask PMI 1578 ** <4> 1 PAMSKHOLD Primary Activity Mask HOLD Request 1579 ** <5> 1 PAMSKNMI Primary Activity Mask NMI 1580 ** <6> 1 PAMSKDMA Primary Activity Mask DMA 1581 ** <7> 1 PAMSKMSTR Primary Activity Mask MASTER 1582 ** <11> 1 DISPACTVON Disable Primary Activity On 1583 ** <14> 1 HD2EN Hard Disk Secondar Enable 1584 ** <15> 1 LMTPACTV Limited Primary Activity PMI 1585 ** 1586 ** <8:10><12:13> Reserved 1587 ** 1588 */ 1589 #define PMC_APAMR_REG 0x01B 1590 #define PMC_APAMR_INIT ( APAMR_M_PAMSKWAKE0 | APAMR_M_PAMSKWAKE1 | \ 1591 APAMR_M_PAMSKINTR | APAMR_M_PAMSKPMI | \ 1592 APAMR_M_PAMSKHOLD | APAMR_M_PAMSKNMI | \ 1593 APAMR_M_PAMSKDMA | APAMR_M_PAMSKMSTR | \ 1594 APAMR_M_LMTPACTV ) 1595 #define APAMR_V_PAMSKWAKE0 0 1596 #define APAMR_M_PAMSKWAKE0 1 << APAMR_V_PAMSKWAKE0 1597 #define APAMR_V_PAMSKWAKE1 1 1598 #define APAMR_M_PAMSKWAKE1 1 << APAMR_V_PAMSKWAKE1 1599 #define APAMR_V_PAMSKINTR 2 1600 #define APAMR_M_PAMSKINTR 1 << APAMR_V_PAMSKINTR 1601 #define APAMR_V_PAMSKPMI 3 1602 #define APAMR_M_PAMSKPMI 1 << APAMR_V_PAMSKPMI 1603 #define APAMR_V_PAMSKHOLD 4 1604 #define APAMR_M_PAMSKHOLD 1 << APAMR_V_PAMSKHOLD 1605 #define APAMR_V_PAMSKNMI 5 1606 #define APAMR_M_PAMSKNMI 1 << APAMR_V_PAMSKNMI 1607 #define APAMR_V_PAMSKDMA 6 1608 #define APAMR_M_PAMSKDMA 1 << APAMR_V_PAMSKDMA 1609 #define APAMR_V_PAMSKMSTR 7 1610 #define APAMR_M_PAMSKMSTR 1 << APAMR_V_PAMSKMSTR 1611 #define APAMR_V_DISPACTVON 11 1612 #define APAMR_M_DISPACTVON 1 << APAMR_V_DISPACTVON 1613 #define APAMR_V_HD2EN 14 1614 #define APAMR_M_HD2EN 1 << APAMR_V_HD2EN 1615 #define APAMR_V_LMTPACTV 15 1616 #define APAMR_M_LMTPACTV 1 << APAMR_V_LMTPACTV 1617 1618 /* 1619 ** 1620 ** Additional Secondary Control Register (ASCR) - Index 0x01C 1621 ** 1622 ** Loc Size Name Function 1623 ** ----- ---- ---- --------------------------------- 1624 ** <0> 1 SAMSKWAKE0 Secondary Activity Mask WAKE0 1625 ** <1> 1 SAMSKWAKE1 Secondary Activity Mask WAKE1 1626 ** <2> 1 SAMSKINTR Secondary Activity Mask INTR 1627 ** <3> 1 SAMSKPMI Secondary Activity Mask PMI 1628 ** <4> 1 SAMSKIRQ0 Secondary Activity Mask IRQ0 1629 ** <6> 1 SAMSKDMA Secondary Activity Mask DMA 1630 ** <7> 1 SAMSKMSTR Secondary Activity Mask MASTER 1631 ** <9> 1 SACTVTMR0 Secondary Activity Timer 0 1632 ** <10> 1 SACTVTMR1 Secondary Activity Timer 1 1633 ** <11> 1 SACTVTMR2 Secondary Activity Timer 2 1634 ** <15> 1 LMTSACTV Limited Secondary Activity PMI 1635 ** 1636 ** <5><8><12:14> Reserved 1637 ** 1638 */ 1639 #define PMC_ASCR_REG 0x01C 1640 #define PMC_ASCR_INIT ( ASCR_M_SAMSKWAKE0 | ASCR_M_SAMSKWAKE1 | \ 1641 ASCR_M_SAMSKINTR | ASCR_M_SAMSKPMI | \ 1642 ASCR_M_SAMSKIRQ0 | ASCR_M_SAMSKDMA | \ 1643 ASCR_M_SAMSKMSTR | ASCR_M_SACTVTMR2 | \ 1644 ASCR_M_LMTSACTV ) 1645 #define ASCR_V_SAMSKWAKE0 0 1646 #define ASCR_M_SAMSKWAKE0 1 << ASCR_V_SAMSKWAKE0 1647 #define ASCR_V_SAMSKWAKE1 1 1648 #define ASCR_M_SAMSKWAKE1 1 << ASCR_V_SAMSKWAKE1 1649 #define ASCR_V_SAMSKINTR 2 1650 #define ASCR_M_SAMSKINTR 1 << ASCR_V_SAMSKINTR 1651 #define ASCR_V_SAMSKPMI 3 1652 #define ASCR_M_SAMSKPMI 1 << ASCR_V_SAMSKPMI 1653 #define ASCR_V_SAMSKIRQ0 4 1654 #define ASCR_M_SAMSKIRQ0 1 << ASCR_V_SAMSKIRQ0 1655 #define ASCR_V_SAMSKDMA 6 1656 #define ASCR_M_SAMSKDMA 1 << ASCR_V_SAMSKDMA 1657 #define ASCR_V_SAMSKMSTR 7 1658 #define ASCR_M_SAMSKMSTR 1 << ASCR_V_SAMSKMSTR 1659 #define ASCR_V_SACTVTMR 9 1660 #define ASCR_M_SACTVTMR 0x7 << ASCR_V_SACTVTMR 1661 #define ASCR_V_SACTVTMR0 9 1662 #define ASCR_M_SACTVTMR0 1 << ASCR_V_SACTVTMR0 1663 #define ASCR_V_SACTVTMR1 10 1664 #define ASCR_M_SACTVTMR1 1 << ASCR_V_SACTVTMR1 1665 #define ASCR_V_SACTVTMR2 11 1666 #define ASCR_M_SACTVTMR2 1 << ASCR_V_SACTVTMR2 1667 #define ASCR_V_LMTSACTV 15 1668 #define ASCR_M_LMTSACTV 1 << ASCR_V_LMTSACTV 1669 1670 /* 1671 ** Secondary Activity Timer 1672 */ 1673 #define SACTVTMR_125US 0x000 1674 #define SACTVTMR_1MS ASCR_M_SACTVTMR0 1675 #define SACTVTMR_2MS ASCR_M_SACTVTMR1 1676 #define SACTVTMR_4MS (ASCR_M_SACTVTMR0 | ASCR_M_SACTVTMR1) 1677 #define SACTVTMR_8MS ASCR_M_SACTVTMR2 1678 #define SACTVTMR_16MS (ASCR_M_SACTVTMR0 | ASCR_M_SACTVTMR2) 1679 #define SACTVTMR_32MS (ASCR_M_SACTVTMR1 | ASCR_M_SACTVTMR2) 1680 #define SACTVTMR_64MS (ASCR_M_SACTVTMR0 | ASCR_M_SACTVTMR1 | ASCR_M_SACTVTMR2) 1681 1682 /* 1683 ** 1684 ** Additional PMI Mask Register (APMIMR) - Index 0x01D 1685 ** 1686 ** Loc Size Name Function 1687 ** ----- ---- ---- --------------------------------- 1688 ** <0> 1 IMSKWAKE0 Mask WAKE0 from PMI 1689 ** <1> 1 IMSKWAKE1 Mask WAKE1 from PMI 1690 ** <3> 1 IMSKRTC Mask RTC from PMI 1691 ** <4> 1 RESCHED0 Reschedule PMI 0 1692 ** <5> 1 RESCHED1 Reschedule PMI 1 1693 ** <6> 1 SFTSMI Soft SMI 1694 ** <8> 1 IMSKPRTMR0TO Mask Programmable Time 0 Time-out from PMI 1695 ** <9> 1 IMSKPRTMR1TO Mask Programmable Time 1 Time-out from PMI 1696 ** <10> 1 IMSKPRTMR2TO Mask Programmable Time 2 Time-out from PMI 1697 ** <11> 1 IMSKPRTMR3TO Mask Programmable Time 3 Time-out from PMI 1698 ** 1699 ** <2><7><12:15> Reserved 1700 ** 1701 */ 1702 #define PMC_APMIMR_REG 0x01D 1703 #define PMC_APMIMR_INIT ( APMIMR_M_IMSKWAKE0 | APMIMR_M_IMSKWAKE1 | \ 1704 APMIMR_M_IMSKRTC | APMIMR_M_IMSKPRTMR0TO| \ 1705 APMIMR_M_IMSKPRTMR1TO | \ 1706 APMIMR_M_IMSKPRTMR2TO | \ 1707 APMIMR_M_IMSKPRTMR3TO ) 1708 #define APMIMR_V_IMSKWAKE0 0 1709 #define APMIMR_M_IMSKWAKE0 1 << APMIMR_V_IMSKWAKE0 1710 #define APMIMR_V_IMSKWAKE1 1 1711 #define APMIMR_M_IMSKWAKE1 1 << APMIMR_V_IMSKWAKE1 1712 #define APMIMR_V_IMSKRTC 3 1713 #define APMIMR_M_IMSKRTC 1 << APMIMR_V_IMSKRTC 1714 #define APMIMR_V_RESCHED 4 1715 #define APMIMR_M_RESCHED 0x3 << APMIMR_V_RESCHED 1716 #define APMIMR_V_RESCHED0 4 1717 #define APMIMR_M_RESCHED0 1 << APMIMR_V_RESCHED0 1718 #define APMIMR_V_RESCHED1 5 1719 #define APMIMR_M_RESCHED1 1 << APMIMR_V_RESCHED1 1720 #define APMIMR_V_SFTSMI 6 1721 #define APMIMR_M_SFTSMI 1 << APMIMR_V_SFTSMI 1722 #define APMIMR_V_IMSKPRTMR0TO 8 1723 #define APMIMR_M_IMSKPRTMR0TO 1 << APMIMR_V_IMSKPRTMR0TO 1724 #define APMIMR_V_IMSKPRTMR1TO 9 1725 #define APMIMR_M_IMSKPRTMR1TO 1 << APMIMR_V_IMSKPRTMR1TO 1726 #define APMIMR_V_IMSKPRTMR2TO 10 1727 #define APMIMR_M_IMSKPRTMR2TO 1 << APMIMR_V_IMSKPRTMR2TO 1728 #define APMIMR_V_IMSKPRTMR3TO 11 1729 #define APMIMR_M_IMSKPRTMR3TO 1 << APMIMR_V_IMSKPRTMR3TO 1730 1731 /* 1732 ** Reschedule PMI 1733 */ 1734 #define RESCHED_DISABLE 0x000 1735 #define RESCHED_64MS APMIMR_M_RESCHED0 1736 #define RESCHED_1MS APMIMR_M_RESCHED1 1737 #define RESCHED_1S (APMIMR_M_RESCHED0 | APMIMR_M_RESCHED1) 1738 1739 /* 1740 ** 1741 ** Miscellaneous Control Register (MCR) - Index 0x01E 1742 ** 1743 ** Loc Size Name Function 1744 ** ----- ---- ---- --------------------------------- 1745 ** <0> 1 PMIFLGEN PMI Flag Enable 1746 ** <1> 1 PAFLGEN Primary Activity Flag Enable 1747 ** <2> 1 SAFLGEN Secondary Activity Flag Enable 1748 ** 1749 ** <3:15> Reserved 1750 ** 1751 */ 1752 #define PMC_MCR_REG 0x01E 1753 #define PMC_MCR_INIT 0x0000 1754 #define MCR_V_PMIFLGEN 0 1755 #define MCR_M_PMIFLGEN 1 << MCR_V_PMIFLGEN 1756 #define MCR_V_PAFLGEN 1 1757 #define MCR_M_PAFLGEN 1 << MCR_V_PAFLGEN 1758 #define MCR_V_SAFLGEN 2 1759 #define MCR_M_SAFLGEN 1 << MCR_V_SAFLGEN 1760 1761 /* 1762 ** 1763 ** SEQUOIA-1 Identification Register (SEQIDR) - Index 0x01F 1764 ** 1765 ** Loc Size Name Function 1766 ** ----- ---- ---- --------------------------------- 1767 ** <0> 1 SQ1ID0 SEQUOIA-1 Revision Number ID 0 1768 ** <1> 1 SQ1ID1 SEQUOIA-1 Revision Number ID 1 1769 ** <2> 1 SQ1ID2 SEQUOIA-1 Revision Number ID 2 1770 ** <3> 1 SQ1ID3 SEQUOIA-1 Revision Number ID 3 1771 ** 1772 ** <4:15> Reserved 1773 ** 1774 */ 1775 #define PMC_SEQIDR_REG 0x01F 1776 #define SEQIDR_V_SQ1ID 0 1777 #define SEQIDR_M_SQ1ID 0xF << SEQIDR_V_SQ1ID 1778 1779 /* 1780 ** 1781 ** Programmable Range Address Register 0 (PRAR0) - Index 0x020 1782 ** 1783 ** Loc Size Name Function 1784 ** ----- ---- ---- --------------------------------- 1785 ** <0> 9 PRMA PRM 0 Address 1786 ** <14> 1 PROSHDW0EN Programmable Shadow Register 0 Enable 1787 ** <15> 1 PROCS0EN Programmable Chip Select 0 Enable 1788 ** 1789 ** <10:13> Reserved 1790 ** 1791 */ 1792 #define PMC_PRAR0_REG 0x020 1793 #define PMC_PRAR0_INIT 0x0000 1794 #define PRAR0_V_PRMA 0 1795 #define PRAR0_M_PRMA 0x3FF << PRAR0_V_PRMA 1796 #define PRAR0_V_PROSHDW0EN 14 1797 #define PRAR0_M_PROSHDW0EN 1 << PRAR0_V_PROSHDW0EN 1798 #define PRAR0_V_PROCS0EN 15 1799 #define PRAR0_M_PROCS0EN 1 << PRAR0_V_PROCS0EN 1800 1801 /* 1802 ** 1803 ** Programmable Range Compare Register 0 (PRCR0) - Index 0x021 1804 ** 1805 ** Loc Size Name Function 1806 ** ----- ---- ---- --------------------------------- 1807 ** <0> 1 PRMCMPEN00 PRM 0 Compare Enable 0 1808 ** <1> 1 PRMCMPEN01 PRM 0 Compare Enable 1 1809 ** <2> 1 PRMCMPEN02 PRM 0 Compare Enable 2 1810 ** <3> 1 PRMCMPEN03 PRM 0 Compare Enable 3 1811 ** <4> 1 PRMCMPEN04 PRM 0 Compare Enable 4 1812 ** <5> 1 PRMCMPEN05 PRM 0 Compare Enable 5 1813 ** <6> 1 PRMCMPEN06 PRM 0 Compare Enable 6 1814 ** <7> 1 PRMCMPEN07 PRM 0 Compare Enable 7 1815 ** <8> 1 PRMCMPEN08 PRM 0 Compare Enable 8 1816 ** <9> 1 PRMCMPEN09 PRM 0 Compare Enable 9 1817 ** <10> 1 PRMWR0EN PRM 0 Compare Write Enable 1818 ** <11> 1 PRMRD0EN PRM 0 Compare Read Enable 1819 ** <12> 1 PRM0MIO PRM 0 Memory or I/O Compare Enable 1820 ** <13> 1 PRM0EN PRM 0 Enable 1821 ** 1822 ** <14:15> Reserved 1823 ** 1824 */ 1825 #define PMC_PRCR0_REG 0x021 1826 #define PMC_PRCR0_INIT 0x0000 1827 #define PRCR0_V_PRMCMPEN 0 1828 #define PRCR0_M_PRMCMPEN 0x3FF << PRCR0_V_PRMCMPEN 1829 #define PRCR0_V_PRMCMPEN00 0 1830 #define PRCR0_M_PRMCMPEN00 1 << PRCR0_V_PRMCMPEN00 1831 #define PRCR0_V_PRMCMPEN01 1 1832 #define PRCR0_M_PRMCMPEN01 1 << PRCR0_V_PRMCMPEN01 1833 #define PRCR0_V_PRMCMPEN02 2 1834 #define PRCR0_M_PRMCMPEN02 1 << PRCR0_V_PRMCMPEN02 1835 #define PRCR0_V_PRMCMPEN03 3 1836 #define PRCR0_M_PRMCMPEN03 1 << PRCR0_V_PRMCMPEN03 1837 #define PRCR0_V_PRMCMPEN04 4 1838 #define PRCR0_M_PRMCMPEN04 1 << PRCR0_V_PRMCMPEN04 1839 #define PRCR0_V_PRMCMPEN05 5 1840 #define PRCR0_M_PRMCMPEN05 1 << PRCR0_V_PRMCMPEN05 1841 #define PRCR0_V_PRMCMPEN06 6 1842 #define PRCR0_M_PRMCMPEN06 1 << PRCR0_V_PRMCMPEN06 1843 #define PRCR0_V_PRMCMPEN07 7 1844 #define PRCR0_M_PRMCMPEN07 1 << PRCR0_V_PRMCMPEN07 1845 #define PRCR0_V_PRMCMPEN08 8 1846 #define PRCR0_M_PRMCMPEN08 1 << PRCR0_V_PRMCMPEN08 1847 #define PRCR0_V_PRMCMPEN09 9 1848 #define PRCR0_M_PRMCMPEN09 1 << PRCR0_V_PRMCMPEN09 1849 #define PRCR0_V_PRMWR0EN 10 1850 #define PRCR0_M_PRMWR0EN 1 << PRCR0_V_PRMWR0EN 1851 #define PRCR0_V_PRMRD0EN 11 1852 #define PRCR0_M_PRMRD0EN 1 << PRCR0_V_PRMRD0EN 1853 #define PRCR0_V_PRM0MIO 12 1854 #define PRCR0_M_PRM0MIO 1 << PRCR0_V_PRM0MIO 1855 #define PRCR0_V_PRM0EN 13 1856 #define PRCR0_M_PRM0EN 1 << PRCR0_V_PRM0EN 1857 1858 /* 1859 ** 1860 ** Programmable Range Address Register 1 (PRAR1) - Index 0x022 1861 ** 1862 ** Loc Size Name Function 1863 ** ----- ---- ---- --------------------------------- 1864 ** <0> 9 PRMA PRM 1 Address 1865 ** <14> 1 PROSHDW1EN Programmable Shadow Register 1 Enable 1866 ** <15> 1 PROCS1EN Programmable Chip Select 1 Enable 1867 ** 1868 ** <10:13> Reserved 1869 ** 1870 */ 1871 #define PMC_PRAR1_REG 0x022 1872 #define PRAR1_V_PRMA 0 1873 #define PRAR1_M_PRMA 0x3FF << PRAR1_V_PRMA 1874 #define PRAR1_V_PROSHDW1EN 14 1875 #define PRAR1_M_PROSHDW1EN 1 << PRAR1_V_PROSHDW1EN 1876 #define PRAR1_V_PROCS1EN 15 1877 #define PRAR1_M_PROCS1EN 1 << PRAR1_V_PROCS1EN 1878 1879 /* 1880 ** 1881 ** Programmable Range Compare Register 1 (PRCR1) - Index 0x023 1882 ** 1883 ** Loc Size Name Function 1884 ** ----- ---- ---- --------------------------------- 1885 ** <0> 1 PRMCMPEN10 PRM 1 Compare Enable 0 1886 ** <1> 1 PRMCMPEN11 PRM 1 Compare Enable 1 1887 ** <2> 1 PRMCMPEN12 PRM 1 Compare Enable 2 1888 ** <3> 1 PRMCMPEN13 PRM 1 Compare Enable 3 1889 ** <4> 1 PRMCMPEN14 PRM 1 Compare Enable 4 1890 ** <5> 1 PRMCMPEN15 PRM 1 Compare Enable 5 1891 ** <6> 1 PRMCMPEN16 PRM 1 Compare Enable 6 1892 ** <7> 1 PRMCMPEN17 PRM 1 Compare Enable 7 1893 ** <8> 1 PRMCMPEN18 PRM 1 Compare Enable 8 1894 ** <9> 1 PRMCMPEN19 PRM 1 Compare Enable 9 1895 ** <10> 1 PRMWR1EN PRM 1 Compare Write Enable 1896 ** <11> 1 PRMRD1EN PRM 1 Compare Read Enable 1897 ** <12> 1 PRM1MIO PRM 1 Memory or I/O Compare Enable 1898 ** <13> 1 PRM1EN PRM 1 Enable 1899 ** 1900 ** <14:15> Reserved 1901 ** 1902 */ 1903 #define PMC_PRCR1_REG 0x023 1904 #define PMC_PRCR1_INIT 0x0000 1905 #define PRCR1_V_PRMCMPEN 0 1906 #define PRCR1_M_PRMCMPEN 0x3FF << PRCR1_V_PRMCMPEN 1907 #define PRCR1_V_PRMCMPEN10 0 1908 #define PRCR1_M_PRMCMPEN10 1 << PRCR1_V_PRMCMPEN10 1909 #define PRCR1_V_PRMCMPEN11 1 1910 #define PRCR1_M_PRMCMPEN11 1 << PRCR1_V_PRMCMPEN11 1911 #define PRCR1_V_PRMCMPEN12 2 1912 #define PRCR1_M_PRMCMPEN12 1 << PRCR1_V_PRMCMPEN12 1913 #define PRCR1_V_PRMCMPEN13 3 1914 #define PRCR1_M_PRMCMPEN13 1 << PRCR1_V_PRMCMPEN13 1915 #define PRCR1_V_PRMCMPEN14 4 1916 #define PRCR1_M_PRMCMPEN14 1 << PRCR1_V_PRMCMPEN14 1917 #define PRCR1_V_PRMCMPEN15 5 1918 #define PRCR1_M_PRMCMPEN15 1 << PRCR1_V_PRMCMPEN15 1919 #define PRCR1_V_PRMCMPEN16 6 1920 #define PRCR1_M_PRMCMPEN16 1 << PRCR1_V_PRMCMPEN16 1921 #define PRCR1_V_PRMCMPEN17 7 1922 #define PRCR1_M_PRMCMPEN17 1 << PRCR1_V_PRMCMPEN17 1923 #define PRCR1_V_PRMCMPEN18 8 1924 #define PRCR1_M_PRMCMPEN18 1 << PRCR1_V_PRMCMPEN18 1925 #define PRCR1_V_PRMCMPEN19 9 1926 #define PRCR1_M_PRMCMPEN19 1 << PRCR1_V_PRMCMPEN19 1927 #define PRCR1_V_PRMWR1EN 10 1928 #define PRCR1_M_PRMWR1EN 1 << PRCR1_V_PRMWR1EN 1929 #define PRCR1_V_PRMRD1EN 11 1930 #define PRCR1_M_PRMRD1EN 1 << PRCR1_V_PRMRD1EN 1931 #define PRCR1_V_PRM1MIO 12 1932 #define PRCR1_M_PRM1MIO 1 << PRCR1_V_PRM1MIO 1933 #define PRCR1_V_PRM1EN 13 1934 #define PRCR1_M_PRM1EN 1 << PRCR1_V_PRM1EN 1935 1936 /* 1937 ** 1938 ** Programmable Range Address Register 2 (PRAR2) - Index 0x024 1939 ** 1940 ** Loc Size Name Function 1941 ** ----- ---- ---- --------------------------------- 1942 ** <0> 9 PRMA PRM 2 Address 1943 ** <14> 1 PROSHDW2EN Programmable Shadow Register 2 Enable 1944 ** <15> 1 PROCS2EN Programmable Chip Select 2 Enable 1945 ** 1946 ** <10:13> Reserved 1947 ** 1948 */ 1949 #define PMC_PRAR2_REG 0x024 1950 #define PRAR2_V_PRMA 0 1951 #define PRAR2_M_PRMA 0x3FF << PRAR2_V_PRMA 1952 #define PRAR2_V_PROSHDW2EN 14 1953 #define PRAR2_M_PROSHDW2EN 1 << PRAR2_V_PROSHDW2EN 1954 #define PRAR2_V_PROCS2EN 15 1955 #define PRAR2_M_PROCS2EN 1 << PRAR2_V_PROCS2EN 1956 1957 /* 1958 ** 1959 ** Programmable Range Compare Register 2 (PRCR2) - Index 0x025 1960 ** 1961 ** Loc Size Name Function 1962 ** ----- ---- ---- --------------------------------- 1963 ** <0> 1 PRMCMPEN10 PRM 2 Compare Enable 0 1964 ** <1> 1 PRMCMPEN11 PRM 2 Compare Enable 1 1965 ** <2> 1 PRMCMPEN12 PRM 2 Compare Enable 2 1966 ** <3> 1 PRMCMPEN13 PRM 2 Compare Enable 3 1967 ** <4> 1 PRMCMPEN14 PRM 2 Compare Enable 4 1968 ** <5> 1 PRMCMPEN15 PRM 2 Compare Enable 5 1969 ** <6> 1 PRMCMPEN16 PRM 2 Compare Enable 6 1970 ** <7> 1 PRMCMPEN17 PRM 2 Compare Enable 7 1971 ** <8> 1 PRMCMPEN18 PRM 2 Compare Enable 8 1972 ** <9> 1 PRMCMPEN19 PRM 2 Compare Enable 9 1973 ** <10> 1 PRMWR2EN PRM 2 Compare Write Enable 1974 ** <11> 1 PRMRD2EN PRM 2 Compare Read Enable 1975 ** <12> 1 PRM2MIO PRM 2 Memory or I/O Compare Enable 1976 ** <13> 1 PRM2EN PRM 2 Enable 1977 ** 1978 ** <14:15> Reserved 1979 ** 1980 */ 1981 #define PMC_PRCR2_REG 0x025 1982 #define PMC_PRCR2_INIT 0x0000 1983 #define PRCR2_V_PRMCMPEN 0 1984 #define PRCR2_M_PRMCMPEN 0x3FF << PRCR2_V_PRMCMPEN 1985 #define PRCR2_V_PRMCMPEN10 0 1986 #define PRCR2_M_PRMCMPEN10 1 << PRCR2_V_PRMCMPEN10 1987 #define PRCR2_V_PRMCMPEN11 1 1988 #define PRCR2_M_PRMCMPEN11 1 << PRCR2_V_PRMCMPEN11 1989 #define PRCR2_V_PRMCMPEN12 2 1990 #define PRCR2_M_PRMCMPEN12 1 << PRCR2_V_PRMCMPEN12 1991 #define PRCR2_V_PRMCMPEN13 3 1992 #define PRCR2_M_PRMCMPEN13 1 << PRCR2_V_PRMCMPEN13 1993 #define PRCR2_V_PRMCMPEN14 4 1994 #define PRCR2_M_PRMCMPEN14 1 << PRCR2_V_PRMCMPEN14 1995 #define PRCR2_V_PRMCMPEN15 5 1996 #define PRCR2_M_PRMCMPEN15 1 << PRCR2_V_PRMCMPEN15 1997 #define PRCR2_V_PRMCMPEN16 6 1998 #define PRCR2_M_PRMCMPEN16 1 << PRCR2_V_PRMCMPEN16 1999 #define PRCR2_V_PRMCMPEN17 7 2000 #define PRCR2_M_PRMCMPEN17 1 << PRCR2_V_PRMCMPEN17 2001 #define PRCR2_V_PRMCMPEN18 8 2002 #define PRCR2_M_PRMCMPEN18 1 << PRCR2_V_PRMCMPEN18 2003 #define PRCR2_V_PRMCMPEN19 9 2004 #define PRCR2_M_PRMCMPEN19 1 << PRCR2_V_PRMCMPEN19 2005 #define PRCR2_V_PRMWR2EN 10 2006 #define PRCR2_M_PRMWR2EN 1 << PRCR2_V_PRMWR2EN 2007 #define PRCR2_V_PRMRD2EN 11 2008 #define PRCR2_M_PRMRD2EN 1 << PRCR2_V_PRMRD2EN 2009 #define PRCR2_V_PRM2MIO 12 2010 #define PRCR2_M_PRM2MIO 1 << PRCR2_V_PRM2MIO 2011 #define PRCR2_V_PRM2EN 13 2012 #define PRCR2_M_PRM2EN 1 << PRCR2_V_PRM2EN 2013 2014 /* 2015 ** 2016 ** Programmable Range Address Register 3 (PRAR3) - Index 0x026 2017 ** 2018 ** Loc Size Name Function 2019 ** ----- ---- ---- --------------------------------- 2020 ** <0> 9 PRMA PRM 3 Address 2021 ** <14> 1 PROSHDW3EN Programmable Shadow Register 3 Enable 2022 ** <15> 1 PROCS3EN Programmable Chip Select 3 Enable 2023 ** 2024 ** <10:13> Reserved 2025 ** 2026 */ 2027 #define PMC_PRAR3_REG 0x026 2028 #define PMC_PRAR3_INIT 0x0000 2029 #define PRAR3_V_PRMA 0 2030 #define PRAR3_M_PRMA 0x3FF << PRAR3_V_PRMA 2031 #define PRAR3_V_PROSHDW3EN 14 2032 #define PRAR3_M_PROSHDW3EN 1 << PRAR3_V_PROSHDW3EN 2033 #define PRAR3_V_PROCS3EN 15 2034 #define PRAR3_M_PROCS3EN 1 << PRAR3_V_PROCS3EN 2035 2036 /* 2037 ** 2038 ** Programmable Range Compare Register 3 (PRCR3) - Index 0x027 2039 ** 2040 ** Loc Size Name Function 2041 ** ----- ---- ---- --------------------------------- 2042 ** <0> 1 PRMCMPEN10 PRM 3 Compare Enable 0 2043 ** <1> 1 PRMCMPEN11 PRM 3 Compare Enable 1 2044 ** <2> 1 PRMCMPEN12 PRM 3 Compare Enable 2 2045 ** <3> 1 PRMCMPEN13 PRM 3 Compare Enable 3 2046 ** <4> 1 PRMCMPEN14 PRM 3 Compare Enable 4 2047 ** <5> 1 PRMCMPEN15 PRM 3 Compare Enable 5 2048 ** <6> 1 PRMCMPEN16 PRM 3 Compare Enable 6 2049 ** <7> 1 PRMCMPEN17 PRM 3 Compare Enable 7 2050 ** <8> 1 PRMCMPEN18 PRM 3 Compare Enable 8 2051 ** <9> 1 PRMCMPEN19 PRM 3 Compare Enable 9 2052 ** <10> 1 PRMWR3EN PRM 3 Compare Write Enable 2053 ** <11> 1 PRMRD3EN PRM 3 Compare Read Enable 2054 ** <12> 1 PRM3MIO PRM 3 Memory or I/O Compare Enable 2055 ** <13> 1 PRM3EN PRM 3 Enable 2056 ** 2057 ** <14:15> Reserved 2058 ** 2059 */ 2060 #define PMC_PRCR3_REG 0x027 2061 #define PMC_PRCR3_INIT 0x0000 2062 #define PRCR3_V_PRMCMPEN 0 2063 #define PRCR3_M_PRMCMPEN 0x3FF << PRCR3_V_PRMCMPEN 2064 #define PRCR3_V_PRMCMPEN10 0 2065 #define PRCR3_M_PRMCMPEN10 1 << PRCR3_V_PRMCMPEN10 2066 #define PRCR3_V_PRMCMPEN11 1 2067 #define PRCR3_M_PRMCMPEN11 1 << PRCR3_V_PRMCMPEN11 2068 #define PRCR3_V_PRMCMPEN12 2 2069 #define PRCR3_M_PRMCMPEN12 1 << PRCR3_V_PRMCMPEN12 2070 #define PRCR3_V_PRMCMPEN13 3 2071 #define PRCR3_M_PRMCMPEN13 1 << PRCR3_V_PRMCMPEN13 2072 #define PRCR3_V_PRMCMPEN14 4 2073 #define PRCR3_M_PRMCMPEN14 1 << PRCR3_V_PRMCMPEN14 2074 #define PRCR3_V_PRMCMPEN15 5 2075 #define PRCR3_M_PRMCMPEN15 1 << PRCR3_V_PRMCMPEN15 2076 #define PRCR3_V_PRMCMPEN16 6 2077 #define PRCR3_M_PRMCMPEN16 1 << PRCR3_V_PRMCMPEN16 2078 #define PRCR3_V_PRMCMPEN17 7 2079 #define PRCR3_M_PRMCMPEN17 1 << PRCR3_V_PRMCMPEN17 2080 #define PRCR3_V_PRMCMPEN18 8 2081 #define PRCR3_M_PRMCMPEN18 1 << PRCR3_V_PRMCMPEN18 2082 #define PRCR3_V_PRMCMPEN19 9 2083 #define PRCR3_M_PRMCMPEN19 1 << PRCR3_V_PRMCMPEN19 2084 #define PRCR3_V_PRMWR3EN 10 2085 #define PRCR3_M_PRMWR3EN 1 << PRCR3_V_PRMWR3EN 2086 #define PRCR3_V_PRMRD3EN 11 2087 #define PRCR3_M_PRMRD3EN 1 << PRCR3_V_PRMRD3EN 2088 #define PRCR3_V_PRM3MIO 12 2089 #define PRCR3_M_PRM3MIO 1 << PRCR3_V_PRM3MIO 2090 #define PRCR3_V_PRM3EN 13 2091 #define PRCR3_M_PRM3EN 1 << PRCR3_V_PRM3EN 2092 2093 /* 2094 ** 2095 ** Programmable Time-out Timer Register 0 (PTOTR0) - Index 0x028 2096 ** 2097 ** Loc Size Name Function 2098 ** ----- ---- ---- --------------------------------- 2099 ** <0> 1 PROGTMR00 Programmable Time-out Timer 0 0 2100 ** <1> 1 PROGTMR01 Programmable Time-out Timer 0 1 2101 ** <2> 1 PROGTMR02 Programmable Time-out Timer 0 2 2102 ** <3> 1 PROGTMR03 Programmable Time-out Timer 0 3 2103 ** <7> 1 TMR0SOURCE Clock Source for Timer 0 2104 ** <14> 1 TMR0PC2EN Time-out Timer 0 to PC2 Enable 2105 ** <15> 1 TMR0EN Programmable Timer 0 Enable 2106 ** 2107 ** <4:6><8:13> Reserved 2108 ** 2109 */ 2110 #define PMC_PTOTR0_REG 0x028 2111 #define PMC_PTOTR0_INIT 0x0000 2112 #define PTOTR0_V_PROGTMR0 0 2113 #define PTOTR0_M_PROGTMR0 0xF << PTOTR0_V_PROGTMR0 2114 #define PTOTR0_V_PROGTMR00 0 2115 #define PTOTR0_M_PROGTMR00 1 << PTOTR0_V_PROGTMR00 2116 #define PTOTR0_V_PROGTMR01 1 2117 #define PTOTR0_M_PROGTMR01 1 << PTOTR0_V_PROGTMR01 2118 #define PTOTR0_V_PROGTMR02 2 2119 #define PTOTR0_M_PROGTMR02 1 << PTOTR0_V_PROGTMR02 2120 #define PTOTR0_V_PROGTMR03 3 2121 #define PTOTR0_M_PROGTMR03 1 << PTOTR0_V_PROGTMR03 2122 #define PTOTR0_V_TMR0SOURCE 7 2123 #define PTOTR0_M_TMR0SOURCE 1 << PTOTR0_V_TMR0SOURCE 2124 #define PTOTR0_V_TMR0PC2EN 14 2125 #define PTOTR0_M_TMR0PC2EN 1 << PTOTR0_V_TMR0PC2EN 2126 #define PTOTR0_V_TMR0EN 15 2127 #define PTOTR0_M_TMR0EN 1 << PTOTR0_V_TMR0EN 2128 2129 /* 2130 ** Progammable Time-out Timer 0 2131 */ 2132 #define PROGTMR0_2S 0x000 2133 #define PROGTMR0_5S PTOTR0_M_PROGTMR00 2134 #define PROGTMR0_10S PTOTR0_M_PROGTMR01 2135 #define PROGTMR0_15S (PTOTR0_M_PROGTMR00 | PTOTR0_M_PROGTMR01) 2136 #define PROGTMR0_30S PTOTR0_M_PROGTMR02 2137 #define PROGTMR0_45S (PTOTR0_M_PROGTMR00 | PTOTR0_M_PROGTMR02) 2138 #define PROGTMR0_60S (PTOTR0_M_PROGTMR01 | PTOTR0_M_PROGTMR02) 2139 #define PROGTMR0_90S (PTOTR0_M_PROGTMR00 | PTOTR0_M_PROGTMR01 | PTOTR0_M_PROGTMR02) 2140 #define PROGTMR0_2MIN PTOTR0_M_PROGTMR03 2141 #define PROGTMR0_3MIN (PTOTR0_M_PROGTMR00 | PTOTR0_M_PROGTMR03) 2142 #define PROGTMR0_4MIN (PTOTR0_M_PROGTMR01 | PTOTR0_M_PROGTMR03) 2143 #define PROGTMR0_6MIN (PTOTR0_M_PROGTMR00 | PTOTR0_M_PROGTMR01 | PTOTR0_M_PROGTMR03 2144 #define PROGTMR0_8MIN (PTOTR0_M_PROGTMR02 | PTOTR0_M_PROGTMR03) 2145 #define PROGTMR0_10MIN (PTOTR0_M_PROGTMR00 | PTOTR0_M_PROGTMR02 | PTOTR0_M_PROGTMR03) 2146 #define PROGTMR0_15MIN (PTOTR0_M_PROGTMR01 | PTOTR0_M_PROGTMR02 | PTOTR0_M_PROGTMR03) 2147 #define PROGTMR0_20MIN (PTOTR0_M_PROGTMR00 | PTOTR0_M_PROGTMR01 | PTOTR0_M_PROGTMR02 | PTOTR0_M_PROGTMR03) 2148 2149 /* 2150 ** 2151 ** Programmable Time-out Timer Register 1 (PTOTR1) - Index 0x029 2152 ** 2153 ** Loc Size Name Function 2154 ** ----- ---- ---- --------------------------------- 2155 ** <0> 1 PROGTMR10 Programmable Time-out Timer 1 0 2156 ** <1> 1 PROGTMR11 Programmable Time-out Timer 1 1 2157 ** <2> 1 PROGTMR12 Programmable Time-out Timer 1 2 2158 ** <3> 1 PROGTMR13 Programmable Time-out Timer 1 3 2159 ** <7> 1 TMR1SOURCE Clock Source for Timer 1 2160 ** <14> 1 TMR1PC3EN Time-out Timer 1 to PC3 Enable 2161 ** <15> 1 TMR1EN Programmable Timer 1 Enable 2162 ** 2163 ** <4:6><8:13> Reserved 2164 ** 2165 */ 2166 #define PMC_PTOTR1_REG 0x029 2167 #define PMC_PTOTR1_INIT 0x0000 2168 #define PTOTR1_V_PROGTMR1 0 2169 #define PTOTR1_M_PROGTMR1 0xF << PTOTR1_V_PROGTMR1 2170 #define PTOTR1_V_PROGTMR10 0 2171 #define PTOTR1_M_PROGTMR10 1 << PTOTR1_V_PROGTMR10 2172 #define PTOTR1_V_PROGTMR11 1 2173 #define PTOTR1_M_PROGTMR11 1 << PTOTR1_V_PROGTMR11 2174 #define PTOTR1_V_PROGTMR12 2 2175 #define PTOTR1_M_PROGTMR12 1 << PTOTR1_V_PROGTMR12 2176 #define PTOTR1_V_PROGTMR13 3 2177 #define PTOTR1_M_PROGTMR13 1 << PTOTR1_V_PROGTMR13 2178 #define PTOTR1_V_TMR1SOURCE 7 2179 #define PTOTR1_M_TMR1SOURCE 1 << PTOTR1_V_TMR1SOURCE 2180 #define PTOTR1_V_TMR1PC3EN 14 2181 #define PTOTR1_M_TMR1PC3EN 1 << PTOTR1_V_TMR1PC3EN 2182 #define PTOTR1_V_TMR1EN 15 2183 #define PTOTR1_M_TMR1EN 1 << PTOTR1_V_TMR1EN 2184 2185 /* 2186 ** Progammable Time-out Timer 1 2187 */ 2188 #define PROGTMR1_2S 0x000 2189 #define PROGTMR1_5S PTOTR1_M_PROGTMR10 2190 #define PROGTMR1_10S PTOTR1_M_PROGTMR11 2191 #define PROGTMR1_15S (PTOTR1_M_PROGTMR10 | PTOTR1_M_PROGTMR11) 2192 #define PROGTMR1_30S PTOTR1_M_PROGTMR12 2193 #define PROGTMR1_45S (PTOTR1_M_PROGTMR10 | PTOTR1_M_PROGTMR12) 2194 #define PROGTMR1_60S (PTOTR1_M_PROGTMR11 | PTOTR1_M_PROGTMR12) 2195 #define PROGTMR1_90S (PTOTR1_M_PROGTMR10 | PTOTR1_M_PROGTMR11 | PTOTR1_M_PROGTMR12) 2196 #define PROGTMR1_2MIN PTOTR1_M_PROGTMR13 2197 #define PROGTMR1_3MIN (PTOTR1_M_PROGTMR10 | PTOTR1_M_PROGTMR13) 2198 #define PROGTMR1_4MIN (PTOTR1_M_PROGTMR11 | PTOTR1_M_PROGTMR13) 2199 #define PROGTMR1_6MIN (PTOTR1_M_PROGTMR10 | PTOTR1_M_PROGTMR11 | PTOTR1_M_PROGTMR13 2200 #define PROGTMR1_8MIN (PTOTR1_M_PROGTMR12 | PTOTR1_M_PROGTMR13) 2201 #define PROGTMR1_10MIN (PTOTR1_M_PROGTMR10 | PTOTR1_M_PROGTMR12 | PTOTR1_M_PROGTMR13) 2202 #define PROGTMR1_15MIN (PTOTR1_M_PROGTMR11 | PTOTR1_M_PROGTMR12 | PTOTR1_M_PROGTMR13) 2203 #define PROGTMR1_20MIN (PTOTR1_M_PROGTMR10 | PTOTR1_M_PROGTMR11 | PTOTR1_M_PROGTMR12 | PTOTR0_M_PROGTMR13) 2204 2205 /* 2206 ** 2207 ** Programmable Time-out Timer Register 2 (PTOTR2) - Index 0x02A 2208 ** 2209 ** Loc Size Name Function 2210 ** ----- ---- ---- --------------------------------- 2211 ** <0> 1 PROGTMR20 Programmable Time-out Timer 2 0 2212 ** <1> 1 PROGTMR21 Programmable Time-out Timer 2 1 2213 ** <2> 1 PROGTMR22 Programmable Time-out Timer 2 2 2214 ** <3> 1 PROGTMR23 Programmable Time-out Timer 2 3 2215 ** <7> 1 TMR2SOURCE Clock Source for Timer 2 2216 ** <14> 1 TMR2PC8EN Time-out Timer 2 to PC8 Enable 2217 ** <15> 1 TMR2EN Programmable Timer 2 Enable 2218 ** 2219 ** <4:6><8:13> Reserved 2220 ** 2221 */ 2222 #define PMC_PTOTR2_REG 0x02A 2223 #define PMC_PTOTR2_INIT 0x0000 2224 #define PTOTR2_V_PROGTMR2 0 2225 #define PTOTR2_M_PROGTMR2 0xF << PTOTR2_V_PROGTMR2 2226 #define PTOTR2_V_PROGTMR20 0 2227 #define PTOTR2_M_PROGTMR20 1 << PTOTR2_V_PROGTMR20 2228 #define PTOTR2_V_PROGTMR21 1 2229 #define PTOTR2_M_PROGTMR21 1 << PTOTR2_V_PROGTMR21 2230 #define PTOTR2_V_PROGTMR22 2 2231 #define PTOTR2_M_PROGTMR22 1 << PTOTR2_V_PROGTMR22 2232 #define PTOTR2_V_PROGTMR23 3 2233 #define PTOTR2_M_PROGTMR23 1 << PTOTR2_V_PROGTMR23 2234 #define PTOTR2_V_TMR2SOURCE 7 2235 #define PTOTR2_M_TMR2SOURCE 1 << PTOTR2_V_TMR2SOURCE 2236 #define PTOTR2_V_TMR2PC8EN 14 2237 #define PTOTR2_M_TMR2PC8EN 1 << PTOTR2_V_TMR2PC8EN 2238 #define PTOTR2_V_TMR2EN 15 2239 #define PTOTR2_M_TMR2EN 1 << PTOTR2_V_TMR2EN 2240 2241 /* 2242 ** Progammable Time-out Timer 2 2243 */ 2244 #define PROGTMR2_2S 0x000 2245 #define PROGTMR2_5S PTOTR2_M_PROGTMR20 2246 #define PROGTMR2_10S PTOTR2_M_PROGTMR21 2247 #define PROGTMR2_15S (PTOTR2_M_PROGTMR20 | PTOTR2_M_PROGTMR21) 2248 #define PROGTMR2_30S PTOTR2_M_PROGTMR22 2249 #define PROGTMR2_45S (PTOTR2_M_PROGTMR20 | PTOTR2_M_PROGTMR22) 2250 #define PROGTMR2_60S (PTOTR2_M_PROGTMR21 | PTOTR2_M_PROGTMR22) 2251 #define PROGTMR2_90S (PTOTR2_M_PROGTMR20 | PTOTR2_M_PROGTMR21 | PTOTR2_M_PROGTMR22) 2252 #define PROGTMR2_2MIN PTOTR2_M_PROGTMR23 2253 #define PROGTMR2_3MIN (PTOTR2_M_PROGTMR20 | PTOTR2_M_PROGTMR23) 2254 #define PROGTMR2_4MIN (PTOTR2_M_PROGTMR21 | PTOTR2_M_PROGTMR23) 2255 #define PROGTMR2_6MIN (PTOTR2_M_PROGTMR20 | PTOTR2_M_PROGTMR21 | PTOTR2_M_PROGTMR23 2256 #define PROGTMR2_8MIN (PTOTR2_M_PROGTMR22 | PTOTR2_M_PROGTMR23) 2257 #define PROGTMR2_10MIN (PTOTR2_M_PROGTMR20 | PTOTR2_M_PROGTMR22 | PTOTR2_M_PROGTMR23) 2258 #define PROGTMR2_15MIN (PTOTR2_M_PROGTMR21 | PTOTR2_M_PROGTMR22 | PTOTR2_M_PROGTMR23) 2259 #define PROGTMR2_20MIN (PTOTR2_M_PROGTMR20 | PTOTR2_M_PROGTMR21 | PTOTR2_M_PROGTMR22 | PTOTR0_M_PROGTMR23) 2260 2261 /* 2262 ** 2263 ** Programmable Time-out Timer Register 3 (PTOTR3) - Index 0x02B 2264 ** 2265 ** Loc Size Name Function 2266 ** ----- ---- ---- --------------------------------- 2267 ** <0> 1 PROGTMR30 Programmable Time-out Timer 3 0 2268 ** <1> 1 PROGTMR31 Programmable Time-out Timer 3 1 2269 ** <2> 1 PROGTMR32 Programmable Time-out Timer 3 2 2270 ** <3> 1 PROGTMR33 Programmable Time-out Timer 3 3 2271 ** <7> 1 TMR3SOURCE Clock Source for Timer 3 2272 ** <14> 1 TMR3PC9EN Time-out Timer 3 to PC9 Enable 2273 ** <15> 1 TMR3EN Programmable Timer 3 Enable 2274 ** 2275 ** <4:6><8:13> Reserved 2276 ** 2277 */ 2278 #define PMC_PTOTR3_REG 0x02B 2279 #define PMC_PTOTR3_INIT 0x0000 2280 #define PTOTR3_V_PROGTMR3 0 2281 #define PTOTR3_M_PROGTMR3 0xF << PTOTR3_V_PROGTMR3 2282 #define PTOTR3_V_PROGTMR30 0 2283 #define PTOTR3_M_PROGTMR30 1 << PTOTR3_V_PROGTMR30 2284 #define PTOTR3_V_PROGTMR31 1 2285 #define PTOTR3_M_PROGTMR31 1 << PTOTR3_V_PROGTMR31 2286 #define PTOTR3_V_PROGTMR32 2 2287 #define PTOTR3_M_PROGTMR32 1 << PTOTR3_V_PROGTMR32 2288 #define PTOTR3_V_PROGTMR33 3 2289 #define PTOTR3_M_PROGTMR33 1 << PTOTR3_V_PROGTMR33 2290 #define PTOTR3_V_TMR3SOURCE 7 2291 #define PTOTR3_M_TMR3SOURCE 1 << PTOTR3_V_TMR3SOURCE 2292 #define PTOTR3_V_TMR3PC9EN 14 2293 #define PTOTR3_M_TMR3PC9EN 1 << PTOTR3_V_TMR3PC9EN 2294 #define PTOTR3_V_TMR3EN 15 2295 #define PTOTR3_M_TMR3EN 1 << PTOTR3_V_TMR3EN 2296 2297 /* 2298 ** Progammable Time-out Timer 3 2299 */ 2300 #define PROGTMR3_2S 0x000 2301 #define PROGTMR3_5S PTOTR3_M_PROGTMR30 2302 #define PROGTMR3_10S PTOTR3_M_PROGTMR31 2303 #define PROGTMR3_15S (PTOTR3_M_PROGTMR30 | PTOTR3_M_PROGTMR31) 2304 #define PROGTMR3_30S PTOTR3_M_PROGTMR32 2305 #define PROGTMR3_45S (PTOTR3_M_PROGTMR30 | PTOTR3_M_PROGTMR32) 2306 #define PROGTMR3_60S (PTOTR3_M_PROGTMR31 | PTOTR3_M_PROGTMR32) 2307 #define PROGTMR3_90S (PTOTR3_M_PROGTMR30 | PTOTR3_M_PROGTMR31 | PTOTR3_M_PROGTMR32) 2308 #define PROGTMR3_2MIN PTOTR3_M_PROGTMR33 2309 #define PROGTMR3_3MIN (PTOTR3_M_PROGTMR30 | PTOTR3_M_PROGTMR33) 2310 #define PROGTMR3_4MIN (PTOTR3_M_PROGTMR31 | PTOTR3_M_PROGTMR33) 2311 #define PROGTMR3_6MIN (PTOTR3_M_PROGTMR30 | PTOTR3_M_PROGTMR31 | PTOTR3_M_PROGTMR33 2312 #define PROGTMR3_8MIN (PTOTR3_M_PROGTMR32 | PTOTR3_M_PROGTMR33) 2313 #define PROGTMR3_10MIN (PTOTR3_M_PROGTMR30 | PTOTR3_M_PROGTMR32 | PTOTR3_M_PROGTMR33) 2314 #define PROGTMR3_15MIN (PTOTR3_M_PROGTMR31 | PTOTR3_M_PROGTMR32 | PTOTR3_M_PROGTMR33) 2315 #define PROGTMR3_20MIN (PTOTR3_M_PROGTMR30 | PTOTR3_M_PROGTMR31 | PTOTR3_M_PROGTMR32 | PTOTR0_M_PROGTMR33) 2316 2317 /* 2318 ** 2319 ** Programmable Time-out Timer Source Register 1 (PTOTSR1) - Index 0x02C 2320 ** 2321 ** Loc Size Name Function 2322 ** ----- ---- ---- --------------------------------- 2323 ** <0> 1 VDTMRSEL0 Video Activity Time-out Timer Select 0 2324 ** <1> 1 VDTMRSEL1 Video Activity Time-out Timer Select 1 2325 ** <3> 1 VDTMRSELEN Video Activity Time-out Timer Select Enable 2326 ** <4> 1 HDTMRSEL0 Hard Drive Activity Time-out Timer Select 0 2327 ** <5> 1 HDTMRSEL1 Hard Drive Activity Time-out Timer Select 1 2328 ** <7> 1 HDTMRSELEN Hard Drive Activity Time-out Timer Select Enable 2329 ** <8> 1 FDTMRSEL0 Floppy Drive Activity Time-out Timer Select 0 2330 ** <9> 1 FDTMRSEL1 Floppy Drive Activity Time-out Timer Select 1 2331 ** <11> 1 FDTMRSELEN Floppy Drive Activity Time-out Timer Select Enable 2332 ** <12> 1 KBTMRSEL0 Keyboard Activity Time-out Timer Select 0 2333 ** <13> 1 KBTMRSEL1 Keyboard Activity Time-out Timer Select 1 2334 ** <15> 1 KBTMRSELEN Keyboard Activity Time-out Timer Select Enable 2335 ** 2336 ** <2><6><10><14> Reserved 2337 ** 2338 */ 2339 #define PMC_PTOTSR1_REG 0x02C 2340 #define PMC_PTOTSR1_INIT 0x0000 2341 #define PTOTSR1_V_VDTMRSEL 0 2342 #define PTOTSR1_M_VDTMRSEL 0x3 << PTOTSR1_V_VDTMRSEL 2343 #define PTOTSR1_V_VDTMRSEL0 0 2344 #define PTOTSR1_M_VDTMRSEL0 1 << PTOTSR1_V_VDTMRSEL0 2345 #define PTOTSR1_V_VDTMRSEL1 1 2346 #define PTOTSR1_M_VDTMRSEL1 1 << PTOTSR1_V_VDTMRSEL1 2347 #define PTOTSR1_V_VDTMRSELEN 3 2348 #define PTOTSR1_M_VDTMRSELEN 1 << PTOTSR1_V_VDTMRSELEN 2349 #define PTOTSR1_V_HDTMRSEL 4 2350 #define PTOTSR1_M_HDTMRSEL 0x3 << PTOTSR1_V_HDTMRSEL 2351 #define PTOTSR1_V_HDTMRSEL0 4 2352 #define PTOTSR1_M_HDTMRSEL0 1 << PTOTSR1_V_HDTMRSEL0 2353 #define PTOTSR1_V_HDTMRSEL1 5 2354 #define PTOTSR1_M_HDTMRSEL1 1 << PTOTSR1_V_HDTMRSEL1 2355 #define PTOTSR1_V_HDTMRSELEN 7 2356 #define PTOTSR1_M_HDTMRSELEN 1 << PTOTSR1_V_HDTMRSELEN 2357 #define PTOTSR1_V_FDTMRSEL 8 2358 #define PTOTSR1_M_FDTMRSEL 0x3 << PTOTSR1_V_FDTMRSEL 2359 #define PTOTSR1_V_FDTMRSEL0 8 2360 #define PTOTSR1_M_FDTMRSEL0 1 << PTOTSR1_V_FDTMRSEL0 2361 #define PTOTSR1_V_FDTMRSEL1 9 2362 #define PTOTSR1_M_FDTMRSEL1 1 << PTOTSR1_V_FDTMRSEL1 2363 #define PTOTSR1_V_FDTMRSELEN 11 2364 #define PTOTSR1_M_FDTMRSELEN 1 << PTOTSR1_V_FDTMRSELEN 2365 #define PTOTSR1_V_KBTMRSEL 12 2366 #define PTOTSR1_M_KBTMRSEL 0x3 << PTOTSR1_V_KBTMRSEL 2367 #define PTOTSR1_V_KBTMRSEL0 12 2368 #define PTOTSR1_M_KBTMRSEL0 1 << PTOTSR1_V_KBTMRSEL0 2369 #define PTOTSR1_V_KBTMRSEL1 13 2370 #define PTOTSR1_M_KBTMRSEL1 1 << PTOTSR1_V_KBTMRSEL1 2371 #define PTOTSR1_V_KBTMRSELEN 15 2372 #define PTOTSR1_M_KBTMRSELEN 1 << PTOTSR1_V_KBTMRSELEN 2373 2374 /* 2375 ** Video Activity Progammable Time-out Timer 2376 */ 2377 #define VDTMRSEL_0 0x000 2378 #define VDTMRSEL_1 PTOTSR1_M_VDTMRSEL0 2379 #define VDTMRSEL_2 PTOTSR1_M_VDTMRSEL1 2380 #define VDTMRSEL_3 (PTOTSR1_M_VDTMRSEL0 | PTOTSR1_M_VDTMRSEL1) 2381 2382 /* 2383 ** Hard Drive Activity Progammable Time-out Timer 2384 */ 2385 #define HDTMRSEL_0 0x000 2386 #define HDTMRSEL_1 PTOTSR1_M_HDTMRSEL0 2387 #define HDTMRSEL_2 PTOTSR1_M_HDTMRSEL1 2388 #define HDTMRSEL_3 (PTOTSR1_M_HDTMRSEL0 | PTOTSR1_M_HDTMRSEL1) 2389 2390 /* 2391 ** Floppy Drive Activity Progammable Time-out Timer 2392 */ 2393 #define FDTMRSEL_0 0x000 2394 #define FDTMRSEL_1 PTOTSR1_M_FDTMRSEL0 2395 #define FDTMRSEL_2 PTOTSR1_M_FDTMRSEL1 2396 #define FDTMRSEL_3 (PTOTSR1_M_FDTMRSEL0 | PTOTSR1_M_FDTMRSEL1) 2397 2398 /* 2399 ** Keyboard Activity Progammable Time-out Timer 2400 */ 2401 #define KBTMRSEL_0 0x000 2402 #define KBTMRSEL_1 PTOTSR1_M_KBTMRSEL0 2403 #define KBTMRSEL_2 PTOTSR1_M_KBTMRSEL1 2404 #define KBTMRSEL_3 (PTOTSR1_M_KBTMRSEL0 | PTOTSR1_M_KBTMRSEL1) 2405 2406 /* 2407 ** 2408 ** Programmable Time-out Timer Source Register 2 (PTOTSR2) - Index 0x02D 2409 ** 2410 ** Loc Size Name Function 2411 ** ----- ---- ---- --------------------------------- 2412 ** <0> 1 SIOTMRSEL0 Serial Port Activity Time-out Timer Select 0 2413 ** <1> 1 SIOTMRSEL1 Serial Port Activity Time-out Timer Select 1 2414 ** <3> 1 SIOTMRSELEN Serial Port Activity Time-out Timer Select Enable 2415 ** <4> 1 PIOTMRSEL0 Parallel Port Activity Time-out Timer Select 0 2416 ** <5> 1 PIOTMRSEL1 Parallel Port Activity Time-out Timer Select 1 2417 ** <7> 1 PIOTMRSELEN Parallel Port Activity Time-out Timer Select Enable 2418 ** <8> 1 PR0TMRSEL0 PRM 0 Activity Time-out Timer Select 0 2419 ** <9> 1 PR0TMRSEL1 PRM 0 Activity Time-out Timer Select 1 2420 ** <11> 1 PR0TMRSELEN PRM 0 Activity Time-out Timer Select Enable 2421 ** <12> 1 PR1TMRSEL0 PRM 1 Activity Time-out Timer Select 0 2422 ** <13> 1 PR1TMRSEL1 PRM 1 Activity Time-out Timer Select 1 2423 ** <15> 1 PR1TMRSELEN PRM 1 Activity Time-out Timer Select Enable 2424 ** 2425 ** <2><6><10><14> Reserved 2426 ** 2427 */ 2428 #define PMC_PTOTSR2_REG 0x02D 2429 #define PMC_PTOTSR2_INIT 0x0000 2430 #define PTOTSR2_V_SIOTMRSEL 0 2431 #define PTOTSR2_M_SIOTMRSEL 0x3 << PTOTSR2_V_SIOTMRSEL 2432 #define PTOTSR2_V_SIOTMRSEL0 0 2433 #define PTOTSR2_M_SIOTMRSEL0 1 << PTOTSR2_V_SIOTMRSEL0 2434 #define PTOTSR2_V_SIOTMRSEL1 1 2435 #define PTOTSR2_M_SIOTMRSEL1 1 << PTOTSR2_V_SIOTMRSEL1 2436 #define PTOTSR2_V_SIOTMRSELEN 3 2437 #define PTOTSR2_M_SIOTMRSELEN 1 << PTOTSR2_V_SIOTMRSELEN 2438 #define PTOTSR2_V_PIOTMRSEL 4 2439 #define PTOTSR2_M_PIOTMRSEL 0x3 << PTOTSR2_V_PIOTMRSEL 2440 #define PTOTSR2_V_PIOTMRSEL0 4 2441 #define PTOTSR2_M_PIOTMRSEL0 1 << PTOTSR2_V_PIOTMRSEL0 2442 #define PTOTSR2_V_PIOTMRSEL1 5 2443 #define PTOTSR2_M_PIOTMRSEL1 1 << PTOTSR2_V_PIOTMRSEL1 2444 #define PTOTSR2_V_PIOTMRSELEN 7 2445 #define PTOTSR2_M_PIOTMRSELEN 1 << PTOTSR2_V_PIOTMRSELEN 2446 #define PTOTSR2_V_PR0TMRSEL 8 2447 #define PTOTSR2_M_PR0TMRSEL 0x3 << PTOTSR2_V_PR0TMRSEL 2448 #define PTOTSR2_V_PR0TMRSEL0 8 2449 #define PTOTSR2_M_PR0TMRSEL0 1 << PTOTSR2_V_PR0TMRSEL0 2450 #define PTOTSR2_V_PR0TMRSEL1 9 2451 #define PTOTSR2_M_PR0TMRSEL1 1 << PTOTSR2_V_PR0TMRSEL1 2452 #define PTOTSR2_V_PR0TMRSELEN 11 2453 #define PTOTSR2_M_PR0TMRSELEN 1 << PTOTSR2_V_PR0TMRSELEN 2454 #define PTOTSR2_V_PR1TMRSEL 12 2455 #define PTOTSR2_M_PR1TMRSEL 0x3 << PTOTSR2_V_PR1TMRSEL 2456 #define PTOTSR2_V_PR1TMRSEL0 12 2457 #define PTOTSR2_M_PR1TMRSEL0 1 << PTOTSR2_V_PR1TMRSEL0 2458 #define PTOTSR2_V_PR1TMRSEL1 13 2459 #define PTOTSR2_M_PR1TMRSEL1 1 << PTOTSR2_V_PR1TMRSEL1 2460 #define PTOTSR2_V_PR1TMRSELEN 15 2461 #define PTOTSR2_M_PR1TMRSELEN 1 << PTOTSR2_V_PR1TMRSELEN 2462 2463 /* 2464 ** Serial Port Activity Progammable Time-out Timer 2465 */ 2466 #define SIOTMRSEL_0 0x000 2467 #define SIOTMRSEL_1 PTOTSR2_M_SIOTMRSEL0 2468 #define SIOTMRSEL_2 PTOTSR2_M_SIOTMRSEL1 2469 #define SIOTMRSEL_3 (PTOTSR2_M_SIOTMRSEL0 | PTOTSR2_M_SIOTMRSEL1) 2470 2471 /* 2472 ** Parallel Port Activity Progammable Time-out Timer 2473 */ 2474 #define PIOTMRSEL_0 0x000 2475 #define PIOTMRSEL_1 PTOTSR2_M_PIOTMRSEL0 2476 #define PIOTMRSEL_2 PTOTSR2_M_PIOTMRSEL1 2477 #define PIOTMRSEL_3 (PTOTSR2_M_PIOTMRSEL0 | PTOTSR2_M_PIOTMRSEL1) 2478 2479 /* 2480 ** PRM 0 Activity Progammable Time-out Timer 2481 */ 2482 #define PR0TMRSEL_0 0x000 2483 #define PR0TMRSEL_1 PTOTSR2_M_PR0TMRSEL0 2484 #define PR0TMRSEL_2 PTOTSR2_M_PR0TMRSEL1 2485 #define PR0TMRSEL_3 (PTOTSR2_M_PR0TMRSEL0 | PTOTSR2_M_PR0TMRSEL1) 2486 2487 /* 2488 ** PRM 1 Activity Progammable Time-out Timer 2489 */ 2490 #define PR1TMRSEL_0 0x000 2491 #define PR1TMRSEL_1 PTOTSR2_M_PR1TMRSEL0 2492 #define PR1TMRSEL_2 PTOTSR2_M_PR1TMRSEL1 2493 #define PR1TMRSEL_3 (PTOTSR2_M_PR1TMRSEL0 | PTOTSR2_M_PR1TMRSEL1) 2494 2495 /* 2496 ** 2497 ** Programmable Time-out Timer Source Register 3 (PTOTSR3) - Index 0x02E 2498 ** 2499 ** Loc Size Name Function 2500 ** ----- ---- ---- --------------------------------- 2501 ** <0> 1 PR2TMRSEL0 PRM 2 Activity Time-out Timer Select 0 2502 ** <1> 1 PR2TMRSEL1 PRM 2 Activity Time-out Timer Select 1 2503 ** <3> 1 PR2TMRSELEN PRM 2 Activity Time-out Timer Select Enable 2504 ** <4> 1 PR3TMRSEL0 PRM 3 Activity Time-out Timer Select 0 2505 ** <5> 1 PR3TMRSEL1 PRM 3 Activity Time-out Timer Select 1 2506 ** <7> 1 PR3TMRSELEN PRM 3 Activity Time-out Timer Select Enable 2507 ** 2508 ** <2><6><8:15> Reserved 2509 ** 2510 */ 2511 #define PMC_PTOTSR3_REG 0x02E 2512 #define PMC_PTOTSR3_INIT 0x0000 2513 #define PTOTSR3_V_PR2TMRSEL 0 2514 #define PTOTSR3_M_PR2TMRSEL 0x3 << PTOTSR3_V_PR2TMRSEL 2515 #define PTOTSR3_V_PR2TMRSEL0 0 2516 #define PTOTSR3_M_PR2TMRSEL0 1 << PTOTSR3_V_PR2TMRSEL0 2517 #define PTOTSR3_V_PR2TMRSEL1 1 2518 #define PTOTSR3_M_PR2TMRSEL1 1 << PTOTSR3_V_PR2TMRSEL1 2519 #define PTOTSR3_V_PR2TMRSELEN 3 2520 #define PTOTSR3_M_PR2TMRSELEN 1 << PTOTSR3_V_PR2TMRSELEN 2521 #define PTOTSR3_V_PR3TMRSEL 4 2522 #define PTOTSR3_M_PR3TMRSEL 0x3 << PTOTSR3_V_PR3TMRSEL 2523 #define PTOTSR3_V_PR3TMRSEL0 4 2524 #define PTOTSR3_M_PR3TMRSEL0 1 << PTOTSR3_V_PR3TMRSEL0 2525 #define PTOTSR3_V_PR3TMRSEL1 5 2526 #define PTOTSR3_M_PR3TMRSEL1 1 << PTOTSR3_V_PR3TMRSEL1 2527 #define PTOTSR3_V_PR3TMRSELEN 7 2528 #define PTOTSR3_M_PR3TMRSELEN 1 << PTOTSR3_V_PR3TMRSELEN 2529 2530 /* 2531 ** PRM 2 Activity Progammable Time-out Timer 2532 */ 2533 #define PR2TMRSEL_0 0x000 2534 #define PR2TMRSEL_1 PTOTSR3_M_PR2TMRSEL0 2535 #define PR2TMRSEL_2 PTOTSR3_M_PR2TMRSEL1 2536 #define PR2TMRSEL_3 (PTOTSR3_M_PR2TMRSEL0 | PTOTSR3_M_PR2TMRSEL1) 2537 2538 /* 2539 ** PRM 3 Activity Progammable Time-out Timer 2540 */ 2541 #define PR3TMRSEL_0 0x000 2542 #define PR3TMRSEL_1 PTOTSR3_M_PR3TMRSEL0 2543 #define PR3TMRSEL_2 PTOTSR3_M_PR3TMRSEL1 2544 #define PR3TMRSEL_3 (PTOTSR3_M_PR3TMRSEL0 | PTOTSR3_M_PR3TMRSEL1) 2545 2546 /* 2547 ** 2548 ** Programmable Time-out Timer Source Register 4 (PTOTSR4) - Index 0x02F 2549 ** 2550 ** Loc Size Name Function 2551 ** ----- ---- ---- --------------------------------- 2552 ** <0> 1 EXT0TMRSEL0 EXTACT0 Activity Time-out Timer Select 0 2553 ** <1> 1 EXT0TMRSEL1 EXTACT0 Activity Time-out Timer Select 1 2554 ** <3> 1 EXT0TMRSELEN EXTACT0 Activity Time-out Timer Select Enable 2555 ** <4> 1 EXT1TMRSEL0 EXTACT1 Activity Time-out Timer Select 0 2556 ** <5> 1 EXT1TMRSEL1 EXTACT1 Activity Time-out Timer Select 1 2557 ** <7> 1 EXT1TMRSELEN EXTACT1 Activity Time-out Timer Select Enable 2558 ** <8> 1 EXT2TMRSEL0 EXTACT2 Activity Time-out Timer Select 0 2559 ** <9> 1 EXT2TMRSEL1 EXTACT2 Activity Time-out Timer Select 1 2560 ** <11> 1 EXT2TMRSELEN EXTACT2 Activity Time-out Timer Select Enable 2561 ** <12> 1 EXT3TMRSEL0 EXTACT3 Activity Time-out Timer Select 0 2562 ** <13> 1 EXT3TMRSEL1 EXTACT3 Activity Time-out Timer Select 1 2563 ** <15> 1 EXT3TMRSELEN EXTACT3 Activity Time-out Timer Select Enable 2564 ** 2565 ** <2><6><10><14> Reserved 2566 ** 2567 */ 2568 #define PMC_PTOTSR4_REG 0x02F 2569 #define PMC_PTOTSR4_INIT 0x0000 2570 #define PTOTSR4_V_EXT0TMRSEL 0 2571 #define PTOTSR4_M_EXT0TMRSEL 0x3 << PTOTSR4_V_EXT0TMRSEL 2572 #define PTOTSR4_V_EXT0TMRSEL0 0 2573 #define PTOTSR4_M_EXT0TMRSEL0 1 << PTOTSR4_V_EXT0TMRSEL0 2574 #define PTOTSR4_V_EXT0TMRSEL1 1 2575 #define PTOTSR4_M_EXT0TMRSEL1 1 << PTOTSR4_V_EXT0TMRSEL1 2576 #define PTOTSR4_V_EXT0TMRSELEN 3 2577 #define PTOTSR4_M_EXT0TMRSELEN 1 << PTOTSR4_V_EXT0TMRSELEN 2578 #define PTOTSR4_V_EXT1TMRSEL 4 2579 #define PTOTSR4_M_EXT1TMRSEL 0x3 << PTOTSR4_V_EXT1TMRSEL 2580 #define PTOTSR4_V_EXT1TMRSEL0 4 2581 #define PTOTSR4_M_EXT1TMRSEL0 1 << PTOTSR4_V_EXT1TMRSEL0 2582 #define PTOTSR4_V_EXT1TMRSEL1 5 2583 #define PTOTSR4_M_EXT1TMRSEL1 1 << PTOTSR4_V_EXT1TMRSEL1 2584 #define PTOTSR4_V_EXT1TMRSELEN 7 2585 #define PTOTSR4_M_EXT1TMRSELEN 1 << PTOTSR4_V_EXT1TMRSELEN 2586 #define PTOTSR4_V_EXT2TMRSEL 8 2587 #define PTOTSR4_M_EXT2TMRSEL 0x3 << PTOTSR4_V_EXT2TMRSEL 2588 #define PTOTSR4_V_EXT2TMRSEL0 8 2589 #define PTOTSR4_M_EXT2TMRSEL0 1 << PTOTSR4_V_EXT2TMRSEL0 2590 #define PTOTSR4_V_EXT2TMRSEL1 9 2591 #define PTOTSR4_M_EXT2TMRSEL1 1 << PTOTSR4_V_EXT2TMRSEL1 2592 #define PTOTSR4_V_EXT2TMRSELEN 11 2593 #define PTOTSR4_M_EXT2TMRSELEN 1 << PTOTSR4_V_EXT2TMRSELEN 2594 #define PTOTSR4_V_EXT3TMRSEL 12 2595 #define PTOTSR4_M_EXT3TMRSEL 0x3 << PTOTSR4_V_EXT3TMRSEL 2596 #define PTOTSR4_V_EXT3TMRSEL0 12 2597 #define PTOTSR4_M_EXT3TMRSEL0 1 << PTOTSR4_V_EXT3TMRSEL0 2598 #define PTOTSR4_V_EXT3TMRSEL1 13 2599 #define PTOTSR4_M_EXT3TMRSEL1 1 << PTOTSR4_V_EXT3TMRSEL1 2600 #define PTOTSR4_V_EXT3TMRSELEN 15 2601 #define PTOTSR4_M_EXT3TMRSELEN 1 << PTOTSR4_V_EXT3TMRSELEN 2602 2603 /* 2604 ** EXTACT0 Activity Progammable Time-out Timer 2605 */ 2606 #define EXT0TMRSEL_0 0x000 2607 #define EXT0TMRSEL_1 PTOTSR4_M_EXT0TMRSEL0 2608 #define EXT0TMRSEL_2 PTOTSR4_M_EXT0TMRSEL1 2609 #define EXT0TMRSEL_3 (PTOTSR4_M_EXT0TMRSEL0 | PTOTSR4_M_EXT0TMRSEL1) 2610 2611 /* 2612 ** EXTACT1 Activity Progammable Time-out Timer 2613 */ 2614 #define EXT1TMRSEL_0 0x000 2615 #define EXT1TMRSEL_1 PTOTSR4_M_EXT1TMRSEL0 2616 #define EXT1TMRSEL_2 PTOTSR4_M_EXT1TMRSEL1 2617 #define EXT1TMRSEL_3 (PTOTSR4_M_EXT1TMRSEL0 | PTOTSR4_M_EXT1TMRSEL1) 2618 2619 /* 2620 ** EXTACT2 Activity Progammable Time-out Timer 2621 */ 2622 #define EXT2TMRSEL_0 0x000 2623 #define EXT2TMRSEL_1 PTOTSR4_M_EXT2TMRSEL0 2624 #define EXT2TMRSEL_2 PTOTSR4_M_EXT2TMRSEL1 2625 #define EXT2TMRSEL_3 (PTOTSR4_M_EXT2TMRSEL0 | PTOTSR4_M_EXT2TMRSEL1) 2626 2627 /* 2628 ** EXTACT3 Activity Progammable Time-out Timer 2629 */ 2630 #define EXT3TMRSEL_0 0x000 2631 #define EXT3TMRSEL_1 PTOTSR4_M_EXT3TMRSEL0 2632 #define EXT3TMRSEL_2 PTOTSR4_M_EXT3TMRSEL1 2633 #define EXT3TMRSEL_3 (PTOTSR4_M_EXT3TMRSEL0 | PTOTSR4_M_EXT3TMRSEL1) 2634 2635 /* 2636 ** System Registers 2637 ** 2638 */ 2639 2640 /* 2641 ** 2642 ** Power-On Register (POR) - Index 0x100 2643 ** 2644 ** Loc Size Name Function 2645 ** ----- ---- ---- --------------------------------- 2646 ** <0> 1 SEQUOIASEL SEQUOIA Select 2647 ** <3> 1 DLYBDEN Delay BD Bus Enable 2648 ** <4> 1 CPUMODESEL CPU Mode Select 2649 ** <6> 1 DLYBDBUSEN Delay BADS# & BDEV# Enable 2650 ** <7> 1 MISCCF0 Miscellaneous Configuration 0 2651 ** <8> 1 MISCCF1 Miscellaneous Configuration 1 2652 ** <9> 1 MISCCF2 Miscellaneous Configuration 2 2653 ** <11> 1 EXTRTC Optional External RTC 2654 ** <12> 1 1X2XCLKSEL 1X/2X Clock Select 2655 ** 2656 ** <1:2><5><10><13:15> Reserved 2657 */ 2658 #define SR_POR_REG 0x100 2659 #define POR_V_SEQUOIASEL 0 2660 #define POR_M_SEQUOIASEL 1 << POR_V_SEQUOIASEL 2661 #define POR_V_DLYBDEN 3 2662 #define POR_M_DLYBDEN 1 << POR_V_DLYBDEN 2663 #define POR_V_CPUMODESEL 4 2664 #define POR_M_CPUMODESEL 1 << POR_V_CPUMODESEL 2665 #define POR_V_DLYBDBUSEN 6 2666 #define POR_M_DLYBDBUSEN 1 << POR_V_DLYBDBUSEN 2667 #define POR_V_MISCCF 7 2668 #define POR_M_MISCCF 0x7 << POR_V_MISCCF 2669 #define POR_V_MISCCF0 7 2670 #define POR_M_MISCCF0 1 << POR_V_MISCCF0 2671 #define POR_V_MISCCF1 8 2672 #define POR_M_MISCCF1 1 << POR_V_MISCCF1 2673 #define POR_V_MISCCF2 9 2674 #define POR_M_MISCCF2 1 << POR_V_MISCCF2 2675 #define POR_V_EXTRTC 11 2676 #define POR_M_EXTRTC 1 << POR_V_EXTRTC 2677 #define POR_V_1X2XCLKSEL 12 2678 #define POR_M_1X2XCLKSEL 1 << POR_V_1X2XCLKSEL 2679 2680 /* 2681 ** 2682 ** Non-Cacheable Region 1 Register (NCR1R) - Index 0x101 2683 ** 2684 ** Loc Size Name Function 2685 ** ----- ---- ---- --------------------------------- 2686 ** <0> 1 NCR1EN Enable Non-Cacheable Region 1 2687 ** <1> 1 NCR1BS0 Non-Cacheable Region 1 Block Size 0 2688 ** <2> 1 NCR1BS1 Non-Cacheable Region 1 Block Size 1 2689 ** <3> 13 NCR1A Non-Cacheable Region 1 Starting Addr 2690 ** 2691 */ 2692 #define SR_NCR1R_REG 0x101 2693 #define SR_NCR1R_INIT 0x0000 2694 #define NCR1R_V_NCR1EN 0 2695 #define NCR1R_M_NCR1EN 1 << NCR1R_V_NCR1EN 2696 #define NCR1R_V_NCR1BS 1 2697 #define NCR1R_M_NCR1BS 0x3 << NCR1R_V_NCR1BS 2698 #define NCR1R_V_NCR1BS0 1 2699 #define NCR1R_M_NCR1BS0 1 << NCR1R_V_NCR1BS0 2700 #define NCR1R_V_NCR1BS1 1 2701 #define NCR1R_M_NCR1BS1 1 << NCR1R_V_NCR1BS1 2702 #define NCR1R_V_NCR1A 3 2703 #define NCR1R_M_NCR1A 0xFFF8 << NCR1R_V_NCR1A 2704 2705 /* 2706 ** Non-Cacheable Region 1 Block Size (Kbytes) 2707 */ 2708 #define NCR1BS_32K 0x000 2709 #define NCR1BS_64K NCR1R_M_NCR1BS0 2710 #define NCR1BS_128K NCR1R_M_NCR1BS1 2711 #define NCR1BS_256K (NCR1R_M_NCR1BS0 | NCR1R_M_NCR1BS1) 2712 2713 /* 2714 ** 2715 ** Non-Cacheable Region 2 Register (NCR2R) - Index 0x102 2716 ** 2717 ** Loc Size Name Function 2718 ** ----- ---- ---- --------------------------------- 2719 ** <0> 1 NCR2EN Enable Non-Cacheable Region 2 2720 ** <1> 1 NCR2BS0 Non-Cacheable Region 2 Block Size 0 2721 ** <2> 1 NCR2BS1 Non-Cacheable Region 2 Block Size 1 2722 ** <3> 13 NCR2A Non-Cacheable Region 2 Starting Addr 2723 ** 2724 */ 2725 #define SR_NCR2R_REG 0x102 2726 #define SR_NCR2R_INIT 0x0000 2727 #define NCR2R_V_NCR2EN 0 2728 #define NCR2R_M_NCR2EN 1 << NCR2R_V_NCR2EN 2729 #define NCR2R_V_NCR2BS 1 2730 #define NCR2R_M_NCR2BS 0x3 << NCR2R_V_NCR2BS 2731 #define NCR2R_V_NCR2BS0 1 2732 #define NCR2R_M_NCR2BS0 1 << NCR2R_V_NCR2BS0 2733 #define NCR2R_V_NCR2BS1 1 2734 #define NCR2R_M_NCR2BS1 1 << NCR2R_V_NCR2BS1 2735 #define NCR2R_V_NCR2A 3 2736 #define NCR2R_M_NCR2A 0xFFF8 << NCR2R_V_NCR2A 2737 2738 /* 2739 ** Non-Cacheable Region 2 Block Size (Kbytes) 2740 */ 2741 #define NCR2BS_32K 0x000 2742 #define NCR2BS_64K NCR2R_M_NCR2BS0 2743 #define NCR2BS_128K NCR2R_M_NCR2BS1 2744 #define NCR2BS_256K (NCR2R_M_NCR2BS0 | NCR2R_M_NCR2BS1) 2745 2746 /* 2747 ** 2748 ** SYS Miscellaneous Control Register 1 (SYSMCR1) - Index 0x103 2749 ** 2750 ** Loc Size Name Function 2751 ** ----- ---- ---- --------------------------------- 2752 ** <0> 1 LDSMIHLDER Load SMI Handler into SMM Space 2753 ** <1> 1 MOVRLYEN Memory Overlay Enable 2754 ** <2> 1 SMMMAPSEL SMM Memory Map Select 2755 ** <3> 1 SMMDETECT SMM Detect 2756 ** <4> 1 FLUSHWSMI Generate FLUSH# with SMI# Active 2757 ** <5> 1 SMIFLUSHIN SMI Flush In 2758 ** <6> 1 SMIFLUSHOUT SMI Flush Out 2759 ** <7> 1 SMMKENDIS SMM KEN Disable 2760 ** <8> 1 KDISSMMREG SMM Region KEN Disable 2761 ** <9> 1 SMISEL SMI Select 2762 ** <10> 1 SMMBLASTL Force BLAST# Low During SMM Cycles Enable 2763 ** <11> 1 SMMMSKA20 SMM Mask A20 2764 ** <13> 1 SMMMAPD SMM Memory Map Using D Segment 2765 ** <14> 1 SMMMAPE SMM Memory Map Using E Segment 2766 ** <15> 1 SMISTRTSEL SMI Start Select 2767 ** 2768 ** <12> Reserved 2769 */ 2770 #define SR_SYSMCR1_REG 0x103 2771 #define SR_SYSMCR1_INIT SYSMCR1_M_SMISEL 2772 #define SYSMCR1_V_LDSMIHLDER 0 2773 #define SYSMCR1_M_LDSMIHLDER 1 << SYSMCR1_V_LDSMIHLDER 2774 #define SYSMCR1_V_MOVRLYEN 1 2775 #define SYSMCR1_M_MOVRLYEN 1 << SYSMCR1_V_MOVRLYEN 2776 #define SYSMCR1_V_SMMMAPSEL 2 2777 #define SYSMCR1_M_SMMMAPSEL 1 << SYSMCR1_V_SMMMAPSEL 2778 #define SYSMCR1_V_SMMDETECT 3 2779 #define SYSMCR1_M_SMMDETECT 1 << SYSMCR1_V_SMMDETECT 2780 #define SYSMCR1_V_FLUSHWSMI 4 2781 #define SYSMCR1_M_FLUSHWSMI 1 << SYSMCR1_V_FLUSHWSMI 2782 #define SYSMCR1_V_SMIFLUSHIN 5 2783 #define SYSMCR1_M_SMIFLUSHIN 1 << SYSMCR1_V_SMIFLUSHIN 2784 #define SYSMCR1_V_SMIFLUSHOUT 6 2785 #define SYSMCR1_M_SMIFLUSHOUT 1 << SYSMCR1_V_SMIFLUSHOUT 2786 #define SYSMCR1_V_SMMKENDIS 7 2787 #define SYSMCR1_M_SMMKENDIS 1 << SYSMCR1_V_SMMKENDIS 2788 #define SYSMCR1_V_KDISSMMREG 8 2789 #define SYSMCR1_M_KDISSMMREG 1 << SYSMCR1_V_KDISSMMREG 2790 #define SYSMCR1_V_SMISEL 9 2791 #define SYSMCR1_M_SMISEL 1 << SYSMCR1_V_SMISEL 2792 #define SYSMCR1_V_SMMBLASTL 10 2793 #define SYSMCR1_M_SMMBLASTL 1 << SYSMCR1_V_SMMBLASTL 2794 #define SYSMCR1_V_SMMMSKA20 11 2795 #define SYSMCR1_M_SMMMSKA20 1 << SYSMCR1_V_SMMMSKA20 2796 #define SYSMCR1_V_SMMMAPD 13 2797 #define SYSMCR1_M_SMMMAPD 1 << SYSMCR1_V_SMMMAPD 2798 #define SYSMCR1_V_SMMMAPE 14 2799 #define SYSMCR1_M_SMMMAPE 1 << SYSMCR1_V_SMMMAPE 2800 #define SYSMCR1_V_SMISTRTSEL 15 2801 #define SYSMCR1_M_SMISTRTSEL 1 << SYSMCR1_V_SMISTRTSEL 2802 2803 /* 2804 ** 2805 ** SYS Miscellaneous Control Register 2 (SYSMCR2) - Index 0x104 2806 ** 2807 ** Loc Size Name Function 2808 ** ----- ---- ---- --------------------------------- 2809 ** <0> 1 SMIHLDOFRST Enable Hold-Off of SRESET During SMI Cycles 2810 ** <1> 1 LCLKDIS KEN Disable Always 2811 ** <2> 1 KFLUSH Cache Flush 2812 ** <4> 1 LSTIOLTCHEN Last I/O Latch Enable 2813 ** <6> 1 VLMSTLDOFF Lead-off Wait-State for VL-Master Cycle 2814 ** <13> 1 ENRDYN Generate RDY# at the End of a Burst Cycle 2815 ** <14> 1 LMABLOCK Local Memory Access at A0000-BFFFFH Lock 2816 ** <15> 1 SHDWRLOCK Shadow RAM Write Lock 2817 ** 2818 ** <3><5><7:12> Reserved 2819 */ 2820 #define SR_SYSMCR2_REG 0x104 2821 #define SR_SYSMCR2_INIT ( SYSMCR2_M_SMIHLDOFRST | SYSMCR2_M_VLMSTLDOFF \ 2822 SYSMCR2_M_ENRDYN ) 2823 #define SYSMCR2_V_SMIHLDOFRST 0 2824 #define SYSMCR2_M_SMIHLDOFRST 1 << SYSMCR2_V_SMIHLDOFRST 2825 #define SYSMCR2_V_LCLKDIS 1 2826 #define SYSMCR2_M_LCLKDIS 1 << SYSMCR2_V_LCLKDIS 2827 #define SYSMCR2_V_KFLUSH 2 2828 #define SYSMCR2_M_KFLUSH 1 << SYSMCR2_V_KFLUSH 2829 #define SYSMCR2_V_LSTIOLTCHEN 4 2830 #define SYSMCR2_M_LSTIOLTCHEN 1 << SYSMCR2_V_LSTIOLTCHEN 2831 #define SYSMCR2_V_VLMSTLDOFF 6 2832 #define SYSMCR2_M_VLMSTLDOFF 1 << SYSMCR2_V_VLMSTLDOFF 2833 #define SYSMCR2_V_ENRDYN 13 2834 #define SYSMCR2_M_ENRDYN 1 << SYSMCR2_V_ENRDYN 2835 #define SYSMCR2_V_LMABLOCK 14 2836 #define SYSMCR2_M_LMABLOCK 1 << SYSMCR2_V_LMABLOCK 2837 #define SYSMCR2_V_SHDWRLOCK 15 2838 #define SYSMCR2_M_SHDWRLOCK 1 << SYSMCR2_V_SHDWRLOCK 2839 2840 /* 2841 ** 2842 ** Parity Address Register 1 (PARADR1) - Index 0x105 2843 ** 2844 ** Loc Size Name Function 2845 ** ----- ---- ---- --------------------------------- 2846 ** <2> 14 PARADR Parity Error Address 2847 ** 2848 ** <0:1> Reserved 2849 */ 2850 #define SR_PARADR1_REG 0x105 2851 #define PARADR1_V_PARADR 2 2852 #define PARADR1_M_PARADR 0xFFFC << PARADR1_V_PARADR 2853 2854 /* 2855 ** 2856 ** Parity Address Register 2 (PARADR2) - Index 0x106 2857 ** 2858 ** Loc Size Name Function 2859 ** ----- ---- ---- --------------------------------- 2860 ** <0> 12 PARADR Parity Error Address 2861 ** <12> 1 PARBE0 Byte Enables for Parity Error Address 0 2862 ** <13> 1 PARBE1 Byte Enables for Parity Error Address 1 2863 ** <14> 1 PARBE2 Byte Enables for Parity Error Address 2 2864 ** <15> 1 PARBE3 Byte Enables for Parity Error Address 3 2865 ** 2866 */ 2867 #define SR_PARADR2_REG 0x106 2868 #define PARADR2_V_PARADR 0 2869 #define PARADR2_M_PARADR 0xFFF << PARADR2_V_PARADR 2870 #define PARADR2_V_PARBE 12 2871 #define PARADR2_M_PARBE 0xF << PARADR2_V_PARBE 2872 #define PARADR2_V_PARBE0 12 2873 #define PARADR2_M_PARBE0 1 << PARADR2_V_PARBE0 2874 #define PARADR2_V_PARBE1 13 2875 #define PARADR2_M_PARBE1 1 << PARADR2_V_PARBE1 2876 #define PARADR2_V_PARBE2 14 2877 #define PARADR2_M_PARBE2 1 << PARADR2_V_PARBE2 2878 #define PARADR2_V_PARBE3 15 2879 #define PARADR2_M_PARBE3 1 << PARADR2_V_PARBE3 2880 2881 /* 2882 ** SEQUOIA-1 Pin Function Select Registers 2883 ** 2884 */ 2885 2886 /* 2887 ** 2888 ** SEQUOIA-1 Pin Select Register 1 (SEQPSR1) - Index 0x110 2889 ** 2890 ** Loc Size Name Function 2891 ** ----- ---- ---- --------------------------------- 2892 ** <0> 1 NPWRGDDBDIS Negative PWRGD Edge Debounce Disable 2893 ** <1> 1 PORT92DIS Port 92 Disable 2894 ** <2> 1 TAGCSSEL TAGCS# Select 2895 ** <3> 1 LOCKPINSEL LOCK# Pin Select 2896 ** <4> 1 CCSPINEN CCS Pin Enable # 2897 ** <5> 1 TAGDEN TAG RAM Data Enable # 2898 ** <8> 1 GPIOC0PINEN GPIOC0 Pin Enable 2899 ** <10> 1 HTRGOUTEN Heat Regulator Output Enable 2900 ** <11> 1 GPIOA0PINEN GPIOA0 Pin Enable 2901 ** 2902 ** <6:7><9><12:15> Reserved 2903 */ 2904 #define SEQR_SEQPSR1_REG 0x110 2905 #define SEQR_SEQPSR1_INIT ( SEQPSR1_M_PORT92DIS | SEQPSR1_M_CCSPINEN | \ 2906 SEQPSR1_M_TAGDEN) 2907 #define SEQPSR1_V_NPWRGDDBDIS 0 2908 #define SEQPSR1_M_NPWRGDDBDIS 1 << SEQPSR1_V_NPWRGDDBDIS 2909 #define SEQPSR1_V_PORT92DIS 1 2910 #define SEQPSR1_M_PORT92DIS 1 << SEQPSR1_V_PORT92DIS 2911 #define SEQPSR1_V_TAGCSSEL 2 2912 #define SEQPSR1_M_TAGCSSEL 1 << SEQPSR1_V_TAGCSSEL 2913 #define SEQPSR1_V_LOCKPINSEL 3 2914 #define SEQPSR1_M_LOCKPINSEL 1 << SEQPSR1_V_LOCKPINSEL 2915 #define SEQPSR1_V_CCSPINEN 4 2916 #define SEQPSR1_M_CCSPINEN 1 << SEQPSR1_V_CCSPINEN 2917 #define SEQPSR1_V_TAGDEN 5 2918 #define SEQPSR1_M_TAGDEN 1 << SEQPSR1_V_TAGDEN 2919 #define SEQPSR1_V_GPIOC0PINEN 8 2920 #define SEQPSR1_M_GPIOC0PINEN 1 << SEQPSR1_V_GPIOC0PINEN 2921 #define SEQPSR1_V_HTRGOUTEN 10 2922 #define SEQPSR1_M_HTRGOUTEN 1 << SEQPSR1_V_HTRGOUTEN 2923 #define SEQPSR1_V_GPIOA0PINEN 11 2924 #define SEQPSR1_M_GPIOA0PINEN 1 << SEQPSR1_V_GPIOA0PINEN 2925 2926 /* 2927 ** 2928 ** SEQUOIA-1 Pin Select Register 2 (SEQPSR2) - Index 0x111 2929 ** 2930 ** Loc Size Name Function 2931 ** ----- ---- ---- --------------------------------- 2932 ** <0> 1 OPGPEXTEN Optional GPEXT Enable 2933 ** <2> 1 EXTACT3PINEN EXTACT3 Pin Enable 2934 ** <3> 1 NMIPINEN NMI Pin Enable 2935 ** <4> 1 DIRTYPINEN DIRTY Pin Enable # 2936 ** <5> 1 GPIOB0PINEN GPIOB0 Pin Enable 2937 ** <6> 1 DRTWEPINEN DRTWE# Pin Enable # 2938 ** <7> 1 GPIOB1PINEN GPIOB1 Pin Enable 2939 ** <8> 1 KBRSTPINEN KB reset Pin Enable 2940 ** <11> 1 GPIOC1PINEN GPIOC1 Pin Enable 2941 ** <12> 1 GPIO0PINEN GPIO0 Pin Enable # 2942 ** <13> 1 GPIO1PINEN GPIO1 Pin Enable # 2943 ** <14> 1 GPIO2PINEN GPIO2 Pin Enable # 2944 ** <15> 1 GPIO3PINEN GPIO3 Pin Enable # 2945 ** 2946 ** <1><9:10> Reserved 2947 */ 2948 #define SEQR_SEQPSR2_REG 0x111 2949 #define SEQR_SEQPSR2_INIT ( SEQPSR2_M_NMIPINEN | SEQPSR2_M_DIRTYPINEN |\ 2950 SEQPSR2_M_GPIOB0PINEN | SEQPSR2_M_DRTWEPINEN |\ 2951 SEQPSR2_M_GPIOB1PINEN | SEQPSR2_M_KBRSTPINEN |\ 2952 SEQPSR2_M_BIT9 | SEQPSR2_M_BIT10 |\ 2953 SEQPSR2_M_GPIOC1PINEN ) 2954 #define SEQPSR2_V_OPGPEXTEN 0 2955 #define SEQPSR2_M_OPGPEXTEN 1 << SEQPSR2_V_OPGPEXTEN 2956 #define SEQPSR2_V_EXTACT3PINEN 2 2957 #define SEQPSR2_M_EXTACT3PINEN 1 << SEQPSR2_V_EXTACT3PINEN 2958 #define SEQPSR2_V_NMIPINEN 3 2959 #define SEQPSR2_M_NMIPINEN 1 << SEQPSR2_V_NMIPINEN 2960 #define SEQPSR2_V_DIRTYPINEN 4 2961 #define SEQPSR2_M_DIRTYPINEN 1 << SEQPSR2_V_DIRTYPINEN 2962 #define SEQPSR2_V_GPIOB0PINEN 5 2963 #define SEQPSR2_M_GPIOB0PINEN 1 << SEQPSR2_V_GPIOB0PINEN 2964 #define SEQPSR2_V_DRTWEPINEN 6 2965 #define SEQPSR2_M_DRTWEPINEN 1 << SEQPSR2_V_DRTWEPINEN 2966 #define SEQPSR2_V_GPIOB1PINEN 7 2967 #define SEQPSR2_M_GPIOB1PINEN 1 << SEQPSR2_V_GPIOB1PINEN 2968 #define SEQPSR2_V_KBRSTPINEN 8 2969 #define SEQPSR2_M_KBRSTPINEN 1 << SEQPSR2_V_KBRSTPINEN 2970 #define SEQPSR2_V_BIT9 9 2971 #define SEQPSR2_M_BIT9 1 << SEQPSR2_V_BIT9 2972 #define SEQPSR2_V_BIT10 10 2973 #define SEQPSR2_M_BIT10 1 << SEQPSR2_V_BIT10 2974 #define SEQPSR2_V_GPIOC1PINEN 11 2975 #define SEQPSR2_M_GPIOC1PINEN 1 << SEQPSR2_V_GPIOC1PINEN 2976 #define SEQPSR2_V_GPIO0PINEN 12 2977 #define SEQPSR2_M_GPIO0PINEN 1 << SEQPSR2_V_GPIO0PINEN 2978 #define SEQPSR2_V_GPIO1PINEN 13 2979 #define SEQPSR2_M_GPIO1PINEN 1 << SEQPSR2_V_GPIO1PINEN 2980 #define SEQPSR2_V_GPIO2PINEN 14 2981 #define SEQPSR2_M_GPIO2PINEN 1 << SEQPSR2_V_GPIO2PINEN 2982 #define SEQPSR2_V_GPIO3PINEN 15 2983 #define SEQPSR2_M_GPIO3PINEN 1 << SEQPSR2_V_GPIO3PINEN 2984 2985 /* 2986 ** 2987 ** SEQUOIA-1 Pin Select Register 3 (SEQPSR3) - Index 0x112 2988 ** 2989 ** Loc Size Name Function 2990 ** ----- ---- ---- --------------------------------- 2991 ** <0> 1 PC0PINEN PC0 Pin Enable # 2992 ** <2> 1 PC2PINEN PC2 Pin Enable # 2993 ** <3> 1 PC3PINEN PC3 Pin Enable # 2994 ** <4> 1 PC4PINEN PC4 Pin Enable # 2995 ** <5> 1 PC5PINEN PC5 Pin Enable # 2996 ** <6> 1 PC6PINEN PC6 Pin Enable # 2997 ** <7> 1 PC7PINEN PC7 Pin Enable # 2998 ** <8> 1 PC8PINEN PC8 Pin Enable # 2999 ** <9> 1 PC9PINEN PC9 Pin Enable # 3000 ** <12> 1 EXTACT0PINEN EXTACT0 Pin Enable 3001 ** <15> 1 EXTACT1PINEN EXTACT1 Pin Enable 3002 ** 3003 ** <1><10:11><13:14> Reserved 3004 */ 3005 #define SEQR_SEQPSR3_REG 0x112 3006 #define SEQR_SEQPSR3_INIT ( SEQPSR3_M_PC2PINEN | SEQPSR3_M_PC3PINEN | \ 3007 SEQPSR3_M_PC4PINEN | SEQPSR3_M_PC5PINEN | \ 3008 SEQPSR3_M_PC6PINEN | SEQPSR3_M_PC7PINEN | \ 3009 SEQPSR3_M_PC8PINEN | SEQPSR3_M_PC9PINEN ) 3010 #define SEQPSR3_V_PC0PINEN 0 3011 #define SEQPSR3_M_PC0PINEN 1 << SEQPSR3_V_PC0PINEN 3012 #define SEQPSR3_V_PC2PINEN 2 3013 #define SEQPSR3_M_PC2PINEN 1 << SEQPSR3_V_PC2PINEN 3014 #define SEQPSR3_V_PC3PINEN 3 3015 #define SEQPSR3_M_PC3PINEN 1 << SEQPSR3_V_PC3PINEN 3016 #define SEQPSR3_V_PC4PINEN 4 3017 #define SEQPSR3_M_PC4PINEN 1 << SEQPSR3_V_PC4PINEN 3018 #define SEQPSR3_V_PC5PINEN 5 3019 #define SEQPSR3_M_PC5PINEN 1 << SEQPSR3_V_PC5PINEN 3020 #define SEQPSR3_V_PC6PINEN 6 3021 #define SEQPSR3_M_PC6PINEN 1 << SEQPSR3_V_PC6PINEN 3022 #define SEQPSR3_V_PC7PINEN 7 3023 #define SEQPSR3_M_PC7PINEN 1 << SEQPSR3_V_PC7PINEN 3024 #define SEQPSR3_V_PC8PINEN 8 3025 #define SEQPSR3_M_PC8PINEN 1 << SEQPSR3_V_PC8PINEN 3026 #define SEQPSR3_V_PC9PINEN 9 3027 #define SEQPSR3_M_PC9PINEN 1 << SEQPSR3_V_PC9PINEN 3028 #define SEQPSR3_V_EXTACT0PINEN 12 3029 #define SEQPSR3_M_EXTACT0PINEN 1 << SEQPSR3_V_EXTACT0PINEN 3030 #define SEQPSR3_V_EXTACT1PINEN 15 3031 #define SEQPSR3_M_EXTACT1PINEN 1 << SEQPSR3_V_EXTACT1PINEN 3032 3033 /* 3034 ** 3035 ** Modular Clock Control Register (MODCLKCR) - Index 0x118 3036 ** 3037 ** Loc Size Name Function 3038 ** ----- ---- ---- --------------------------------- 3039 ** <1> 1 VLCLKSTPEN VL Clock Stop Enable 3040 ** <5> 1 ADSMDIS ADS Mask Disable 3041 ** <8> 1 MDCHGIMD Mode Change Immediate 3042 ** <11> 1 SLWATCKEN SLOW AT Clock Enable 3043 ** 3044 ** <0><2:4><6:7><9:10><12:15> Reserved 3045 */ 3046 #define SEQR_MODCLKCR_REG 0x118 3047 #define SEQR_MODCLKCR_INIT MODCLKCR_M_VLCLKSTPEN 3048 #define MODCLKCR_V_VLCLKSTPEN 1 3049 #define MODCLKCR_M_VLCLKSTPEN 1 << MODCLKCR_V_VLCLKSTPEN 3050 #define MODCLKCR_V_ADSMDIS 5 3051 #define MODCLKCR_M_ADSMDIS 1 << MODCLKCR_V_ADSMDIS 3052 #define MODCLKCR_V_MDCHGIMD 8 3053 #define MODCLKCR_M_MDCHGIMD 1 << MODCLKCR_V_MDCHGIMD 3054 #define MODCLKCR_V_SLWATCKEN 11 3055 #define MODCLKCR_M_SLWWATCKEN 1 << MODCLKCR_V_SLWATCKEN 3056 3057 /* 3058 ** 3059 ** Burst Bus Control Register (BBUSCR) - Index 0x180 3060 ** 3061 ** Loc Size Name Function 3062 ** ----- ---- ---- --------------------------------- 3063 ** <3> 1 SQ1GIDEEN SEQUOIA-1 Global Turbo IDE Enable 3064 ** <5> 1 RSTREADSEN Restart EADS Enable 3065 ** <15> 1 SECIDEN Secondary IDE Drive Enable 3066 ** 3067 ** <0:2><4><6:14> Reserved 3068 */ 3069 #define SEQR_BBUSCR_REG 0x180 3070 #define BBUSCR_V_SQ1GIDEEN 3 3071 #define BBUSCR_M_SQ1GIDEEN 1 << BBUSCR_V_SQ1GIDEEN 3072 #define BBUSCR_V_RSTREADSEN 5 3073 #define BBUSCR_M_RSTREADSEN 1 << BBUSCR_V_RSTREADSEN 3074 #define BBUSCR_V_SECIDEN 15 3075 #define BBUSCR_M_SECIDEN 1 << BBUSCR_V_SECIDEN 3076 3077 /* 3078 ** DRAM Control Registers 3079 ** 3080 */ 3081 3082 /* 3083 ** 3084 ** Shadow RAM Read Enable Control Register (SRAMRDENCR) - Index 0x200 3085 ** 3086 ** Loc Size Name Function 3087 ** ----- ---- ---- --------------------------------- 3088 ** <0> 1 LMEMRDEN0 Local Memory C0000H-C3FFFH Read Enable 3089 ** <1> 1 LMEMRDEN1 Local Memory C4000H-C7FFFH Read Enable 3090 ** <2> 1 LMEMRDEN2 Local Memory C8000H-CBFFFH Read Enable 3091 ** <3> 1 LMEMRDEN3 Local Memory CC000H-CFFFFH Read Enable 3092 ** <4> 1 LMEMRDEN4 Local Memory D0000H-D3FFFH Read Enable 3093 ** <5> 1 LMEMRDEN5 Local Memory D4000H-D7FFFH Read Enable 3094 ** <6> 1 LMEMRDEN6 Local Memory D8000H-DBFFFH Read Enable 3095 ** <7> 1 LMEMRDEN7 Local Memory DC000H-DFFFFH Read Enable 3096 ** <8> 1 LMEMRDEN8 Local Memory E0000H-E3FFFH Read Enable 3097 ** <9> 1 LMEMRDEN9 Local Memory E4000H-E7FFFH Read Enable 3098 ** <10> 1 LMEMRDEN10 Local Memory E8000H-EBFFFH Read Enable 3099 ** <11> 1 LMEMRDEN11 Local Memory EC000H-EFFFFH Read Enable 3100 ** <12> 1 LMEMRDEN12 Local Memory F0000H-FFFFFH Read Enable 3101 ** 3102 ** <13:15> Reserved 3103 */ 3104 #define DRAMCR_SRAMRDENCR_REG 0x200 3105 #define DRAMCR_SRAMRDENCR_INIT 0x0000 3106 #define SRAMRDENCR_V_LMEMRDEN0 0 3107 #define SRAMRDENCR_M_LMEMRDEN0 1 << SRAMRDENCR_V_LMEMRDEN0 3108 #define SRAMRDENCR_V_LMEMRDEN1 1 3109 #define SRAMRDENCR_M_LMEMRDEN1 1 << SRAMRDENCR_V_LMEMRDEN1 3110 #define SRAMRDENCR_V_LMEMRDEN2 2 3111 #define SRAMRDENCR_M_LMEMRDEN2 1 << SRAMRDENCR_V_LMEMRDEN2 3112 #define SRAMRDENCR_V_LMEMRDEN3 3 3113 #define SRAMRDENCR_M_LMEMRDEN3 1 << SRAMRDENCR_V_LMEMRDEN3 3114 #define SRAMRDENCR_V_LMEMRDEN4 4 3115 #define SRAMRDENCR_M_LMEMRDEN4 1 << SRAMRDENCR_V_LMEMRDEN4 3116 #define SRAMRDENCR_V_LMEMRDEN5 5 3117 #define SRAMRDENCR_M_LMEMRDEN5 1 << SRAMRDENCR_V_LMEMRDEN5 3118 #define SRAMRDENCR_V_LMEMRDEN6 6 3119 #define SRAMRDENCR_M_LMEMRDEN6 1 << SRAMRDENCR_V_LMEMRDEN6 3120 #define SRAMRDENCR_V_LMEMRDEN7 7 3121 #define SRAMRDENCR_M_LMEMRDEN7 1 << SRAMRDENCR_V_LMEMRDEN7 3122 #define SRAMRDENCR_V_LMEMRDEN8 8 3123 #define SRAMRDENCR_M_LMEMRDEN8 1 << SRAMRDENCR_V_LMEMRDEN8 3124 #define SRAMRDENCR_V_LMEMRDEN9 9 3125 #define SRAMRDENCR_M_LMEMRDEN9 1 << SRAMRDENCR_V_LMEMRDEN9 3126 #define SRAMRDENCR_V_LMEMRDEN10 10 3127 #define SRAMRDENCR_M_LMEMRDEN10 1 << SRAMRDENCR_V_LMEMRDEN10 3128 #define SRAMRDENCR_V_LMEMRDEN11 11 3129 #define SRAMRDENCR_M_LMEMRDEN11 1 << SRAMRDENCR_V_LMEMRDEN11 3130 #define SRAMRDENCR_V_LMEMRDEN12 12 3131 #define SRAMRDENCR_M_LMEMRDEN12 1 << SRAMRDENCR_V_LMEMRDEN12 3132 3133 /* 3134 ** 3135 ** Shadow RAM Write Enable Control Register (SRAMWRENCR) - Index 0x201 3136 ** 3137 ** Loc Size Name Function 3138 ** ----- ---- ---- --------------------------------- 3139 ** <0> 1 LMEMWREN0 Local Memory C0000H-C3FFFH Write Enable 3140 ** <1> 1 LMEMWREN1 Local Memory C4000H-C7FFFH Write Enable 3141 ** <2> 1 LMEMWREN2 Local Memory C8000H-CBFFFH Write Enable 3142 ** <3> 1 LMEMWREN3 Local Memory CC000H-CFFFFH Write Enable 3143 ** <4> 1 LMEMWREN4 Local Memory D0000H-D3FFFH Write Enable 3144 ** <5> 1 LMEMWREN5 Local Memory D4000H-D7FFFH Write Enable 3145 ** <6> 1 LMEMWREN6 Local Memory D8000H-DBFFFH Write Enable 3146 ** <7> 1 LMEMWREN7 Local Memory DC000H-DFFFFH Write Enable 3147 ** <8> 1 LMEMWREN8 Local Memory E0000H-E3FFFH Write Enable 3148 ** <9> 1 LMEMWREN9 Local Memory E4000H-E7FFFH Write Enable 3149 ** <10> 1 LMEMWREN10 Local Memory E8000H-EBFFFH Write Enable 3150 ** <11> 1 LMEMWREN11 Local Memory EC000H-EFFFFH Write Enable 3151 ** <12> 1 LMEMWREN12 Local Memory F0000H-FFFFFH Write Enable 3152 ** 3153 ** <13:15> Reserved 3154 */ 3155 #define DRAMCR_SRAMWRENCR_REG 0x201 3156 #define DRAMCR_SRAMWRENCR_INIT 0x0000 3157 #define SRAMWRENCR_V_LMEMWREN0 0 3158 #define SRAMWRENCR_M_LMEMWREN0 1 << SRAMWRENCR_V_LMEMWREN0 3159 #define SRAMWRENCR_V_LMEMWREN1 1 3160 #define SRAMWRENCR_M_LMEMWREN1 1 << SRAMWRENCR_V_LMEMWREN1 3161 #define SRAMWRENCR_V_LMEMWREN2 2 3162 #define SRAMWRENCR_M_LMEMWREN2 1 << SRAMWRENCR_V_LMEMWREN2 3163 #define SRAMWRENCR_V_LMEMWREN3 3 3164 #define SRAMWRENCR_M_LMEMWREN3 1 << SRAMWRENCR_V_LMEMWREN3 3165 #define SRAMWRENCR_V_LMEMWREN4 4 3166 #define SRAMWRENCR_M_LMEMWREN4 1 << SRAMWRENCR_V_LMEMWREN4 3167 #define SRAMWRENCR_V_LMEMWREN5 5 3168 #define SRAMWRENCR_M_LMEMWREN5 1 << SRAMWRENCR_V_LMEMWREN5 3169 #define SRAMWRENCR_V_LMEMWREN6 6 3170 #define SRAMWRENCR_M_LMEMWREN6 1 << SRAMWRENCR_V_LMEMWREN6 3171 #define SRAMWRENCR_V_LMEMWREN7 7 3172 #define SRAMWRENCR_M_LMEMWREN7 1 << SRAMWRENCR_V_LMEMWREN7 3173 #define SRAMWRENCR_V_LMEMWREN8 8 3174 #define SRAMWRENCR_M_LMEMWREN8 1 << SRAMWRENCR_V_LMEMWREN8 3175 #define SRAMWRENCR_V_LMEMWREN9 9 3176 #define SRAMWRENCR_M_LMEMWREN9 1 << SRAMWRENCR_V_LMEMWREN9 3177 #define SRAMWRENCR_V_LMEMWREN10 10 3178 #define SRAMWRENCR_M_LMEMWREN10 1 << SRAMWRENCR_V_LMEMWREN10 3179 #define SRAMWRENCR_V_LMEMWREN11 11 3180 #define SRAMWRENCR_M_LMEMWREN11 1 << SRAMWRENCR_V_LMEMWREN11 3181 #define SRAMWRENCR_V_LMEMWREN12 12 3182 #define SRAMWRENCR_M_LMEMWREN12 1 << SRAMWRENCR_V_LMEMWREN12 3183 3184 /* 3185 ** 3186 ** Bank 0 Control Register (BK0CR) - Index 0x202 3187 ** 3188 ** Loc Size Name Function 3189 ** ----- ---- ---- --------------------------------- 3190 ** <0> 8 B0A Bank 0 Starting Address 3191 ** <8> 1 B0S0 Bank 0 DRAM Size 0 3192 ** <9> 1 B0S1 Bank 0 DRAM Size 1 3193 ** <10> 1 B0S2 Bank 0 DRAM Size 2 3194 ** <11> 1 BANKEN0 Bank 0 Enable 3195 ** <12> 1 ENMDEN0N Enable MDEN# for Bank 0 3196 ** <13> 1 COLADR00 Number of Column Address Bits for Bank 0 0 3197 ** <14> 1 COLADR01 Number of Column Address Bits for Bank 0 1 3198 ** <15> 1 COLADR02 Number of Column Address Bits for Bank 0 2 3199 ** 3200 */ 3201 #define DRAMCR_BK0CR_REG 0x202 3202 #define DRAMCR_BK0CR_INIT 0x0000 3203 #define BK0CR_V_B0A 0 3204 #define BK0CR_M_B0A 0xFF << BK0CR_V_B0A 3205 #define BK0CR_V_B0S 8 3206 #define BK0CR_M_B0S 0x7 << BK0CR_V_B0S 3207 #define BK0CR_V_B0S0 8 3208 #define BK0CR_M_B0S0 1 << BK0CR_V_B0S0 3209 #define BK0CR_V_B0S1 9 3210 #define BK0CR_M_B0S1 1 << BK0CR_V_B0S1 3211 #define BK0CR_V_B0S2 10 3212 #define BK0CR_M_B0S2 1 << BK0CR_V_B0S2 3213 #define BK0CR_V_BANKEN0 11 3214 #define BK0CR_M_BANKEN0 1 << BK0CR_V_BANKEN0 3215 #define BK0CR_V_ENMDEN0N 12 3216 #define BK0CR_M_ENMDEN0N 1 << BK0CR_V_ENMDEN0N 3217 #define BK0CR_V_COLADR0 13 3218 #define BK0CR_M_COLADR0 0xE << BK0CR_V_COLADR0 3219 #define BK0CR_V_COLADR00 13 3220 #define BK0CR_M_COLADR00 1 << BK0CR_V_COLADR00 3221 #define BK0CR_V_COLADR01 14 3222 #define BK0CR_M_COLADR01 1 << BK0CR_V_COLADR01 3223 #define BK0CR_V_COLADR02 15 3224 #define BK0CR_M_COLADR02 1 << BK0CR_V_COLADR02 3225 3226 /* 3227 ** Bank 0 DRAM Size 3228 */ 3229 #define B0S_256KB 0x000 3230 #define B0S_512KB BK0CR_M_B0S0 3231 #define B0S_1MB BK0CR_M_B0S1 3232 #define B0S_2MB (BK0CR_M_B0S0 | BK0CR_M_B0S1) 3233 #define B0S_4MB BK0CR_M_B0S2 3234 #define B0S_16MB (BK0CR_M_B0S1 | BK0CR_M_B0S2) 3235 3236 /* 3237 ** Bank 0 Column Address Bits 3238 */ 3239 #define COLADR0_8 0x000 3240 #define COLADR0_9 BK0CR_M_COLADR00 3241 #define COLADR0_10 BK0CR_M_COLADR01 3242 #define COLADR0_11 (BK0CR_M_COLADR00 | BK0CR_M_COLADR01) 3243 #define COLADR0_12 BK0CR_M_COLADR02 3244 3245 /* 3246 ** 3247 ** Bank 1 Control Register (BK1CR) - Index 0x203 3248 ** 3249 ** Loc Size Name Function 3250 ** ----- ---- ---- --------------------------------- 3251 ** <0> 8 B1A Bank 1 Starting Address 3252 ** <8> 1 B1S0 Bank 1 DRAM Size 0 3253 ** <9> 1 B1S1 Bank 1 DRAM Size 1 3254 ** <10> 1 B1S2 Bank 1 DRAM Size 2 3255 ** <11> 1 BANKEN1 Bank 1 Enable 3256 ** <12> 1 ENMDEN1N Enable MDEN# for Bank 1 3257 ** <13> 1 COLADR10 Number of Column Address Bits for Bank 1 0 3258 ** <14> 1 COLADR11 Number of Column Address Bits for Bank 1 1 3259 ** <15> 1 COLADR12 Number of Column Address Bits for Bank 1 2 3260 ** 3261 */ 3262 #define DRAMCR_BK1CR_REG 0x203 3263 #define DRAMCR_BK1CR_INIT 0x0000 3264 #define BK1CR_V_B1A 0 3265 #define BK1CR_M_B1A 0xFF << BK1CR_V_B1A 3266 #define BK1CR_V_B1S 8 3267 #define BK1CR_M_B1S 0x7 << BK1CR_V_B1S 3268 #define BK1CR_V_B1S0 8 3269 #define BK1CR_M_B1S0 1 << BK1CR_V_B1S0 3270 #define BK1CR_V_B1S1 9 3271 #define BK1CR_M_B1S1 1 << BK1CR_V_B1S1 3272 #define BK1CR_V_B1S2 10 3273 #define BK1CR_M_B1S2 1 << BK1CR_V_B1S2 3274 #define BK1CR_V_BANKEN1 11 3275 #define BK1CR_M_BANKEN1 1 << BK1CR_V_BANKEN1 3276 #define BK1CR_V_ENMDEN1N 12 3277 #define BK1CR_M_ENMDEN1N 1 << BK1CR_V_ENMDEN1N 3278 #define BK1CR_V_COLADR1 13 3279 #define BK1CR_M_COLADR1 0xE << BK1CR_V_COLADR1 3280 #define BK1CR_V_COLADR10 13 3281 #define BK1CR_M_COLADR10 1 << BK1CR_V_COLADR10 3282 #define BK1CR_V_COLADR11 14 3283 #define BK1CR_M_COLADR11 1 << BK1CR_V_COLADR11 3284 #define BK1CR_V_COLADR12 15 3285 #define BK1CR_M_COLADR12 1 << BK1CR_V_COLADR12 3286 3287 /* 3288 ** Bank 1 DRAM Size 3289 */ 3290 #define B1S_256KB 0x000 3291 #define B1S_512KB BK1CR_M_B1S0 3292 #define B1S_1MB BK1CR_M_B1S1 3293 #define B1S_2MB (BK1CR_M_B1S0 | BK1CR_M_B1S1) 3294 #define B1S_4MB BK1CR_M_B1S2 3295 #define B1S_16MB (BK1CR_M_B1S1 | BK1CR_M_B1S2) 3296 3297 /* 3298 ** Bank 1 Column Address Bits 3299 */ 3300 #define COLADR1_8 0x000 3301 #define COLADR1_9 BK1CR_M_COLADR10 3302 #define COLADR1_10 BK1CR_M_COLADR11 3303 #define COLADR1_11 (BK1CR_M_COLADR10 | BK1CR_M_COLADR11) 3304 #define COLADR1_12 BK1CR_M_COLADR12 3305 3306 /* 3307 ** 3308 ** Bank 0/1 Timing Control Register (BK01TCR) - Index 0x204 3309 ** 3310 ** Loc Size Name Function 3311 ** ----- ---- ---- --------------------------------- 3312 ** <0> 1 B01WRCPW0 Bank 0/1 Write CAS Cycle Time 0 3313 ** <1> 1 B01WRCPW1 Bank 0/1 Write CAS Cycle Time 1 3314 ** <2> 1 MA01WRDLY Bank 0/1 Write MA Delay 3315 ** <3> 1 B01RDCPW0 Bank 0/1 Read CAS Cycle Time 0 3316 ** <4> 1 B01RDCPW1 Bank 0/1 Read CAS Cycle Time 1 3317 ** <5> 1 MA01RDDLY Bank 0/1 Read MA Delay 3318 ** <6> 1 B01CPRE Bank 0/1 CAS Precharge 3319 ** <7> 1 B01RTMA Bank 0/1 RAS to CAS Delay 3320 ** <8> 1 B01MATC Bank 0/1 MA to CAS Delay 3321 ** <9> 1 B01RPRE0 Bank 0/1 RAS Precharge Time 0 3322 ** <10> 1 B01RPRE1 Bank 0/1 RAS Precharge Time 1 3323 ** <11> 1 B01RPRE2 Bank 0/1 RAS Precharge Time 2 3324 ** <12> 1 B01ILAVDT Bank 0/1 Interleave Avoid Time 3325 ** <13> 1 BNK01_ITL Bank 0/1 Interleave Enable 3326 ** 3327 ** <14:15> Reserved 3328 */ 3329 #define DRAMCR_BK01TCR_REG 0x204 3330 #define DRAMCR_BK01TCR_INIT ( BK01TCR_M_B01WRCPW | BK01TCR_M_MA01WRDLY | \ 3331 BK01TCR_M_B01RDCPW | BK01TCR_M_MA01RDDLY | \ 3332 BK01TCR_M_B01CPRE | BK01TCR_M_B01RTMA | \ 3333 BK01TCR_M_B01MATC | BK01TCR_M_B01RPRE | \ 3334 BK01TCR_M_B01ILAVDT ) 3335 #define BK01TCR_V_B01WRCPW 0 3336 #define BK01TCR_M_B01WRCPW 0x3 << BK01TCR_V_B01WRCPW 3337 #define BK01TCR_V_B01WRCPW0 0 3338 #define BK01TCR_M_B01WRCPW0 1 << BK01TCR_V_B01WRCPW0 3339 #define BK01TCR_V_B01WRCPW1 1 3340 #define BK01TCR_M_B01WRCPW1 1 << BK01TCR_V_B01WRCPW1 3341 #define BK01TCR_V_MA01WRDLY 2 3342 #define BK01TCR_M_MA01WRDLY 1 << BK01TCR_V_MA01WRDLY 3343 #define BK01TCR_V_B01RDCPW 3 3344 #define BK01TCR_M_B01RDCPW 0x3 << BK01TCR_V_B01RDCPW 3345 #define BK01TCR_V_B01RDCPW0 3 3346 #define BK01TCR_M_B01RDCPW0 1 << BK01TCR_V_B01RDCPW0 3347 #define BK01TCR_V_B01RDCPW1 4 3348 #define BK01TCR_M_B01RDCPW1 1 << BK01TCR_V_B01RDCPW1 3349 #define BK01TCR_V_MA01RDDLY 5 3350 #define BK01TCR_M_MA01RDDLY 1 << BK01TCR_V_MA01RDDLY 3351 #define BK01TCR_V_B01CPRE 6 3352 #define BK01TCR_M_B01CPRE 1 << BK01TCR_V_B01CPRE 3353 #define BK01TCR_V_B01RTMA 7 3354 #define BK01TCR_M_B01RTMA 1 << BK01TCR_V_B01RTMA 3355 #define BK01TCR_V_B01MATC 8 3356 #define BK01TCR_M_B01MATC 1 << BK01TCR_V_B01MATC 3357 #define BK01TCR_V_B01RPRE 9 3358 #define BK01TCR_M_B01RPRE 0x7 << BK01TCR_V_B01RPRE 3359 #define BK01TCR_V_B01RPRE0 9 3360 #define BK01TCR_M_B01RPRE0 1 << BK01TCR_V_B01RPRE0 3361 #define BK01TCR_V_B01RPRE1 10 3362 #define BK01TCR_M_B01RPRE1 1 << BK01TCR_V_B01RPRE1 3363 #define BK01TCR_V_B01RPRE2 11 3364 #define BK01TCR_M_B01RPRE2 1 << BK01TCR_V_B01RPRE2 3365 #define BK01TCR_V_B01ILAVDT 12 3366 #define BK01TCR_M_B01ILAVDT 1 << BK01TCR_V_B01ILAVDT 3367 #define BK01TCR_V_BNK01_ITL 13 3368 #define BK01TCR_M_BNK01_ITL 1 << BK01TCR_V_BNK01_ITL 3369 3370 /* 3371 ** Bank 0/1 Write CAS Cycle Time 3372 */ 3373 #define B01WRCPW_1T BK01TCR_M_B01WRCPW0 3374 #define B01WRCPW_2T BK01TCR_M_B01WRCPW1 3375 #define B01WRCPW_3T (BK01TCR_M_B01WRCPW0 | BK01TCR_M_B01WRCPW1) 3376 3377 /* 3378 ** Bank 0/1 Read CAS Cycle Time 3379 */ 3380 #define B01RDCPW_1T 0x000 3381 #define B01RDCPW_2T BK01TCR_M_B01WRCPW0 3382 #define B01RDCPW_3T BK01TCR_M_B01WRCPW1 3383 #define B01RDCPW_4T (BK01TCR_M_B01WRCPW0 | BK01TCR_M_B01WRCPW1) 3384 3385 /* 3386 ** Bank 0/1 RAS Precharge Time 3387 */ 3388 #define B01RPRE_1PT5T BK01TCR_M_B01RPRE1 3389 #define B01RPRE_2T (BK01TCR_M_B01RPRE0 | BK01TCR_M_B01RPRE1) 3390 #define B01RPRE_2PT5T BK01TCR_M_B01RPRE2 3391 #define B01RPRE_3T (BK01TCR_M_B01RPRE0 | BK01TCR_M_B01RPRE2) 3392 #define B01RPRE_3PT5T (BK01TCR_M_B01RPRE1 | BK01TCR_M_B01RPRE2) 3393 #define B01RPRE_4T (BK01TCR_M_B01RPRE0 | BK01TCR_M_B01RPRE1 | BK01TCR_M_B01RPRE2) 3394 3395 /* 3396 ** 3397 ** Bank 2 Control Register (BK2CR) - Index 0x205 3398 ** 3399 ** Loc Size Name Function 3400 ** ----- ---- ---- --------------------------------- 3401 ** <0> 8 B2A Bank 2 Starting Address 3402 ** <8> 1 B2S0 Bank 2 DRAM Size 0 3403 ** <9> 1 B2S1 Bank 2 DRAM Size 1 3404 ** <10> 1 B2S2 Bank 2 DRAM Size 2 3405 ** <11> 1 BANKEN2 Bank 2 Enable 3406 ** <12> 1 ENMDEN2N Enable MDEN# for Bank 2 3407 ** <13> 1 COLADR20 Number of Column Address Bits for Bank 2 0 3408 ** <14> 1 COLADR21 Number of Column Address Bits for Bank 2 1 3409 ** <15> 1 COLADR22 Number of Column Address Bits for Bank 2 2 3410 ** 3411 */ 3412 #define DRAMCR_BK2CR_REG 0x205 3413 #define DRAMCR_BK2CR_INIT 0x0000 3414 #define BK2CR_V_B2A 0 3415 #define BK2CR_M_B2A 0xFF << BK2CR_V_B2A 3416 #define BK2CR_V_B2S 8 3417 #define BK2CR_M_B2S 0x7 << BK2CR_V_B2S 3418 #define BK2CR_V_B2S0 8 3419 #define BK2CR_M_B2S0 1 << BK2CR_V_B2S0 3420 #define BK2CR_V_B2S1 9 3421 #define BK2CR_M_B2S1 1 << BK2CR_V_B2S1 3422 #define BK2CR_V_B2S2 10 3423 #define BK2CR_M_B2S2 1 << BK2CR_V_B2S2 3424 #define BK2CR_V_BANKEN2 11 3425 #define BK2CR_M_BANKEN2 1 << BK2CR_V_BANKEN2 3426 #define BK2CR_V_ENMDEN2N 12 3427 #define BK2CR_M_ENMDEN2N 1 << BK2CR_V_ENMDEN2N 3428 #define BK2CR_V_COLADR2 13 3429 #define BK2CR_M_COLADR2 0xE << BK2CR_V_COLADR2 3430 #define BK2CR_V_COLADR20 13 3431 #define BK2CR_M_COLADR20 1 << BK2CR_V_COLADR20 3432 #define BK2CR_V_COLADR21 14 3433 #define BK2CR_M_COLADR21 1 << BK2CR_V_COLADR21 3434 #define BK2CR_V_COLADR22 15 3435 #define BK2CR_M_COLADR22 1 << BK2CR_V_COLADR22 3436 3437 /* 3438 ** Bank 2 DRAM Size 3439 */ 3440 #define B2S_256KB 0x000 3441 #define B2S_512KB BK2CR_M_B2S0 3442 #define B2S_1MB BK2CR_M_B2S1 3443 #define B2S_2MB (BK2CR_M_B2S0 | BK2CR_M_B2S1) 3444 #define B2S_4MB BK2CR_M_B2S2 3445 #define B2S_16MB (BK2CR_M_B2S1 | BK2CR_M_B2S2) 3446 3447 /* 3448 ** Bank 2 Column Address Bits 3449 */ 3450 #define COLADR2_8 0x000 3451 #define COLADR2_9 BK2CR_M_COLADR20 3452 #define COLADR2_10 BK2CR_M_COLADR21 3453 #define COLADR2_11 (BK2CR_M_COLADR20 | BK2CR_M_COLADR21) 3454 #define COLADR2_12 BK2CR_M_COLADR22 3455 3456 /* 3457 ** 3458 ** Bank 3 Control Register (BK3CR) - Index 0x206 3459 ** 3460 ** Loc Size Name Function 3461 ** ----- ---- ---- --------------------------------- 3462 ** <0> 8 B3A Bank 3 Starting Address 3463 ** <8> 1 B3S0 Bank 3 DRAM Size 0 3464 ** <9> 1 B3S1 Bank 3 DRAM Size 1 3465 ** <10> 1 B3S2 Bank 3 DRAM Size 2 3466 ** <11> 1 BANKEN3 Bank 3 Enable 3467 ** <12> 1 ENMDEN3N Enable MDEN# for Bank 3 3468 ** <13> 1 COLADR30 Number of Column Address Bits for Bank 3 0 3469 ** <14> 1 COLADR31 Number of Column Address Bits for Bank 3 1 3470 ** <15> 1 COLADR32 Number of Column Address Bits for Bank 3 2 3471 ** 3472 */ 3473 #define DRAMCR_BK3CR_REG 0x206 3474 #define DRAMCR_BK3CR_INIT 0x0000 3475 #define BK3CR_V_B3A 0 3476 #define BK3CR_M_B3A 0xFF << BK3CR_V_B3A 3477 #define BK3CR_V_B3S 8 3478 #define BK3CR_M_B3S 0x7 << BK3CR_V_B3S 3479 #define BK3CR_V_B3S0 8 3480 #define BK3CR_M_B3S0 1 << BK3CR_V_B3S0 3481 #define BK3CR_V_B3S1 9 3482 #define BK3CR_M_B3S1 1 << BK3CR_V_B3S1 3483 #define BK3CR_V_B3S2 10 3484 #define BK3CR_M_B3S2 1 << BK3CR_V_B3S2 3485 #define BK3CR_V_BANKEN3 11 3486 #define BK3CR_M_BANKEN3 1 << BK3CR_V_BANKEN3 3487 #define BK3CR_V_ENMDEN3N 12 3488 #define BK3CR_M_ENMDEN3N 1 << BK3CR_V_ENMDEN3N 3489 #define BK3CR_V_COLADR3 13 3490 #define BK3CR_M_COLADR3 0xE << BK3CR_V_COLADR3 3491 #define BK3CR_V_COLADR30 13 3492 #define BK3CR_M_COLADR30 1 << BK3CR_V_COLADR30 3493 #define BK3CR_V_COLADR31 14 3494 #define BK3CR_M_COLADR31 1 << BK3CR_V_COLADR31 3495 #define BK3CR_V_COLADR32 15 3496 #define BK3CR_M_COLADR32 1 << BK3CR_V_COLADR32 3497 3498 /* 3499 ** Bank 3 DRAM Size 3500 */ 3501 #define B3S_256KB 0x000 3502 #define B3S_512KB BK3CR_M_B3S0 3503 #define B3S_1MB BK3CR_M_B3S1 3504 #define B3S_2MB (BK3CR_M_B3S0 | BK3CR_M_B3S1) 3505 #define B3S_4MB BK3CR_M_B3S2 3506 #define B3S_16MB (BK3CR_M_B3S1 | BK3CR_M_B3S2) 3507 3508 /* 3509 ** Bank 3 Column Address Bits 3510 */ 3511 #define COLADR3_8 0x000 3512 #define COLADR3_9 BK3CR_M_COLADR30 3513 #define COLADR3_10 BK3CR_M_COLADR31 3514 #define COLADR3_11 (BK3CR_M_COLADR30 | BK3CR_M_COLADR31) 3515 #define COLADR3_12 BK3CR_M_COLADR32 3516 3517 /* 3518 ** 3519 ** Bank 2/3 Timing Control Register (BK23TCR) - Index 0x207 3520 ** 3521 ** Loc Size Name Function 3522 ** ----- ---- ---- --------------------------------- 3523 ** <0> 1 B23WRCPW0 Bank 2/3 Write CAS Cycle Time 0 3524 ** <1> 1 B23WRCPW1 Bank 2/3 Write CAS Cycle Time 1 3525 ** <2> 1 MA23WRDLY Bank 2/3 Write MA Delay 3526 ** <3> 1 B23RDCPW0 Bank 2/3 Read CAS Cycle Time 0 3527 ** <4> 1 B23RDCPW1 Bank 2/3 Read CAS Cycle Time 1 3528 ** <5> 1 MA23RDDLY Bank 2/3 Read MA Delay 3529 ** <6> 1 B23CPRE Bank 2/3 CAS Precharge 3530 ** <7> 1 B23RTMA Bank 2/3 RAS to CAS Delay 3531 ** <8> 1 B23MATC Bank 2/3 MA to CAS Delay 3532 ** <9> 1 B23RPRE0 Bank 2/3 RAS Precharge Time 0 3533 ** <10> 1 B23RPRE1 Bank 2/3 RAS Precharge Time 1 3534 ** <11> 1 B23RPRE2 Bank 2/3 RAS Precharge Time 2 3535 ** <13> 1 BNK23_ITL Bank 2/3 Interleave Enable 3536 ** 3537 ** <12><14:15> Reserved 3538 */ 3539 #define DRAMCR_BK23TCR_REG 0x207 3540 #define DRAMCR_BK23TCR_INIT ( BK23TCR_M_B23WRCPW | BK23TCR_M_MA23WRDLY | \ 3541 BK23TCR_M_B23RDCPW | BK23TCR_M_MA23RDDLY | \ 3542 BK23TCR_M_B23CPRE | BK23TCR_M_B23RTMA | \ 3543 BK23TCR_M_B23MATC | BK23TCR_M_B23RPRE ) 3544 #define BK23TCR_V_B23WRCPW 0 3545 #define BK23TCR_M_B23WRCPW 0x3 << BK23TCR_V_B23WRCPW 3546 #define BK23TCR_V_B23WRCPW0 0 3547 #define BK23TCR_M_B23WRCPW0 1 << BK23TCR_V_B23WRCPW0 3548 #define BK23TCR_V_B23WRCPW1 1 3549 #define BK23TCR_M_B23WRCPW1 1 << BK23TCR_V_B23WRCPW1 3550 #define BK23TCR_V_MA23WRDLY 2 3551 #define BK23TCR_M_MA23WRDLY 1 << BK23TCR_V_MA23WRDLY 3552 #define BK23TCR_V_B23RDCPW 3 3553 #define BK23TCR_M_B23RDCPW 0x3 << BK23TCR_V_B23RDCPW 3554 #define BK23TCR_V_B23RDCPW0 3 3555 #define BK23TCR_M_B23RDCPW0 1 << BK23TCR_V_B23RDCPW0 3556 #define BK23TCR_V_B23RDCPW1 4 3557 #define BK23TCR_M_B23RDCPW1 1 << BK23TCR_V_B23RDCPW1 3558 #define BK23TCR_V_MA23RDDLY 5 3559 #define BK23TCR_M_MA23RDDLY 1 << BK23TCR_V_MA23RDDLY 3560 #define BK23TCR_V_B23CPRE 6 3561 #define BK23TCR_M_B23CPRE 1 << BK23TCR_V_B23CPRE 3562 #define BK23TCR_V_B23RTMA 7 3563 #define BK23TCR_M_B23RTMA 1 << BK23TCR_V_B23RTMA 3564 #define BK23TCR_V_B23MATC 8 3565 #define BK23TCR_M_B23MATC 1 << BK23TCR_V_B23MATC 3566 #define BK23TCR_V_B23RPRE 9 3567 #define BK23TCR_M_B23RPRE 0x7 << BK23TCR_V_B23RPRE 3568 #define BK23TCR_V_B23RPRE0 9 3569 #define BK23TCR_M_B23RPRE0 1 << BK23TCR_V_B23RPRE0 3570 #define BK23TCR_V_B23RPRE1 10 3571 #define BK23TCR_M_B23RPRE1 1 << BK23TCR_V_B23RPRE1 3572 #define BK23TCR_V_B23RPRE2 11 3573 #define BK23TCR_M_B23RPRE2 1 << BK23TCR_V_B23RPRE2 3574 #define BK23TCR_V_BNK23_ITL 13 3575 #define BK23TCR_M_BNK23_ITL 1 << BK23TCR_V_BNK23_ITL 3576 3577 /* 3578 ** Bank 2/3 Write CAS Cycle Time 3579 */ 3580 #define B23WRCPW_1T BK23TCR_M_B23WRCPW0 3581 #define B23WRCPW_2T BK23TCR_M_B23WRCPW1 3582 #define B23WRCPW_3T (BK23TCR_M_B23WRCPW0 | BK23TCR_M_B23WRCPW1) 3583 3584 /* 3585 ** Bank 2/3 Read CAS Cycle Time 3586 */ 3587 #define B23RDCPW_1T 0x000 3588 #define B23RDCPW_2T BK23TCR_M_B23RDCPW0 3589 #define B23RDCPW_3T BK23TCR_M_B23RDCPW1 3590 #define B23RDCPW_4T (BK23TCR_M_B23RDCPW0 | BK23TCR_M_B23RDCPW1) 3591 3592 /* 3593 ** Bank 2/3 RAS Precharge Time 3594 */ 3595 #define B23RPRE_1PT5T BK23TCR_M_B23RPRE1 3596 #define B23RPRE_2T (BK23TCR_M_B23RPRE0 | BK23TCR_M_B23RPRE1) 3597 #define B23RPRE_2PT5T BK23TCR_M_B23RPRE2 3598 #define B23RPRE_3T (BK23TCR_M_B23RPRE0 | BK23TCR_M_B23RPRE2) 3599 #define B23RPRE_3PT5T (BK23TCR_M_B23RPRE1 | BK23TCR_M_B23RPRE2) 3600 #define B23RPRE_4T (BK23TCR_M_B23RPRE0 | BK23TCR_M_B23RPRE1 | BK23TCR_M_B23RPRE2) 3601 3602 /* 3603 ** 3604 ** Bank 4 Control Register (BK4CR) - Index 0x208 3605 ** 3606 ** Loc Size Name Function 3607 ** ----- ---- ---- --------------------------------- 3608 ** <0> 8 B4A Bank 4 Starting Address 3609 ** <8> 1 B4S0 Bank 4 DRAM Size 0 3610 ** <9> 1 B4S1 Bank 4 DRAM Size 1 3611 ** <10> 1 B4S2 Bank 4 DRAM Size 2 3612 ** <11> 1 BANKEN4 Bank 4 Enable 3613 ** <12> 1 ENMDEN4N Enable MDEN# for Bank 4 3614 ** <13> 1 COLADR40 Number of Column Address Bits for Bank 4 0 3615 ** <14> 1 COLADR41 Number of Column Address Bits for Bank 4 1 3616 ** <15> 1 COLADR42 Number of Column Address Bits for Bank 4 2 3617 ** 3618 */ 3619 #define DRAMCR_BK4CR_REG 0x208 3620 #define DRAMCR_BK4CR_INIT 0x0000 3621 #define BK4CR_V_B4A 0 3622 #define BK4CR_M_B4A 0xFF << BK4CR_V_B4A 3623 #define BK4CR_V_B4S 8 3624 #define BK4CR_M_B4S 0x7 << BK4CR_V_B4S 3625 #define BK4CR_V_B4S0 8 3626 #define BK4CR_M_B4S0 1 << BK4CR_V_B4S0 3627 #define BK4CR_V_B4S1 9 3628 #define BK4CR_M_B4S1 1 << BK4CR_V_B4S1 3629 #define BK4CR_V_B4S2 10 3630 #define BK4CR_M_B4S2 1 << BK4CR_V_B4S2 3631 #define BK4CR_V_BANKEN4 11 3632 #define BK4CR_M_BANKEN4 1 << BK4CR_V_BANKEN4 3633 #define BK4CR_V_ENMDEN4N 12 3634 #define BK4CR_M_ENMDEN4N 1 << BK4CR_V_ENMDEN4N 3635 #define BK4CR_V_COLADR4 13 3636 #define BK4CR_M_COLADR4 0xE << BK4CR_V_COLADR4 3637 #define BK4CR_V_COLADR40 13 3638 #define BK4CR_M_COLADR40 1 << BK4CR_V_COLADR40 3639 #define BK4CR_V_COLADR41 14 3640 #define BK4CR_M_COLADR41 1 << BK4CR_V_COLADR41 3641 #define BK4CR_V_COLADR42 15 3642 #define BK4CR_M_COLADR42 1 << BK4CR_V_COLADR42 3643 3644 /* 3645 ** Bank 4 DRAM Size 3646 */ 3647 #define B4S_256KB 0x000 3648 #define B4S_512KB BK4CR_M_B4S0 3649 #define B4S_1MB BK4CR_M_B4S1 3650 #define B4S_2MB (BK4CR_M_B4S0 | BK4CR_M_B4S1) 3651 #define B4S_4MB BK4CR_M_B4S2 3652 #define B4S_16MB (BK4CR_M_B4S1 | BK4CR_M_B4S2) 3653 3654 /* 3655 ** Bank 4 Column Address Bits 3656 */ 3657 #define COLADR4_8 0x000 3658 #define COLADR4_9 BK4CR_M_COLADR40 3659 #define COLADR4_10 BK4CR_M_COLADR41 3660 #define COLADR4_11 (BK4CR_M_COLADR40 | BK4CR_M_COLADR41) 3661 #define COLADR4_12 BK4CR_M_COLADR42 3662 3663 /* 3664 ** 3665 ** Bank 5 Control Register (BK5CR) - Index 0x209 3666 ** 3667 ** Loc Size Name Function 3668 ** ----- ---- ---- --------------------------------- 3669 ** <0> 8 B5A Bank 5 Starting Address 3670 ** <8> 1 B5S0 Bank 5 DRAM Size 0 3671 ** <9> 1 B5S1 Bank 5 DRAM Size 1 3672 ** <10> 1 B5S2 Bank 5 DRAM Size 2 3673 ** <11> 1 BANKEN5 Bank 5 Enable 3674 ** <12> 1 ENMDEN5N Enable MDEN# for Bank 5 3675 ** <13> 1 COLADR50 Number of Column Address Bits for Bank 5 0 3676 ** <14> 1 COLADR51 Number of Column Address Bits for Bank 5 1 3677 ** <15> 1 COLADR52 Number of Column Address Bits for Bank 5 2 3678 ** 3679 */ 3680 #define DRAMCR_BK5CR_REG 0x209 3681 #define DRAMCR_BK5CR_INIT 0x0000 3682 #define BK5CR_V_B5A 0 3683 #define BK5CR_M_B5A 0xFF << BK5CR_V_B5A 3684 #define BK5CR_V_B5S 8 3685 #define BK5CR_M_B5S 0x7 << BK5CR_V_B5S 3686 #define BK5CR_V_B5S0 8 3687 #define BK5CR_M_B5S0 1 << BK5CR_V_B5S0 3688 #define BK5CR_V_B5S1 9 3689 #define BK5CR_M_B5S1 1 << BK5CR_V_B5S1 3690 #define BK5CR_V_B5S2 10 3691 #define BK5CR_M_B5S2 1 << BK5CR_V_B5S2 3692 #define BK5CR_V_BANKEN5 11 3693 #define BK5CR_M_BANKEN5 1 << BK5CR_V_BANKEN5 3694 #define BK5CR_V_ENMDEN5N 12 3695 #define BK5CR_M_ENMDEN5N 1 << BK5CR_V_ENMDEN5N 3696 #define BK5CR_V_COLADR5 13 3697 #define BK5CR_M_COLADR5 0xE << BK5CR_V_COLADR5 3698 #define BK5CR_V_COLADR50 13 3699 #define BK5CR_M_COLADR50 1 << BK5CR_V_COLADR50 3700 #define BK5CR_V_COLADR51 14 3701 #define BK5CR_M_COLADR51 1 << BK5CR_V_COLADR51 3702 #define BK5CR_V_COLADR52 15 3703 #define BK5CR_M_COLADR52 1 << BK5CR_V_COLADR52 3704 3705 /* 3706 ** Bank 5 DRAM Size 3707 */ 3708 #define B5S_256KB 0x000 3709 #define B5S_512KB BK5CR_M_B5S0 3710 #define B5S_1MB BK5CR_M_B5S1 3711 #define B5S_2MB (BK5CR_M_B5S0 | BK5CR_M_B5S1) 3712 #define B5S_4MB BK5CR_M_B5S2 3713 #define B5S_16MB (BK5CR_M_B5S1 | BK5CR_M_B5S2) 3714 3715 /* 3716 ** Bank 5 Column Address Bits 3717 */ 3718 #define COLADR5_8 0x000 3719 #define COLADR5_9 BK5CR_M_COLADR50 3720 #define COLADR5_10 BK5CR_M_COLADR51 3721 #define COLADR5_11 (BK5CR_M_COLADR50 | BK5CR_M_COLADR51) 3722 #define COLADR5_12 BK5CR_M_COLADR52 3723 3724 /* 3725 ** 3726 ** Bank 4/5 Timing Control Register (BK45TCR) - Index 0x20A 3727 ** 3728 ** Loc Size Name Function 3729 ** ----- ---- ---- --------------------------------- 3730 ** <0> 1 B45WRCPW0 Bank 4/5 Write CAS Cycle Time 0 3731 ** <1> 1 B45WRCPW1 Bank 4/5 Write CAS Cycle Time 1 3732 ** <2> 1 MA45WRDLY Bank 4/5 Write MA Delay 3733 ** <3> 1 B45RDCPW0 Bank 4/5 Read CAS Cycle Time 0 3734 ** <4> 1 B45RDCPW1 Bank 4/5 Read CAS Cycle Time 1 3735 ** <5> 1 MA45RDDLY Bank 4/5 Read MA Delay 3736 ** <6> 1 B45CPRE Bank 4/5 CAS Precharge 3737 ** <7> 1 B45RTMA Bank 4/5 RAS to CAS Delay 3738 ** <8> 1 B45MATC Bank 4/5 MA to CAS Delay 3739 ** <9> 1 B45RPRE0 Bank 4/5 RAS Precharge Time 0 3740 ** <10> 1 B45RPRE1 Bank 4/5 RAS Precharge Time 1 3741 ** <11> 1 B45RPRE2 Bank 4/5 RAS Precharge Time 2 3742 ** <13> 1 BNK45_ITL Bank 4/5 Interleave Enable 3743 ** 3744 ** <12><14:15> Reserved 3745 */ 3746 #define DRAMCR_BK45TCR_REG 0x20A 3747 #define DRAMCR_BK45TCR_INIT ( BK45TCR_M_B45WRCPW | BK45TCR_M_MA45WRDLY | \ 3748 BK45TCR_M_B45RDCPW | BK45TCR_M_MA45RDDLY | \ 3749 BK45TCR_M_B45CPRE | BK45TCR_M_B45RTMA | \ 3750 BK45TCR_M_B45MATC | BK45TCR_M_B45RPRE ) 3751 #define BK45TCR_V_B45WRCPW 0 3752 #define BK45TCR_M_B45WRCPW 0x3 << BK45TCR_V_B45WRCPW 3753 #define BK45TCR_V_B45WRCPW0 0 3754 #define BK45TCR_M_B45WRCPW0 1 << BK45TCR_V_B45WRCPW0 3755 #define BK45TCR_V_B45WRCPW1 1 3756 #define BK45TCR_M_B45WRCPW1 1 << BK45TCR_V_B45WRCPW1 3757 #define BK45TCR_V_MA45WRDLY 2 3758 #define BK45TCR_M_MA45WRDLY 1 << BK45TCR_V_MA45WRDLY 3759 #define BK45TCR_V_B45RDCPW 3 3760 #define BK45TCR_M_B45RDCPW 0x3 << BK45TCR_V_B45RDCPW 3761 #define BK45TCR_V_B45RDCPW0 3 3762 #define BK45TCR_M_B45RDCPW0 1 << BK45TCR_V_B45RDCPW0 3763 #define BK45TCR_V_B45RDCPW1 4 3764 #define BK45TCR_M_B45RDCPW1 1 << BK45TCR_V_B45RDCPW1 3765 #define BK45TCR_V_MA45RDDLY 5 3766 #define BK45TCR_M_MA45RDDLY 1 << BK45TCR_V_MA45RDDLY 3767 #define BK45TCR_V_B45CPRE 6 3768 #define BK45TCR_M_B45CPRE 1 << BK45TCR_V_B45CPRE 3769 #define BK45TCR_V_B45RTMA 7 3770 #define BK45TCR_M_B45RTMA 1 << BK45TCR_V_B45RTMA 3771 #define BK45TCR_V_B45MATC 8 3772 #define BK45TCR_M_B45MATC 1 << BK45TCR_V_B45MATC 3773 #define BK45TCR_V_B45RPRE 9 3774 #define BK45TCR_M_B45RPRE 0x7 << BK45TCR_V_B45RPRE 3775 #define BK45TCR_V_B45RPRE0 9 3776 #define BK45TCR_M_B45RPRE0 1 << BK45TCR_V_B45RPRE0 3777 #define BK45TCR_V_B45RPRE1 10 3778 #define BK45TCR_M_B45RPRE1 1 << BK45TCR_V_B45RPRE1 3779 #define BK45TCR_V_B45RPRE2 11 3780 #define BK45TCR_M_B45RPRE2 1 << BK45TCR_V_B45RPRE2 3781 #define BK45TCR_V_BNK45_ITL 13 3782 #define BK45TCR_M_BNK45_ITL 1 << BK45TCR_V_BNK45_ITL 3783 3784 /* 3785 ** Bank 4/5 Write CAS Cycle Time 3786 */ 3787 #define B45WRCPW_1T BK45TCR_M_B45WRCPW0 3788 #define B45WRCPW_2T BK45TCR_M_B45WRCPW1 3789 #define B45WRCPW_3T (BK45TCR_M_B45WRCPW0 | BK45TCR_M_B45WRCPW1) 3790 3791 /* 3792 ** Bank 4/5 Read CAS Cycle Time 3793 */ 3794 #define B45RDCPW_1T 0x000 3795 #define B45RDCPW_2T BK45TCR_M_B45RDCPW0 3796 #define B45RDCPW_3T BK45TCR_M_B45RDCPW1 3797 #define B45RDCPW_4T (BK45TCR_M_B45RDCPW0 | BK45TCR_M_B45RDCPW1) 3798 3799 /* 3800 ** Bank 4/5 RAS Precharge Time 3801 */ 3802 #define B45RPRE_1PT5T BK45TCR_M_B45RPRE1 3803 #define B45RPRE_2T (BK45TCR_M_B45RPRE0 | BK45TCR_M_B45RPRE1) 3804 #define B45RPRE_2PT5T BK45TCR_M_B45RPRE2 3805 #define B45RPRE_3T (BK45TCR_M_B45RPRE0 | BK45TCR_M_B45RPRE2) 3806 #define B45RPRE_3PT5T (BK45TCR_M_B45RPRE1 | BK45TCR_M_B45RPRE2) 3807 #define B45RPRE_4T (BK45TCR_M_B45RPRE0 | BK45TCR_M_B45RPRE1 | BK45TCR_M_B45RPRE2) 3808 3809 /* 3810 ** 3811 ** DRAM Configuration Register 1 (DRAMCR1) - Index 0x20B 3812 ** 3813 ** Loc Size Name Function 3814 ** ----- ---- ---- --------------------------------- 3815 ** <0> 1 SIXRASEN Six RAS# Control Line Enable 3816 ** <3> 1 BRSTWREN Burst WRite Enable 3817 ** <4> 1 PS0 DRAM Page Size 0 3818 ** <5> 1 PS1 DRAM Page Size 1 3819 ** <6> 1 PS2 DRAM Page Size 2 3820 ** <7> 1 FSTPHDEC Fast Page Hit Decode 3821 ** <9> 1 RONLYRF DRAM Refresh Scheme 3822 ** <10> 1 RFRPRE0 RAS Precharge Time for Refresh Cycles 0 3823 ** <11> 1 RFRPRE1 RAS Precharge Time for Refresh Cycles 1 3824 ** <12> 1 RFRPW0 RAS Pulse Width for Refresh Cycles 0 3825 ** <13> 1 RFRPW1 RAS Pulse Width for Refresh Cycles 1 3826 ** <14> 1 XWITDOFFR Extra Wait State for Lead-off Read Cycles 3827 ** <15> 1 XWITDOFFW Extra Wait State for Lead-off Write Cycles 3828 ** 3829 ** <1:2><8> Reserved 3830 */ 3831 #define DRAMCR_DRAMCR1_REG 0x20B 3832 #define DRAMCR_DRAMCR1_INIT ( DRAMCR1_M_XWITDOFFR | DRAMCR1_M_XWITDOFFW ) 3833 #define DRAMCR1_V_SIXRASEN 0 3834 #define DRAMCR1_M_SIXRASEN 1 << DRAMCR1_V_SIXRASEN 3835 #define DRAMCR1_V_BRSTWREN 3 3836 #define DRAMCR1_M_BRSTWREN 1 << DRAMCR1_V_BRSTWREN 3837 #define DRAMCR1_V_PS 4 3838 #define DRAMCR1_M_PS 0x7 << DRAMCR1_V_PS 3839 #define DRAMCR1_V_PS0 4 3840 #define DRAMCR1_M_PS0 1 << DRAMCR1_V_PS0 3841 #define DRAMCR1_V_PS1 5 3842 #define DRAMCR1_M_PS1 1 << DRAMCR1_V_PS1 3843 #define DRAMCR1_V_PS2 6 3844 #define DRAMCR1_M_PS2 1 << DRAMCR1_V_PS2 3845 #define DRAMCR1_V_FSTPHDEC 7 3846 #define DRAMCR1_M_FSTPHDEC 1 << DRAMCR1_V_FSTPHDEC 3847 #define DRAMCR1_V_RONLYRF 9 3848 #define DRAMCR1_M_RONLYRF 1 << DRAMCR1_V_RONLYRF 3849 #define DRAMCR1_V_RFRPRE 10 3850 #define DRAMCR1_M_RFRPRE 0x3 << DRAMCR1_V_RFRPRE 3851 #define DRAMCR1_V_RFRPRE0 10 3852 #define DRAMCR1_M_RFRPRE0 1 << DRAMCR1_V_RFRPRE0 3853 #define DRAMCR1_V_RFRPRE1 11 3854 #define DRAMCR1_M_RFRPRE1 1 << DRAMCR1_V_RFRPRE1 3855 #define DRAMCR1_V_RFRPW 12 3856 #define DRAMCR1_M_RFRPW 0x3 << DRAMCR1_V_RFRPW 3857 #define DRAMCR1_V_RFRPW0 12 3858 #define DRAMCR1_M_RFRPW0 1 << DRAMCR1_V_RFRPW0 3859 #define DRAMCR1_V_RFRPW1 13 3860 #define DRAMCR1_M_RFRPW1 1 << DRAMCR1_V_RFRPW1 3861 #define DRAMCR1_V_XWITDOFFR 14 3862 #define DRAMCR1_M_XWITDOFFR 1 << DRAMCR1_V_XWITDOFFR 3863 #define DRAMCR1_V_XWITDOFFW 15 3864 #define DRAMCR1_M_XWITDOFFW 1 << DRAMCR1_V_XWITDOFFW 3865 3866 /* 3867 ** DRAM Page Size 3868 */ 3869 #define PS_1KB 0x000 3870 #define PS_2KB DRAMCR1_M_PS0 3871 #define PS_4KB DRAMCR1_M_PS1 3872 #define PS_8KB (DRAMCR1_M_PS0 | DRAMCR1_M_PS1) 3873 #define PS_16KB DRAMCR1_M_PS2 3874 #define PS_32KB (DRAMCR1_M_PS0 | DRAMCR1_M_PS2) 3875 3876 /* 3877 ** RAS Precharge Time for Refresh Cycles 3878 */ 3879 #define RFRPRE_5T 0x000 3880 #define RFRPRE_4T DRAMCR1_M_RFRPRE0 3881 #define RFRPRE_3T DRAMCR1_M_RFRPRE1 3882 #define RFRPRE_2T (DRAMCR1_M_RFRPRE0 | DRAMCR1_M_RFRPRE1) 3883 3884 /* 3885 ** RAS Pulse Width for Refresh Cycles 3886 */ 3887 #define RFRPW_5T 0x000 3888 #define RFRPW_4T DRAMCR1_M_RFRPW0 3889 #define RFRPW_3T DRAMCR1_M_RFRPW1 3890 #define RFRPW_2T (DRAMCR1_M_RFRPW0 | DRAMCR1_M_RFRPW1) 3891 3892 /* 3893 ** 3894 ** DRAM Configuration Register 2 (DRAMCR2) - Index 0x20C 3895 ** 3896 ** Loc Size Name Function 3897 ** ----- ---- ---- --------------------------------- 3898 ** <9> 1 ENPARADRL Enable Parity Error Address Latch 3899 ** <10> 1 ENPARCK0 Enable Parity Check for Bank 0 3900 ** <11> 1 ENPARCK1 Enable Parity Check for Bank 1 3901 ** <12> 1 ENPARCK2 Enable Parity Check for Bank 2 3902 ** <13> 1 ENPARCK3 Enable Parity Check for Bank 3 3903 ** <14> 1 ENPARCK4 Enable Parity Check for Bank 4 3904 ** <15> 1 ENPARCK5 Enable Parity Check for Bank 5 3905 ** 3906 ** <0:8> Reserved 3907 */ 3908 #define DRAMCR_DRAMCR2_REG 0x20C 3909 #define DRAMCR_DRAMCR2_INIT 0x0000 3910 #define DRAMCR2_V_ENPARADRL 9 3911 #define DRAMCR2_M_ENPARADRL 1 << DRAMCR2_V_ENPARADRL 3912 #define DRAMCR2_V_ENPARCK0 10 3913 #define DRAMCR2_M_ENPARCK0 1 << DRAMCR2_V_ENPARCK0 3914 #define DRAMCR2_V_ENPARCK1 11 3915 #define DRAMCR2_M_ENPARCK1 1 << DRAMCR2_V_ENPARCK1 3916 #define DRAMCR2_V_ENPARCK2 12 3917 #define DRAMCR2_M_ENPARCK2 1 << DRAMCR2_V_ENPARCK2 3918 #define DRAMCR2_V_ENPARCK3 13 3919 #define DRAMCR2_M_ENPARCK3 1 << DRAMCR2_V_ENPARCK3 3920 #define DRAMCR2_V_ENPARCK4 14 3921 #define DRAMCR2_M_ENPARCK4 1 << DRAMCR2_V_ENPARCK4 3922 #define DRAMCR2_V_ENPARCK5 15 3923 #define DRAMCR2_M_ENPARCK5 1 << DRAMCR2_V_ENPARCK5 3924 3925 /* 3926 ** 3927 ** DRAM Configuration Register 3 (DRAMCR3) - Index 0x20D 3928 ** 3929 ** Loc Size Name Function 3930 ** ----- ---- ---- --------------------------------- 3931 ** <0> 1 RAS0DRV0 Driving Strength of RAS0# Output 0 3932 ** <1> 1 RAS0DRV1 Driving Strength of RAS0# Output 1 3933 ** <2> 1 RAS0DRV2 Driving Strength of RAS0# Output 2 3934 ** <3> 1 RAS0DRV3 Driving Strength of RAS0# Output 3 3935 ** <4> 1 RAS1DRV0 Driving Strength of RAS1# Output 0 3936 ** <5> 1 RAS1DRV1 Driving Strength of RAS1# Output 1 3937 ** <6> 1 RAS1DRV2 Driving Strength of RAS1# Output 2 3938 ** <7> 1 RAS1DRV3 Driving Strength of RAS1# Output 3 3939 ** <8> 1 RAS2DRV0 Driving Strength of RAS2# Output 0 3940 ** <9> 1 RAS2DRV1 Driving Strength of RAS2# Output 1 3941 ** <10> 1 RAS2DRV2 Driving Strength of RAS2# Output 2 3942 ** <11> 1 RAS2DRV3 Driving Strength of RAS2# Output 3 3943 ** <12> 1 RAS3DRV0 Driving Strength of RAS3# Output 0 3944 ** <13> 1 RAS3DRV1 Driving Strength of RAS3# Output 1 3945 ** <14> 1 RAS3DRV2 Driving Strength of RAS3# Output 2 3946 ** <15> 1 RAS3DRV3 Driving Strength of RAS3# Output 3 3947 ** 3948 */ 3949 #define DRAMCR_DRAMCR3_REG 0x20D 3950 #define DRAMCR_DRAMCR3_INIT ( DRAMCR3_M_RAS0DRV0 | DRAMCR3_M_RAS0DRV1 | \ 3951 DRAMCR3_M_RAS0DRV2 | DRAMCR3_M_RAS1DRV0 | \ 3952 DRAMCR3_M_RAS1DRV1 | DRAMCR3_M_RAS1DRV2 | \ 3953 DRAMCR3_M_RAS2DRV0 | DRAMCR3_M_RAS2DRV1 | \ 3954 DRAMCR3_M_RAS2DRV2 | DRAMCR3_M_RAS3DRV0 | \ 3955 DRAMCR3_M_RAS3DRV1 | DRAMCR3_M_RAS3DRV2 ) 3956 #define DRAMCR3_V_RAS0DRV 0 3957 #define DRAMCR3_M_RAS0DRV 0xF << DRAMCR3_V_RAS0DRV 3958 #define DRAMCR3_V_RAS0DRV0 0 3959 #define DRAMCR3_M_RAS0DRV0 1 << DRAMCR3_V_RAS0DRV0 3960 #define DRAMCR3_V_RAS0DRV1 1 3961 #define DRAMCR3_M_RAS0DRV1 1 << DRAMCR3_V_RAS0DRV1 3962 #define DRAMCR3_V_RAS0DRV2 2 3963 #define DRAMCR3_M_RAS0DRV2 1 << DRAMCR3_V_RAS0DRV2 3964 #define DRAMCR3_V_RAS0DRV3 3 3965 #define DRAMCR3_M_RAS0DRV3 1 << DRAMCR3_V_RAS0DRV3 3966 #define DRAMCR3_V_RAS1DRV 4 3967 #define DRAMCR3_M_RAS1DRV 0xF << DRAMCR3_V_RAS1DRV 3968 #define DRAMCR3_V_RAS1DRV0 4 3969 #define DRAMCR3_M_RAS1DRV0 1 << DRAMCR3_V_RAS1DRV0 3970 #define DRAMCR3_V_RAS1DRV1 5 3971 #define DRAMCR3_M_RAS1DRV1 1 << DRAMCR3_V_RAS1DRV1 3972 #define DRAMCR3_V_RAS1DRV2 6 3973 #define DRAMCR3_M_RAS1DRV2 1 << DRAMCR3_V_RAS1DRV2 3974 #define DRAMCR3_V_RAS1DRV3 7 3975 #define DRAMCR3_M_RAS1DRV3 1 << DRAMCR3_V_RAS1DRV3 3976 #define DRAMCR3_V_RAS2DRV 8 3977 #define DRAMCR3_M_RAS2DRV 0xF << DRAMCR3_V_RAS2DRV 3978 #define DRAMCR3_V_RAS2DRV0 8 3979 #define DRAMCR3_M_RAS2DRV0 1 << DRAMCR3_V_RAS2DRV0 3980 #define DRAMCR3_V_RAS2DRV1 9 3981 #define DRAMCR3_M_RAS2DRV1 1 << DRAMCR3_V_RAS2DRV1 3982 #define DRAMCR3_V_RAS2DRV2 10 3983 #define DRAMCR3_M_RAS2DRV2 1 << DRAMCR3_V_RAS2DRV2 3984 #define DRAMCR3_V_RAS2DRV3 11 3985 #define DRAMCR3_M_RAS2DRV3 1 << DRAMCR3_V_RAS2DRV3 3986 #define DRAMCR3_V_RAS3DRV 12 3987 #define DRAMCR3_M_RAS3DRV 0xF << DRAMCR3_V_RAS3DRV 3988 #define DRAMCR3_V_RAS3DRV0 12 3989 #define DRAMCR3_M_RAS3DRV0 1 << DRAMCR3_V_RAS3DRV0 3990 #define DRAMCR3_V_RAS3DRV1 13 3991 #define DRAMCR3_M_RAS3DRV1 1 << DRAMCR3_V_RAS3DRV1 3992 #define DRAMCR3_V_RAS3DRV2 14 3993 #define DRAMCR3_M_RAS3DRV2 1 << DRAMCR3_V_RAS3DRV2 3994 #define DRAMCR3_V_RAS3DRV3 15 3995 #define DRAMCR3_M_RAS3DRV3 1 << DRAMCR3_V_RAS3DRV3 3996 3997 /* 3998 ** Driving Strength of RAS0# Output (mA) 3999 */ 4000 #define RAS0DRV_4MA DRAMCR3_M_RAS0DRV0 4001 #define RAS0DRV_8MA (DRAMCR3_M_RAS0DRV0 | DRAMCR3_M_RAS0DRV1) 4002 #define RAS0DRV_12MA (DRAMCR3_M_RAS0DRV0 | DRAMCR3_M_RAS0DRV1 | DRAMCR3_M_RAS0DRV2 4003 4004 /* 4005 ** Driving Strength of RAS1# Output (mA) 4006 */ 4007 #define RAS1DRV_4MA DRAMCR3_M_RAS1DRV0 4008 #define RAS1DRV_8MA (DRAMCR3_M_RAS1DRV0 | DRAMCR3_M_RAS1DRV1) 4009 #define RAS1DRV_12MA (DRAMCR3_M_RAS1DRV0 | DRAMCR3_M_RAS1DRV1 | DRAMCR3_M_RAS1DRV2 4010 4011 /* 4012 ** Driving Strength of RAS2# Output (mA) 4013 */ 4014 #define RAS2DRV_4MA DRAMCR3_M_RAS2DRV0 4015 #define RAS2DRV_8MA (DRAMCR3_M_RAS2DRV0 | DRAMCR3_M_RAS2DRV1) 4016 #define RAS2DRV_12MA (DRAMCR3_M_RAS2DRV0 | DRAMCR3_M_RAS2DRV1 | DRAMCR3_M_RAS2DRV2 4017 4018 /* 4019 ** Driving Strength of RAS3# Output (mA) 4020 */ 4021 #define RAS3DRV_4MA DRAMCR3_M_RAS3DRV0 4022 #define RAS3DRV_8MA (DRAMCR3_M_RAS3DRV0 | DRAMCR3_M_RAS3DRV1) 4023 #define RAS3DRV_12MA (DRAMCR3_M_RAS3DRV0 | DRAMCR3_M_RAS3DRV1 | DRAMCR3_M_RAS3DRV2 4024 4025 /* 4026 ** 4027 ** DRAM Configuration Register 4 (DRAMCR4) - Index 0x20E 4028 ** 4029 ** Loc Size Name Function 4030 ** ----- ---- ---- --------------------------------- 4031 ** <0> 1 MADRV0 Driving Strength of MA Output 0 4032 ** <1> 1 MADRV1 Driving Strength of MA Output 1 4033 ** <2> 1 MADRV2 Driving Strength of MA Output 2 4034 ** <3> 1 MADRV3 Driving Strength of MA Output 3 4035 ** <4> 1 CASADRV0 Driving Strength of CASA Output 0 4036 ** <5> 1 CASADRV1 Driving Strength of CASA Output 1 4037 ** <6> 1 CASADRV2 Driving Strength of CASA Output 2 4038 ** <7> 1 CASADRV3 Driving Strength of CASA Output 3 4039 ** <8> 1 CASBDRV0 Driving Strength of CASB Output 0 4040 ** <9> 1 CASBDRV1 Driving Strength of CASB Output 1 4041 ** <10> 1 CASBDRV2 Driving Strength of CASB Output 2 4042 ** <11> 1 CASBDRV3 Driving Strength of CASB Output 3 4043 ** 4044 */ 4045 #define DRAMCR_DRAMCR4_REG 0x20E 4046 #define DRAMCR_DRAMCR4_INIT ( DRAMCR4_M_MADRV0 | DRAMCR4_M_MADRV1 | \ 4047 DRAMCR4_M_MADRV2 | DRAMCR4_M_CASADRV0 | \ 4048 DRAMCR4_M_CASADRV1 | DRAMCR4_M_CASADRV2 | \ 4049 DRAMCR4_M_CASBDRV0 | DRAMCR4_M_CASBDRV1 | \ 4050 DRAMCR4_M_CASBDRV2 ) 4051 #define DRAMCR4_V_MADRV 0 4052 #define DRAMCR4_M_MADRV 0xF << DRAMCR4_V_MADRV 4053 #define DRAMCR4_V_MADRV0 0 4054 #define DRAMCR4_M_MADRV0 1 << DRAMCR4_V_MADRV0 4055 #define DRAMCR4_V_MADRV1 1 4056 #define DRAMCR4_M_MADRV1 1 << DRAMCR4_V_MADRV1 4057 #define DRAMCR4_V_MADRV2 2 4058 #define DRAMCR4_M_MADRV2 1 << DRAMCR4_V_MADRV2 4059 #define DRAMCR4_V_MADRV3 3 4060 #define DRAMCR4_M_MADRV3 1 << DRAMCR4_V_MADRV3 4061 #define DRAMCR4_V_CASADRV 4 4062 #define DRAMCR4_M_CASADRV 0xF << DRAMCR4_V_CASADRV 4063 #define DRAMCR4_V_CASADRV0 4 4064 #define DRAMCR4_M_CASADRV0 1 << DRAMCR4_V_CASADRV0 4065 #define DRAMCR4_V_CASADRV1 5 4066 #define DRAMCR4_M_CASADRV1 1 << DRAMCR4_V_CASADRV1 4067 #define DRAMCR4_V_CASADRV2 6 4068 #define DRAMCR4_M_CASADRV2 1 << DRAMCR4_V_CASADRV2 4069 #define DRAMCR4_V_CASADRV3 7 4070 #define DRAMCR4_M_CASADRV3 1 << DRAMCR4_V_CASADRV3 4071 #define DRAMCR4_V_CASBDRV 8 4072 #define DRAMCR4_M_CASBDRV 0xF << DRAMCR4_V_CASBDRV 4073 #define DRAMCR4_V_CASBDRV0 8 4074 #define DRAMCR4_M_CASBDRV0 1 << DRAMCR4_V_CASBDRV0 4075 #define DRAMCR4_V_CASBDRV1 9 4076 #define DRAMCR4_M_CASBDRV1 1 << DRAMCR4_V_CASBDRV1 4077 #define DRAMCR4_V_CASBDRV2 10 4078 #define DRAMCR4_M_CASBDRV2 1 << DRAMCR4_V_CASBDRV2 4079 #define DRAMCR4_V_CASBDRV3 11 4080 #define DRAMCR4_M_CASBDRV3 1 << DRAMCR4_V_CASBDRV3 4081 4082 /* 4083 ** Driving Strength of MA Output (mA) 4084 */ 4085 #define MADRV_4MA DRAMCR2_M_MADRV0 4086 #define MADRV_8MA (DRAMCR2_M_MADRV0 | DRAMCR2_M_MADRV1) 4087 #define MADRV_12MA (DRAMCR2_M_MADRV0 | DRAMCR2_M_MADRV1 | DRAMCR2_M_MADRV2 4088 4089 /* 4090 ** Driving Strength of CASA Output (mA) 4091 */ 4092 #define CASADRV_4MA DRAMCR2_M_CASADRV0 4093 #define CASADRV_8MA (DRAMCR2_M_CASADRV0 | DRAMCR2_M_CASADRV1) 4094 #define CASADRV_12MA (DRAMCR2_M_CASADRV0 | DRAMCR2_M_CASADRV1 | DRAMCR2_M_CASADRV2 4095 4096 /* 4097 ** Driving Strength of CASB Output (mA) 4098 */ 4099 #define CASBDRV_4MA DRAMCR2_M_CASBDRV0 4100 #define CASBDRV_8MA (DRAMCR2_M_CASBDRV0 | DRAMCR2_M_CASBDRV1) 4101 #define CASBDRV_12MA (DRAMCR2_M_CASBDRV0 | DRAMCR2_M_CASBDRV1 | DRAMCR2_M_CASBDRV2 4102 4103 /* 4104 ** 4105 ** DRAM Configuration Register 5 (DRAMCR5) - Index 0x20F 4106 ** 4107 ** Loc Size Name Function 4108 ** ----- ---- ---- --------------------------------- 4109 ** <1> 1 FLASHENB Flash Enable 4110 ** <10> 1 ENC0ROMCS Enable ROMCS# for C0000H-C7FFFH Region 4111 ** <11> 1 ENC8ROMCS Enable ROMCS# for C8000H-CFFFFH Region 4112 ** <12> 1 END0ROMCS Enable ROMCS# for D0000H-D7FFFH Region 4113 ** <13> 1 END8ROMCS Enable ROMCS# for D8000H-DFFFFH Region 4114 ** <14> 1 ENE0ROMCS Enable ROMCS# for E0000H-E7FFFH Region 4115 ** <15> 1 ENE8ROMCS Enable ROMCS# for E8000H-EFFFFH Region 4116 ** 4117 ** <0><2:9> Reserved 4118 */ 4119 #define DRAMCR_DRAMCR5_REG 0x20F 4120 #define DRAMCR_DRAMCR5_INIT 0x0000 4121 #define DRAMCR5_V_FLASHENB 0 4122 #define DRAMCR5_M_FLASHENB 1 << DRAMCR5_V_FLASHENB 4123 #define DRAMCR5_V_ENC0ROMCS 10 4124 #define DRAMCR5_M_ENC0ROMCS 1 << DRAMCR5_V_ENC0ROMCS 4125 #define DRAMCR5_V_ENC8ROMCS 11 4126 #define DRAMCR5_M_ENC8ROMCS 1 << DRAMCR5_V_ENC8ROMCS 4127 #define DRAMCR5_V_END0ROMCS 12 4128 #define DRAMCR5_M_END0ROMCS 1 << DRAMCR5_V_ENC0ROMCS 4129 #define DRAMCR5_V_END8ROMCS 13 4130 #define DRAMCR5_M_END8ROMCS 1 << DRAMCR5_V_ENC8ROMCS 4131 #define DRAMCR5_V_ENE0ROMCS 14 4132 #define DRAMCR5_M_ENE0ROMCS 1 << DRAMCR5_V_ENC0ROMCS 4133 #define DRAMCR5_V_ENE8ROMCS 15 4134 #define DRAMCR5_M_ENE8ROMCS 1 << DRAMCR5_V_ENC8ROMCS 4135 4136 /* 4137 ** Cache Controller Registers 4138 ** 4139 */ 4140 4141 /* 4142 ** 4143 ** Cache Control Register 1 (CCR1) - Index 0x400 4144 ** 4145 ** Loc Size Name Function 4146 ** ----- ---- ---- --------------------------------- 4147 ** <0> 1 L2CST0 Level 2 Cache Status 0 4148 ** <1> 1 L2CST1 Level 2 Cache Status 1 4149 ** <2> 1 L2CST2 Level 2 Cache Status 2 4150 ** <3> 1 L2CST3 Level 2 Cache Status 3 4151 ** <4> 1 CSIZE0 Level 2 Cache Data 0 4152 ** <5> 1 CSIZE1 Level 2 Cache Data 1 4153 ** <6> 1 CSIZE2 Level 2 Cache Data 2 4154 ** <7> 1 CSIZE3 Level 2 Cache Data 3 4155 ** <8> 1 L1WB Enable Level 1 Write Back Support 4156 ** <9> 1 WPL2KEN L2 Cache Write Protect 4157 ** 4158 ** <10:15> Reserved 4159 */ 4160 #define CCR_CCR1_REG 0x400 4161 #define CCR1_V_L2CST 0 4162 #define CCR1_M_L2CST 0xF << CCR1_V_L2CST 4163 #define CCR1_V_L2CST0 0 4164 #define CCR1_M_L2CST0 1 << CCR1_V_L2CST0 4165 #define CCR1_V_L2CST1 1 4166 #define CCR1_M_L2CST1 1 << CCR1_V_L2CST1 4167 #define CCR1_V_L2CST2 2 4168 #define CCR1_M_L2CST2 1 << CCR1_V_L2CST2 4169 #define CCR1_V_L2CST3 3 4170 #define CCR1_M_L2CST3 1 << CCR1_V_L2CST3 4171 #define CCR1_V_CSIZE 4 4172 #define CCR1_M_CSIZE 0xF << CCR1_V_CSIZE 4173 #define CCR1_V_CSIZE0 4 4174 #define CCR1_M_CSIZE0 1 << CCR1_V_CSIZE0 4175 #define CCR1_V_CSIZE1 5 4176 #define CCR1_M_CSIZE1 1 << CCR1_V_CSIZE1 4177 #define CCR1_V_CSIZE2 6 4178 #define CCR1_M_CSIZE2 1 << CCR1_V_CSIZE2 4179 #define CCR1_V_CSIZE3 7 4180 #define CCR1_M_CSIZE3 1 << CCR1_V_CSIZE3 4181 #define CCR1_V_L1WB 8 4182 #define CCR1_M_L1WB 1 << CCR1_V_L1WB 4183 #define CCR1_V_WPL2KEN 9 4184 #define CCR1_M_WPL2KEN 1 << CCR1_V_WPL2KEN 4185 4186 /* 4187 ** Level 2 Cache Status 4188 */ 4189 #define L2CST_STNDBY 0x0000 4190 #define L2CST_INIT CCR1_M_L2CST0 4191 #define L2CST_WRTHRU CCR1_M_L2CST1 4192 #define L2CST_WRBACK (CCR1_M_L2CST0 | CCR1_M_L2CST1) 4193 #define L2CST_FLUSH CCR1_M_L2CST2 4194 #define L2CST_WRTHRUDR (CCR1_M_L2CST0 | CCR1_M_L2CST2) 4195 #define L2CST_WRBACKDR (CCR1_M_L2CST1 | CCR1_M_L2CST2) 4196 4197 /* 4198 ** Level 2 Cache Size 4199 */ 4200 #define CSIZE_64KB_2BNK CCR1_M_CSIZE0 4201 #define CSIZE_128KB_1BNK CCR1_M_CSIZE1 4202 #define CSIZE_256KB_2BNK (CCR1_M_CSIZE0 | CCR1_M_CSIZE1) 4203 #define CSIZE_512KB_1BNK CCR1_M_CSIZE2 4204 #define CSIZE_1MB_2BNK (CCR1_M_CSIZE0 | CCR1_M_CSIZE2) 4205 #define CSIZE_256KB_1BNK (CCR1_M_CSIZE0 | CCR1_M_CSIZE1 | CCR1_M_CSIZE3) 4206 4207 /* 4208 ** 4209 ** Cache Control Register 2 (CCR2) - Index 0x401 4210 ** 4211 ** Loc Size Name Function 4212 ** ----- ---- ---- --------------------------------- 4213 ** <0> 1 TWIDTH Width of L2 Cache TAG Data 4214 ** <1> 1 DTYEN Configuration of L2 Cache TAG Field 4215 ** <2> 1 DRTWEN Configuration of L2 Cache TAG Write 4216 ** <7> 1 EHITEN External Comparator is Used 4217 ** 4218 ** <3:6><8:15> Reserved 4219 */ 4220 #define CCR_CCR2_REG 0x401 4221 #define CCR2_V_TWIDTH 0 4222 #define CCR2_M_TWIDTH 1 << CCR2_V_TWIDTH 4223 #define CCR2_V_DTYEN 1 4224 #define CCR2_M_DTYEN 1 << CCR2_V_DTYEN 4225 #define CCR2_V_DRTWEN 2 4226 #define CCR2_M_DRTWEN 1 << CCR2_V_DRTWEN 4227 #define CCR2_V_EHITEN 7 4228 #define CCR2_M_EHITEN 1 << CCR2_V_EHITEN 4229 4230 /* 4231 ** 4232 ** Cache Control Register 3 (CCR3) - Index 0x402 4233 ** 4234 ** Loc Size Name Function 4235 ** ----- ---- ---- --------------------------------- 4236 ** <0> 1 RDL0 CPU Cache Read Lead-off Cycles 0 4237 ** <1> 1 RDL1 CPU Cache Read Lead-off Cycles 1 4238 ** <2> 1 RDB2T CPU Cache Read Burst Cycles 4239 ** <3> 1 WRL0 CPU Cache Write Lead-off Cycles 0 4240 ** <4> 1 WRL1 CPU Cache Write Lead-off Cycles 1 4241 ** <5> 1 WRB2T CPU Cache Write Burst Cycles 4242 ** <6> 1 WRTEG0 Cache Write Enable Trailing Edge Timing 0 4243 ** <7> 1 WRTEG1 Cache Write Enable Trailing Edge Timing 1 4244 ** <8> 1 RDTEG0 Cache Write Enable Trailing Edge Timing 0 4245 ** <9> 1 RDTEG1 Cache Write Enable Trailing Edge Timing 1 4246 ** 4247 ** <10:15> Reserved 4248 */ 4249 #define CCR_CCR3_REG 0x402 4250 #define CCR3_V_RDL 0 4251 #define CCR3_M_RDL 0x3 << CCR3_V_RDL 4252 #define CCR3_V_RDL0 0 4253 #define CCR3_M_RDL0 1 << CCR3_V_RDL0 4254 #define CCR3_V_RDL1 2 4255 #define CCR3_M_RDL1 1 << CCR3_V_RDL1 4256 #define CCR3_V_RDB2T 3 4257 #define CCR3_M_RDB2T 1 << CCR3_V_RDB2T 4258 #define CCR3_V_WRL 3 4259 #define CCR3_M_WRL 0x3 << CCR3_V_WRL 4260 #define CCR3_V_WRL0 3 4261 #define CCR3_M_WRL0 1 << CCR3_V_WRL0 4262 #define CCR3_V_WRL1 4 4263 #define CCR3_M_WRL1 1 << CCR3_V_WRL1 4264 #define CCR3_V_WRB2T 5 4265 #define CCR3_M_WRB2T 1 << CCR3_V_WRB2T 4266 #define CCR3_V_WRTEG 6 4267 #define CCR3_M_WRTEG 0x3 << CCR3_V_WRTEG 4268 #define CCR3_V_WRTEG0 6 4269 #define CCR3_M_WRTEG0 1 << CCR3_V_WRTEG0 4270 #define CCR3_V_WRTEG1 7 4271 #define CCR3_M_WRTEG1 1 << CCR3_V_WRTEG1 4272 #define CCR3_V_RDTEG 8 4273 #define CCR3_M_RDTEG 0x3 << CCR3_V_RDTEG 4274 #define CCR3_V_RDTEG0 8 4275 #define CCR3_M_RDTEG0 1 << CCR3_V_RDTEG0 4276 #define CCR3_V_RDTEG1 9 4277 #define CCR3_M_RDTEG1 1 << CCR3_V_RDTEG1 4278 4279 /* 4280 ** CPU Cache Read Lead-off Cycles 4281 */ 4282 #define RDL_2T 0x000 4283 #define RDL_3T CCR3_M_RDL0 4284 #define RDL_4T CCR3_M_RDL1 4285 4286 /* 4287 ** CPU Cache Write Lead-off Cycles 4288 */ 4289 #define WRL_2T 0x000 4290 #define WRL_3T CCR3_M_WRL0 4291 #define WRL_4T CCR3_M_WRL1 4292 4293 /* 4294 ** Cache Write Enable Trailing Edge Timing for Write Hit Cycles 4295 */ 4296 #define WRTEG_SYNCH 0x000 4297 #define WRTEG_EARLY CCR3_M_WRTEG0 4298 4299 /* 4300 ** Cache Write Enable Trailing Edge Timing for Line Fill Cycles 4301 */ 4302 #define RDTEG_SYNCH 0x000 4303 #define RDTEG_EARLY CCR3_M_RDTEG0 4304 4305 /* 4306 ** 4307 ** Cache Control Register 4 (CCR4) - Index 0x403 4308 ** 4309 ** Loc Size Name Function 4310 ** ----- ---- ---- --------------------------------- 4311 ** <1> 1 TAGCK0 TAG RAM Timing Checking Point 0 4312 ** <2> 1 TAGCK1 TAG RAM Timing Checking Point 1 4313 ** <3> 1 DRTWETR0 Dirty Bit Write Timing Point 0 4314 ** <4> 1 DRTWETR1 Dirty Bit Write Timing Point 1 4315 ** 4316 ** <0><5:15> Reserved 4317 */ 4318 #define CCR_CCR4_REG 0x403 4319 #define CCR4_V_TAGCK 0 4320 #define CCR4_M_TAGCK 0x3 << CCR4_V_TAGCK 4321 #define CCR4_V_TAGCK0 0 4322 #define CCR4_M_TAGCK0 1 << CCR4_V_TAGCK0 4323 #define CCR4_V_TAGCK1 1 4324 #define CCR4_M_TAGCK1 1 << CCR4_V_TAGCK1 4325 #define CCR4_V_DRTWETR 0 4326 #define CCR4_M_DRTWETR 0x3 << CCR4_V_DRTWETR 4327 #define CCR4_V_DRTWETR0 0 4328 #define CCR4_M_DRTWETR0 1 << CCR4_V_DRTWETR0 4329 #define CCR4_V_DRTWETR1 1 4330 #define CCR4_M_DRTWETR1 1 << CCR4_V_DRTWETR1 4331 4332 /* 4333 ** TAG RAM Timing Checking Point 4334 */ 4335 #define TAGCK_ENDT1 0x000 4336 #define TAGCK_MIDT2_EARLY CCR4_M_TAGCK0 4337 #define TAGCK_MIDT2_NORM CCR4_M_TAGCK1 4338 #define TAGCK_ENDT2 (CCR4_M_TAGCK0 | CCR4_M_TAGCK1) 4339 4340 /* 4341 ** Dirty Bit Write Enable Trailing Edge Timing Point 4342 */ 4343 #define DRTWETR_EARLYEST CCR4_M_DRTWETR0 4344 #define DRTWETR_EARLYER CCR4_M_DRTWETR1 4345 #define DRTWETR_SYNCH (CCR4_M_DRTWETR0 | CCR4_M_DRTWETR1) 4346 4347 /* 4348 ** 4349 ** Global Control Register 1 (GCR1) - Index 0x700 4350 ** 4351 ** Loc Size Name Function 4352 ** ----- ---- ---- --------------------------------- 4353 ** <0> 1 CPUHITMWS CPU HITM# Sampling Wait State Selection 4354 ** 4355 ** <2:15> Reserved 4356 */ 4357 #define CCR_GCR1_REG 0x700 4358 #define CCR_GCR1_INIT 0x0000 4359 #define GCR1_V_CPUHITMWS 0 4360 #define GCR1_M_CPUHITMWS 1 << GCR1_V_CPUHITMWS 4361 4362 /**************************************************** 4363 ** SEQUOIA-2 ** 4364 *****************************************************/ 4365 4366 /* 4367 ** 4368 ** AT Miscellaneous Control Register 1 (ATMCR1) - Index 0x300 4369 ** 4370 ** Loc Size Name Function 4371 ** ----- ---- ---- --------------------------------- 4372 ** <0> 1 SYSDIV0 SYSCLK Divisor Select 0 4373 ** <1> 1 SYSDIV1 SYSCLK Divisor Select 1 4374 ** <2> 1 SYSDIV2 SYSCLK Divisor Select 2 4375 ** <4> 1 IDERDYDLY0 Turbo IDE Cycle Ready Delay Select 0 4376 ** <5> 1 IDERDYDLY1 Turbo IDE Cycle Ready Delay Select 1 4377 ** <6> 1 B2BD0 Back-to-Back I/O Delay Select 0 4378 ** <7> 1 B2BD1 Back-to-Back I/O Delay Select 1 4379 ** <9> 1 PARITYEN Global Parity Enable 4380 ** <10> 1 ATREFDIS AT Bus Refresh Disable 4381 ** <11> 1 HIDREFEN Hidden AT Refresh Enable 4382 ** 4383 ** <3><8><12:15> Reserved 4384 */ 4385 #define SEQ2_ATMCR_REG 0x300 4386 #define SEQ2_ATMCR_INIT ( SYSDIV_4 | IDERDYDLY_2FS1XCLK | B2BD_3 | \ 4387 ATMCR1_M_ATREFDIS | ATMCR1_M_HIDREFEN ) 4388 #define ATMCR1_V_SYSDIV 0 4389 #define ATMCR1_M_SYSDIV 0x7 << ATMCR1_V_SYSDIV 4390 #define ATMCR1_V_SYSDIV0 0 4391 #define ATMCR1_M_SYSDIV0 1 << ATMCR1_V_SYSDIV0 4392 #define ATMCR1_V_SYSDIV1 1 4393 #define ATMCR1_M_SYSDIV1 1 << ATMCR1_V_SYSDIV1 4394 #define ATMCR1_V_SYSDIV2 2 4395 #define ATMCR1_M_SYSDIV2 1 << ATMCR1_V_SYSDIV2 4396 #define ATMCR1_V_IDERDYDLY 4 4397 #define ATMCR1_M_IDERDYDLY 0x3 << ATMCR1_V_IDERDYDLY 4398 #define ATMCR1_V_IDERDYDLY0 4 4399 #define ATMCR1_M_IDERDYDLY0 1 << ATMCR1_V_IDERDYDLY0 4400 #define ATMCR1_V_IDERDYDLY1 5 4401 #define ATMCR1_M_IDERDYDLY1 1 << ATMCR1_V_IDERDYDLY1 4402 #define ATMCR1_V_B2BD 6 4403 #define ATMCR1_M_B2BD 0x3 << ATMCR1_V_B2BD 4404 #define ATMCR1_V_B2BD0 6 4405 #define ATMCR1_M_B2BD0 1 << ATMCR1_V_B2BD0 4406 #define ATMCR1_V_B2BD1 7 4407 #define ATMCR1_M_B2BD1 1 << ATMCR1_V_B2BD1 4408 #define ATMCR1_V_PARITYEN 9 4409 #define ATMCR1_M_PARITYEN 1 << ATMCR1_V_PARITYEN 4410 #define ATMCR1_V_ATREFDIS 10 4411 #define ATMCR1_M_ATREFDIS 1 << ATMCR1_V_ATREFDIS 4412 #define ATMCR1_V_HIDREFEN 11 4413 #define ATMCR1_M_HIDREFEN 1 << ATMCR1_V_HIDREFEN 4414 4415 /* 4416 ** SYSCLK Divisor Select 4417 */ 4418 #define SYSDIV_3 ATMCR1_M_SYSDIV0 4419 #define SYSDIV_4 ATMCR1_M_SYSDIV1 4420 #define SYSDIV_5 (ATMCR1_M_SYSDIV0 | ATMCR1_M_SYSDIV1) 4421 #define SYSDIV_6 ATMCR1_M_SYSDIV2 4422 4423 /* 4424 ** Turbo IDE Cycle Ready Delay Select 4425 */ 4426 #define IDERDYDLY_NONE 0x000 4427 #define IDERDYDLY_1FS1XCLK ATMCR1_M_IDERDYDLY0 4428 #define IDERDYDLY_2FS1XCLK ATMCR1_M_IDERDYDLY1 4429 4430 /* 4431 ** Back-to-Back Delay Select 4432 */ 4433 #define B2BD_0 0x000 4434 #define B2BD_1 ATMCR1_M_B2BD0 4435 #define B2BD_2 ATMCR1_M_B2BD1 4436 #define B2BD_3 (ATMCR1_M_B2BD0 | ATMCR1_M_B2BD1) 4437 4438 /* 4439 ** 4440 ** AT Miscellaneous Control Register 2 (ATMCR2) - Index 0x301 4441 ** 4442 ** Loc Size Name Function 4443 ** ----- ---- ---- --------------------------------- 4444 ** <0> 1 IDECMDW0 Turbo IDE Command Width Select 0 4445 ** <1> 1 IDECMDW1 Turbo IDE Command Width Select 1 4446 ** <2> 1 IDECMDW2 Turbo IDE Command Width Select 2 4447 ** <3> 1 IDEB2BDLY0 Turbo IDE Back-to-Back Cycle Delay Select 0 4448 ** <4> 1 IDEB2BDLY1 Turbo IDE Back-to-Back Cycle Delay Select 1 4449 ** <5> 1 IDEB2BDLY2 Turbo IDE Back-to-Back Cycle Delay Select 2 4450 ** <6> 1 GIDENABLE Global IDE Enable 4451 ** <11> 1 EXTATADD Extended AT Address 4452 ** <12> 1 DLYLOCAL Delay Sampling Point for LOCAL# 4453 ** <14> 1 BSEREN BSER Enable 4454 ** <15> 1 DMACLKDIS DMA Modular Clock Disable 4455 ** 4456 ** <7:10><13> Reserved 4457 */ 4458 #define SEQ2_ATMCR2_REG 0x301 4459 #define SEQ2_ATMCR2_INIT ( ATMCR2_M_IDECMDW | ATMCR2_M_IDEB2BDLY | \ 4460 ATMCR2_M_IDEB2BDLY1 | ATMCR2_M_IDEB2BDLY2 | \ 4461 ATMCR2_M_GIDENABLE | ATMCR2_M_EXTATADD | \ 4462 ATMCR2_M_DLYLOCAL | ATMCR2_M_BSEREN ) 4463 #define ATMCR2_V_IDECMDW 0 4464 #define ATMCR2_M_IDECMDW (0x7 << ATMCR2_V_IDECMDW) 4465 #define ATMCR2_V_IDECMDW0 0 4466 #define ATMCR2_M_IDECMDW0 (1 << ATMCR2_V_IDECMDW0) 4467 #define ATMCR2_V_IDECMDW1 1 4468 #define ATMCR2_M_IDECMDW1 (1 << ATMCR2_V_IDECMDW1) 4469 #define ATMCR2_V_IDECMDW2 2 4470 #define ATMCR2_M_IDECMDW2 (1 << ATMCR2_V_IDECMDW2) 4471 #define ATMCR2_V_IDEB2BDLY 3 4472 #define ATMCR2_M_IDEB2BDLY (0x7 << ATMCR2_V_IDEB2BDLY) 4473 #define ATMCR2_V_IDEB2BDLY0 3 4474 #define ATMCR2_M_IDEB2BDLY0 (1 << ATMCR2_V_IDEB2BDLY0) 4475 #define ATMCR2_V_IDEB2BDLY1 4 4476 #define ATMCR2_M_IDEB2BDLY1 (1 << ATMCR2_V_IDEB2BDLY1) 4477 #define ATMCR2_V_IDEB2BDLY2 5 4478 #define ATMCR2_M_IDEB2BDLY2 (1 << ATMCR2_V_IDEB2BDLY2) 4479 #define ATMCR2_V_GIDENABLE 6 4480 #define ATMCR2_M_GIDENABLE (1 << ATMCR2_V_GIDENABLE) 4481 #define ATMCR2_V_EXTATADD 11 4482 #define ATMCR2_M_EXTATADD (1 << ATMCR2_V_EXTATADD) 4483 #define ATMCR2_V_DLYLOCAL 12 4484 #define ATMCR2_M_DLYLOCAL (1 << ATMCR2_V_DLYLOCAL) 4485 #define ATMCR2_V_BSEREN 14 4486 #define ATMCR2_M_BSEREN (1 << ATMCR2_V_BSEREN) 4487 #define ATMCR2_V_DMACLKDIS 15 4488 #define ATMCR2_M_DMACLKDIS (1 << ATMCR2_V_DMACLKDIS) 4489 4490 /* 4491 ** Turbo IDE Command Width Select 4492 */ 4493 #define IDECMDW_2FS1XCLK 0x000 4494 #define IDECMDW_3FS1XCLK ATMCR2_M_IDECMDW0 4495 #define IDECMDW_4FS1XCLK ATMCR2_M_IDECMDW1 4496 #define IDECMDW_5FS1XCLK (ATMCR2_M_IDECMDW0 | ATMCR2_M_IDECMDW1) 4497 #define IDECMDW_6FS1XCLK ATMCR2_M_IDECMDW2 4498 #define IDECMDW_7FS1XCLK (ATMCR2_M_IDECMDW0 | ATMCR2_M_IDECMDW2) 4499 #define IDECMDW_8FS1XCLK (ATMCR2_M_IDECMDW1 | ATMCR2_M_IDECMDW2) 4500 #define IDECMDW_9FS1XCLK (ATMCR2_M_IDECMDW0 | ATMCR2_M_IDECMDW1 | ATMCR2_M_IDECMDW2) 4501 4502 /* 4503 ** Turbo IDE Back=to-Back Cycle Delay Select 4504 */ 4505 #define IDEB2BDLY_2FS1XCLK 0x000 4506 #define IDEB2BDLY_3FS1XCLK ATMCR2_M_IDEB2BDLY0 4507 #define IDEB2BDLY_4FS1XCLK ATMCR2_M_IDEB2BDLY1 4508 #define IDEB2BDLY_5FS1XCLK (ATMCR2_M_IDEB2BDLY0 | ATMCR2_M_IDEB2BDLY1) 4509 #define IDEB2BDLY_6FS1XCLK ATMCR2_M_IDEB2BDLY2 4510 #define IDEB2BDLY_7FS1XCLK (ATMCR2_M_IDEB2BDLY0 | ATMCR2_M_IDEB2BDLY2) 4511 #define IDEB2BDLY_8FS1XCLK (ATMCR2_M_IDEB2BDLY1 | ATMCR2_M_IDEB2BDLY2) 4512 #define IDEB2BDLY_9FS1XCLK (ATMCR2_M_IDEB2BDLY0 | ATMCR2_M_IDEB2BDLY1 | ATMCR2_M_IDEB2BDLY2) 4513 4514 /* 4515 ** 4516 ** SEQUOIA-2 Pin Select Register (SEQ2PSR) - Index 0x302 4517 ** 4518 ** Loc Size Name Function 4519 ** ----- ---- ---- --------------------------------- 4520 ** <0> 1 DPBUSEN DP Bus Enable 4521 ** <1> 1 GPIOPINEN General Purpose I/O [7:4] Pin Enable 4522 ** <4> 1 IDEPINEN IDE Pin Enable 4523 ** <5> 1 LOCALPINEN Additional LOCAL Pin Enable 4524 ** <8> 1 ATREFADDEN AT Refresh Address Enable 4525 ** <14> 1 IDECMDEN IDE Command Enable 4526 ** <15> 1 SQ2TYPESEL SEQUOIA-2 Type Select 4527 ** 4528 ** <2:3><6:7><9:13> Reserved 4529 */ 4530 #define SEQ2_SEQ2PSR_REG 0x302 4531 #define SEQ2_SEQ2PSR_INIT ( SEQ2PSR_M_DPBUSEN | SEQ2PSR_M_LOCALPINEN ) 4532 #define SEQ2PSR_V_DPBUSEN 0 4533 #define SEQ2PSR_M_DPBUSEN 1 << SEQ2PSR_V_DPBUSEN 4534 #define SEQ2PSR_V_GPIOPINEN 1 4535 #define SEQ2PSR_M_GPIOPINEN 1 << SEQ2PSR_V_GPIOPINEN 4536 #define SEQ2PSR_V_IDEPINEN 4 4537 #define SEQ2PSR_M_IDEPINEN 1 << SEQ2PSR_V_IDEPINEN 4538 #define SEQ2PSR_V_LOCALPINEN 5 4539 #define SEQ2PSR_M_LOCALPINEN 1 << SEQ2PSR_V_LOCALPINEN 4540 #define SEQ2PSR_V_ATREFADDEN 8 4541 #define SEQ2PSR_M_ATREFADDEN 1 << SEQ2PSR_V_ATREFADDEN 4542 #define SEQ2PSR_V_IDECMDEN 14 4543 #define SEQ2PSR_M_IDECMDEN 1 << SEQ2PSR_V_IDECMDEN 4544 #define SEQ2PSR_V_SQ2TYPESEL 15 4545 #define SEQ2PSR_M_SQ2TYPESEL 1 << SEQ2PSR_V_SQ2TYPESEL 4546 4547 /* 4548 ** 4549 ** Modular Clock Control Register (MCLKCR) - Index 0x303 4550 ** 4551 ** Loc Size Name Function 4552 ** ----- ---- ---- --------------------------------- 4553 ** <0> 1 ATMODCLKEN AT Modular Clock Enable 4554 ** <3> 1 SYNCTMREN Synchronous Timer Enable 4555 ** <4> 1 TMRCLKDIS Timer Clock Disable 4556 ** <5> 1 SYSCLKDIS ISA SYSCLK Disable 4557 ** 4558 ** <1:2><6:15> Reserved 4559 */ 4560 #define SEQ2_MCLKCR_REG 0x303 4561 #define SEQ2_MCLKCR_INIT 0x0000 4562 #define MCLKCR_V_ATMODCLKEN 0 4563 #define MCLKCR_M_ATMODCLKEN 1 << MCLKCR_V_ATMODCLKEN 4564 #define MCLKCR_V_SYNCTMREN 3 4565 #define MCLKCR_M_SYNCTMREN 1 << MCLKCR_V_SYNCTMREN 4566 #define MCLKCR_V_TMRCLKDIS 4 4567 #define MCLKCR_M_TMRCLKDIS 1 << MCLKCR_V_TMRCLKDIS 4568 #define MCLKCR_V_SYSCLKDIS 5 4569 #define MCLKCR_M_SYSCLKDIS 1 << MCLKCR_V_SYSCLKDIS 4570 4571 /* 4572 ** 4573 ** Optional GPIO Control Register (OGPIOCR) - Index 0x304 4574 ** 4575 ** Loc Size Name Function 4576 ** ----- ---- ---- --------------------------------- 4577 ** <0:7> 8 Reserved 4578 ** <8> 4 GPIODATA General Purpose I/O Data [4:7] 4579 ** <12> 4 GPIODIR General Purpose I/O Direction [4:7] 4580 ** 4581 */ 4582 #define SEQ2_OGPIOCR_REG 0x304 4583 #define SEQ2_OGPIOCR_INIT OGPIOCR_M_GPIODIR 4584 #define OOGPIOCR_V_GPIODATA 8 4585 #define OGPIOCR_M_GPIODATA 0xF << OGPIOCR_V_GPIODATA 4586 #define OGPIOCR_V_GPIODATA4 8 4587 #define OGPIOCR_M_GPIODATA4 1 << OGPIOCR_V_GPIODATA4 4588 #define OGPIOCR_V_GPIODATA5 9 4589 #define OGPIOCR_M_GPIODATA5 1 << OGPIOCR_V_GPIODATA5 4590 #define OGPIOCR_V_GPIODATA6 10 4591 #define OGPIOCR_M_GPIODATA6 1 << OGPIOCR_V_GPIODATA6 4592 #define OGPIOCR_V_GPIODATA7 11 4593 #define OGPIOCR_M_GPIODATA7 1 << OGPIOCR_V_GPIODATA7 4594 #define OGPIOCR_V_GPIODIR 12 4595 #define OGPIOCR_M_GPIODIR 0xF << OGPIOCR_V_GPIODIR 4596 #define OGPIOCR_V_GPIODIR4 12 4597 #define OGPIOCR_M_GPIODIR4 1 << OGPIOCR_V_GPIODIR4 4598 #define OGPIOCR_V_GPIODIR5 13 4599 #define OGPIOCR_M_GPIODIR5 1 << OGPIOCR_V_GPIODIR5 4600 #define OGPIOCR_V_GPIODIR6 14 4601 #define OGPIOCR_M_GPIODIR6 1 << OGPIOCR_V_GPIODIR6 4602 #define OGPIOCR_V_GPIODIR7 15 4603 #define OGPIOCR_M_GPIODIR7 1 << OGPIOCR_V_GPIODIR7 4604 4605 /* 4606 ** 4607 ** SEQUOIA-2 ID Register (SEQ2IDR) - Index 0x310 4608 ** 4609 ** Loc Size Name Function 4610 ** ----- ---- ---- --------------------------------- 4611 ** <0> 4 S2ID SEQUOIA-2 Revision ID Number 4612 ** 4613 ** <1:15> Reserved 4614 */ 4615 #define SEQ2_SEQ2IDR_REG 0x310 4616 #define SEQ2IDR_V_S2ID 0 4617 #define SEQ2IDR_M_S2ID 0xF << SEQ2IDR_V_S2ID 4618 4619 /* 4620 ** 4621 ** Miscellaneous DMA Control Register 1 (MDMACR1) - Index 0x330 4622 ** 4623 ** Loc Size Name Function 4624 ** ----- ---- ---- --------------------------------- 4625 ** <8> 1 ENCDDMA Encoded DMA Acknowledges 4626 ** 4627 ** <0:7><9:15> Reserved 4628 */ 4629 #define SEQ2_MDMACR1_REG 0x330 4630 #define SEQ2_MDMACR1_INIT 0x0000 4631 #define MDMACR1_V_ENCDDMA 8 4632 #define MDMACR1_M_ENCDDMA 1 << MDMACR1_V_ENCDDMA 4633 4634 /* 4635 ** 4636 ** Miscellaneous DMA Control Register 2 (MDMACR2) - Index 0x331 4637 ** 4638 ** Loc Size Name Function 4639 ** ----- ---- ---- --------------------------------- 4640 ** <0> 1 SEL3DMA Select 3 DMA 4641 ** <4> 1 DMA0CHSEL0 DMA Channel 0 Select 0 4642 ** <5> 1 DMA0CHSEL1 DMA Channel 0 Select 1 4643 ** <6> 1 DMA0CHSEL2 DMA Channel 0 Select 2 4644 ** <8> 1 DMA1CHSEL0 DMA Channel 1 Select 0 4645 ** <9> 1 DMA1CHSEL1 DMA Channel 1 Select 1 4646 ** <10> 1 DMA1CHSEL2 DMA Channel 1 Select 2 4647 ** <12> 1 DMA2CHSEL0 DMA Channel 2 Select 0 4648 ** <13> 1 DMA2CHSEL1 DMA Channel 2 Select 1 4649 ** <14> 1 DMA2CHSEL2 DMA Channel 2 Select 2 4650 ** 4651 ** <1:3><7><11><15> Reserved 4652 */ 4653 #define SEQ2_MDMACR2_REG 0x331 4654 #define SEQ2_MDMACR2_INIT 0x0000 4655 #define MDMACR2_V_SEL3DMA 0 4656 #define MDMACR2_M_SEL3DMA 1 << MDMACR2_V_SEL3DMA 4657 #define MDMACR2_V_DMA0CHSEL 4 4658 #define MDMACR2_M_DMA0CHSEL 0x7 << MDMACR2_V_DMA0CHSEL 4659 #define MDMACR2_V_DMA0CHSEL0 4 4660 #define MDMACR2_M_DMA0CHSEL0 1 << MDMACR2_V_DMA0CHSEL0 4661 #define MDMACR2_V_DMA0CHSEL1 5 4662 #define MDMACR2_M_DMA0CHSEL1 1 << MDMACR2_V_DMA0CHSEL1 4663 #define MDMACR2_V_DMA0CHSEL2 6 4664 #define MDMACR2_M_DMA0CHSEL2 1 << MDMACR2_V_DMA0CHSEL2 4665 #define MDMACR2_V_DMA1CHSEL 7 4666 #define MDMACR2_M_DMA1CHSEL 0x7 << MDMACR2_V_DMA1CHSEL 4667 #define MDMACR2_V_DMA1CHSEL0 7 4668 #define MDMACR2_M_DMA1CHSEL0 1 << MDMACR2_V_DMA1CHSEL0 4669 #define MDMACR2_V_DMA1CHSEL1 8 4670 #define MDMACR2_M_DMA1CHSEL1 1 << MDMACR2_V_DMA1CHSEL1 4671 #define MDMACR2_V_DMA1CHSEL2 9 4672 #define MDMACR2_M_DMA1CHSEL2 1 << MDMACR2_V_DMA1CHSEL2 4673 #define MDMACR2_V_DMA2CHSEL 12 4674 #define MDMACR2_M_DMA2CHSEL 0x7 << MDMACR2_V_DMA2CHSEL 4675 #define MDMACR2_V_DMA2CHSEL0 12 4676 #define MDMACR2_M_DMA2CHSEL0 1 << MDMACR2_V_DMA2CHSEL0 4677 #define MDMACR2_V_DMA2CHSEL1 13 4678 #define MDMACR2_M_DMA2CHSEL1 1 << MDMACR2_V_DMA2CHSEL1 4679 #define MDMACR2_V_DMA2CHSEL2 14 4680 #define MDMACR2_M_DMA2CHSEL2 1 << MDMACR2_V_DMA2CHSEL2 4681 4682 /* 4683 ** DMA Channel 0 Select 4684 */ 4685 #define DMA0CHSEL_0 0x000 4686 #define DMA0CHSEL_1 MDMACR2_M_DMA0CHSEL0 4687 #define DMA0CHSEL_2 MDMACR2_M_DMA0CHSEL1 4688 #define DMA0CHSEL_3 (MDMACR2_M_DMA0CHSEL0 | MDMACR2_M_DMA0CHSEL1) 4689 #define DMA0CHSEL_5 (MDMACR2_M_DMA0CHSEL0 | MDMACR2_M_DMA0CHSEL2) 4690 #define DMA0CHSEL_6 (MDMACR2_M_DMA0CHSEL1 | MDMACR2_M_DMA0CHSEL2) 4691 #define DMA0CHSEL_7 (MDMACR2_M_DMA0CHSEL0 | MDMACR2_M_DMA0CHSEL1 | MDMACR2_M_DMA0CHSEL1) 4692 4693 /* 4694 ** DMA Channel 1 Select 4695 */ 4696 #define DMA1CHSEL_0 0x000 4697 #define DMA1CHSEL_1 MDMACR2_M_DMA1CHSEL0 4698 #define DMA1CHSEL_2 MDMACR2_M_DMA1CHSEL1 4699 #define DMA1CHSEL_3 (MDMACR2_M_DMA1CHSEL0 | MDMACR2_M_DMA1CHSEL1) 4700 #define DMA1CHSEL_5 (MDMACR2_M_DMA1CHSEL0 | MDMACR2_M_DMA1CHSEL2) 4701 #define DMA1CHSEL_6 (MDMACR2_M_DMA1CHSEL1 | MDMACR2_M_DMA1CHSEL2) 4702 #define DMA1CHSEL_7 (MDMACR2_M_DMA1CHSEL0 | MDMACR2_M_DMA1CHSEL1 | MDMACR2_M_DMA1CHSEL1) 4703 4704 /* 4705 ** DMA Channel 2 Select 4706 */ 4707 #define DMA2CHSEL_0 0x000 4708 #define DMA2CHSEL_1 MDMACR2_M_DMA2CHSEL0 4709 #define DMA2CHSEL_2 MDMACR2_M_DMA2CHSEL1 4710 #define DMA2CHSEL_3 (MDMACR2_M_DMA2CHSEL0 | MDMACR2_M_DMA2CHSEL1) 4711 #define DMA2CHSEL_5 (MDMACR2_M_DMA2CHSEL0 | MDMACR2_M_DMA2CHSEL2) 4712 #define DMA2CHSEL_6 (MDMACR2_M_DMA2CHSEL1 | MDMACR2_M_DMA2CHSEL2) 4713 #define DMA2CHSEL_7 (MDMACR2_M_DMA2CHSEL0 | MDMACR2_M_DMA2CHSEL1 | MDMACR2_M_DMA2CHSEL1) 4714 4715 /* 4716 ** 4717 ** Burst Bus Interrupt Control Register (BBICR) - Index 0x340 4718 ** 4719 ** Loc Size Name Function 4720 ** ----- ---- ---- --------------------------------- 4721 ** <0> 1 ENBINT Enable Burst Bus Interrupt 4722 ** <1> 1 BINTLOCKCLR Burst Interrupt Interlock Clear 4723 ** <2> 1 BINTLOCKDIS Burst Interrupt Interlock Disable 4724 ** 4725 ** <3:15> Reserved 4726 */ 4727 #define SEQ2_BBICR_REG 0x340 4728 #define SEQ2_BBICR_INIT 0x0000 4729 #define BBICR_V_ENBINT 0 4730 #define BBICR_M_ENBINT 1 << BBICR_V_ENBINT 4731 #define BBICR_V_BINTLOCKCLR 1 4732 #define BBICR_M_BINTLOCKCLR 1 << BBICR_V_BINTLOCKCLR 4733 #define BBICR_V_BINTLOCKDIS 2 4734 #define BBICR_M_BINTLOCKDIS 1 << BBICR_V_BINTLOCKDIS 4735 4736 /* 4737 ** 4738 ** Primary Activities IRQ Mask Register (PAIMR) - Index 0x350 4739 ** 4740 ** Loc Size Name Function 4741 ** ----- ---- ---- --------------------------------- 4742 ** <1> 1 PAMSKIRQ1 IRQ1 Primary Activity Mask Enable 4743 ** <3> 1 PAMSKIRQ3 IRQ3 Primary Activity Mask Enable 4744 ** <4> 1 PAMSKIRQ4 IRQ4 Primary Activity Mask Enable 4745 ** <5> 1 PAMSKIRQ5 IRQ5 Primary Activity Mask Enable 4746 ** <6> 1 PAMSKIRQ6 IRQ6 Primary Activity Mask Enable 4747 ** <7> 1 PAMSKIRQ7 IRQ7 Primary Activity Mask Enable 4748 ** <8> 1 PAMSKIRQ8 IRQ8 Primary Activity Mask Enable 4749 ** <9> 1 PAMSKIRQ9 IRQ9 Primary Activity Mask Enable 4750 ** <10> 1 PAMSKIRQ10 IRQ10 Primary Activity Mask Enable 4751 ** <11> 1 PAMSKIRQ11 IRQ11 Primary Activity Mask Enable 4752 ** <12> 1 PAMSKIRQ12 IRQ12 Primary Activity Mask Enable 4753 ** <13> 1 PAMSKIRQ13 IRQ13 Primary Activity Mask Enable 4754 ** <14> 1 PAMSKIRQ14 IRQ14 Primary Activity Mask Enable 4755 ** <15> 1 PAMSKIRQ15 IRQ15 Primary Activity Mask Enable 4756 ** 4757 ** <0><2> Reserved 4758 */ 4759 #define SEQ2_PAIMR_REG 0x350 4760 #define SEQ2_PAIMR_INIT ( PAIMR_M_PAMSKIRQ1 | PAIMR_M_PAMSKIRQ3 | \ 4761 PAIMR_M_PAMSKIRQ4 | PAIMR_M_PAMSKIRQ5 | \ 4762 PAIMR_M_PAMSKIRQ6 | PAIMR_M_PAMSKIRQ7 | \ 4763 PAIMR_M_PAMSKIRQ8 | PAIMR_M_PAMSKIRQ9 | \ 4764 PAIMR_M_PAMSKIRQ10 | PAIMR_M_PAMSKIRQ11 | \ 4765 PAIMR_M_PAMSKIRQ12 | PAIMR_M_PAMSKIRQ13 | \ 4766 PAIMR_M_PAMSKIRQ14 ) 4767 #define PAIMR_V_PAMSKIRQ1 1 4768 #define PAIMR_M_PAMSKIRQ1 1 << PAIMR_V_PAMSKIRQ1 4769 #define PAIMR_V_PAMSKIRQ3 3 4770 #define PAIMR_M_PAMSKIRQ3 1 << PAIMR_V_PAMSKIRQ3 4771 #define PAIMR_V_PAMSKIRQ4 4 4772 #define PAIMR_M_PAMSKIRQ4 1 << PAIMR_V_PAMSKIRQ4 4773 #define PAIMR_V_PAMSKIRQ5 5 4774 #define PAIMR_M_PAMSKIRQ5 1 << PAIMR_V_PAMSKIRQ5 4775 #define PAIMR_V_PAMSKIRQ6 6 4776 #define PAIMR_M_PAMSKIRQ6 1 << PAIMR_V_PAMSKIRQ6 4777 #define PAIMR_V_PAMSKIRQ7 7 4778 #define PAIMR_M_PAMSKIRQ7 1 << PAIMR_V_PAMSKIRQ7 4779 #define PAIMR_V_PAMSKIRQ8 8 4780 #define PAIMR_M_PAMSKIRQ8 1 << PAIMR_V_PAMSKIRQ8 4781 #define PAIMR_V_PAMSKIRQ9 9 4782 #define PAIMR_M_PAMSKIRQ9 1 << PAIMR_V_PAMSKIRQ9 4783 #define PAIMR_V_PAMSKIRQ10 10 4784 #define PAIMR_M_PAMSKIRQ10 1 << PAIMR_V_PAMSKIRQ10 4785 #define PAIMR_V_PAMSKIRQ11 11 4786 #define PAIMR_M_PAMSKIRQ11 1 << PAIMR_V_PAMSKIRQ11 4787 #define PAIMR_V_PAMSKIRQ12 12 4788 #define PAIMR_M_PAMSKIRQ12 1 << PAIMR_V_PAMSKIRQ12 4789 #define PAIMR_V_PAMSKIRQ13 13 4790 #define PAIMR_M_PAMSKIRQ13 1 << PAIMR_V_PAMSKIRQ13 4791 #define PAIMR_V_PAMSKIRQ14 14 4792 #define PAIMR_M_PAMSKIRQ14 1 << PAIMR_V_PAMSKIRQ14 4793 #define PAIMR_V_PAMSKIRQ15 15 4794 #define PAIMR_M_PAMSKIRQ15 1 << PAIMR_V_PAMSKIRQ15 4795 4796 /* 4797 ** 4798 ** PMI Trigger Source IRQ Active Register (PTSIAR) - Index 0x351 4799 ** 4800 ** Loc Size Name Function 4801 ** ----- ---- ---- --------------------------------- 4802 ** <0> 1 PMIDETBACTV PMI Trigger Source DeTurbo Switch Active 4803 ** <1> 1 PMIIRQ1ACTV PMI Trigger Source IRQ1 Active 4804 ** <3> 1 PMIIRQ3ACTV PMI Trigger Source IRQ3 Active 4805 ** <4> 1 PMIIRQ4ACTV PMI Trigger Source IRQ4 Active 4806 ** <5> 1 PMIIRQ5ACTV PMI Trigger Source IRQ5 Active 4807 ** <6> 1 PMIIRQ6ACTV PMI Trigger Source IRQ6 Active 4808 ** <7> 1 PMIIRQ7ACTV PMI Trigger Source IRQ7 Active 4809 ** <8> 1 PMIIRQ8ACTV PMI Trigger Source IRQ8 Active 4810 ** <9> 1 PMIIRQ9ACTV PMI Trigger Source IRQ9 Active 4811 ** <10> 1 PMIIRQ10ACTV PMI Trigger Source IRQ10 Active 4812 ** <11> 1 PMIIRQ11ACTV PMI Trigger Source IRQ11 Active 4813 ** <12> 1 PMIIRQ12ACTV PMI Trigger Source IRQ12 Active 4814 ** <13> 1 PMIIRQ13ACTV PMI Trigger Source IRQ13 Active 4815 ** <14> 1 PMIIRQ14ACTV PMI Trigger Source IRQ14 Active 4816 ** <15> 1 PMIIRQ15ACTV PMI Trigger Source IRQ15 Active 4817 ** 4818 ** <2> Reserved 4819 */ 4820 #define SEQ2_PTSIAR_REG 0x351 4821 #define SEQ2_PTSIAR_INIT 0x0000 4822 #define PTSIAR_V_PMIDETBACTV 0 4823 #define PTSIAR_M_PMIDETBACTV 1 << PTSIAR_V_PMIDETBACTV 4824 #define PTSIAR_V_PMIIRQ1ACTV 1 4825 #define PTSIAR_M_PMIIRQ1ACTV 1 << PTSIAR_V_PMIIRQ1ACTV 4826 #define PTSIAR_V_PMIIRQ3ACTV 3 4827 #define PTSIAR_M_PMIIRQ3ACTV 1 << PTSIAR_V_PMIIRQ3ACTV 4828 #define PTSIAR_V_PMIIRQ4ACTV 4 4829 #define PTSIAR_M_PMIIRQ4ACTV 1 << PTSIAR_V_PMIIRQ4ACTV 4830 #define PTSIAR_V_PMIIRQ5ACTV 5 4831 #define PTSIAR_M_PMIIRQ5ACTV 1 << PTSIAR_V_PMIIRQ5ACTV 4832 #define PTSIAR_V_PMIIRQ6ACTV 6 4833 #define PTSIAR_M_PMIIRQ6ACTV 1 << PTSIAR_V_PMIIRQ6ACTV 4834 #define PTSIAR_V_PMIIRQ7ACTV 7 4835 #define PTSIAR_M_PMIIRQ7ACTV 1 << PTSIAR_V_PMIIRQ7ACTV 4836 #define PTSIAR_V_PMIIRQ8ACTV 8 4837 #define PTSIAR_M_PMIIRQ8ACTV 1 << PTSIAR_V_PMIIRQ8ACTV 4838 #define PTSIAR_V_PMIIRQ9ACTV 9 4839 #define PTSIAR_M_PMIIRQ9ACTV 1 << PTSIAR_V_PMIIRQ9ACTV 4840 #define PTSIAR_V_PMIIRQ10ACTV 10 4841 #define PTSIAR_M_PMIIRQ10ACTV 1 << PTSIAR_V_PMIIRQ10ACTV 4842 #define PTSIAR_V_PMIIRQ11ACTV 11 4843 #define PTSIAR_M_PMIIRQ11ACTV 1 << PTSIAR_V_PMIIRQ11ACTV 4844 #define PTSIAR_V_PMIIRQ12ACTV 12 4845 #define PTSIAR_M_PMIIRQ12ACTV 1 << PTSIAR_V_PMIIRQ12ACTV 4846 #define PTSIAR_V_PMIIRQ13ACTV 13 4847 #define PTSIAR_M_PMIIRQ13ACTV 1 << PTSIAR_V_PMIIRQ13ACTV 4848 #define PTSIAR_V_PMIIRQ14ACTV 14 4849 #define PTSIAR_M_PMIIRQ14ACTV 1 << PTSIAR_V_PMIIRQ14ACTV 4850 #define PTSIAR_V_PMIIRQ15ACTV 15 4851 #define PTSIAR_M_PMIIRQ15ACTV 1 << PTSIAR_V_PMIIRQ15ACTV 4852 4853 /* 4854 ** 4855 ** PMI Trigger Source IRQ Mask Register (PTSIMR) - Index 0x352 4856 ** 4857 ** Loc Size Name Function 4858 ** ----- ---- ---- --------------------------------- 4859 ** <0> 1 IMSKDETURBO DeTurbo Switch Triggering PMI Mask Enable 4860 ** <1> 1 IMSKIRQ1 IRQ1 Triggering PMI Mask Enable 4861 ** <3> 1 IMSKIRQ3 IRQ3 Triggering PMI Mask Enable 4862 ** <4> 1 IMSKIRQ4 IRQ4 Triggering PMI Mask Enable 4863 ** <5> 1 IMSKIRQ5 IRQ5 Triggering PMI Mask Enable 4864 ** <6> 1 IMSKIRQ6 IRQ6 Triggering PMI Mask Enable 4865 ** <7> 1 IMSKIRQ7 IRQ7 Triggering PMI Mask Enable 4866 ** <8> 1 IMSKIRQ8 IRQ8 Triggering PMI Mask Enable 4867 ** <9> 1 IMSKIRQ9 IRQ9 Triggering PMI Mask Enable 4868 ** <10> 1 IMSKIRQ10 IRQ10 Triggering PMI Mask Enable 4869 ** <11> 1 IMSKIRQ11 IRQ11 Triggering PMI Mask Enable 4870 ** <12> 1 IMSKIRQ12 IRQ12 Triggering PMI Mask Enable 4871 ** <13> 1 IMSKIRQ13 IRQ13 Triggering PMI Mask Enable 4872 ** <14> 1 IMSKIRQ14 IRQ14 Triggering PMI Mask Enable 4873 ** <15> 1 IMSKIRQ15 IRQ15 Triggering PMI Mask Enable 4874 ** 4875 ** <2> Reserved 4876 */ 4877 #define SEQ2_PTSIMR_REG 0x352 4878 #define SEQ2_PTSIMR_INIT ( PTSIMR_M_IMSKDETURBO | PTSIMR_M_IMSKIRQ1 | \ 4879 PTSIMR_M_IMSKIRQ3 | PTSIMR_M_IMSKIRQ4 | \ 4880 PTSIMR_M_IMSKIRQ5 | PTSIMR_M_IMSKIRQ6 | \ 4881 PTSIMR_M_IMSKIRQ7 | PTSIMR_M_IMSKIRQ8 | \ 4882 PTSIMR_M_IMSKIRQ9 | PTSIMR_M_IMSKIRQ10 | \ 4883 PTSIMR_M_IMSKIRQ11 | PTSIMR_M_IMSKIRQ12 | \ 4884 PTSIMR_M_IMSKIRQ13 | PTSIMR_M_IMSKIRQ14 | \ 4885 PTSIMR_M_IMSKIRQ15 ) 4886 #define PTSIMR_V_IMSKDETURBO 0 4887 #define PTSIMR_M_IMSKDETURBO 1 << PTSIMR_V_IMSKDETURBO 4888 #define PTSIMR_V_IMSKIRQ1 1 4889 #define PTSIMR_M_IMSKIRQ1 1 << PTSIMR_V_IMSKIRQ1 4890 #define PTSIMR_V_IMSKIRQ3 3 4891 #define PTSIMR_M_IMSKIRQ3 1 << PTSIMR_V_IMSKIRQ3 4892 #define PTSIMR_V_IMSKIRQ4 4 4893 #define PTSIMR_M_IMSKIRQ4 1 << PTSIMR_V_IMSKIRQ4 4894 #define PTSIMR_V_IMSKIRQ5 5 4895 #define PTSIMR_M_IMSKIRQ5 1 << PTSIMR_V_IMSKIRQ5 4896 #define PTSIMR_V_IMSKIRQ6 6 4897 #define PTSIMR_M_IMSKIRQ6 1 << PTSIMR_V_IMSKIRQ6 4898 #define PTSIMR_V_IMSKIRQ7 7 4899 #define PTSIMR_M_IMSKIRQ7 1 << PTSIMR_V_IMSKIRQ7 4900 #define PTSIMR_V_IMSKIRQ8 8 4901 #define PTSIMR_M_IMSKIRQ8 1 << PTSIMR_V_IMSKIRQ8 4902 #define PTSIMR_V_IMSKIRQ9 9 4903 #define PTSIMR_M_IMSKIRQ9 1 << PTSIMR_V_IMSKIRQ9 4904 #define PTSIMR_V_IMSKIRQ10 10 4905 #define PTSIMR_M_IMSKIRQ10 1 << PTSIMR_V_IMSKIRQ10 4906 #define PTSIMR_V_IMSKIRQ11 11 4907 #define PTSIMR_M_IMSKIRQ11 1 << PTSIMR_V_IMSKIRQ11 4908 #define PTSIMR_V_IMSKIRQ12 12 4909 #define PTSIMR_M_IMSKIRQ12 1 << PTSIMR_V_IMSKIRQ12 4910 #define PTSIMR_V_IMSKIRQ13 13 4911 #define PTSIMR_M_IMSKIRQ13 1 << PTSIMR_V_IMSKIRQ13 4912 #define PTSIMR_V_IMSKIRQ14 14 4913 #define PTSIMR_M_IMSKIRQ14 1 << PTSIMR_V_IMSKIRQ14 4914 #define PTSIMR_V_IMSKIRQ15 15 4915 #define PTSIMR_M_IMSKIRQ15 1 << PTSIMR_V_IMSKIRQ15 4916 4917 /* 4918 ** 4919 ** IRQ Secondary Activity Enable Register (ISAER) - Index 0x353 4920 ** 4921 ** Loc Size Name Function 4922 ** ----- ---- ---- --------------------------------- 4923 ** <0> 1 SAMSKIRQ Secondary Activity Mask for IRQs 4924 ** 4925 ** <1:15> Reserved 4926 */ 4927 #define SEQ2_ISAER_REG 0x353 4928 #define SEQ2_ISAER_INIT ISAER_M_SAMSKIRQ 4929 #define ISAER_V_SAMSKIRQ 0 4930 #define ISAER_M_SAMSKIRQ 1 << ISAER_V_SAMSKIRQ 4931 4932 /* 4933 ** Shadow Read Registers 4934 ** 4935 */ 4936 4937 #define SR_M_DATAMSK 0xF 4938 4939 /* 4940 ** 8254 Counter Registers 4941 */ 4942 #define SRR_54CTR0_REG1 0x500 4943 #define SRR_54CTR0_REG2 0x501 4944 #define SRR_54CTR0_REG3 0x506 4945 #define SRR_54CTR1_REG1 0x502 4946 #define SRR_54CTR1_REG2 0x503 4947 #define SRR_54CTR1_REG3 0x507 4948 #define SRR_54CTR2_REG1 0x504 4949 #define SRR_54CTR2_REG2 0x505 4950 #define SRR_54CTR2_REG3 0x508 4951 4952 /* 4953 ** 8237 DMA Controller Registers 4954 */ 4955 #define SRR_37CTRL0_REG1 0x510 4956 #define SRR_37CTRL0_REG2 0x511 4957 #define SRR_37CTRL0_REG3 0x512 4958 #define SRR_37CTRL1_REG4 0x513 4959 #define SRR_37CTRL1_REG5 0x514 4960 #define SRR_37CTRL1_REG6 0x515 4961 #define SRR_37CTRL2_REG7 0x516 4962 #define SRR_37CTRL2_REG8 0x517 4963 4964 /* 4965 ** 8259 Interrupt Controller Registers 4966 */ 4967 #define SRR_59CTRL0_REG1 0x520 4968 #define SRR_59CTRL0_REG2 0x521 4969 #define SRR_59CTRL0_REG3 0x522 4970 #define SRR_59CTRL1_REG4 0x523 4971 #define SRR_59CTRL1_REG5 0x524 4972 #define SRR_59CTRL1_REG6 0x525 4973 #define SRR_59CTRL2_REG7 0x526 4974 #define SRR_59CTRL2_REG8 0x527 4975 #define SRR_59CTRL2_REG9 0x528 4976 #define SRR_59CTRL2_REG10 0x529 4977 #define SRR_59CTRL2_REG11 0x52A 4978 #define SRR_59CTRL2_REG12 0x52B 4979 4980 /* 4981 ** IBM-AT Standard Registers 4982 ** 4983 */ 4984 4985 /* 4986 ** 4987 ** Register 1 (REG1) - Access Address 0x061 4988 ** 4989 ** Loc Size Name Function 4990 ** ----- ---- ---- --------------------------------- 4991 ** <0> 1 TMR2EN Timer 2 Enable 4992 ** <1> 1 SPKREN Speaker Enable 4993 ** <2> 1 PARDIS Parity Disable 4994 ** <3> 1 IOCHKDIS I/O Channel Check Disable 4995 ** <4> 1 REFRTGL Refresh Toggle 4996 ** <5> 1 TMR2OUT Timer 2 Output 4997 ** <6> 1 IOCKERR I/O Channel Check Error 4998 ** <7> 1 PARERR Parity Error 4999 ** 5000 */ 5001 #define ATSR_REG1_REG 0x061 5002 #define ATSR_REG1_INIT REG1_M_PARDIS 5003 #define REG1_V_TMR2EN 0 5004 #define REG1_M_TMR2EN 1 << REG1_V_TMR2EN 5005 #define REG1_V_SPKREN 1 5006 #define REG1_M_SPKREN 1 << REG1_V_SPKREN 5007 #define REG1_V_PARDIS 2 5008 #define REG1_M_PARDIS 1 << REG1_V_PARDIS 5009 #define REG1_V_IOCHKDIS 3 5010 #define REG1_M_IOCHKDIS 1 << REG1_V_IOCHKDIS 5011 #define REG1_V_REFRTGL 4 5012 #define REG1_M_REFRTGL 1 << REG1_V_REFRTGL 5013 #define REG1_V_TMR2OUT 5 5014 #define REG1_M_TMR2OUT 1 << REG1_V_TMR2OUT 5015 #define REG1_V_IOCKERR 6 5016 #define REG1_M_IOCKERR 1 << REG1_V_IOCKERR 5017 #define REG1_V_PARERR 7 5018 #define REG1_M_PARERR 1 << REG1_V_PARERR 5019 5020 /* 5021 ** 5022 ** Register 2 (REG2) - Access Address 0x070 5023 ** 5024 ** Loc Size Name Function 5025 ** ----- ---- ---- --------------------------------- 5026 ** <0> 6 RTCINDX Real Timer Clock Index 5027 ** <7> 1 NMIDIS NMI Mask Disable 5028 ** 5029 */ 5030 #define ATSR_REG2_REG 0x070 5031 #define ATSR_REG2_INIT REG2_M_NMIDIS 5032 #define REG2_V_RTCINDX 0 5033 #define REG2_M_RTCINDX 0x7F << REG2_V_RTCINDX 5034 #define REG2_V_NMIDIS 7 5035 #define REG2_M_NMIDIS 1 << REG2_V_NMIDIS 5036 5037 /* 5038 ** 5039 ** Register 3 (REG3) - Access Address 0x092 5040 ** 5041 ** Loc Size Name Function 5042 ** ----- ---- ---- --------------------------------- 5043 ** <0> 1 FSTRST Alternate Fast CPU Reset 5044 ** <1> 1 FGATEA20 Fast GATEA20 5045 ** <3> 1 SCLOCK1 Security Lock 1 5046 ** 5047 ** <2><4:7> Reserved 5048 */ 5049 #define ATSR_REG3_REG 0x092 5050 #define ATSR_REG3_INIT 0x0000 5051 #define REG3_V_FSTRST 0 5052 #define REG3_M_FSTRST 1 << REG3_V_FSTRST 5053 #define REG3_V_FGATEA20 1 5054 #define REG3_M_FGATEA20 1 << REG3_V_FGATEA20 5055 #define REG3_V_SCLOCK1 3 5056 #define REG3_M_SCLOCK1 1 << REG3_V_SCLOCK1 5057 5058 5059 5060 5061 5062 5063 #ifndef __LANGUAGE_ASM__ 5064 #ifndef _LOCORE 5065 5066 void sequoiaInit(void); 5067 void sequoiaWrite __P((int reg,u_int16_t value)); 5068 void sequoiaRead __P((int reg,u_int16_t * value_ptr)); 5069 5070 /* x console functions */ 5071 void consXTvOn __P((void)); 5072 void consXTvOff __P((void)); 5073 5074 5075 /* smart card reader functions */ 5076 int scrGetDetect __P((void)); 5077 void scrSetPower __P((int value)); 5078 void scrSetClock __P((int value)); 5079 void scrSetReset __P((int value)); 5080 void scrSetDataHighZ __P((void)); 5081 void scrSetData __P((int value)); 5082 int scrGetData __P((void)); 5083 5084 5085 /* just used to debug scr - remove when done - ejg */ 5086 void scrToggleTestPin __P((void)); 5087 void sequoiaOneAccess(void); 5088 5089 5090 /* biled functions */ 5091 void ledNetActive __P((void)); 5092 void ledNetBlock __P((void)); 5093 void ledNetUnblock __P((void)); 5094 void ledPanic __P((void)); 5095 5096 5097 /* function to get the hw rev */ 5098 int hwGetRev __P((void)); 5099 5100 /* debug led functions */ 5101 #define LED_DEBUG_STATE_0 0 5102 #define LED_DEBUG_STATE_1 1 5103 #define LED_DEBUG_STATE_2 2 5104 #define LED_DEBUG_STATE_3 3 5105 5106 #define LED_DEBUG_YELLOW_OFF 4 5107 #define LED_DEBUG_YELLOW_ON 5 5108 5109 #define LED_DEBUG_GREEN_OFF 6 5110 #define LED_DEBUG_GREEN_ON 7 5111 5112 5113 void ledSetDebug __P((int command)); 5114 5115 5116 5117 5118 5119 #endif /* _LOCORE */ 5120 #endif /* __LANGUAGE_ASM__ */ 5121 5122 #endif /* SEQUOIAH */ 5123 5124 5125 5126 5127 5128 5129 5130 5131