1 /*
2 ** ###################################################################
3 **     Processors:          MIMX9352AVTXM_ca55
4 **                          MIMX9352CVUXK_ca55
5 **                          MIMX9352DVUXM_ca55
6 **
7 **     Reference manual:    IMX93RM, Internal, November. 2021
8 **     Version:             rev. 1.0, 2021-11-16
9 **     Build:               b221019
10 **
11 **     Abstract:
12 **         Provides a system configuration function and a global variable that
13 **         contains the system frequency. It configures the device and initializes
14 **         the oscillator (PLL) that is part of the microcontroller device.
15 **
16 **     Copyright 2016 Freescale Semiconductor, Inc.
17 **     Copyright 2016-2022 NXP
18 **     All rights reserved.
19 **
20 **     SPDX-License-Identifier: BSD-3-Clause
21 **
22 **     http:                 www.nxp.com
23 **     mail:                 support@nxp.com
24 **
25 **     Revisions:
26 **     - rev. 1.0 (2021-11-16)
27 **         Initial version.
28 **
29 ** ###################################################################
30 */
31 
32 /*!
33  * @file MIMX9352_ca55
34  * @version 1.0
35  * @date 2021-11-16
36  * @brief Device specific configuration file for MIMX9352_ca55 (implementation
37  *        file)
38  *
39  * Provides a system configuration function and a global variable that contains
40  * the system frequency. It configures the device and initializes the oscillator
41  * (PLL) that is part of the microcontroller device.
42  */
43 
44 #include <stdint.h>
45 #include "fsl_device_registers.h"
46 
47 
48 
49 
50 
51 /* ----------------------------------------------------------------------------
52    -- Core clock
53    ---------------------------------------------------------------------------- */
54 
55 uint32_t SystemCoreClock = DEFAULT_SYSTEM_CLOCK;
56 
57 /* ----------------------------------------------------------------------------
58    -- SystemInit()
59    ---------------------------------------------------------------------------- */
60 
SystemInit(void)61 void SystemInit (void) {
62 #if ((__FPU_PRESENT == 1) && (__FPU_USED == 1))
63   __ASM volatile("mov x0, #(3 << 20) \n\t"
64                  "msr cpacr_el1, x0");
65 #endif /* ((__FPU_PRESENT == 1) && (__FPU_USED == 1)) */
66 
67 
68   SystemInitHook();
69 
70   ARM_TIMER_GetFreq(&SystemCoreClock);
71 }
72 
73 /* ----------------------------------------------------------------------------
74    -- SystemCoreClockUpdate()
75    ---------------------------------------------------------------------------- */
76 
SystemCoreClockUpdate(void)77 void SystemCoreClockUpdate (void) {
78 
79 
80 }
81 
82 /* ----------------------------------------------------------------------------
83    -- SystemInitHook()
84    ---------------------------------------------------------------------------- */
85 
SystemInitHook(void)86 __attribute__ ((weak)) void SystemInitHook (void) {
87   /* Void implementation of the weak function. */
88 }
89