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

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

commit a64047ec1c992cffcf4cfbe2d587fbb708fcdb60
Author: simbit18 <[email protected]>
AuthorDate: Tue Mar 10 17:40:56 2026 +0100

    arch/arm/src/max326xx: CMake build implemented for MAX326xx Series
    
    - added MAX326xx Series
    
    Signed-off-by: simbit18 <[email protected]>
---
 arch/arm/src/max326xx/CMakeLists.txt             | 33 ++++++++++++
 arch/arm/src/max326xx/common/CMakeLists.txt      | 45 ++++++++++++++++
 arch/arm/src/max326xx/max32620_30/CMakeLists.txt | 28 ++++++++++
 arch/arm/src/max326xx/max32660/CMakeLists.txt    | 67 ++++++++++++++++++++++++
 arch/arm/src/max326xx/max32690/CMakeLists.txt    | 32 +++++++++++
 5 files changed, 205 insertions(+)

diff --git a/arch/arm/src/max326xx/CMakeLists.txt 
b/arch/arm/src/max326xx/CMakeLists.txt
new file mode 100644
index 00000000000..9f1f1d13500
--- /dev/null
+++ b/arch/arm/src/max326xx/CMakeLists.txt
@@ -0,0 +1,33 @@
+# 
##############################################################################
+# arch/arm/src/max326xx/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.
+#
+# 
##############################################################################
+
+# Paths to source files
+
+add_subdirectory(common)
+
+if((CONFIG_ARCH_FAMILY_MAX32620) OR (CONFIG_ARCH_FAMILY_MAX32630))
+  add_subdirectory(max32620_30)
+elseif(CONFIG_ARCH_FAMILY_MAX32660)
+  add_subdirectory(max32660)
+elseif(CONFIG_ARCH_FAMILY_MAX32690)
+  add_subdirectory(max32690)
+endif()
diff --git a/arch/arm/src/max326xx/common/CMakeLists.txt 
b/arch/arm/src/max326xx/common/CMakeLists.txt
new file mode 100644
index 00000000000..8a7f326c1d7
--- /dev/null
+++ b/arch/arm/src/max326xx/common/CMakeLists.txt
@@ -0,0 +1,45 @@
+# 
##############################################################################
+# arch/arm/src/max326xx/common/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.
+#
+# 
##############################################################################
+
+# Common MAX326XX Source Files
+
+list(APPEND SRCS max326_start.c max326_irq.c max326_clrpend.c)
+
+if(CONFIG_RTC_DRIVER)
+  list(APPEND SRCS max326_rtc_lowerhalf.c)
+endif()
+
+if(NOT CONFIG_SCHED_TICKLESS)
+  list(APPEND SRCS max326_timerisr.c)
+else()
+  list(APPEND SRCS max326_tickless.c)
+endif()
+
+if(CONFIG_BUILD_PROTECTED)
+  list(APPEND SRCS max326_userspace.c max326_mpuinit.c)
+endif()
+
+if(NOT CONFIG_ARCH_IDLE_CUSTOM)
+  list(APPEND SRCS max326_idle.c)
+endif()
+
+target_sources(arch PRIVATE ${SRCS})
diff --git a/arch/arm/src/max326xx/max32620_30/CMakeLists.txt 
b/arch/arm/src/max326xx/max32620_30/CMakeLists.txt
new file mode 100644
index 00000000000..949b6a625f7
--- /dev/null
+++ b/arch/arm/src/max326xx/max32620_30/CMakeLists.txt
@@ -0,0 +1,28 @@
+# 
##############################################################################
+# arch/arm/src/max326xx/max32620_30/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.
+#
+# 
##############################################################################
+
+if((CONFIG_ARCH_FAMILY_MAX32620) OR (CONFIG_ARCH_FAMILY_MAX32630))
+  set(SRCS)
+
+  target_sources(arch PRIVATE ${SRCS})
+
+endif()
diff --git a/arch/arm/src/max326xx/max32660/CMakeLists.txt 
b/arch/arm/src/max326xx/max32660/CMakeLists.txt
new file mode 100644
index 00000000000..4031a69828c
--- /dev/null
+++ b/arch/arm/src/max326xx/max32660/CMakeLists.txt
@@ -0,0 +1,67 @@
+# 
##############################################################################
+# arch/arm/src/max326xx/max32660/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.
+#
+# 
##############################################################################
+
+if(CONFIG_ARCH_FAMILY_MAX32660)
+  set(SRCS)
+
+  if(CONFIG_MAX326XX_ICC)
+    list(APPEND SRCS max32660_icc.c)
+  endif()
+
+  list(APPEND SRCS max32660_clockconfig.c max32660_lowputc.c max32660_gpio.c)
+
+  if(CONFIG_MAX326XX_DMA)
+    list(APPEND SRCS max32660_dma.c)
+  endif()
+
+  if(CONFIG_MAX326XX_GPIOIRQ)
+    list(APPEND SRCS max32660_gpioirq.c)
+  endif()
+
+  if(CONFIG_MAX326XX_RTC)
+    list(APPEND SRCS max32660_rtc.c)
+  endif()
+
+  if(CONFIG_MAX326XX_WDOG)
+    list(APPEND SRCS max32660_wdt.c)
+  endif()
+
+  if(CONFIG_MAX326XX_HAVE_UART)
+    list(APPEND SRCS max32660_serial.c)
+  endif()
+
+  if(CONFIG_MAX326XX_HAVE_I2CM)
+    list(APPEND SRCS max32660_i2cm.c)
+  endif()
+
+  if(CONFIG_MAX326XX_HAVE_SPIM)
+    if(CONFIG_MAX326XX_SPIM0)
+      list(APPEND SRCS max32660_spim.c)
+    endif()
+    if(CONFIG_MAX326XX_SPIM1)
+      list(APPEND SRCS max32660_spimssm.c)
+    endif()
+  endif()
+
+  target_sources(arch PRIVATE ${SRCS})
+
+endif()
diff --git a/arch/arm/src/max326xx/max32690/CMakeLists.txt 
b/arch/arm/src/max326xx/max32690/CMakeLists.txt
new file mode 100644
index 00000000000..92c8b18ecea
--- /dev/null
+++ b/arch/arm/src/max326xx/max32690/CMakeLists.txt
@@ -0,0 +1,32 @@
+# 
##############################################################################
+# arch/arm/src/max326xx/max32690/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.
+#
+# 
##############################################################################
+
+if(CONFIG_ARCH_FAMILY_MAX32690)
+  set(SRCS)
+
+  if(CONFIG_MAX326XX_ICC)
+    list(APPEND SRCS max32690_icc.c)
+  endif()
+
+  target_sources(arch PRIVATE ${SRCS})
+
+endif()

Reply via email to