arch/arm/src/max326xx: CMake build implemented for MAX326xx Series

- added MAX326xx Series

Signed-off-by: simbit18 <simbit18@gmail.com>
This commit is contained in:
simbit18 2026-03-10 17:40:56 +01:00 committed by Matteo Golin
parent 075215cd5b
commit a64047ec1c
5 changed files with 205 additions and 0 deletions

View file

@ -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()

View file

@ -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})

View file

@ -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()

View file

@ -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()

View file

@ -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()