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