1 /*
2 *
3 * Copyright (C) 2010 Texas Instruments Incorporated - http://www.ti.com/
4 *
5 *
6 * Redistribution and use in source and binary forms, with or without
7 * modification, are permitted provided that the following conditions
8 * are met:
9 *
10 * Redistributions of source code must retain the above copyright
11 * notice, this list of conditions and the following disclaimer.
12 *
13 * Redistributions in binary form must reproduce the above copyright
14 * notice, this list of conditions and the following disclaimer in the
15 * documentation and/or other materials provided with the
16 * distribution.
17 *
18 * Neither the name of Texas Instruments Incorporated nor the names of
19 * its contributors may be used to endorse or promote products derived
20 * from this software without specific prior written permission.
21 *
22 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
23 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
24 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
25 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
26 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
27 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
28 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
29 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
30 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
31 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
32 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33 *
34 */
38 /*******************************************************************************
39 * FILE PURPOSE: A very simple test program used to verify IBL loading
40 *******************************************************************************
41 * FILE NAME: test1.c
42 *
43 * DESCRIPTION: A simple program that simply verifies the loading of
44 * several sections.
45 *
46 * @file test1.c
47 *
48 * @brief
49 * Verify the IBL
50 *
51 ********************************************************************************/
53 /**
54 * @brief Test loading some const sections
55 */
56 const unsigned int c1 = 0x12345678;
57 const unsigned int c2[] = { 0x11111111, 0x22222222 };
60 /**
61 * @brief Test load the cinit section
62 */
63 unsigned int cini1 = 0xabcd1234;
66 /**
67 * @brief The bss/far sections should not actually load
68 */
69 unsigned int cbss[100];
72 extern cregister volatile unsigned int TSCL;
73 /**
74 * @brief The text section which will include a switch
75 */
76 void main (void)
77 {
78 unsigned int v;
80 /* Start the system timer */
81 TSCL = 1;
84 /* Read the timer and put the value in the bss */
85 v = TSCL;
87 cbss[0] = v;
89 switch (v & 1) {
91 case 0: cbss[1] = c2[0];
92 break;
94 case 1: cbss[2] = c2[1];
95 break;
97 }
99 for (;;);
101 }