/* * Copyright (c) 2020, Seagate * * SPDX-License-Identifier: Apache-2.0 */ /** * @file * @brief System/hardware module for nxp_lpc11u6x platform * * This module provides routines to initialize and support board-level * hardware for the nxp_lpc11u6x platform. */ #include #include #include #include #include #include #include /** * * @brief Perform basic hardware initialization * * Initialize the interrupt controller device drivers. * Also initialize the timer device driver, if required. * * @return 0 */ static int nxp_lpc11u6x_init(const struct device *arg) { ARG_UNUSED(arg); /* old interrupt lock level */ unsigned int old_level; /* disable interrupts */ old_level = irq_lock(); /* install default handler that simply resets the CPU if configured in * the kernel, NOP otherwise */ NMI_INIT(); /* restore interrupt state */ irq_unlock(old_level); return 0; } SYS_INIT(nxp_lpc11u6x_init, PRE_KERNEL_1, 0);