soc: mcxa156: add SOC support for MCXA56

Add MCXA156 support

Signed-off-by: Neil Chen <cheng.chen_1@nxp.com>
This commit is contained in:
Neil Chen 2024-09-02 10:55:41 +08:00 committed by Anas Nashif
commit fb65babc6a
8 changed files with 139 additions and 0 deletions

View file

@ -0,0 +1,10 @@
#
# Copyright 2024 NXP
#
# SPDX-License-Identifier: Apache-2.0
#
zephyr_sources(soc.c)
zephyr_include_directories(.)
set(SOC_LINKER_SCRIPT ${ZEPHYR_BASE}/include/zephyr/arch/arm/cortex_m/scripts/linker.ld CACHE INTERNAL "")

17
soc/nxp/mcx/mcxa/Kconfig Normal file
View file

@ -0,0 +1,17 @@
# Copyright 2024 NXP
# SPDX-License-Identifier: Apache-2.0
config SOC_SERIES_MCXA
select HAS_SEGGER_RTT
select CLOCK_CONTROL
select ARM
select HAS_MCUX
select CPU_CORTEX_M_HAS_SYSTICK
select CPU_CORTEX_M_HAS_DWT
select PLATFORM_SPECIFIC_INIT
config SOC_MCXA156
select CPU_CORTEX_M33
select CPU_HAS_FPU
select ARMV8_M_DSP
select HAS_MCUX_CACHE

View file

@ -0,0 +1,18 @@
# Copyright 2024 NXP
# SPDX-License-Identifier: Apache-2.0
if SOC_SERIES_MCXA
config NUM_IRQS
default 88
config SYS_CLOCK_HW_CYCLES_PER_SEC
default 1000000 if MCUX_OS_TIMER
default 16000 if MCUX_LPTMR_TIMER
default 150000000 if CORTEX_M_SYSTICK
# Set to the minimal size of data which can be written.
config FLASH_FILL_BUFFER_SIZE
default 128
endif # SOC_SERIES_MCXA

View file

@ -0,0 +1,30 @@
# Copyright 2024 NXP
# SPDX-License-Identifier: Apache-2.0
config SOC_SERIES_MCXA
bool
select SOC_FAMILY_NXP_MCX
config SOC_SERIES
default "mcxa" if SOC_SERIES_MCXA
config SOC_MCXA156
bool
select SOC_SERIES_MCXA
config SOC
default "mcxa156" if SOC_MCXA156
config SOC_PART_NUMBER_MCXA156VPJ
bool
config SOC_PART_NUMBER_MCXA156VLL
bool
config SOC_PART_NUMBER_MCXA156VMP
bool
config SOC_PART_NUMBER
default "MCXA156VPJ" if SOC_PART_NUMBER_MCXA156VPJ
default "MCXA156VLL" if SOC_PART_NUMBER_MCXA156VLL
default "MCXA156VMP" if SOC_PART_NUMBER_MCXA156VMP

View file

@ -0,0 +1,7 @@
/*
* Copyright 2024 NXP
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <zephyr/drivers/pinctrl/pinctrl_soc_kinetis_common.h>

27
soc/nxp/mcx/mcxa/soc.c Normal file
View file

@ -0,0 +1,27 @@
/*
* Copyright 2024 NXP
*
* SPDX-License-Identifier: Apache-2.0
*/
/**
* @file
* @brief System/hardware module for nxp_mcxa platform
*
* This module provides routines to initialize and support board-level
* hardware for the nxp_mcxa platform.
*/
#include <zephyr/kernel.h>
#include <zephyr/device.h>
#include <zephyr/init.h>
#include <soc.h>
#ifdef CONFIG_PLATFORM_SPECIFIC_INIT
void z_arm_platform_init(void)
{
SystemInit();
}
#endif

27
soc/nxp/mcx/mcxa/soc.h Normal file
View file

@ -0,0 +1,27 @@
/*
* Copyright 2024 NXP
*
* SPDX-License-Identifier: Apache-2.0
*/
#ifndef _SOC__H_
#define _SOC__H_
#ifndef _ASMLANGUAGE
#include <fsl_port.h>
#include <fsl_common.h>
#define PORT_MUX_GPIO kPORT_MuxAlt0 /* GPIO setting for the Port Mux Register */
#ifdef __cplusplus
extern "C" {
#endif
#ifdef __cplusplus
}
#endif
#endif /* !_ASMLANGUAGE */
#endif /* _SOC__H_ */

View file

@ -13,6 +13,9 @@ family:
- name: mcxc141 - name: mcxc141
- name: mcxc142 - name: mcxc142
- name: mcxc242 - name: mcxc242
- name: mcxa
socs:
- name: mcxa156
runners: runners:
run_once: run_once:
'--erase': '--erase':