1    /* --COPYRIGHT--,EPL
     2     *  Copyright (c) 2008 Texas Instruments and others.
     3     *  All rights reserved. This program and the accompanying materials
     4     *  are made available under the terms of the Eclipse Public License v1.0
     5     *  which accompanies this distribution, and is available at
     6     *  http://www.eclipse.org/legal/epl-v10.html
     7     * 
     8     *  Contributors:
     9     *      Texas Instruments - initial implementation
    10     * 
    11     * --/COPYRIGHT--*/
    12    
    13    /*
    14     *  ======== IMSP430F55xx.xdc ========
    15     *  Common definitions for MSP430F55xx devices
    16     *
    17     *  This device can load code for different MSP430 ISAs - `MSP430` and
    18     *  `MSP430X`. The parameter `{@link #isa}` is set to a JavaScript regular
    19     *  expression that covers different MSP430 ISAs.
    20     *
    21     *! Revision History
    22     *! ================
    23     *! 01-Mar-2010 sg      Created.
    24     */
    25    
    26    metaonly interface IMSP430F55xx inherits IMSP430
    27    {
    28    
    29    instance:
    30    
    31        override config string   cpuCore        = "MSP430X";
    32        override config string   isa            = "430.*";
    33    
    34        config ti.catalog.msp430.peripherals.timer.Timer_A5.Instance TA0;
    35        config ti.catalog.msp430.peripherals.timer.Timer_A3.Instance TA1;
    36        config ti.catalog.msp430.peripherals.timer.Timer_A3.Instance TA2;
    37        config ti.catalog.msp430.peripherals.timer.Timer_B7.Instance TB0;
    38    
    39        /*!
    40         *  ======== commonMap ========
    41         *  Memory map elements shared by all MSP430F55xx devices
    42         */
    43        config xdc.platform.IPlatform.Memory commonMap[string] = [
    44    
    45            ["PERIPHERALS", {
    46                comment:    "Memory mapped peripherals",
    47                name:       "PERIPHERALS",
    48                base:       0x0,
    49                len:        0x1000,
    50                space:      "io",
    51                access:     "RW"
    52            }],
    53    
    54            ["BSL", {
    55                comment:    "Bootstrap loader (flash)",
    56                name:       "BSL",
    57                base:       0x1000,
    58                len:        0x800,
    59                space:      "code",
    60                access:     "RW"
    61            }],
    62    
    63            ["INFOD", {
    64                comment:    "Information Memory D (flash)",
    65                name:       "INFOD",
    66                base:       0x1800,
    67                len:        0x80,
    68                space:      "data",
    69                access:     "RW"
    70            }],
    71    
    72            ["INFOC", {
    73                comment:    "Information Memory C (flash)",
    74                name:       "INFOC",
    75                base:       0x1880,
    76                len:        0x80,
    77                space:      "data",
    78                access:     "RW"
    79            }],
    80    
    81            ["INFOB", {
    82                comment:    "Information Memory B (flash)",
    83                name:       "INFOB",
    84                base:       0x1900,
    85                len:        0x80,
    86                space:      "data",
    87                access:     "RW"
    88            }],
    89    
    90            ["INFOA", {
    91                comment:    "Information Memory A (flash)",
    92                name:       "INFOA",
    93                base:       0x1980,
    94                len:        0x80,
    95                space:      "data",
    96                access:     "RW"
    97            }],
    98    
    99            ["INT00", {
   100                comment: "Reserved Vector",
   101                name: "INT00",
   102                base: 0xFF80,
   103                len: 0x2,
   104                space: "data"
   105            }],
   106    
   107            ["INT01", {
   108                comment: "Reserved Vector",
   109                name: "INT01",
   110                base: 0xFF82,
   111                len: 0x2,
   112                space: "data"
   113            }],
   114    
   115            ["INT02", {
   116                comment: "Reserved Vector",
   117                name: "INT02",
   118                base: 0xFF84,
   119                len: 0x2,
   120                space: "data"
   121            }],
   122    
   123            ["INT03", {
   124                comment: "Reserved Vector",
   125                name: "INT03",
   126                base: 0xFF86,
   127                len: 0x2,
   128                space: "data"
   129            }],
   130    
   131            ["INT04", {
   132                comment: "Reserved Vector",
   133                name: "INT04",
   134                base: 0xFF88,
   135                len: 0x2,
   136                space: "data"
   137            }],
   138    
   139            ["INT05", {
   140                comment: "Reserved Vector",
   141                name: "INT05",
   142                base: 0xFF8A,
   143                len: 0x2,
   144                space: "data"
   145            }],
   146    
   147            ["INT06", {
   148                comment: "Reserved Vector",
   149                name: "INT06",
   150                base: 0xFF8C,
   151                len: 0x2,
   152                space: "data"
   153            }],
   154    
   155            ["INT07", {
   156                comment: "Reserved Vector",
   157                name: "INT07",
   158                base: 0xFF8E,
   159                len: 0x2,
   160                space: "data"
   161            }],
   162    
   163            ["INT08", {
   164                comment: "Reserved Vector",
   165                name: "INT08",
   166                base: 0xFF90,
   167                len: 0x2,
   168                space: "data"
   169            }],
   170    
   171            ["INT09", {
   172                comment: "Reserved Vector",
   173                name: "INT09",
   174                base: 0xFF92,
   175                len: 0x2,
   176                space: "data"
   177            }],
   178    
   179            ["INT10", {
   180                comment: "Reserved Vector",
   181                name: "INT10",
   182                base: 0xFF94,
   183                len: 0x2,
   184                space: "data"
   185            }],
   186    
   187            ["INT11", {
   188                comment: "Reserved Vector",
   189                name: "INT11",
   190                base: 0xFF96,
   191                len: 0x2,
   192                space: "data"
   193            }],
   194    
   195            ["INT12", {
   196                comment: "Reserved Vector",
   197                name: "INT12",
   198                base: 0xFF98,
   199                len: 0x2,
   200                space: "data"
   201            }],
   202    
   203            ["INT13", {
   204                comment: "Reserved Vector",
   205                name: "INT13",
   206                base: 0xFF9A,
   207                len: 0x2,
   208                space: "data"
   209            }],
   210    
   211            ["INT14", {
   212                comment: "Reserved Vector",
   213                name: "INT14",
   214                base: 0xFF9C,
   215                len: 0x2,
   216                space: "data"
   217            }],
   218    
   219            ["INT15", {
   220                comment: "Reserved Vector",
   221                name: "INT15",
   222                base: 0xFF9E,
   223                len: 0x2,
   224                space: "data"
   225            }],
   226    
   227            ["INT16", {
   228                comment: "Reserved Vector",
   229                name: "INT16",
   230                base: 0xFFA0,
   231                len: 0x2,
   232                space: "data"
   233            }],
   234    
   235            ["INT17", {
   236                comment: "Reserved Vector",
   237                name: "INT17",
   238                base: 0xFFA2,
   239                len: 0x2,
   240                space: "data"
   241            }],
   242    
   243            ["INT18", {
   244                comment: "Reserved Vector",
   245                name: "INT18",
   246                base: 0xFFA4,
   247                len: 0x2,
   248                space: "data"
   249            }],
   250    
   251            ["INT19", {
   252                comment: "Reserved Vector",
   253                name: "INT19",
   254                base: 0xFFA6,
   255                len: 0x2,
   256                space: "data"
   257            }],
   258    
   259            ["INT20", {
   260                comment: "Reserved Vector",
   261                name: "INT20",
   262                base: 0xFFA8,
   263                len: 0x2,
   264                space: "data"
   265            }],
   266    
   267            ["INT21", {
   268                comment: "Reserved Vector",
   269                name: "INT21",
   270                base: 0xFFAA,
   271                len: 0x2,
   272                space: "data"
   273            }],
   274    
   275            ["INT22", {
   276                comment: "Reserved Vector",
   277                name: "INT22",
   278                base: 0xFFAC,
   279                len: 0x2,
   280                space: "data"
   281            }],
   282    
   283            ["INT23", {
   284                comment: "Reserved Vector",
   285                name: "INT23",
   286                base: 0xFFAE,
   287                len: 0x2,
   288                space: "data"
   289            }],
   290    
   291            ["INT24", {
   292                comment: "Reserved Vector",
   293                name: "INT24",
   294                base: 0xFFB0,
   295                len: 0x2,
   296                space: "data"
   297            }],
   298    
   299            ["INT25", {
   300                comment: "Reserved Vector",
   301                name: "INT25",
   302                base: 0xFFB2,
   303                len: 0x2,
   304                space: "data"
   305            }],
   306    
   307            ["INT26", {
   308                comment: "Reserved Vector",
   309                name: "INT26",
   310                base: 0xFFB4,
   311                len: 0x2,
   312                space: "data"
   313            }],
   314    
   315            ["INT27", {
   316                comment: "Reserved Vector",
   317                name: "INT27",
   318                base: 0xFFB6,
   319                len: 0x2,
   320                space: "data"
   321            }],
   322    
   323            ["INT28", {
   324                comment: "Reserved Vector",
   325                name: "INT28",
   326                base: 0xFFB8,
   327                len: 0x2,
   328                space: "data"
   329            }],
   330    
   331            ["INT29", {
   332                comment: "Reserved Vector",
   333                name: "INT29",
   334                base: 0xFFBA,
   335                len: 0x2,
   336                space: "data"
   337            }],
   338    
   339            ["INT30", {
   340                comment: "Reserved Vector",
   341                name: "INT30",
   342                base: 0xFFBC,
   343                len: 0x2,
   344                space: "data"
   345            }],
   346    
   347            ["INT31", {
   348                comment: "Reserved Vector",
   349                name: "INT31",
   350                base: 0xFFBE,
   351                len: 0x2,
   352                space: "data"
   353            }],
   354    
   355            ["INT32", {
   356                comment: "Reserved Vector",
   357                name: "INT32",
   358                base: 0xFFC0,
   359                len: 0x2,
   360                space: "data"
   361            }],
   362    
   363            ["INT33", {
   364                comment: "Reserved Vector",
   365                name: "INT33",
   366                base: 0xFFC2,
   367                len: 0x2,
   368                space: "data"
   369            }],
   370    
   371            ["INT34", {
   372                comment: "Reserved Vector",
   373                name: "INT34",
   374                base: 0xFFC4,
   375                len: 0x2,
   376                space: "data"
   377            }],
   378    
   379            ["INT35", {
   380                comment: "Reserved Vector",
   381                name: "INT35",
   382                base: 0xFFC6,
   383                len: 0x2,
   384                space: "data"
   385            }],
   386    
   387            ["INT36", {
   388                comment: "Reserved Vector",
   389                name: "INT36",
   390                base: 0xFFC8,
   391                len: 0x2,
   392                space: "data"
   393            }],
   394    
   395            ["INT37", {
   396                comment: "Reserved Vector",
   397                name: "INT37",
   398                base: 0xFFCA,
   399                len: 0x2,
   400                space: "data"
   401            }],
   402    
   403            ["INT38", {
   404                comment: "Reserved Vector",
   405                name: "INT38",
   406                base: 0xFFCC,
   407                len: 0x2,
   408                space: "data"
   409            }],
   410    
   411            ["INT39", {
   412                comment: "Reserved Vector",
   413                name: "INT39",
   414                base: 0xFFCE,
   415                len: 0x2,
   416                space: "data"
   417            }],
   418    
   419            ["INT40", {
   420                comment: "Reserved Vector",
   421                name: "INT40",
   422                base: 0xFFD0,
   423                len: 0x2,
   424                space: "data"
   425            }],
   426    
   427            ["INT41", {
   428                comment: "RTC_A Vector",
   429                name: "INT41",
   430                base: 0xFFD2,
   431                len: 0x2,
   432                space: "data"
   433            }],
   434    
   435            ["INT42", {
   436                comment: "I/O Port P2 Vector",
   437                name: "INT42",
   438                base: 0xFFD4,
   439                len: 0x2,
   440                space: "data"
   441            }],
   442    
   443            ["INT43", {
   444                comment: "TA2 CCR1-CCR2 Vector",
   445                name: "INT43",
   446                base: 0xFFD6,
   447                len: 0x2,
   448                space: "data"
   449            }],
   450    
   451            ["INT44", {
   452                comment: "TA2 CCR0 Vector",
   453                name: "INT44",
   454                base: 0xFFD8,
   455                len: 0x2,
   456                space: "data"
   457            }],
   458    
   459            ["INT45", {
   460                comment: "USCI_B1 Receive/Transmit Vector",
   461                name: "INT45",
   462                base: 0xFFDA,
   463                len: 0x2,
   464                space: "data"
   465            }],
   466    
   467            ["INT46", {
   468                comment: "USCI_A1 Receive/Transmit Vector",
   469                name: "INT46",
   470                base: 0xFFDC,
   471                len: 0x2,
   472                space: "data"
   473            }],
   474    
   475            ["INT47", {
   476                comment: "I/O Port P1 Vector",
   477                name: "INT47",
   478                base: 0xFFDE,
   479                len: 0x2,
   480                space: "data"
   481            }],
   482    
   483            ["INT48", {
   484                comment: "TA1 CCR1-CCR2 Vector",
   485                name: "INT48",
   486                base: 0xFFE0,
   487                len: 0x2,
   488                space: "data"
   489            }],
   490    
   491            ["INT49", {
   492                comment: "TA1 CCR0 Vector",
   493                name: "INT49",
   494                base: 0xFFE2,
   495                len: 0x2,
   496                space: "data"
   497            }],
   498    
   499            ["INT50", {
   500                comment: "DMA Vector",
   501                name: "INT50",
   502                base: 0xFFE4,
   503                len: 0x2,
   504                space: "data"
   505            }],
   506    
   507            ["INT51", {
   508                comment: "USB_UBM Vector",
   509                name: "INT51",
   510                base: 0xFFE6,
   511                len: 0x2,
   512                space: "data"
   513            }],
   514    
   515            ["INT52", {
   516                comment: "TA0 CCR1-CCR4 Vector",
   517                name: "INT52",
   518                base: 0xFFE8,
   519                len: 0x2,
   520                space: "data"
   521            }],
   522    
   523            ["INT53", {
   524                comment: "TA0 CCR0 Vector",
   525                name: "INT53",
   526                base: 0xFFEA,
   527                len: 0x2,
   528                space: "data"
   529            }],
   530    
   531            ["INT54", {
   532                comment: "ADC12_A Vector",
   533                name: "INT54",
   534                base: 0xFFEC,
   535                len: 0x2,
   536                space: "data"
   537            }],
   538    
   539            ["INT55", {
   540                comment: "USCI_B0 Receive/Transmit Vector",
   541                name: "INT55",
   542                base: 0xFFEE,
   543                len: 0x2,
   544                space: "data"
   545            }],
   546    
   547            ["INT56", {
   548                comment: "USCI_A0 Receive/Transmit Vector",
   549                name: "INT56",
   550                base: 0xFFF0,
   551                len: 0x2,
   552                space: "data"
   553            }],
   554    
   555            ["INT57", {
   556                comment: "Watchdog Timer_A Interval Timer Mode Vector",
   557                name: "INT57",
   558                base: 0xFFF2,
   559                len: 0x2,
   560                space: "data"
   561            }],
   562    
   563            ["INT58", {
   564                comment: "TB0 CCR1-CCR6 Vector",
   565                name: "INT58",
   566                base: 0xFFF4,
   567                len: 0x2,
   568                space: "data"
   569            }],
   570    
   571            ["INT59", {
   572                comment: "TB0 CCR0 Vector",
   573                name: "INT59",
   574                base: 0xFFF6,
   575                len: 0x2,
   576                space: "data"
   577            }],
   578    
   579            ["INT60", {
   580                comment: "Comp_B Vector",
   581                name: "INT60",
   582                base: 0xFFF8,
   583                len: 0x2,
   584                space: "data"
   585            }],
   586    
   587            ["INT61", {
   588                comment: "User NMI Vector",
   589                name: "INT61",
   590                base: 0xFFFA,
   591                len: 0x2,
   592                space: "data"
   593            }],
   594    
   595            ["INT62", {
   596                comment: "System NMI Vector",
   597                name: "INT62",
   598                base: 0xFFFC,
   599                len: 0x2,
   600                space: "data"
   601            }],
   602    
   603            ["RESET", {
   604                comment: "Reset Vector",
   605                name: "RESET",
   606                base: 0xFFFE,
   607                len:  0x2,
   608                space: "data"
   609            }],
   610        ];
   611    }