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 * ======== Boot.xdc ========
14 */
15
16 package ti.catalog.msp430.init;
17
18 import xdc.rov.ViewInfo;
19
20 /*!
21 * ======== Boot ========
22 * Boot time initialization code manager
23 *
24 * The Boot module supports boot initialization for the MSP430 devices.
25 * A special boot init function is created based on the configuration
26 * settings for this module. This function is hooked into the
27 * `{@link xdc.runtime.Reset#fxns xdc.runtime.Reset.fxns[]}` array and
28 * is called very early at boot time (prior to C runtime initialization).
29 *
30 * The code to support the boot module is placed in a separate section
31 * named `".text:bootCodeSection"` to allow placement of this section in
32 * the linker .cmd file if necessary. This section is a subsection of the
33 * `".text"` section so this code will be placed into the .text section
34 * unless explicitly placed, either through
35 * `{@link xdc.cfg.Program#sectMap Program.sectMap}` or through a linker
36 * command file.
37 */
38 @Template("./Boot.xdt")
39 metaonlymodule Boot
40 {
41 metaonlystruct ModuleView {
42 Bool disableWatchdog;
43 UInt watchdogAddress;
44 Bool configureDCO;
45 }
46
47 @Facet
48 metaonlyconfig ViewInfo.Instance rovViewInfo =
49 ViewInfo.create({
50 viewMap: [
51 [
52 'Module',
53 {
54 type: ViewInfo.MODULE,
55 viewInitFxn: 'viewInitModule',
56 structName: 'ModuleView'
57 }
58 ],
59 ]
60 });
61
62 /*!
63 * ======== disableWatchdog ========
64 * Watchdog disable flag
65 *
66 * The default is `true`. Set to `false` to not automatically disable the
67 * watchdog timer.
68 */
69 config Bool disableWatchdog = true;
70
71 /*!
72 * ======== watchdogAddress ========
73 * Watchdog control register address
74 *
75 * The default (0x15c) is set for MSP430F54xx and MSP430F552x devices.
76 * Change for other devices.
77 */
78 config UInt watchdogAddress = 0x15c;
79
80 /*!
81 * ======== configureDCO ========
82 * Configure DCO flag
83 *
84 * The default is `false`. Set to `true` to initialize DCO at boot.
85 */
86 config Bool configureDCO = false;
87 };