1 /*******************************************************************************
\r
2 * (c) Copyright 2012-2013 Microsemi SoC Products Group. All rights reserved.
\r
4 * SmartFusion2 CMSIS system initialization.
\r
6 * SVN $Revision: 5280 $
\r
7 * SVN $Date: 2013-03-22 20:51:50 +0000 (Fri, 22 Mar 2013) $
\r
10 #ifndef SYSTEM_M2SXXX_H
\r
11 #define SYSTEM_M2SXXX_H
\r
17 /* Standard CMSIS global variables. */
\r
18 extern uint32_t SystemCoreClock; /*!< System Clock Frequency (Core Clock) */
\r
20 /* SmartFusion2 specific clocks. */
\r
21 extern uint32_t g_FrequencyPCLK0; /*!< Clock frequency of APB bus 0. */
\r
22 extern uint32_t g_FrequencyPCLK1; /*!< Clock frequency of APB bus 1. */
\r
23 extern uint32_t g_FrequencyPCLK2; /*!< Clock frequency of APB bus 2. */
\r
24 extern uint32_t g_FrequencyFIC0; /*!< Clock frequecny of FPGA fabric interface controller 1. */
\r
25 extern uint32_t g_FrequencyFIC1; /*!< Clock frequecny of FPGA fabric inteface controller 2. */
\r
26 extern uint32_t g_FrequencyFIC64; /*!< Clock frequecny of 64-bit FPGA fabric interface controller. */
\r
29 /***************************************************************************//**
\r
30 * The SystemInit() is a standard CMSIS function called during system startup.
\r
31 * It is meant to perform low level hardware setup such as configuring DDR and
\r
32 * SERDES controllers.
\r
34 void SystemInit(void);
\r
36 /***************************************************************************//**
\r
37 * The SystemCoreClockUpdate() is a standard CMSIS function which can be called
\r
38 * by the application in order to ensure that the SystemCoreClock global
\r
39 * variable contains the up to date Cortex-M3 core frequency. Calling this
\r
40 * function also updates the global variables containing the frequencies of the
\r
41 * APB busses connecting the peripherals.
\r
43 void SystemCoreClockUpdate(void);
\r