wdenk | 1f04521 | 2002-03-10 14:37:15 +0000 | [diff] [blame] | 1 | /* |
| 2 | * MPC8260 Internal Memory Map |
| 3 | * Copyright (c) 1999 Dan Malek (dmalek@jlc.net) |
| 4 | * |
wdenk | 3c74e32 | 2004-02-22 23:46:08 +0000 | [diff] [blame] | 5 | * The Internal Memory Map of the 8260. I don't know how generic |
wdenk | 1f04521 | 2002-03-10 14:37:15 +0000 | [diff] [blame] | 6 | * this will be, as I don't have any knowledge of the subsequent |
wdenk | 3c74e32 | 2004-02-22 23:46:08 +0000 | [diff] [blame] | 7 | * parts at this time. I copied this from the 8xx_immap.h. |
wdenk | 1f04521 | 2002-03-10 14:37:15 +0000 | [diff] [blame] | 8 | */ |
| 9 | #ifndef __IMMAP_82XX__ |
| 10 | #define __IMMAP_82XX__ |
| 11 | |
| 12 | /* System configuration registers. |
| 13 | */ |
wdenk | 3c74e32 | 2004-02-22 23:46:08 +0000 | [diff] [blame] | 14 | typedef struct sys_conf { |
wdenk | 1f04521 | 2002-03-10 14:37:15 +0000 | [diff] [blame] | 15 | uint sc_siumcr; |
| 16 | uint sc_sypcr; |
| 17 | char res1[6]; |
| 18 | ushort sc_swsr; |
| 19 | char res2[20]; |
| 20 | uint sc_bcr; |
| 21 | u_char sc_ppc_acr; |
| 22 | char res3[3]; |
| 23 | uint sc_ppc_alrh; |
| 24 | uint sc_ppc_alrl; |
| 25 | u_char sc_lcl_acr; |
| 26 | char res4[3]; |
| 27 | uint sc_lcl_alrh; |
| 28 | uint sc_lcl_alrl; |
| 29 | uint sc_tescr1; |
| 30 | uint sc_tescr2; |
| 31 | uint sc_ltescr1; |
| 32 | uint sc_ltescr2; |
| 33 | uint sc_pdtea; |
| 34 | u_char sc_pdtem; |
| 35 | char res5[3]; |
| 36 | uint sc_ldtea; |
| 37 | u_char sc_ldtem; |
| 38 | char res6[163]; |
| 39 | } sysconf8260_t; |
| 40 | |
| 41 | |
| 42 | /* Memory controller registers. |
| 43 | */ |
| 44 | typedef struct mem_ctlr { |
| 45 | uint memc_br0; |
| 46 | uint memc_or0; |
| 47 | uint memc_br1; |
| 48 | uint memc_or1; |
| 49 | uint memc_br2; |
| 50 | uint memc_or2; |
| 51 | uint memc_br3; |
| 52 | uint memc_or3; |
| 53 | uint memc_br4; |
| 54 | uint memc_or4; |
| 55 | uint memc_br5; |
| 56 | uint memc_or5; |
| 57 | uint memc_br6; |
| 58 | uint memc_or6; |
| 59 | uint memc_br7; |
| 60 | uint memc_or7; |
| 61 | uint memc_br8; |
| 62 | uint memc_or8; |
| 63 | uint memc_br9; |
| 64 | uint memc_or9; |
| 65 | uint memc_br10; |
| 66 | uint memc_or10; |
| 67 | uint memc_br11; |
| 68 | uint memc_or11; |
| 69 | char res1[8]; |
| 70 | uint memc_mar; |
| 71 | char res2[4]; |
| 72 | uint memc_mamr; |
| 73 | uint memc_mbmr; |
| 74 | uint memc_mcmr; |
| 75 | char res3[8]; |
| 76 | ushort memc_mptpr; |
| 77 | char res4[2]; |
| 78 | uint memc_mdr; |
| 79 | char res5[4]; |
| 80 | uint memc_psdmr; |
| 81 | uint memc_lsdmr; |
| 82 | u_char memc_purt; |
| 83 | char res6[3]; |
| 84 | u_char memc_psrt; |
| 85 | char res7[3]; |
| 86 | u_char memc_lurt; |
| 87 | char res8[3]; |
| 88 | u_char memc_lsrt; |
| 89 | char res9[3]; |
| 90 | uint memc_immr; |
wdenk | 3c74e32 | 2004-02-22 23:46:08 +0000 | [diff] [blame] | 91 | uint memc_pcibr0; |
| 92 | uint memc_pcibr1; |
| 93 | char res10[16]; |
| 94 | uint memc_pcimsk0; |
| 95 | uint memc_pcimsk1; |
| 96 | char res11[52]; |
wdenk | 1f04521 | 2002-03-10 14:37:15 +0000 | [diff] [blame] | 97 | } memctl8260_t; |
| 98 | |
| 99 | /* System Integration Timers. |
| 100 | */ |
| 101 | typedef struct sys_int_timers { |
| 102 | char res1[32]; |
| 103 | ushort sit_tmcntsc; |
| 104 | char res2[2]; |
| 105 | uint sit_tmcnt; |
| 106 | char res3[4]; |
| 107 | uint sit_tmcntal; |
| 108 | char res4[16]; |
| 109 | ushort sit_piscr; |
| 110 | char res5[2]; |
| 111 | uint sit_pitc; |
| 112 | uint sit_pitr; |
| 113 | char res6[94]; |
wdenk | 3c74e32 | 2004-02-22 23:46:08 +0000 | [diff] [blame] | 114 | char res7[390]; |
wdenk | 1f04521 | 2002-03-10 14:37:15 +0000 | [diff] [blame] | 115 | } sit8260_t; |
| 116 | |
wdenk | 3c74e32 | 2004-02-22 23:46:08 +0000 | [diff] [blame] | 117 | /* PCI |
| 118 | */ |
| 119 | typedef struct pci_config { |
| 120 | uint pci_omisr; |
| 121 | uint pci_ominr; |
| 122 | char res1[8]; |
| 123 | uint pci_ifqpr; |
| 124 | uint pci_ofqpr; |
| 125 | char res2[8]; |
| 126 | uint pci_imr0; |
| 127 | uint pci_imr1; |
| 128 | uint pci_omr0; |
| 129 | uint pci_omr1; |
| 130 | uint pci_odr; |
| 131 | char res3[4]; |
| 132 | uint pci_idr; |
| 133 | char res4[20]; |
| 134 | uint pci_imisr; |
| 135 | uint pci_imimr; |
| 136 | char res5[24]; |
| 137 | uint pci_ifhpr; |
wdenk | d4326ac | 2004-04-18 21:17:30 +0000 | [diff] [blame] | 138 | char res5_2[4]; |
wdenk | 3c74e32 | 2004-02-22 23:46:08 +0000 | [diff] [blame] | 139 | uint pci_iftpr; |
wdenk | d4326ac | 2004-04-18 21:17:30 +0000 | [diff] [blame] | 140 | char res6[4]; |
wdenk | 3c74e32 | 2004-02-22 23:46:08 +0000 | [diff] [blame] | 141 | uint pci_iphpr; |
wdenk | d4326ac | 2004-04-18 21:17:30 +0000 | [diff] [blame] | 142 | char res6_2[4]; |
wdenk | 3c74e32 | 2004-02-22 23:46:08 +0000 | [diff] [blame] | 143 | uint pci_iptpr; |
wdenk | d4326ac | 2004-04-18 21:17:30 +0000 | [diff] [blame] | 144 | char res7[4]; |
wdenk | 3c74e32 | 2004-02-22 23:46:08 +0000 | [diff] [blame] | 145 | uint pci_ofhpr; |
wdenk | d4326ac | 2004-04-18 21:17:30 +0000 | [diff] [blame] | 146 | char res7_2[4]; |
wdenk | 3c74e32 | 2004-02-22 23:46:08 +0000 | [diff] [blame] | 147 | uint pci_oftpr; |
wdenk | d4326ac | 2004-04-18 21:17:30 +0000 | [diff] [blame] | 148 | char res8[4]; |
wdenk | 3c74e32 | 2004-02-22 23:46:08 +0000 | [diff] [blame] | 149 | uint pci_ophpr; |
wdenk | 7abf0c5 | 2004-04-18 21:45:42 +0000 | [diff] [blame] | 150 | char res8_2[4]; |
wdenk | 3c74e32 | 2004-02-22 23:46:08 +0000 | [diff] [blame] | 151 | uint pci_optpr; |
wdenk | d4326ac | 2004-04-18 21:17:30 +0000 | [diff] [blame] | 152 | char res9[8]; |
wdenk | 3c74e32 | 2004-02-22 23:46:08 +0000 | [diff] [blame] | 153 | uint pci_mucr; |
| 154 | char res10[8]; |
| 155 | uint pci_qbar; |
| 156 | char res11[12]; |
| 157 | uint pci_dmamr0; |
| 158 | uint pci_dmasr0; |
| 159 | uint pci_dmacdar0; |
| 160 | char res12[4]; |
| 161 | uint pci_dmasar0; |
| 162 | char res13[4]; |
| 163 | uint pci_dmadar0; |
| 164 | char res14[4]; |
| 165 | uint pci_dmabcr0; |
| 166 | uint pci_dmandar0; |
| 167 | char res15[88]; |
| 168 | uint pci_dmamr1; |
| 169 | uint pci_dmasr1; |
| 170 | uint pci_dmacdar1; |
| 171 | char res16[4]; |
| 172 | uint pci_dmasar1; |
| 173 | char res17[4]; |
| 174 | uint pci_dmadar1; |
| 175 | char res18[4]; |
| 176 | uint pci_dmabcr1; |
| 177 | uint pci_dmandar1; |
| 178 | char res19[88]; |
| 179 | uint pci_dmamr2; |
| 180 | uint pci_dmasr2; |
| 181 | uint pci_dmacdar2; |
| 182 | char res20[4]; |
| 183 | uint pci_dmasar2; |
| 184 | char res21[4]; |
| 185 | uint pci_dmadar2; |
| 186 | char res22[4]; |
| 187 | uint pci_dmabcr2; |
| 188 | uint pci_dmandar2; |
| 189 | char res23[88]; |
| 190 | uint pci_dmamr3; |
| 191 | uint pci_dmasr3; |
| 192 | uint pci_dmacdar3; |
| 193 | char res24[4]; |
| 194 | uint pci_dmasar3; |
| 195 | char res25[4]; |
| 196 | uint pci_dmadar3; |
| 197 | char res26[4]; |
| 198 | uint pci_dmabcr3; |
| 199 | uint pci_dmandar3; |
| 200 | char res27[344]; |
| 201 | uint pci_potar0; |
| 202 | char res28[4]; |
| 203 | uint pci_pobar0; |
| 204 | char res29[4]; |
| 205 | uint pci_pocmr0; |
| 206 | char res30[4]; |
| 207 | uint pci_potar1; |
| 208 | char res31[4]; |
| 209 | uint pci_pobar1; |
| 210 | char res32[4]; |
| 211 | uint pci_pocmr1; |
| 212 | char res33[4]; |
| 213 | uint pci_potar2; |
| 214 | char res34[4]; |
| 215 | uint pci_pobar2; |
| 216 | char res35[4]; |
| 217 | uint pci_pocmr2; |
| 218 | char res36[52]; |
| 219 | uint pci_ptcr; |
| 220 | uint pci_gpcr; |
| 221 | uint pci_gcr; |
| 222 | uint pci_esr; |
| 223 | uint pci_emr; |
| 224 | uint pci_ecr; |
| 225 | uint pci_eacr; |
| 226 | char res37[4]; |
| 227 | uint pci_edcr; |
| 228 | char res38[4]; |
| 229 | uint pci_eccr; |
| 230 | char res39[44]; |
| 231 | uint pci_pitar1; |
| 232 | char res40[4]; |
| 233 | uint pci_pibar1; |
| 234 | char res41[4]; |
| 235 | uint pci_picmr1; |
| 236 | char res42[4]; |
| 237 | uint pci_pitar0; |
| 238 | char res43[4]; |
| 239 | uint pci_pibar0; |
| 240 | char res44[4]; |
| 241 | uint pci_picmr0; |
| 242 | char res45[4]; |
| 243 | uint pci_cfg_addr; |
| 244 | uint pci_cfg_data; |
| 245 | uint pci_int_ack; |
| 246 | char res46[756]; |
| 247 | }pci8260_t; |
wdenk | 1f04521 | 2002-03-10 14:37:15 +0000 | [diff] [blame] | 248 | #define PISCR_PIRQ_MASK ((ushort)0xff00) |
| 249 | #define PISCR_PS ((ushort)0x0080) |
| 250 | #define PISCR_PIE ((ushort)0x0004) |
| 251 | #define PISCR_PTF ((ushort)0x0002) |
| 252 | #define PISCR_PTE ((ushort)0x0001) |
| 253 | |
| 254 | /* Interrupt Controller. |
| 255 | */ |
| 256 | typedef struct interrupt_controller { |
| 257 | ushort ic_sicr; |
| 258 | char res1[2]; |
| 259 | uint ic_sivec; |
| 260 | uint ic_sipnrh; |
| 261 | uint ic_sipnrl; |
| 262 | uint ic_siprr; |
| 263 | uint ic_scprrh; |
| 264 | uint ic_scprrl; |
| 265 | uint ic_simrh; |
| 266 | uint ic_simrl; |
| 267 | uint ic_siexr; |
| 268 | char res2[88]; |
| 269 | } intctl8260_t; |
| 270 | |
| 271 | /* Clocks and Reset. |
| 272 | */ |
| 273 | typedef struct clk_and_reset { |
| 274 | uint car_sccr; |
| 275 | char res1[4]; |
| 276 | uint car_scmr; |
| 277 | char res2[4]; |
| 278 | uint car_rsr; |
| 279 | uint car_rmr; |
| 280 | char res[104]; |
| 281 | } car8260_t; |
| 282 | |
| 283 | /* Input/Output Port control/status registers. |
| 284 | * Names consistent with processor manual, although they are different |
| 285 | * from the original 8xx names....... |
| 286 | */ |
| 287 | typedef struct io_port { |
| 288 | uint iop_pdira; |
| 289 | uint iop_ppara; |
| 290 | uint iop_psora; |
| 291 | uint iop_podra; |
| 292 | uint iop_pdata; |
| 293 | char res1[12]; |
| 294 | uint iop_pdirb; |
| 295 | uint iop_pparb; |
| 296 | uint iop_psorb; |
| 297 | uint iop_podrb; |
| 298 | uint iop_pdatb; |
| 299 | char res2[12]; |
| 300 | uint iop_pdirc; |
| 301 | uint iop_pparc; |
| 302 | uint iop_psorc; |
| 303 | uint iop_podrc; |
| 304 | uint iop_pdatc; |
| 305 | char res3[12]; |
| 306 | uint iop_pdird; |
| 307 | uint iop_ppard; |
| 308 | uint iop_psord; |
| 309 | uint iop_podrd; |
| 310 | uint iop_pdatd; |
| 311 | char res4[12]; |
| 312 | } iop8260_t; |
| 313 | |
| 314 | /* Communication Processor Module Timers |
| 315 | */ |
| 316 | typedef struct cpm_timers { |
| 317 | u_char cpmt_tgcr1; |
| 318 | char res1[3]; |
| 319 | u_char cpmt_tgcr2; |
| 320 | char res2[11]; |
| 321 | ushort cpmt_tmr1; |
| 322 | ushort cpmt_tmr2; |
| 323 | ushort cpmt_trr1; |
| 324 | ushort cpmt_trr2; |
| 325 | ushort cpmt_tcr1; |
| 326 | ushort cpmt_tcr2; |
| 327 | ushort cpmt_tcn1; |
| 328 | ushort cpmt_tcn2; |
| 329 | ushort cpmt_tmr3; |
| 330 | ushort cpmt_tmr4; |
| 331 | ushort cpmt_trr3; |
| 332 | ushort cpmt_trr4; |
| 333 | ushort cpmt_tcr3; |
| 334 | ushort cpmt_tcr4; |
| 335 | ushort cpmt_tcn3; |
| 336 | ushort cpmt_tcn4; |
| 337 | ushort cpmt_ter1; |
| 338 | ushort cpmt_ter2; |
| 339 | ushort cpmt_ter3; |
| 340 | ushort cpmt_ter4; |
| 341 | char res3[584]; |
| 342 | } cpmtimer8260_t; |
| 343 | |
| 344 | /* DMA control/status registers. |
| 345 | */ |
| 346 | typedef struct sdma_csr { |
| 347 | char res0[24]; |
| 348 | u_char sdma_sdsr; |
| 349 | char res1[3]; |
| 350 | u_char sdma_sdmr; |
| 351 | char res2[3]; |
| 352 | u_char sdma_idsr1; |
| 353 | char res3[3]; |
| 354 | u_char sdma_idmr1; |
| 355 | char res4[3]; |
| 356 | u_char sdma_idsr2; |
| 357 | char res5[3]; |
| 358 | u_char sdma_idmr2; |
| 359 | char res6[3]; |
| 360 | u_char sdma_idsr3; |
| 361 | char res7[3]; |
| 362 | u_char sdma_idmr3; |
| 363 | char res8[3]; |
| 364 | u_char sdma_idsr4; |
| 365 | char res9[3]; |
| 366 | u_char sdma_idmr4; |
| 367 | char res10[707]; |
| 368 | } sdma8260_t; |
| 369 | |
| 370 | /* Fast controllers |
| 371 | */ |
| 372 | typedef struct fcc { |
| 373 | uint fcc_gfmr; |
| 374 | uint fcc_fpsmr; |
| 375 | ushort fcc_ftodr; |
| 376 | char res1[2]; |
| 377 | ushort fcc_fdsr; |
| 378 | char res2[2]; |
| 379 | ushort fcc_fcce; |
| 380 | char res3[2]; |
| 381 | ushort fcc_fccm; |
| 382 | char res4[2]; |
| 383 | u_char fcc_fccs; |
| 384 | char res5[3]; |
| 385 | u_char fcc_ftirr_phy[4]; |
| 386 | } fcc_t; |
| 387 | |
wdenk | aa5590b | 2004-06-09 12:42:26 +0000 | [diff] [blame] | 388 | /* Fast controllers continued |
| 389 | */ |
| 390 | typedef struct fcc_c { |
| 391 | uint fcc_firper; |
| 392 | uint fcc_firer; |
| 393 | uint fcc_firsr_hi; |
| 394 | uint fcc_firsr_lo; |
| 395 | u_char fcc_gfemr; |
| 396 | char res1[15]; |
| 397 | } fcc_c_t; |
| 398 | |
| 399 | /* TC Layer |
| 400 | */ |
| 401 | typedef struct tclayer { |
| 402 | ushort tc_tcmode; |
| 403 | ushort tc_cdsmr; |
| 404 | ushort tc_tcer; |
| 405 | ushort tc_rcc; |
| 406 | ushort tc_tcmr; |
| 407 | ushort tc_fcc; |
| 408 | ushort tc_ccc; |
| 409 | ushort tc_icc; |
| 410 | ushort tc_tcc; |
| 411 | ushort tc_ecc; |
| 412 | char res1[12]; |
| 413 | } tclayer_t; |
| 414 | |
wdenk | 1f04521 | 2002-03-10 14:37:15 +0000 | [diff] [blame] | 415 | /* I2C |
| 416 | */ |
| 417 | typedef struct i2c { |
| 418 | u_char i2c_i2mod; |
| 419 | char res1[3]; |
| 420 | u_char i2c_i2add; |
| 421 | char res2[3]; |
| 422 | u_char i2c_i2brg; |
| 423 | char res3[3]; |
| 424 | u_char i2c_i2com; |
| 425 | char res4[3]; |
| 426 | u_char i2c_i2cer; |
| 427 | char res5[3]; |
| 428 | u_char i2c_i2cmr; |
| 429 | char res6[331]; |
| 430 | } i2c8260_t; |
| 431 | |
| 432 | typedef struct scc { /* Serial communication channels */ |
| 433 | uint scc_gsmrl; |
| 434 | uint scc_gsmrh; |
| 435 | ushort scc_psmr; |
| 436 | char res1[2]; |
| 437 | ushort scc_todr; |
| 438 | ushort scc_dsr; |
| 439 | ushort scc_scce; |
| 440 | char res2[2]; |
| 441 | ushort scc_sccm; |
| 442 | char res3; |
| 443 | u_char scc_sccs; |
| 444 | char res4[8]; |
| 445 | } scc_t; |
| 446 | |
| 447 | typedef struct smc { /* Serial management channels */ |
| 448 | char res1[2]; |
| 449 | ushort smc_smcmr; |
| 450 | char res2[2]; |
| 451 | u_char smc_smce; |
| 452 | char res3[3]; |
| 453 | u_char smc_smcm; |
| 454 | char res4[5]; |
| 455 | } smc_t; |
| 456 | |
| 457 | /* Serial Peripheral Interface. |
| 458 | */ |
| 459 | typedef struct im_spi { |
| 460 | ushort spi_spmode; |
| 461 | char res1[4]; |
| 462 | u_char spi_spie; |
| 463 | char res2[3]; |
| 464 | u_char spi_spim; |
| 465 | char res3[2]; |
| 466 | u_char spi_spcom; |
| 467 | char res4[82]; |
| 468 | } im_spi_t; |
| 469 | |
| 470 | /* CPM Mux. |
| 471 | */ |
| 472 | typedef struct cpmux { |
| 473 | u_char cmx_si1cr; |
| 474 | char res1; |
| 475 | u_char cmx_si2cr; |
| 476 | char res2; |
| 477 | uint cmx_fcr; |
| 478 | uint cmx_scr; |
| 479 | u_char cmx_smr; |
| 480 | char res3; |
| 481 | ushort cmx_uar; |
| 482 | char res4[16]; |
| 483 | } cpmux_t; |
| 484 | |
| 485 | /* SIRAM control |
| 486 | */ |
| 487 | typedef struct siram { |
| 488 | ushort si_amr; |
| 489 | ushort si_bmr; |
| 490 | ushort si_cmr; |
| 491 | ushort si_dmr; |
| 492 | u_char si_gmr; |
| 493 | char res1; |
| 494 | u_char si_cmdr; |
| 495 | char res2; |
| 496 | u_char si_str; |
| 497 | char res3; |
| 498 | ushort si_rsr; |
| 499 | } siramctl_t; |
| 500 | |
| 501 | typedef struct mcc { |
| 502 | ushort mcc_mcce; |
| 503 | char res1[2]; |
| 504 | ushort mcc_mccm; |
| 505 | char res2[2]; |
| 506 | u_char mcc_mccf; |
| 507 | char res3[7]; |
| 508 | } mcc_t; |
| 509 | |
| 510 | typedef struct comm_proc { |
| 511 | uint cp_cpcr; |
| 512 | uint cp_rccr; |
| 513 | char res1[14]; |
| 514 | ushort cp_rter; |
| 515 | char res2[2]; |
| 516 | ushort cp_rtmr; |
| 517 | ushort cp_rtscr; |
| 518 | char res3[2]; |
| 519 | uint cp_rtsr; |
| 520 | char res4[12]; |
| 521 | } cpm8260_t; |
| 522 | |
| 523 | /* ...and the whole thing wrapped up.... |
| 524 | */ |
| 525 | typedef struct immap { |
| 526 | /* Some references are into the unique and known dpram spaces, |
| 527 | * others are from the generic base. |
| 528 | */ |
Scott Wood | a166fbc | 2013-05-17 20:01:54 -0500 | [diff] [blame] | 529 | union { |
| 530 | struct { |
| 531 | u_char im_dpram1[16 * 1024]; |
| 532 | char res1[16 * 1024]; |
| 533 | u_char im_dpram2[4 * 1024]; |
| 534 | char res2[8 * 1024]; |
| 535 | u_char im_dpram3[4 * 1024]; |
| 536 | char res3[16 * 1024]; |
| 537 | }; |
| 538 | u8 im_dprambase[64 * 1024]; |
| 539 | u16 im_dprambase16[32 * 1024]; |
| 540 | }; |
wdenk | 1f04521 | 2002-03-10 14:37:15 +0000 | [diff] [blame] | 541 | |
| 542 | sysconf8260_t im_siu_conf; /* SIU Configuration */ |
| 543 | memctl8260_t im_memctl; /* Memory Controller */ |
| 544 | sit8260_t im_sit; /* System Integration Timers */ |
wdenk | 3c74e32 | 2004-02-22 23:46:08 +0000 | [diff] [blame] | 545 | pci8260_t im_pci; /* PCI Configuration */ |
wdenk | 1f04521 | 2002-03-10 14:37:15 +0000 | [diff] [blame] | 546 | intctl8260_t im_intctl; /* Interrupt Controller */ |
| 547 | car8260_t im_clkrst; /* Clocks and reset */ |
| 548 | iop8260_t im_ioport; /* IO Port control/status */ |
| 549 | cpmtimer8260_t im_cpmtimer; /* CPM timers */ |
| 550 | sdma8260_t im_sdma; /* SDMA control/status */ |
| 551 | |
| 552 | fcc_t im_fcc[3]; /* Three FCCs */ |
| 553 | |
wdenk | aa5590b | 2004-06-09 12:42:26 +0000 | [diff] [blame] | 554 | char res4[32]; |
| 555 | fcc_c_t im_fcc_c[3]; /* Continued FCCs */ |
| 556 | char res4a[32]; |
| 557 | |
| 558 | tclayer_t im_tclayer[8]; /* Eight TCLayers */ |
| 559 | ushort tc_tcgsr; |
| 560 | ushort tc_tcger; |
wdenk | 1f04521 | 2002-03-10 14:37:15 +0000 | [diff] [blame] | 561 | |
| 562 | /* First set of baud rate generators. |
| 563 | */ |
wdenk | aa5590b | 2004-06-09 12:42:26 +0000 | [diff] [blame] | 564 | char res4b[236]; |
wdenk | 1f04521 | 2002-03-10 14:37:15 +0000 | [diff] [blame] | 565 | uint im_brgc5; |
| 566 | uint im_brgc6; |
| 567 | uint im_brgc7; |
| 568 | uint im_brgc8; |
| 569 | |
| 570 | char res5[608]; |
| 571 | |
| 572 | i2c8260_t im_i2c; /* I2C control/status */ |
| 573 | cpm8260_t im_cpm; /* Communication processor */ |
| 574 | |
| 575 | /* Second set of baud rate generators. |
| 576 | */ |
| 577 | uint im_brgc1; |
| 578 | uint im_brgc2; |
| 579 | uint im_brgc3; |
| 580 | uint im_brgc4; |
| 581 | |
| 582 | scc_t im_scc[4]; /* Four SCCs */ |
| 583 | smc_t im_smc[2]; /* Couple of SMCs */ |
| 584 | im_spi_t im_spi; /* A SPI */ |
| 585 | cpmux_t im_cpmux; /* CPM clock route mux */ |
| 586 | siramctl_t im_siramctl1; /* First SI RAM Control */ |
| 587 | mcc_t im_mcc1; /* First MCC */ |
| 588 | siramctl_t im_siramctl2; /* Second SI RAM Control */ |
| 589 | mcc_t im_mcc2; /* Second MCC */ |
| 590 | |
| 591 | char res6[1184]; |
| 592 | |
| 593 | ushort im_si1txram[256]; |
| 594 | char res7[512]; |
| 595 | ushort im_si1rxram[256]; |
| 596 | char res8[512]; |
| 597 | ushort im_si2txram[256]; |
| 598 | char res9[512]; |
| 599 | ushort im_si2rxram[256]; |
| 600 | char res10[512]; |
| 601 | char res11[4096]; |
| 602 | } immap_t; |
| 603 | |
| 604 | #endif /* __IMMAP_82XX__ */ |