This is an automated email from the ASF dual-hosted git repository.

xiaoxiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git

commit 92bb15b85fcaeaaf830087e6c55f62ec182d617c
Author: simbit18 <[email protected]>
AuthorDate: Sun Jan 25 18:15:23 2026 +0100

    arch/arm/src/S32K1xx: CMake build implemented for NXP S32K1 Family
    
    - added NXP S32K1 Family
    
    Signed-off-by: simbit18 <[email protected]>
---
 arch/arm/src/s32k1xx/CMakeLists.txt         | 108 ++++++++++++++++++++++++++++
 arch/arm/src/s32k1xx/s32k11x/CMakeLists.txt |  32 +++++++++
 arch/arm/src/s32k1xx/s32k14x/CMakeLists.txt |  40 +++++++++++
 3 files changed, 180 insertions(+)

diff --git a/arch/arm/src/s32k1xx/CMakeLists.txt 
b/arch/arm/src/s32k1xx/CMakeLists.txt
new file mode 100644
index 00000000000..d72b2d6d3b3
--- /dev/null
+++ b/arch/arm/src/s32k1xx/CMakeLists.txt
@@ -0,0 +1,108 @@
+# 
##############################################################################
+# arch/arm/src/s32k1xx/CMakeLists.txt
+#
+# SPDX-License-Identifier: Apache-2.0
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more 
contributor
+# license agreements.  See the NOTICE file distributed with this work for
+# additional information regarding copyright ownership.  The ASF licenses this
+# file to you under the Apache License, Version 2.0 (the "License"); you may 
not
+# use this file except in compliance with the License.  You may obtain a copy 
of
+# the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
+# License for the specific language governing permissions and limitations under
+# the License.
+#
+# 
##############################################################################
+
+# Source files common to all S32K1xx chip families.
+
+list(
+  APPEND
+  SRCS
+  s32k1xx_start.c
+  s32k1xx_lowputc.c
+  s32k1xx_clockconfig.c
+  s32k1xx_periphclocks.c
+  s32k1xx_pin.c
+  s32k1xx_pingpio.c
+  s32k1xx_idle.c
+  s32k1xx_uid.c)
+
+if(CONFIG_BOOT_RUNFROMFLASH)
+  list(APPEND SRCS s32k1xx_flashcfg.c)
+endif()
+
+if(CONFIG_PWM)
+  list(APPEND SRCS s32k1xx_pwm.c)
+endif()
+
+if(CONFIG_S32K1XX_LPUART)
+  list(APPEND SRCS s32k1xx_serial.c)
+endif()
+
+if(CONFIG_S32K1XX_GPIOIRQ)
+  list(APPEND SRCS s32k1xx_pinirq.c)
+endif()
+
+if(CONFIG_S32K1XX_EDMA)
+  list(APPEND SRCS s32k1xx_pindma.c s32k1xx_edma.c)
+endif()
+
+if(CONFIG_DEBUG_GPIO_INFO)
+  list(APPEND SRCS s32k1xx_pindump.c)
+endif()
+
+if(CONFIG_S32K1XX_LPI2C)
+  list(APPEND SRCS s32k1xx_lpi2c.c s32k1xx_lpi2c_slave.c)
+endif()
+
+if(CONFIG_S32K1XX_FLEXIO_I2C)
+  list(APPEND SRCS s32k1xx_flexio_i2c.c)
+endif()
+
+if(CONFIG_S32K1XX_LPSPI)
+  list(APPEND SRCS s32k1xx_lpspi.c)
+endif()
+
+if(CONFIG_S32K1XX_ENET)
+  list(APPEND SRCS s32k1xx_enet.c)
+endif()
+
+if(CONFIG_S32K1XX_FLEXCAN)
+  list(APPEND SRCS s32k1xx_flexcan.c)
+endif()
+
+if(CONFIG_S32K1XX_RTC)
+  list(APPEND SRCS s32k1xx_rtc.c)
+endif()
+
+if(CONFIG_S32K1XX_PROGMEM)
+  list(APPEND SRCS s32k1xx_progmem.c)
+endif()
+
+if(CONFIG_S32K1XX_EEEPROM)
+  list(APPEND SRCS s32k1xx_eeeprom.c)
+endif()
+
+if(NOT CONFIG_ARCH_CUSTOM_PMINIT)
+  list(APPEND SRCS s32k1xx_pminitialize.c)
+endif()
+
+if(CONFIG_S32K1XX_RESETCAUSE_PROCFS)
+  list(APPEND SRCS s32k1xx_resetcause_procfs.c)
+endif()
+
+# Source files specific to the ARM CPU family and to the S32K1xx chip family
+if(CONFIG_ARCH_CHIP_S32K11X)
+  add_subdirectory(s32k11x)
+else()
+  add_subdirectory(s32k14x)
+endif()
+
+target_sources(arch PRIVATE ${SRCS})
diff --git a/arch/arm/src/s32k1xx/s32k11x/CMakeLists.txt 
b/arch/arm/src/s32k1xx/s32k11x/CMakeLists.txt
new file mode 100644
index 00000000000..57331da4912
--- /dev/null
+++ b/arch/arm/src/s32k1xx/s32k11x/CMakeLists.txt
@@ -0,0 +1,32 @@
+# 
##############################################################################
+# arch/arm/src/s32k1xx/s32k11x/CMakeLists.txt
+#
+# SPDX-License-Identifier: Apache-2.0
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more 
contributor
+# license agreements.  See the NOTICE file distributed with this work for
+# additional information regarding copyright ownership.  The ASF licenses this
+# file to you under the Apache License, Version 2.0 (the "License"); you may 
not
+# use this file except in compliance with the License.  You may obtain a copy 
of
+# the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
+# License for the specific language governing permissions and limitations under
+# the License.
+#
+# 
##############################################################################
+
+# Source file specific to the S32k11x family.
+
+list(APPEND S32k11xSRCS s32k11x_irq.c s32k11x_clockmapping.c
+     s32k11x_periphfeatures.c)
+
+if(NOT CONFIG_SCHED_TICKLESS)
+  list(APPEND S32k11xSRCS s32k11x_timerisr.c)
+endif()
+
+target_sources(arch PRIVATE ${S32k11xSRCS})
diff --git a/arch/arm/src/s32k1xx/s32k14x/CMakeLists.txt 
b/arch/arm/src/s32k1xx/s32k14x/CMakeLists.txt
new file mode 100644
index 00000000000..615e90ca149
--- /dev/null
+++ b/arch/arm/src/s32k1xx/s32k14x/CMakeLists.txt
@@ -0,0 +1,40 @@
+# 
##############################################################################
+# arch/arm/src/s32k1xx/s32k14x/CMakeLists.txt
+#
+# SPDX-License-Identifier: Apache-2.0
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more 
contributor
+# license agreements.  See the NOTICE file distributed with this work for
+# additional information regarding copyright ownership.  The ASF licenses this
+# file to you under the Apache License, Version 2.0 (the "License"); you may 
not
+# use this file except in compliance with the License.  You may obtain a copy 
of
+# the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
+# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the
+# License for the specific language governing permissions and limitations under
+# the License.
+#
+# 
##############################################################################
+
+# Source file specific to the S32k14x family.
+
+list(APPEND S32k14xSRCS s32k14x_irq.c s32k14x_clrpend.c s32k14x_clockmapping.c
+     s32k14x_periphfeatures.c)
+
+if(NOT CONFIG_SCHED_TICKLESS)
+  list(APPEND S32k14xSRCS s32k14x_timerisr.c)
+endif()
+
+if(CONFIG_BUILD_PROTECTED)
+  list(APPEND S32k14xSRCS s32k14x_userspace.c s32k14x_mpuinit.c)
+endif()
+
+if(CONFIG_S32K1XX_ETHERNET)
+  list(APPEND S32k14xSRCS s32k14x_ethernet.c)
+endif()
+
+target_sources(arch PRIVATE ${S32k14xSRCS})

Reply via email to