1 /*
2  * Copyright 2023 NXP
3  *
4  * SPDX-License-Identifier: Apache-2.0
5  */
6 
7 #include <zephyr/kernel.h>
8 #include <cmsis_core.h>
9 #include <zephyr/sys/barrier.h>
10 
soc_reset_hook(void)11 void soc_reset_hook(void)
12 {
13 	if (IS_ENABLED(CONFIG_ICACHE)) {
14 		if (!(__get_SCTLR() & SCTLR_I_Msk)) {
15 			L1C_InvalidateICacheAll();
16 			__set_SCTLR(__get_SCTLR() | SCTLR_I_Msk);
17 			barrier_isync_fence_full();
18 		}
19 	}
20 
21 	if (IS_ENABLED(CONFIG_DCACHE)) {
22 		if (!(__get_SCTLR() & SCTLR_C_Msk)) {
23 			L1C_InvalidateDCacheAll();
24 			__set_SCTLR(__get_SCTLR() | SCTLR_C_Msk);
25 			barrier_dsync_fence_full();
26 		}
27 	}
28 }
29