1 /* 2 * Copyright (c) 2015-2019, Texas Instruments Incorporated 3 * All rights reserved. 4 * 5 * Redistribution and use in source and binary forms, with or without 6 * modification, are permitted provided that the following conditions 7 * are met: 8 * 9 * * Redistributions of source code must retain the above copyright 10 * notice, this list of conditions and the following disclaimer. 11 * 12 * * Redistributions in binary form must reproduce the above copyright 13 * notice, this list of conditions and the following disclaimer in the 14 * documentation and/or other materials provided with the distribution. 15 * 16 * * Neither the name of Texas Instruments Incorporated nor the names of 17 * its contributors may be used to endorse or promote products derived 18 * from this software without specific prior written permission. 19 * 20 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" 21 * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, 22 * THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 23 * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR 24 * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 25 * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 26 * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; 27 * OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 28 * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR 29 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, 30 * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 31 */ 32 33 /*!**************************************************************************** 34 * @file Board.h 35 * @brief Portable board-specific symbols 36 * 37 * The Board header file should be included in an application as follows: 38 * @code 39 * #include <ti/drivers/Board.h> 40 * @endcode 41 * 42 * This header serves as device-independent interface for applications using 43 * peripherals connected to the device via standard digital interfaces; e.g, 44 * GPIO, SPI, I2C, UART, etc. Its purpose is to enable application code that 45 * references a peripheral to be portable to any device and board that 46 * supports the peripheral. 47 * 48 * ## Usage ## 49 * 50 * @anchor ti_drivers_Board_Synopsis 51 * ### Synopsis # 52 * @anchor ti_drivers_Board_Synopsis_Code 53 * @code 54 * #include <ti/drivers/Board.h> 55 * 56 * void main(void) 57 * { 58 * Board_init(); 59 * : 60 * } 61 * @endcode 62 * 63 * ## Initializing the hardware ## 64 * 65 * \p Board_init() must be called before any other driver API. This function 66 * is owned by the user (typically generated by SysConfig), and is 67 * responsible for device specific initialization; e.g., initializing clocks 68 * and power management functionality. 69 ****************************************************************************** 70 */ 71 72 #ifndef ti_drivers_Board__include 73 #define ti_drivers_Board__include 74 75 #ifdef __cplusplus 76 extern "C" { 77 #endif 78 79 /*! 80 * @brief Performs "early" board-level initialization required by TI-DRIVERS 81 * 82 * Board_init() must be called before any other TI-DRIVER API. This function 83 * calls all device and board specific initialization functions needed by 84 * TI-DRIVERS; e.g., to initialize clocks and power management functionality. 85 * 86 * This function should only be called once and as early in the application's 87 * startup as possible. In most applications, a call to Board_init() is the 88 * first statement in \p main(). 89 * 90 * @pre \p Board_init must be called after every CPU reset and _prior_ to 91 * enabling any interrupts. 92 */ 93 extern void Board_init(void); 94 95 #ifdef __cplusplus 96 } 97 #endif 98 99 #endif /* ti_drivers_Board_include */ 100