// TMS470 register and bit definitions.
//
// Copyright (c) 2005 Rowley Associates Limited.
//
// This file may be distributed under the terms of the License Agreement
// provided with this software.
//
// THIS FILE IS PROVIDED AS IS WITH NO WARRANTY OF ANY KIND, INCLUDING THE
// WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.

#ifndef TMS470_h
#define TMS470_h

#define C2SIAISR (*(volatile unsigned *)0xFFF7C800)

#define C2SIAICR (*(volatile unsigned *)0xFFF7C804)

#define C2SIAGSR (*(volatile unsigned *)0xFFF7C808)

#define C2SIAGCR (*(volatile unsigned *)0xFFF7C80C)

#define C2SIATDB (*(volatile unsigned *)0xFFF7C810)

#define C2SIACCSR (*(volatile unsigned *)0xFFF7C814)

#define C2SIACTR (*(volatile unsigned *)0xFFF7C818)

#define C2SIACLK (*(volatile unsigned *)0xFFF7C81C)

#define C2SIATBC (*(volatile unsigned *)0xFFF7C820)

#define C2SIAPC1 (*(volatile unsigned *)0xFFF7C824)

#define C2SIAPC2 (*(volatile unsigned *)0xFFF7C828)

#define C2SIAPC3 (*(volatile unsigned *)0xFFF7C82C)

#define C2SIAEMU (*(volatile unsigned *)0xFFF7C830)

#define C2SIARDB (*(volatile unsigned *)0xFFF7C834)

#define C2SIACAL (*(volatile unsigned *)0xFFF7C838)

#define C2SIABRK (*(volatile unsigned *)0xFFF7C83C)

#define SPI2CTRL1 (*(volatile unsigned *)0xFFF7D400)

#define SPI2CTRL2 (*(volatile unsigned *)0xFFF7D404)

#define SPI2CTRL3 (*(volatile unsigned *)0xFFF7D408)

#define SPI2DAT0 (*(volatile unsigned *)0xFFF7D40C)

#define SPI2DAT1 (*(volatile unsigned *)0xFFF7D410)

#define SPI2BUF (*(volatile unsigned *)0xFFF7D414)

#define SPI2EMU (*(volatile unsigned *)0xFFF7D418)

#define SPI2PC1 (*(volatile unsigned *)0xFFF7D41C)

#define SPI2PC2 (*(volatile unsigned *)0xFFF7D420)

#define SPI2PC3 (*(volatile unsigned *)0xFFF7D424)

#define SPI2PC4 (*(volatile unsigned *)0xFFF7D428)

#define SPI2PC5 (*(volatile unsigned *)0xFFF7D42C)

#define SPI2PC6 (*(volatile unsigned *)0xFFF7D430)

#define CANME (*(volatile unsigned *)0xFFF7E000)

#define CANMD (*(volatile unsigned *)0xFFF7E004)

#define CANTRS (*(volatile unsigned *)0xFFF7E008)

#define CANTRR (*(volatile unsigned *)0xFFF7E00C)

#define CANTA (*(volatile unsigned *)0xFFF7E010)

#define CANAA (*(volatile unsigned *)0xFFF7E014)

#define CANRMP (*(volatile unsigned *)0xFFF7E018)

#define CANRML (*(volatile unsigned *)0xFFF7E01C)

#define CANRFP (*(volatile unsigned *)0xFFF7E020)

#define CANGAM (*(volatile unsigned *)0xFFF7E024)

#define CANMC (*(volatile unsigned *)0xFFF7E028)

#define CANBTC (*(volatile unsigned *)0xFFF7E02C)

#define CANES (*(volatile unsigned *)0xFFF7E030)

#define CANTEC (*(volatile unsigned *)0xFFF7E034)

#define CANREC (*(volatile unsigned *)0xFFF7E038)

#define CANGIF0 (*(volatile unsigned *)0xFFF7E03C)

#define CANGIM (*(volatile unsigned *)0xFFF7E040)

#define CANGIF1 (*(volatile unsigned *)0xFFF7E044)

#define CANMIM (*(volatile unsigned *)0xFFF7E048)

#define CANMIL (*(volatile unsigned *)0xFFF7E04C)

#define CANOPC (*(volatile unsigned *)0xFFF7E050)

#define CANTIOC (*(volatile unsigned *)0xFFF7E054)

#define CANRIOC (*(volatile unsigned *)0xFFF7E058)

#define CANLNT (*(volatile unsigned *)0xFFF7E05C)

#define CANTOC (*(volatile unsigned *)0xFFF7E060)

#define CANTOS (*(volatile unsigned *)0xFFF7E064)

#define GIOPWDN (*(volatile unsigned *)0xFFF7EC00)

#define GIOENA1 (*(volatile unsigned *)0xFFF7EC04)

#define GIOPOL1 (*(volatile unsigned *)0xFFF7EC08)

#define GIOFLG1 (*(volatile unsigned *)0xFFF7EC0C)

#define GIOPRY1 (*(volatile unsigned *)0xFFF7EC10)

#define GIOOFFA (*(volatile unsigned *)0xFFF7EC14)

#define GIOEMUA (*(volatile unsigned *)0xFFF7EC18)

#define GIOOFFB (*(volatile unsigned *)0xFFF7EC1C)

#define GIOEMUB (*(volatile unsigned *)0xFFF7EC20)

#define GIODIRA (*(volatile unsigned *)0xFFF7EC24)

#define GIODINA (*(volatile unsigned *)0xFFF7EC28)

#define GIODOUTA (*(volatile unsigned *)0xFFF7EC2C)

#define GIODSETA (*(volatile unsigned *)0xFFF7EC30)

#define GIODCLRA (*(volatile unsigned *)0xFFF7EC34)

#define GIODIRB (*(volatile unsigned *)0xFFF7EC38)

#define GIODINB (*(volatile unsigned *)0xFFF7EC3C)

#define GIODOUTB (*(volatile unsigned *)0xFFF7EC40)

#define GIODSETB (*(volatile unsigned *)0xFFF7EC44)

#define GIODCLRB (*(volatile unsigned *)0xFFF7EC48)

#define GIODIRC (*(volatile unsigned *)0xFFF7EC4C)

#define GIODINC (*(volatile unsigned *)0xFFF7EC50)

#define GIODOUTC (*(volatile unsigned *)0xFFF7EC54)

#define GIODSETC (*(volatile unsigned *)0xFFF7EC58)

#define GIODCLRC (*(volatile unsigned *)0xFFF7EC5C)

#define GIODIRD (*(volatile unsigned *)0xFFF7EC60)

#define GIODIND (*(volatile unsigned *)0xFFF7EC64)

#define GIODOUTD (*(volatile unsigned *)0xFFF7EC68)

#define GIODSETD (*(volatile unsigned *)0xFFF7EC6C)

#define GIODCLRD (*(volatile unsigned *)0xFFF7EC70)

#define GIODIRE (*(volatile unsigned *)0xFFF7EC74)

#define GIODINE (*(volatile unsigned *)0xFFF7EC78)

#define GIODOUTE (*(volatile unsigned *)0xFFF7EC7C)

#define GIODSETE (*(volatile unsigned *)0xFFF7EC80)

#define GIODCLRE (*(volatile unsigned *)0xFFF7EC84)

#define GIODIRF (*(volatile unsigned *)0xFFF7EC88)

#define GIODINF (*(volatile unsigned *)0xFFF7EC8C)

#define GIODOUTF (*(volatile unsigned *)0xFFF7EC90)

#define GIODSETF (*(volatile unsigned *)0xFFF7EC94)

#define GIODCLRF (*(volatile unsigned *)0xFFF7EC98)

#define GIODIRG (*(volatile unsigned *)0xFFF7EC9C)

#define GIODING (*(volatile unsigned *)0xFFF7ECA0)

#define GIODOUTG (*(volatile unsigned *)0xFFF7ECA4)

#define GIODSETG (*(volatile unsigned *)0xFFF7ECA8)

#define GIODCLRG (*(volatile unsigned *)0xFFF7ECAC)

#define GIODIRH (*(volatile unsigned *)0xFFF7ECB0)

#define GIODINH (*(volatile unsigned *)0xFFF7ECB4)

#define GIODOUTH (*(volatile unsigned *)0xFFF7ECB8)

#define GIODSETH (*(volatile unsigned *)0xFFF7ECBC)

#define GIODCLRH (*(volatile unsigned *)0xFFF7ECC0)

#define GIOENA2 (*(volatile unsigned *)0xFFF7ECC4)

#define GIOPOL2 (*(volatile unsigned *)0xFFF7ECC8)

#define GIOFLG2 (*(volatile unsigned *)0xFFF7ECCC)

#define GIOPRY2 (*(volatile unsigned *)0xFFF7ECE8)

#define ADCR1 (*(volatile unsigned *)0xFFF7F000)

#define ADCR2 (*(volatile unsigned *)0xFFF7F004)

#define ADSR (*(volatile unsigned *)0xFFF7F008)

#define ADEISR (*(volatile unsigned *)0xFFF7F00C)

#define ADISR1 (*(volatile unsigned *)0xFFF7F010)

#define ADISR2 (*(volatile unsigned *)0xFFF7F014)

#define ADCALR (*(volatile unsigned *)0xFFF7F018)

#define ADDR15 (*(volatile unsigned *)0xFFF7F01C)

#define ADEMDR15 (*(volatile unsigned *)0xFFF7F020)

#define ADDR14 (*(volatile unsigned *)0xFFF7F024)

#define ADEMDR14 (*(volatile unsigned *)0xFFF7F028)

#define ADDR13 (*(volatile unsigned *)0xFFF7F02C)

#define ADEMDR13 (*(volatile unsigned *)0xFFF7F030)

#define ADDR12 (*(volatile unsigned *)0xFFF7F034)

#define ADEMDR12 (*(volatile unsigned *)0xFFF7F038)

#define ADDR11 (*(volatile unsigned *)0xFFF7F03C)

#define ADEMDR11 (*(volatile unsigned *)0xFFF7F040)

#define ADDR10 (*(volatile unsigned *)0xFFF7F044)

#define ADEMDR10 (*(volatile unsigned *)0xFFF7F048)

#define ADDR9 (*(volatile unsigned *)0xFFF7F04C)

#define ADEMDR9 (*(volatile unsigned *)0xFFF7F050)

#define ADDR8 (*(volatile unsigned *)0xFFF7F054)

#define ADEMDR8 (*(volatile unsigned *)0xFFF7F058)

#define ADDR7 (*(volatile unsigned *)0xFFF7F05C)

#define ADEMDR7 (*(volatile unsigned *)0xFFF7F060)

#define ADDR6 (*(volatile unsigned *)0xFFF7F064)

#define ADEMDR6 (*(volatile unsigned *)0xFFF7F068)

#define ADDR5 (*(volatile unsigned *)0xFFF7F06C)

#define ADEMDR5 (*(volatile unsigned *)0xFFF7F070)

#define ADDR4 (*(volatile unsigned *)0xFFF7F074)

#define ADEMDR4 (*(volatile unsigned *)0xFFF7F078)

#define ADDR3 (*(volatile unsigned *)0xFFF7F07C)

#define ADEMDR3 (*(volatile unsigned *)0xFFF7F080)

#define ADDR2 (*(volatile unsigned *)0xFFF7F084)

#define ADEMDR2 (*(volatile unsigned *)0xFFF7F088)

#define ADDR1 (*(volatile unsigned *)0xFFF7F08C)

#define ADEMDR1 (*(volatile unsigned *)0xFFF7F090)

#define ADDR0 (*(volatile unsigned *)0xFFF7F094)

#define ADEMDR0 (*(volatile unsigned *)0xFFF7F098)

#define ADINR (*(volatile unsigned *)0xFFF7F09C)

#define ADCPCR (*(volatile unsigned *)0xFFF7F0A0)

#define ADSAMPEV (*(volatile unsigned *)0xFFF7F0B0)

#define ADSAMP1 (*(volatile unsigned *)0xFFF7F0B4)

#define ADSAMP2 (*(volatile unsigned *)0xFFF7F0B8)

#define ADBCR1 (*(volatile unsigned *)0xFFF7F0BC)

#define ADBCR2 (*(volatile unsigned *)0xFFF7F0C0)

#define ADBCR3 (*(volatile unsigned *)0xFFF7F0C4)

#define ADBST (*(volatile unsigned *)0xFFF7F0C8)

#define ADTHREV (*(volatile unsigned *)0xFFF7F0CC)

#define ADTHRG1 (*(volatile unsigned *)0xFFF7F0D0)

#define ADTHRG2 (*(volatile unsigned *)0xFFF7F0D4)

#define ADEVTSRC (*(volatile unsigned *)0xFFF7F0D8)

#define SCI1CCR (*(volatile unsigned *)0xFFF7F400)

#define SCI1CTL1 (*(volatile unsigned *)0xFFF7F404)

#define SCI1CTL2 (*(volatile unsigned *)0xFFF7F408)

#define SCI1CTL3 (*(volatile unsigned *)0xFFF7F40C)

#define SCI1RXST (*(volatile unsigned *)0xFFF7F410)

#define SCI1HBAUD (*(volatile unsigned *)0xFFF7F414)

#define SCI1MBAUD (*(volatile unsigned *)0xFFF7F418)

#define SCI1LBAUD (*(volatile unsigned *)0xFFF7F41C)

#define SCI1RXEMU (*(volatile unsigned *)0xFFF7F420)

#define SCI1RXBUF (*(volatile unsigned *)0xFFF7F424)

#define SCI1TXBUF (*(volatile unsigned *)0xFFF7F428)

#define SCI1PC1 (*(volatile unsigned *)0xFFF7F42C)

#define SCI1PC2 (*(volatile unsigned *)0xFFF7F430)

#define SCI1PC3 (*(volatile unsigned *)0xFFF7F434)

#define SCI2CCR (*(volatile unsigned *)0xFFF7F500)

#define SCI2CTL1 (*(volatile unsigned *)0xFFF7F504)

#define SCI2CTL2 (*(volatile unsigned *)0xFFF7F508)

#define SCI2CTL3 (*(volatile unsigned *)0xFFF7F50C)

#define SCI2RXST (*(volatile unsigned *)0xFFF7F510)

#define SCI2HBAUD (*(volatile unsigned *)0xFFF7F514)

#define SCI2MBAUD (*(volatile unsigned *)0xFFF7F518)

#define SCI2LBAUD (*(volatile unsigned *)0xFFF7F51C)

#define SCI2RXEMU (*(volatile unsigned *)0xFFF7F520)

#define SCI2RXBUF (*(volatile unsigned *)0xFFF7F524)

#define SCI2TXBUF (*(volatile unsigned *)0xFFF7F528)

#define SCI2PC1 (*(volatile unsigned *)0xFFF7F52C)

#define SCI2PC2 (*(volatile unsigned *)0xFFF7F530)

#define SCI2PC3 (*(volatile unsigned *)0xFFF7F534)

#define SPI1CTRL1 (*(volatile unsigned *)0xFFF7D800)

#define SPI1CTRL2 (*(volatile unsigned *)0xFFF7D804)

#define SPI1CTRL3 (*(volatile unsigned *)0xFFF7D808)

#define SPI1DAT0 (*(volatile unsigned *)0xFFF7D80C)

#define SPI1DAT1 (*(volatile unsigned *)0xFFF7D810)

#define SPI1BUF (*(volatile unsigned *)0xFFF7D814)

#define SPI1EMU (*(volatile unsigned *)0xFFF7D818)

#define SPI1PC1 (*(volatile unsigned *)0xFFF7D81C)

#define SPI1PC2 (*(volatile unsigned *)0xFFF7D820)

#define SPI1PC3 (*(volatile unsigned *)0xFFF7D824)

#define SPI1PC4 (*(volatile unsigned *)0xFFF7D828)

#define SPI1PC5 (*(volatile unsigned *)0xFFF7D82C)

#define SPI1PC6 (*(volatile unsigned *)0xFFF7D830)

#define HETGCR (*(volatile unsigned *)0xFFF7FC00)

#define HETPFR (*(volatile unsigned *)0xFFF7FC04)

#define HETADDR (*(volatile unsigned *)0xFFF7FC08)

#define HETOFF1 (*(volatile unsigned *)0xFFF7FC0C)

#define HETOFF2 (*(volatile unsigned *)0xFFF7FC10)

#define HETEXC1 (*(volatile unsigned *)0xFFF7FC14)

#define HETEXC2 (*(volatile unsigned *)0xFFF7FC18)

#define HETPRY (*(volatile unsigned *)0xFFF7FC1C)

#define HETFLG (*(volatile unsigned *)0xFFF7FC20)

#define HETHRSH (*(volatile unsigned *)0xFFF7FC2C)

#define HETXOR (*(volatile unsigned *)0xFFF7FC30)

#define HETDIR (*(volatile unsigned *)0xFFF7FC34)

#define HETDIN (*(volatile unsigned *)0xFFF7FC38)

#define HETDOUT (*(volatile unsigned *)0xFFF7FC3C)

#define HETDSET (*(volatile unsigned *)0xFFF7FC40)

#define HETDCLR (*(volatile unsigned *)0xFFF7FC44)

#define MPUAHR0 (*(volatile unsigned *)0xFFE84000)

#define MPUALR0 (*(volatile unsigned *)0xFFE84004)

#define MPUAHR1 (*(volatile unsigned *)0xFFE84008)

#define MPUALR1 (*(volatile unsigned *)0xFFE8400C)

#define MPUAHR2 (*(volatile unsigned *)0xFFE84010)

#define MPUALR2 (*(volatile unsigned *)0xFFE84014)

#define MPUAHR3 (*(volatile unsigned *)0xFFE84018)

#define MPUALR3 (*(volatile unsigned *)0xFFE8401C)

#define MPUCTRL (*(volatile unsigned *)0xFFE84020)

#define FMBAC1 (*(volatile unsigned *)0xFFE88000)

#define FMBAC2 (*(volatile unsigned *)0xFFE88004)

#define FMBSEA (*(volatile unsigned *)0xFFE88008)

#define FMBSEB (*(volatile unsigned *)0xFFE8800C)

#define FMBRDY (*(volatile unsigned *)0xFFE88010)

#define FMREGOPT (*(volatile unsigned *)0xFFE89C00)

#define FMBBUSY (*(volatile unsigned *)0xFFE89C08)

#define FMPKEY (*(volatile unsigned *)0xFFE89C0C)

#define FMPRDY (*(volatile unsigned *)0xFFE8A814)

#define FMMAC1 (*(volatile unsigned *)0xFFE8BC00)

#define FMMAC2 (*(volatile unsigned *)0xFFE8BC04)

#define FMPAGP (*(volatile unsigned *)0xFFE8BC08)

#define FMMSTAT (*(volatile unsigned *)0xFFE8BC0C)

#define SMCR0 (*(volatile unsigned *)0xFFFFFD00)

#define SMCR1 (*(volatile unsigned *)0xFFFFFD04)

#define SMCR2 (*(volatile unsigned *)0xFFFFFD08)

#define SMCR3 (*(volatile unsigned *)0xFFFFFD0C)

#define SMCR4 (*(volatile unsigned *)0xFFFFFD10)

#define SMCR5 (*(volatile unsigned *)0xFFFFFD14)

#define SMCR6 (*(volatile unsigned *)0xFFFFFD18)

#define SMCR7 (*(volatile unsigned *)0xFFFFFD1C)

#define SMCR8 (*(volatile unsigned *)0xFFFFFD20)

#define SMCR9 (*(volatile unsigned *)0xFFFFFD24)

#define WCR0 (*(volatile unsigned *)0xFFFFFD2C)

#define PLR (*(volatile unsigned *)0xFFFFFD34)

#define PPROT (*(volatile unsigned *)0xFFFFFD38)

#define MFBAHR0 (*(volatile unsigned *)0xFFFFFE00)

#define MFBALR0 (*(volatile unsigned *)0xFFFFFE04)

#define MFBAHR1 (*(volatile unsigned *)0xFFFFFE08)

#define MFBALR1 (*(volatile unsigned *)0xFFFFFE0C)

#define MFBAHR2 (*(volatile unsigned *)0xFFFFFE10)

#define MFBALR2 (*(volatile unsigned *)0xFFFFFE14)

#define MFBAHR3 (*(volatile unsigned *)0xFFFFFE18)

#define MFBALR3 (*(volatile unsigned *)0xFFFFFE1C)

#define MFBAHR4 (*(volatile unsigned *)0xFFFFFE20)

#define MFBALR4 (*(volatile unsigned *)0xFFFFFE24)

#define MFBAHR5 (*(volatile unsigned *)0xFFFFFE28)

#define MFBALR5 (*(volatile unsigned *)0xFFFFFE2C)

#define MCBAHR0 (*(volatile unsigned *)0xFFFFFE30)

#define MCBALR0 (*(volatile unsigned *)0xFFFFFE34)

#define MCBAHR1 (*(volatile unsigned *)0xFFFFFE38)

#define MCBALR1 (*(volatile unsigned *)0xFFFFFE3C)

#define MCBAHR2 (*(volatile unsigned *)0xFFFFFE40)

#define MCBALR2 (*(volatile unsigned *)0xFFFFFE44)

#define MCBAHR3 (*(volatile unsigned *)0xFFFFFE48)

#define MCBALR3 (*(volatile unsigned *)0xFFFFFE4C)

#define MCBAHR4 (*(volatile unsigned *)0xFFFFFE50)

#define MCBALR4 (*(volatile unsigned *)0xFFFFFE54)

#define MCBAHR5 (*(volatile unsigned *)0xFFFFFE58)

#define MCBALR5 (*(volatile unsigned *)0xFFFFFE5C)

#define IRQIVEC (*(volatile unsigned *)0xFFFFFF20)

#define FIQIVEC (*(volatile unsigned *)0xFFFFFF24)

#define CIMIVEC (*(volatile unsigned *)0xFFFFFF28)

#define FIRQPR (*(volatile unsigned *)0xFFFFFF2C)

#define INTREQ (*(volatile unsigned *)0xFFFFFF30)

#define REQMASK (*(volatile unsigned *)0xFFFFFF34)

#define SSIF (*(volatile unsigned *)0xFFFFFFF8)

#define SSIR (*(volatile unsigned *)0xFFFFFFFC)

#define RTICNTR (*(volatile unsigned *)0xFFFFFF00)

#define RTIPCTL (*(volatile unsigned *)0xFFFFFF04)

#define RTICNTL (*(volatile unsigned *)0xFFFFFF08)

#define WKEY (*(volatile unsigned *)0xFFFFFF0C)

#define RTICMP1 (*(volatile unsigned *)0xFFFFFF10)

#define RTICMP2 (*(volatile unsigned *)0xFFFFFF14)

#define RTICINT (*(volatile unsigned *)0xFFFFFF18)

#define RTICNTEN (*(volatile unsigned *)0xFFFFFF1C)

#define PCR (*(volatile unsigned *)0xFFFFFD30)

#define CLKCNTL (*(volatile unsigned *)0xFFFFFFD0)

#define GLBCTRL (*(volatile unsigned *)0xFFFFFFDC)

#define SYSECR (*(volatile unsigned *)0xFFFFFFE0)

#define SYSESR (*(volatile unsigned *)0xFFFFFFE4)

#define ABRTESR (*(volatile unsigned *)0xFFFFFFE8)

#define GLBSTAT (*(volatile unsigned *)0xFFFFFFEC)

#define CPUPSA (*(volatile unsigned *)0xFFFFFF40)

#define PSADISABLE (*(volatile unsigned *)0xFFFFFF50)

#define DEV (*(volatile unsigned *)0xFFFFFFF0)


#endif
