You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by xi...@apache.org on 2022/04/30 13:50:21 UTC

[incubator-nuttx] branch master updated (2a95be5086 -> 3ec2f70046)

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

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


    from 2a95be5086 arch/avr: Remvoe the error message when toolchain can't find
     new a560eb5f8d arch/arm/Make.defs: unify common source include
     new 5677fe2153 arch/cortex-m/Make.defs: unify arch common source include
     new 8951b0135b arch/cortex-[a|r]/Make.defs: unify arch common source include
     new 3ec2f70046 arch/arm/Make.defs: unify arch common source include

The 4 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


Summary of changes:
 arch/arm/src/a1x/Make.defs                         |  88 +----------------
 arch/arm/src/am335x/Make.defs                      |  85 +---------------
 {sched/paging => arch/arm/src/arm}/Make.defs       |  19 ++--
 .../src/Makefile => arch/arm/src/armv6-m/Make.defs |  30 +++---
 arch/arm/src/armv7-a/Make.defs                     |  93 ++++++++++++++++++
 .../src/Makefile => arch/arm/src/armv7-m/Make.defs |  56 +++++------
 arch/arm/src/armv7-r/Make.defs                     |  58 +++++++++++
 .../src/Makefile => arch/arm/src/armv8-m/Make.defs |  47 +++++----
 arch/arm/src/c5471/Make.defs                       |  20 +---
 arch/arm/src/common/Make.defs                      |  86 ++++++++++++++++
 arch/arm/src/common/arm_etherstub.c                |   2 +
 arch/arm/src/cxd56xx/Make.defs                     |  42 +-------
 arch/arm/src/dm320/Make.defs                       |  22 +----
 arch/arm/src/efm32/Make.defs                       |  40 +-------
 arch/arm/src/eoss3/Make.defs                       |  36 +------
 arch/arm/src/imx1/Make.defs                        |  22 +----
 arch/arm/src/imx6/Make.defs                        | 108 +--------------------
 arch/arm/src/imxrt/Make.defs                       |  46 +--------
 arch/arm/src/kinetis/Make.defs                     |  58 +----------
 arch/arm/src/kl/Make.defs                          |  31 +-----
 arch/arm/src/lc823450/Make.defs                    |  42 +-------
 arch/arm/src/lpc17xx_40xx/Make.defs                |  50 +---------
 arch/arm/src/lpc214x/Make.defs                     |  21 +---
 arch/arm/src/lpc2378/Make.defs                     |  21 +---
 arch/arm/src/lpc31xx/Make.defs                     |  27 +-----
 arch/arm/src/lpc43xx/Make.defs                     |  39 +-------
 arch/arm/src/lpc54xx/Make.defs                     |  39 +-------
 arch/arm/src/max326xx/Make.defs                    |  36 +------
 arch/arm/src/moxart/Make.defs                      |  17 +---
 arch/arm/src/nrf52/Make.defs                       |  46 +--------
 arch/arm/src/nuc1xx/Make.defs                      |  31 +-----
 arch/arm/src/phy62xx/Make.defs                     |  32 +-----
 arch/arm/src/rp2040/Make.defs                      |  35 +------
 arch/arm/src/rtl8720c/Make.defs                    |  28 +-----
 arch/arm/src/s32k1xx/Make.defs                     |  25 -----
 arch/arm/src/s32k1xx/s32k11x/Make.defs             |  18 +---
 arch/arm/src/s32k1xx/s32k14x/Make.defs             |  18 +---
 arch/arm/src/sam34/Make.defs                       |  47 +--------
 arch/arm/src/sama5/Make.defs                       |  90 +----------------
 arch/arm/src/samd2l2/Make.defs                     |  31 +-----
 arch/arm/src/samd5e5/Make.defs                     |  37 +------
 arch/arm/src/samv7/Make.defs                       |  48 +--------
 arch/arm/src/stm32/Make.defs                       |  55 +----------
 arch/arm/src/stm32f0l0g0/Make.defs                 |  31 +-----
 arch/arm/src/stm32f7/Make.defs                     |  54 +----------
 arch/arm/src/stm32h7/Make.defs                     |  57 +----------
 arch/arm/src/stm32l4/Make.defs                     |  46 +--------
 arch/arm/src/stm32l5/Make.defs                     |  41 +-------
 arch/arm/src/stm32u5/Make.defs                     |  42 +-------
 arch/arm/src/str71x/Make.defs                      |  22 +----
 arch/arm/src/tiva/Make.defs                        |  49 +---------
 arch/arm/src/tms570/Make.defs                      |  62 +-----------
 arch/arm/src/xmc4/Make.defs                        |  57 +----------
 53 files changed, 376 insertions(+), 1907 deletions(-)
 copy {sched/paging => arch/arm/src/arm}/Make.defs (67%)
 copy boards/arm/sam34/sam3u-ek/src/Makefile => arch/arm/src/armv6-m/Make.defs (68%)
 create mode 100644 arch/arm/src/armv7-a/Make.defs
 copy boards/arm/lpc43xx/lpc4330-xplorer/src/Makefile => arch/arm/src/armv7-m/Make.defs (52%)
 create mode 100644 arch/arm/src/armv7-r/Make.defs
 copy boards/arm/samd2l2/saml21-xplained/src/Makefile => arch/arm/src/armv8-m/Make.defs (52%)
 create mode 100644 arch/arm/src/common/Make.defs


[incubator-nuttx] 03/04: arch/cortex-[a|r]/Make.defs: unify arch common source include

Posted by xi...@apache.org.
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/incubator-nuttx.git

commit 8951b0135bd5c3b6d6b8abba30bed3134dcbc82e
Author: chao.an <an...@xiaomi.com>
AuthorDate: Sat Apr 30 12:41:25 2022 +0800

    arch/cortex-[a|r]/Make.defs: unify arch common source include
    
    Signed-off-by: chao.an <an...@xiaomi.com>
---
 arch/arm/src/a1x/Make.defs     | 64 -------------------------------
 arch/arm/src/am335x/Make.defs  | 66 --------------------------------
 arch/arm/src/armv7-a/Make.defs | 70 +++++++++++++++++++++++++++++++++
 arch/arm/src/armv7-r/Make.defs | 35 +++++++++++++++++
 arch/arm/src/imx6/Make.defs    | 87 ------------------------------------------
 arch/arm/src/sama5/Make.defs   | 71 ----------------------------------
 arch/arm/src/tms570/Make.defs  | 40 -------------------
 7 files changed, 105 insertions(+), 328 deletions(-)

diff --git a/arch/arm/src/a1x/Make.defs b/arch/arm/src/a1x/Make.defs
index 258e4d92b2..1c5f691283 100644
--- a/arch/arm/src/a1x/Make.defs
+++ b/arch/arm/src/a1x/Make.defs
@@ -20,70 +20,6 @@
 
 include armv7-a/Make.defs
 
-# The vector table is the "head" object, i.e., the one that must forced into
-# the link in order to draw in all of the other components
-
-HEAD_ASRC  = arm_vectortab.S
-
-ifeq ($(CONFIG_BUILD_KERNEL),y)
-crt0$(OBJEXT): crt0.c
-	$(CC) $(CFLAGS) -c armv7-a$(DELIM)crt0.c -o crt0$(OBJEXT)
-
-STARTUP_OBJS = crt0$(OBJEXT)
-endif
-
-# Force the start-up logic to be at the beginning of the .text to simplify
-# debug.
-
-ifeq ($(CONFIG_PAGING),y)
-CMN_ASRCS += arm_pghead.S
-else
-CMN_ASRCS += arm_head.S
-endif
-
-# Common assembly language files
-
-CMN_ASRCS += arm_vectors.S arm_vectoraddrexcptn.S arm_fpuconfig.S
-CMN_ASRCS += cp15_coherent_dcache.S cp15_invalidate_dcache.S
-CMN_ASRCS += cp15_clean_dcache.S cp15_flush_dcache.S cp15_invalidate_dcache_all.S
-CMN_ASRCS += cp15_clean_dcache_all.S cp15_flush_dcache_all.S cp15_cache_size.S
-
-# Common C source files
-
-CMN_CSRCS += arm_dataabort.c arm_doirq.c arm_initialstate.c arm_mmu.c
-CMN_CSRCS += arm_prefetchabort.c arm_schedulesigaction.c
-CMN_CSRCS += arm_sigdeliver.c arm_syscall.c arm_undefinedinsn.c
-CMN_CSRCS += arm_cache.c arm_tcbinfo.c
-
-ifeq ($(CONFIG_PAGING),y)
-CMN_CSRCS += arm_allocpage.c arm_checkmapping.c arm_pginitialize.c
-CMN_CSRCS += arm_va2pte.c
-endif
-
-ifeq ($(CONFIG_ARCH_ADDRENV),y)
-CMN_CSRCS += arm_addrenv.c arm_addrenv_utils.c arm_pgalloc.c
-ifeq ($(CONFIG_ARCH_STACK_DYNAMIC),y)
-CMN_CSRCS += arm_addrenv_ustack.c
-endif
-ifeq ($(CONFIG_ARCH_KERNEL_STACK),y)
-CMN_CSRCS += arm_addrenv_kstack.c
-endif
-ifeq ($(CONFIG_MM_SHM),y)
-CMN_CSRCS += arm_addrenv_shm.c
-endif
-endif
-
-ifeq ($(CONFIG_MM_PGALLOC),y)
-CMN_CSRCS += arm_physpgaddr.c
-ifeq ($(CONFIG_ARCH_PGPOOL_MAPPING),y)
-CMN_CSRCS += arm_virtpgaddr.c
-endif
-endif
-
-ifeq ($(CONFIG_ARCH_FPU),y)
-CMN_CSRCS += arm_fpucmp.c
-endif
-
 # A1x-specific C source files
 
 CHIP_CSRCS  = a1x_boot.c a1x_irq.c a1x_pio.c a1x_lowputc.c a1x_serial.c
diff --git a/arch/arm/src/am335x/Make.defs b/arch/arm/src/am335x/Make.defs
index 398825cb24..7a74566c85 100644
--- a/arch/arm/src/am335x/Make.defs
+++ b/arch/arm/src/am335x/Make.defs
@@ -20,72 +20,6 @@
 
 include armv7-a/Make.defs
 
-# The vector table is the "head" object, i.e., the one that must forced into
-# the link in order to draw in all of the other components
-
-HEAD_ASRC  = arm_vectortab.S
-
-ifeq ($(CONFIG_BUILD_KERNEL),y)
-crt0$(OBJEXT): crt0.c
-	$(CC) $(CFLAGS) -c armv7-a$(DELIM)crt0.c -o crt0$(OBJEXT)
-
-STARTUP_OBJS = crt0$(OBJEXT)
-endif
-
-# Force the start-up logic to be at the beginning of the .text to simplify
-# debug.
-
-ifeq ($(CONFIG_PAGING),y)
-CMN_ASRCS += arm_pghead.S
-else
-CMN_ASRCS += arm_head.S
-endif
-
-# Common assembly language files
-
-CMN_ASRCS += arm_vectors.S arm_vectoraddrexcptn.S arm_fpuconfig.S
-CMN_ASRCS += cp15_coherent_dcache.S cp15_invalidate_dcache.S
-CMN_ASRCS += cp15_clean_dcache.S cp15_flush_dcache.S cp15_invalidate_dcache_all.S
-CMN_ASRCS += cp15_clean_dcache_all.S cp15_flush_dcache_all.S cp15_cache_size.S
-
-# Common C source files
-
-CMN_CSRCS += arm_doirq.c arm_initialstate.c arm_mmu.c arm_prefetchabort.c
-CMN_CSRCS += arm_schedulesigaction.c arm_dataabort.c
-CMN_CSRCS += arm_sigdeliver.c arm_syscall.c arm_undefinedinsn.c
-CMN_CSRCS += arm_cache.c arm_tcbinfo.c
-
-# Configuration dependent C and assembly language files
-
-ifeq ($(CONFIG_PAGING),y)
-CMN_CSRCS += arm_allocpage.c arm_checkmapping.c arm_pginitialize.c
-CMN_CSRCS += arm_va2pte.c
-endif
-
-ifeq ($(CONFIG_ARCH_ADDRENV),y)
-CMN_CSRCS += arm_addrenv.c arm_addrenv_utils.c arm_pgalloc.c
-ifeq ($(CONFIG_ARCH_STACK_DYNAMIC),y)
-CMN_CSRCS += arm_addrenv_ustack.c
-endif
-ifeq ($(CONFIG_ARCH_KERNEL_STACK),y)
-CMN_CSRCS += arm_addrenv_kstack.c
-endif
-ifeq ($(CONFIG_MM_SHM),y)
-CMN_CSRCS += arm_addrenv_shm.c
-endif
-endif
-
-ifeq ($(CONFIG_MM_PGALLOC),y)
-CMN_CSRCS += arm_physpgaddr.c
-ifeq ($(CONFIG_ARCH_PGPOOL_MAPPING),y)
-CMN_CSRCS += arm_virtpgaddr.c
-endif
-endif
-
-ifeq ($(CONFIG_ARCH_FPU),y)
-CMN_CSRCS += arm_fpucmp.c
-endif
-
 # AM335x-specific C source files
 
 CHIP_CSRCS  = am335x_boot.c am335x_clockconfig.c am335x_pinmux.c am335x_irq.c
diff --git a/arch/arm/src/armv7-a/Make.defs b/arch/arm/src/armv7-a/Make.defs
index 93b8b5a75e..dc1adbfa44 100644
--- a/arch/arm/src/armv7-a/Make.defs
+++ b/arch/arm/src/armv7-a/Make.defs
@@ -21,3 +21,73 @@
 # Common ARM files
 
 include common/Make.defs
+
+# The vector table is the "head" object, i.e., the one that must forced into
+# the link in order to draw in all of the other components
+
+HEAD_ASRC += arm_vectortab.S
+
+ifeq ($(CONFIG_BUILD_KERNEL),y)
+crt0$(OBJEXT): crt0.c
+	$(CC) $(CFLAGS) -c armv7-a$(DELIM)crt0.c -o crt0$(OBJEXT)
+
+STARTUP_OBJS = crt0$(OBJEXT)
+endif
+
+# Common assembly language files
+
+CMN_ASRCS += arm_cpuhead.S arm_fpuconfig.S arm_vectoraddrexcptn.S
+CMN_ASRCS += arm_vectors.S cp15_cache_size.S cp15_clean_dcache_all.S
+CMN_ASRCS += cp15_clean_dcache.S cp15_coherent_dcache.S
+CMN_ASRCS += cp15_flush_dcache_all.S cp15_flush_dcache.S
+CMN_ASRCS += cp15_invalidate_dcache_all.S cp15_invalidate_dcache.S
+
+# Common C source files
+
+CMN_CSRCS += arm_cache.c arm_dataabort.c
+CMN_CSRCS += arm_doirq.c arm_gicv2.c arm_gicv2_dump.c
+CMN_CSRCS += arm_initialstate.c arm_mmu.c arm_prefetchabort.c
+CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c
+CMN_CSRCS += arm_syscall.c arm_tcbinfo.c arm_undefinedinsn.c
+
+ifeq ($(CONFIG_ARMV7A_L2CC_PL310),y)
+  CMN_CSRCS += arm_l2cc_pl310.c
+endif
+
+ifeq ($(CONFIG_PAGING),y)
+  CMN_CSRCS += arm_allocpage.c arm_checkmapping.c arm_pginitialize.c
+  CMN_CSRCS += arm_va2pte.c
+  CMN_ASRCS += arm_pghead.S
+else
+  CMN_ASRCS += arm_head.S
+endif
+
+ifeq ($(CONFIG_ARCH_ADDRENV),y)
+  CMN_CSRCS += arm_addrenv.c arm_addrenv_utils.c arm_pgalloc.c
+  ifeq ($(CONFIG_ARCH_STACK_DYNAMIC),y)
+    CMN_CSRCS += arm_addrenv_ustack.c
+  endif
+  ifeq ($(CONFIG_ARCH_KERNEL_STACK),y)
+    CMN_CSRCS += arm_addrenv_kstack.c
+  endif
+  ifeq ($(CONFIG_MM_SHM),y)
+    CMN_CSRCS += arm_addrenv_shm.c
+  endif
+endif
+
+ifeq ($(CONFIG_MM_PGALLOC),y)
+  CMN_CSRCS += arm_physpgaddr.c
+  ifeq ($(CONFIG_ARCH_PGPOOL_MAPPING),y)
+    CMN_CSRCS += arm_virtpgaddr.c
+  endif
+endif
+
+ifeq ($(CONFIG_ARCH_FPU),y)
+  CMN_CSRCS += arm_fpucmp.c
+endif
+
+ifeq ($(CONFIG_SMP),y)
+  CMN_CSRCS += arm_cpuindex.c arm_cpustart.c arm_cpupause.c arm_cpuidlestack.c
+  CMN_CSRCS += arm_scu.c
+endif
+
diff --git a/arch/arm/src/armv7-r/Make.defs b/arch/arm/src/armv7-r/Make.defs
index 4ca08cb2ac..f6f29a67de 100644
--- a/arch/arm/src/armv7-r/Make.defs
+++ b/arch/arm/src/armv7-r/Make.defs
@@ -21,3 +21,38 @@
 # Common ARM files
 
 include common/Make.defs
+
+# The vector table is the "head" object, i.e., the one that must forced into
+# the link in order to draw in all of the other components
+
+HEAD_ASRC += arm_vectortab.S
+
+# Common assembly language files
+
+CMN_CSRCS += arm_cache.c arm_dataabort.c arm_doirq.c arm_gicv2.c
+CMN_CSRCS += arm_initialstate.c arm_prefetchabort.c
+CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c
+CMN_CSRCS += arm_syscall.c arm_tcbinfo.c arm_undefinedinsn.c
+
+# Common C source files
+
+CMN_ASRCS += arm_fpuconfig.S arm_head.S arm_vectoraddrexcptn.S
+CMN_ASRCS += arm_vectors.S arm_vectortab.S cp15_cache_size.S
+CMN_ASRCS += cp15_clean_dcache_all.S cp15_clean_dcache.S
+CMN_ASRCS += cp15_coherent_dcache.S cp15_flush_dcache_all.S
+CMN_ASRCS += cp15_flush_dcache.S cp15_invalidate_dcache_all.S
+CMN_ASRCS += cp15_invalidate_dcache.S
+
+
+ifeq ($(CONFIG_BUILD_PROTECTED),y)
+  CMN_CSRCS += arm_mpu.c
+endif
+
+ifeq ($(CONFIG_ARMV7R_L2CC_PL310),y)
+  CMN_CSRCS += arm_l2cc_pl310.c
+endif
+
+ifeq ($(CONFIG_ARCH_FPU),y)
+  CMN_CSRCS += arm_fpucmp.c
+  CMN_ASRCS += arm_fpuconfig.S
+endif
diff --git a/arch/arm/src/imx6/Make.defs b/arch/arm/src/imx6/Make.defs
index e76d564325..6ec10ee446 100644
--- a/arch/arm/src/imx6/Make.defs
+++ b/arch/arm/src/imx6/Make.defs
@@ -20,93 +20,6 @@
 
 include armv7-a/Make.defs
 
-# The vector table is the "head" object, i.e., the one that must forced into
-# the link in order to draw in all of the other components
-
-HEAD_ASRC  = arm_vectortab.S
-
-ifeq ($(CONFIG_BUILD_KERNEL),y)
-crt0$(OBJEXT): crt0.c
-	$(CC) $(CFLAGS) -c armv7-a$(DELIM)crt0.c -o crt0$(OBJEXT)
-
-STARTUP_OBJS = crt0$(OBJEXT)
-endif
-
-# Force the start-up logic to be at the beginning of the .text to simplify
-# debug.
-
-ifeq ($(CONFIG_PAGING),y)
-CMN_ASRCS += arm_pghead.S
-else
-CMN_ASRCS += arm_head.S
-ifeq ($(CONFIG_SMP),y)
-CMN_ASRCS += arm_cpuhead.S
-endif
-endif
-
-# Common assembly language files
-
-CMN_ASRCS += arm_vectors.S arm_fpuconfig.S
-CMN_ASRCS += arm_vectoraddrexcptn.S
-CMN_ASRCS += cp15_coherent_dcache.S cp15_invalidate_dcache.S
-CMN_ASRCS += cp15_clean_dcache.S cp15_flush_dcache.S cp15_invalidate_dcache_all.S
-CMN_ASRCS += cp15_clean_dcache_all.S cp15_flush_dcache_all.S cp15_cache_size.S
-
-# Common C source files
-
-CMN_CSRCS += arm_dataabort.c arm_doirq.c arm_gicv2.c arm_initialstate.c
-CMN_CSRCS += arm_mmu.c arm_prefetchabort.c arm_schedulesigaction.c
-CMN_CSRCS += arm_sigdeliver.c arm_syscall.c arm_undefinedinsn.c
-CMN_CSRCS += arm_cache.c arm_tcbinfo.c
-
-ifneq ($(CONFIG_ARCH_IDLE_CUSTOM),y)
-CMN_CSRCS += imx_idle.c
-endif
-
-ifeq ($(CONFIG_SMP),y)
-CMN_CSRCS += arm_cpuindex.c arm_cpustart.c arm_cpupause.c arm_cpuidlestack.c
-CMN_CSRCS += arm_scu.c
-endif
-
-ifeq ($(CONFIG_DEBUG_IRQ_INFO),y)
-CMN_CSRCS += arm_gicv2_dump.c
-endif
-
-# Configuration dependent C and assembly language files
-
-ifeq ($(CONFIG_PAGING),y)
-CMN_CSRCS += arm_allocpage.c arm_checkmapping.c arm_pginitialize.c
-CMN_CSRCS += arm_va2pte.c
-endif
-
-ifeq ($(CONFIG_ARCH_ADDRENV),y)
-CMN_CSRCS += arm_addrenv.c arm_addrenv_utils.c arm_pgalloc.c
-ifeq ($(CONFIG_ARCH_STACK_DYNAMIC),y)
-CMN_CSRCS += arm_addrenv_ustack.c
-endif
-ifeq ($(CONFIG_ARCH_KERNEL_STACK),y)
-CMN_CSRCS += arm_addrenv_kstack.c
-endif
-ifeq ($(CONFIG_MM_SHM),y)
-CMN_CSRCS += arm_addrenv_shm.c
-endif
-endif
-
-ifeq ($(CONFIG_MM_PGALLOC),y)
-CMN_CSRCS += arm_physpgaddr.c
-ifeq ($(CONFIG_ARCH_PGPOOL_MAPPING),y)
-CMN_CSRCS += arm_virtpgaddr.c
-endif
-endif
-
-ifeq ($(CONFIG_ARCH_L2CACHE),y)
-CMN_CSRCS += arm_l2cc_pl310.c
-endif
-
-ifeq ($(CONFIG_ARCH_FPU),y)
-CMN_CSRCS += arm_fpucmp.c
-endif
-
 # i.MX6-specific C source files
 
 CHIP_CSRCS  = imx_boot.c imx_memorymap.c imx_clockconfig.c imx_irq.c
diff --git a/arch/arm/src/sama5/Make.defs b/arch/arm/src/sama5/Make.defs
index f669badff5..24ac6fbba3 100644
--- a/arch/arm/src/sama5/Make.defs
+++ b/arch/arm/src/sama5/Make.defs
@@ -20,77 +20,6 @@
 
 include armv7-a/Make.defs
 
-# The vector table is the "head" object, i.e., the one that must forced into
-# the link in order to draw in all of the other components
-
-HEAD_ASRC  = arm_vectortab.S
-
-ifeq ($(CONFIG_BUILD_KERNEL),y)
-crt0$(OBJEXT): crt0.c
-	$(CC) $(CFLAGS) -c armv7-a$(DELIM)crt0.c -o crt0$(OBJEXT)
-
-STARTUP_OBJS = crt0$(OBJEXT)
-endif
-
-# Force the start-up logic to be at the beginning of the .text to simplify
-# debug.
-
-ifeq ($(CONFIG_PAGING),y)
-CMN_ASRCS += arm_pghead.S
-else
-CMN_ASRCS += arm_head.S
-endif
-
-# Common assembly language files
-
-CMN_ASRCS += arm_vectors.S arm_fpuconfig.S arm_vectoraddrexcptn.S
-CMN_ASRCS += cp15_coherent_dcache.S cp15_invalidate_dcache.S
-CMN_ASRCS += cp15_clean_dcache.S cp15_flush_dcache.S cp15_invalidate_dcache_all.S
-CMN_ASRCS += cp15_clean_dcache_all.S cp15_flush_dcache_all.S cp15_cache_size.S
-
-# Configuration dependent assembly language files
-
-# Common C source files
-
-CMN_CSRCS += arm_dataabort.c arm_doirq.c arm_initialstate.c arm_mmu.c
-CMN_CSRCS += arm_prefetchabort.c arm_cache.c arm_schedulesigaction.c
-CMN_CSRCS += arm_sigdeliver.c arm_syscall.c arm_undefinedinsn.c arm_tcbinfo.c
-
-# Configuration dependent C files
-
-ifeq ($(CONFIG_ARMV7A_L2CC_PL310),y)
-CMN_CSRCS += arm_l2cc_pl310.c
-endif
-
-ifeq ($(CONFIG_PAGING),y)
-CMN_CSRCS += arm_allocpage.c arm_checkmapping.c arm_pginitialize.c
-CMN_CSRCS += arm_va2pte.c
-endif
-
-ifeq ($(CONFIG_ARCH_ADDRENV),y)
-CMN_CSRCS += arm_addrenv.c arm_addrenv_utils.c arm_pgalloc.c
-ifeq ($(CONFIG_ARCH_STACK_DYNAMIC),y)
-CMN_CSRCS += arm_addrenv_ustack.c
-endif
-ifeq ($(CONFIG_ARCH_KERNEL_STACK),y)
-CMN_CSRCS += arm_addrenv_kstack.c
-endif
-ifeq ($(CONFIG_MM_SHM),y)
-CMN_CSRCS += arm_addrenv_shm.c
-endif
-endif
-
-ifeq ($(CONFIG_MM_PGALLOC),y)
-CMN_CSRCS += arm_physpgaddr.c
-ifeq ($(CONFIG_ARCH_PGPOOL_MAPPING),y)
-CMN_CSRCS += arm_virtpgaddr.c
-endif
-endif
-
-ifeq ($(CONFIG_ARCH_FPU),y)
-CMN_CSRCS += arm_fpucmp.c
-endif
-
 # SAMA5-specific C source files
 
 CHIP_CSRCS  = sam_allocateheap.c sam_boot.c sam_clockconfig.c sam_irq.c
diff --git a/arch/arm/src/tms570/Make.defs b/arch/arm/src/tms570/Make.defs
index d1e9232db5..3abfbef822 100644
--- a/arch/arm/src/tms570/Make.defs
+++ b/arch/arm/src/tms570/Make.defs
@@ -20,46 +20,6 @@
 
 include armv7-r/Make.defs
 
-# The vector table is the "head" object, i.e., the one that must forced into
-# the link in order to draw in all of the other components
-
-HEAD_ASRC += arm_vectortab.S
-
-# Common assembly language files
-
-CMN_ASRCS += arm_vectortab.S arm_vectors.S arm_head.S
-CMN_ASRCS += arm_vectoraddrexcptn.S
-CMN_ASRCS += cp15_coherent_dcache.S cp15_invalidate_dcache.S
-CMN_ASRCS += cp15_clean_dcache.S cp15_flush_dcache.S
-CMN_ASRCS += cp15_clean_dcache_all.S cp15_flush_dcache_all.S
-CMN_ASRCS += cp15_invalidate_dcache_all.S cp15_cache_size.S arm_tcbinfo.c
-
-# Configuration dependent assembly language files
-
-ifeq ($(CONFIG_ARCH_FPU),y)
-CMN_ASRCS += arm_fpuconfig.S
-endif
-
-# Common C source files
-
-CMN_CSRCS += arm_dataabort.c arm_doirq.c arm_initialstate.c
-CMN_CSRCS += arm_prefetchabort.c arm_schedulesigaction.c arm_sigdeliver.c
-CMN_CSRCS += arm_syscall.c arm_undefinedinsn.c arm_cache.c
-
-# Configuration dependent C files
-
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_mpu.c
-endif
-
-ifeq ($(CONFIG_ARMV7R_L2CC_PL310),y)
-CMN_CSRCS += arm_l2cc_pl310.c
-endif
-
-ifeq ($(CONFIG_ARCH_FPU),y)
-CMN_CSRCS += arm_fpucmp.c
-endif
-
 # SAMA5-specific C source files
 
 CHIP_CSRCS  = tms570_boot.c tms570_clockconfig.c tms570_esm.c tms570_gio.c


[incubator-nuttx] 02/04: arch/cortex-m/Make.defs: unify arch common source include

Posted by xi...@apache.org.
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/incubator-nuttx.git

commit 5677fe215354c028688249920d2ce71ed3f58eb6
Author: chao.an <an...@xiaomi.com>
AuthorDate: Sat Apr 30 12:58:59 2022 +0800

    arch/cortex-m/Make.defs: unify arch common source include
    
    Signed-off-by: chao.an <an...@xiaomi.com>
---
 arch/arm/src/armv6-m/Make.defs         | 14 ++++++++++++++
 arch/arm/src/armv7-m/Make.defs         | 34 +++++++++++++++++++++++++++++++++
 arch/arm/src/armv8-m/Make.defs         | 35 ++++++++++++++++++++++++++++++++++
 arch/arm/src/cxd56xx/Make.defs         | 27 --------------------------
 arch/arm/src/efm32/Make.defs           | 24 -----------------------
 arch/arm/src/eoss3/Make.defs           | 16 ----------------
 arch/arm/src/imxrt/Make.defs           | 26 -------------------------
 arch/arm/src/kinetis/Make.defs         | 28 ---------------------------
 arch/arm/src/kl/Make.defs              | 10 ----------
 arch/arm/src/lc823450/Make.defs        | 22 +--------------------
 arch/arm/src/lpc17xx_40xx/Make.defs    | 24 -----------------------
 arch/arm/src/lpc43xx/Make.defs         | 19 ------------------
 arch/arm/src/lpc54xx/Make.defs         | 19 ------------------
 arch/arm/src/max326xx/Make.defs        | 20 -------------------
 arch/arm/src/nrf52/Make.defs           | 30 +++--------------------------
 arch/arm/src/nuc1xx/Make.defs          | 10 ----------
 arch/arm/src/phy62xx/Make.defs         | 14 ++------------
 arch/arm/src/rp2040/Make.defs          | 14 --------------
 arch/arm/src/rtl8720c/Make.defs        | 10 ----------
 arch/arm/src/s32k1xx/Make.defs         |  9 ---------
 arch/arm/src/s32k1xx/s32k11x/Make.defs | 10 ----------
 arch/arm/src/s32k1xx/s32k14x/Make.defs | 14 --------------
 arch/arm/src/sam34/Make.defs           | 21 --------------------
 arch/arm/src/samd2l2/Make.defs         | 10 ----------
 arch/arm/src/samd5e5/Make.defs         | 21 --------------------
 arch/arm/src/samv7/Make.defs           | 26 -------------------------
 arch/arm/src/stm32/Make.defs           | 32 -------------------------------
 arch/arm/src/stm32f0l0g0/Make.defs     | 10 ----------
 arch/arm/src/stm32f7/Make.defs         | 30 -----------------------------
 arch/arm/src/stm32h7/Make.defs         | 32 ++-----------------------------
 arch/arm/src/stm32l4/Make.defs         | 24 -----------------------
 arch/arm/src/stm32l5/Make.defs         | 25 ------------------------
 arch/arm/src/stm32u5/Make.defs         | 28 ---------------------------
 arch/arm/src/tiva/Make.defs            | 23 ++--------------------
 arch/arm/src/xmc4/Make.defs            | 27 --------------------------
 35 files changed, 93 insertions(+), 645 deletions(-)

diff --git a/arch/arm/src/armv6-m/Make.defs b/arch/arm/src/armv6-m/Make.defs
index de3f30efce..a99c487961 100644
--- a/arch/arm/src/armv6-m/Make.defs
+++ b/arch/arm/src/armv6-m/Make.defs
@@ -21,3 +21,17 @@
 # Common ARM files
 
 include common/Make.defs
+
+CMN_ASRCS += arm_exception.S
+
+CMN_CSRCS += arm_doirq.c arm_hardfault.c arm_initialstate.c
+CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_svcall.c
+CMN_CSRCS += arm_systemreset.c arm_tcbinfo.c arm_vectors.c
+
+ifeq ($(CONFIG_DEBUG_FEATURES),y)
+  CMN_CSRCS += arm_dumpnvic.c
+endif
+
+ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
+  CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
+endif
diff --git a/arch/arm/src/armv7-m/Make.defs b/arch/arm/src/armv7-m/Make.defs
index 8ef0c33694..a5e1b5dc69 100644
--- a/arch/arm/src/armv7-m/Make.defs
+++ b/arch/arm/src/armv7-m/Make.defs
@@ -21,3 +21,37 @@
 # Common ARM files
 
 include common/Make.defs
+
+CMN_ASRCS += arm_exception.S
+
+CMN_CSRCS += arm_busfault.c arm_cache.c arm_doirq.c
+CMN_CSRCS += arm_hardfault.c arm_initialstate.c arm_itm.c
+CMN_CSRCS += arm_memfault.c arm_perf.c
+CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c
+CMN_CSRCS += arm_svcall.c arm_systemreset.c arm_tcbinfo.c
+CMN_CSRCS += arm_trigger_irq.c arm_usagefault.c arm_vectors.c
+
+ifeq ($(CONFIG_ARMV7M_SYSTICK),y)
+  CMN_CSRCS += arm_systick.c
+endif
+
+ifeq ($(CONFIG_ARMV7M_ITMSYSLOG),y)
+  CMN_CSRCS += arm_itm_syslog.c
+endif
+
+ifeq ($(CONFIG_ARMV7M_STACKCHECK),y)
+  CMN_CSRCS += arm_stackcheck.c
+endif
+
+ifeq ($(CONFIG_ARCH_FPU),y)
+  CMN_CSRCS += arm_fpuconfig.c
+  CMN_CSRCS += arm_fpucmp.c
+endif
+
+ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
+  CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
+endif
+
+ifneq ($(filter y,$(CONFIG_ARM_MPU) $(CONFIG_ARM_MPU_EARLY_RESET)),)
+  CMN_CSRCS += arm_mpu.c
+endif
diff --git a/arch/arm/src/armv8-m/Make.defs b/arch/arm/src/armv8-m/Make.defs
index c1e3f7676e..b4a0da3bed 100644
--- a/arch/arm/src/armv8-m/Make.defs
+++ b/arch/arm/src/armv8-m/Make.defs
@@ -21,3 +21,38 @@
 # Common ARM files
 
 include common/Make.defs
+
+CMN_ASRCS += arm_exception.S
+
+CMN_CSRCS += arm_busfault.c arm_cache.c arm_doirq.c
+CMN_CSRCS += arm_hardfault.c arm_initialstate.c arm_itm.c
+CMN_CSRCS += arm_memfault.c arm_perf.c arm_sau.c
+CMN_CSRCS += arm_schedulesigaction.c arm_securefault.c arm_secure_irq.c
+CMN_CSRCS += arm_sigdeliver.c arm_svcall.c
+CMN_CSRCS += arm_systemreset.c arm_tcbinfo.c
+CMN_CSRCS += arm_trigger_irq.c arm_usagefault.c arm_vectors.c
+
+ifeq ($(CONFIG_ARMV8M_SYSTICK),y)
+  CMN_CSRCS += arm_systick.c
+endif
+
+ifeq ($(CONFIG_ARMV8M_ITMSYSLOG),y)
+  CMN_CSRCS += arm_itm_syslog.c
+endif
+
+ifeq ($(CONFIG_ARMV8M_STACKCHECK),y)
+  CMN_CSRCS += arm_stackcheck.c
+endif
+
+ifeq ($(CONFIG_ARCH_FPU),y)
+  CMN_CSRCS += arm_fpuconfig.c
+  CMN_CSRCS += arm_fpucmp.c
+endif
+
+ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
+  CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
+endif
+
+ifneq ($(filter y,$(CONFIG_ARM_MPU) $(CONFIG_ARM_MPU_EARLY_RESET)),)
+  CMN_CSRCS += arm_mpu.c
+endif
diff --git a/arch/arm/src/cxd56xx/Make.defs b/arch/arm/src/cxd56xx/Make.defs
index de0b5e60d1..ee2928dc9a 100644
--- a/arch/arm/src/cxd56xx/Make.defs
+++ b/arch/arm/src/cxd56xx/Make.defs
@@ -20,33 +20,6 @@
 
 include armv7-m/Make.defs
 
-CMN_ASRCS += arm_exception.S
-
-CMN_CSRCS += arm_initialstate.c arm_memfault.c arm_schedulesigaction.c
-CMN_CSRCS += arm_sigdeliver.c arm_doirq.c arm_hardfault.c arm_svcall.c
-CMN_CSRCS += arm_tcbinfo.c arm_vectors.c
-
-ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
-CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
-endif
-
-ifeq ($(CONFIG_ARCH_MEMCPY),y)
-CMN_ASRCS += up_memcpy.S
-endif
-
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_mpu.c
-endif
-
-ifeq ($(CONFIG_ARCH_FPU),y)
-CMN_CSRCS += arm_fpuconfig.c
-CMN_CSRCS += arm_fpucmp.c
-endif
-
-ifeq ($(CONFIG_ARMV7M_ITMSYSLOG),y)
-CMN_CSRCS += arm_itm_syslog.c
-endif
-
 CHIP_ASRCS += cxd56_farapistub.S
 
 CHIP_CSRCS  = cxd56_allocateheap.c cxd56_idle.c
diff --git a/arch/arm/src/efm32/Make.defs b/arch/arm/src/efm32/Make.defs
index a154f0be91..3998938f1b 100644
--- a/arch/arm/src/efm32/Make.defs
+++ b/arch/arm/src/efm32/Make.defs
@@ -20,30 +20,6 @@
 
 include armv7-m/Make.defs
 
-CMN_ASRCS += arm_exception.S
-
-CMN_CSRCS += arm_vectors.c arm_doirq.c arm_hardfault.c arm_initialstate.c
-CMN_CSRCS += arm_itm.c arm_memfault.c arm_schedulesigaction.c
-CMN_CSRCS += arm_sigdeliver.c arm_svcall.c arm_systemreset.c
-CMN_CSRCS += arm_trigger_irq.c arm_tcbinfo.c
-
-ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
-CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
-endif
-
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_mpu.c
-endif
-
-ifeq ($(CONFIG_ARCH_FPU),y)
-CMN_CSRCS += arm_fpuconfig.c
-CMN_CSRCS += arm_fpucmp.c
-endif
-
-ifeq ($(CONFIG_ARMV7M_ITMSYSLOG),y)
-CMN_CSRCS += arm_itm_syslog.c
-endif
-
 CHIP_CSRCS  = efm32_start.c efm32_clockconfig.c efm32_irq.c efm32_timerisr.c
 CHIP_CSRCS += efm32_gpio.c efm32_lowputc.c efm32_timer.c efm32_i2c.c
 
diff --git a/arch/arm/src/eoss3/Make.defs b/arch/arm/src/eoss3/Make.defs
index 8cd303f9d0..f210879f64 100644
--- a/arch/arm/src/eoss3/Make.defs
+++ b/arch/arm/src/eoss3/Make.defs
@@ -20,22 +20,6 @@
 
 include armv7-m/Make.defs
 
-CMN_ASRCS += arm_exception.S
-
-CMN_CSRCS += arm_vectors.c arm_doirq.c arm_hardfault.c
-CMN_CSRCS += arm_initialstate.c arm_itm.c arm_memfault.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_svcall.c
-CMN_CSRCS += arm_systemreset.c arm_trigger_irq.c arm_tcbinfo.c
-
-ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
-CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
-endif
-
-ifeq ($(CONFIG_ARCH_FPU),y)
-CMN_CSRCS += arm_fpuconfig.c
-CMN_CSRCS += arm_fpucmp.c
-endif
-
 CHIP_CSRCS  = eoss3_start.c eoss3_gpio.c eoss3_lowputc.c eoss3_clockconfig.c
 CHIP_CSRCS += eoss3_irq.c
 CHIP_CSRCS += eoss3_serial.c
diff --git a/arch/arm/src/imxrt/Make.defs b/arch/arm/src/imxrt/Make.defs
index 3d4fa61ba3..f67aa27b9c 100644
--- a/arch/arm/src/imxrt/Make.defs
+++ b/arch/arm/src/imxrt/Make.defs
@@ -22,32 +22,6 @@
 
 include armv7-m/Make.defs
 
-CMN_ASRCS += arm_exception.S
-
-CMN_CSRCS += arm_initialstate.c arm_memfault.c arm_schedulesigaction.c
-CMN_CSRCS += arm_sigdeliver.c arm_doirq.c arm_hardfault.c
-CMN_CSRCS += arm_svcall.c arm_trigger_irq.c arm_systemreset.c
-CMN_CSRCS += arm_tcbinfo.c arm_vectors.c
-
-ifeq ($(CONFIG_ARMV7M_STACKCHECK),y)
-CMN_CSRCS += arm_stackcheck.c
-endif
-
-ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
-CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
-endif
-
-ifeq ($(CONFIG_ARM_MPU),y)
-CMN_CSRCS += arm_mpu.c
-endif
-
-CMN_CSRCS += arm_cache.c
-
-ifeq ($(CONFIG_ARCH_FPU),y)
-CMN_CSRCS += arm_fpuconfig.c
-CMN_CSRCS += arm_fpucmp.c
-endif
-
 # Required i.MX RT files
 
 CHIP_CSRCS  = imxrt_allocateheap.c imxrt_start.c imxrt_clockconfig.c
diff --git a/arch/arm/src/kinetis/Make.defs b/arch/arm/src/kinetis/Make.defs
index 098a387394..3cf29b248d 100644
--- a/arch/arm/src/kinetis/Make.defs
+++ b/arch/arm/src/kinetis/Make.defs
@@ -20,34 +20,6 @@
 
 include armv7-m/Make.defs
 
-CMN_ASRCS += arm_exception.S
-
-CMN_CSRCS += arm_vectors.c arm_memfault.c arm_initialstate.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c
-CMN_CSRCS += arm_doirq.c arm_hardfault.c arm_svcall.c
-CMN_CSRCS += arm_systemreset.c arm_trigger_irq.c arm_tcbinfo.c
-
-ifeq ($(CONFIG_ARMV7M_STACKCHECK),y)
-CMN_CSRCS += arm_stackcheck.c
-endif
-
-ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
-CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
-endif
-
-ifeq ($(CONFIG_ARM_MPU),y)
-CMN_CSRCS += arm_mpu.c
-endif
-
-ifeq ($(CONFIG_ARCH_FPU),y)
-CMN_CSRCS += arm_fpuconfig.c
-CMN_CSRCS += arm_fpucmp.c
-endif
-
-ifeq ($(CONFIG_ARMV7M_ITMSYSLOG),y)
-CMN_CSRCS += arm_itm_syslog.c
-endif
-
 # Required Kinetis files
 
 CHIP_CSRCS  = kinetis_allocateheap.c kinetis_clockconfig.c kinetis_clrpend.c
diff --git a/arch/arm/src/kl/Make.defs b/arch/arm/src/kl/Make.defs
index f67ad84d97..80046d2395 100644
--- a/arch/arm/src/kl/Make.defs
+++ b/arch/arm/src/kl/Make.defs
@@ -20,16 +20,6 @@
 
 include armv6-m/Make.defs
 
-CMN_ASRCS += arm_exception.S
-
-CMN_CSRCS += arm_initialstate.c arm_schedulesigaction.c arm_sigdeliver.c
-CMN_CSRCS += arm_systemreset.c arm_doirq.c arm_hardfault.c arm_svcall.c
-CMN_CSRCS += arm_vectors.c arm_tcbinfo.c
-
-ifeq ($(CONFIG_DEBUG_FEATURES),y)
-CMN_CSRCS += arm_dumpnvic.c
-endif
-
 CHIP_CSRCS  = kl_clockconfig.c kl_gpio.c kl_irq.c kl_lowputc.c
 CHIP_CSRCS += kl_serial.c kl_start.c kl_cfmconfig.c
 
diff --git a/arch/arm/src/lc823450/Make.defs b/arch/arm/src/lc823450/Make.defs
index 1f1820c2fd..1d93056046 100644
--- a/arch/arm/src/lc823450/Make.defs
+++ b/arch/arm/src/lc823450/Make.defs
@@ -20,25 +20,6 @@
 
 include armv7-m/Make.defs
 
-CMN_ASRCS += arm_exception.S
-
-CMN_CSRCS += arm_initialstate.c arm_memfault.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_systemreset.c
-CMN_CSRCS += arm_doirq.c arm_hardfault.c arm_svcall.c arm_trigger_irq.c
-CMN_CSRCS += arm_tcbinfo.c arm_vectors.c
-
-ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
-CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
-endif
-
-ifeq ($(CONFIG_ARCH_MEMCPY),y)
-CMN_ASRCS += memcpy-armv7m.S
-endif
-
-ifeq ($(CONFIG_ARCH_MEMMOVE),y)
-CMN_CSRCS += up_memmove.c
-endif
-
 CHIP_CSRCS  = lc823450_allocateheap2.c lc823450_start.c lc823450_irq.c lc823450_timer.c
 CHIP_CSRCS += lc823450_lowputc.c lc823450_serial.c lc823450_clockconfig.c
 CHIP_CSRCS += lc823450_syscontrol.c lc823450_gpio.c
@@ -75,7 +56,7 @@ CHIP_CSRCS += lc823450_spi.c
 endif
 
 ifeq ($(CONFIG_ARCH_DMA), y)
-CMN_CSRCS += lc823450_dma.c
+CHIP_CSRCS += lc823450_dma.c
 endif
 
 ifeq ($(CONFIG_RTC),y)
@@ -134,6 +115,5 @@ CHIP_CSRCS += lc823450_userspace.c
 endif
 
 ifeq ($(CONFIG_ARM_MPU),y)
-CMN_CSRCS  += arm_mpu.c
 CHIP_CSRCS += lc823450_mpuinit2.c
 endif
diff --git a/arch/arm/src/lpc17xx_40xx/Make.defs b/arch/arm/src/lpc17xx_40xx/Make.defs
index 0f2e26c734..79c96c8a01 100644
--- a/arch/arm/src/lpc17xx_40xx/Make.defs
+++ b/arch/arm/src/lpc17xx_40xx/Make.defs
@@ -22,30 +22,6 @@
 
 include armv7-m/Make.defs
 
-CMN_ASRCS += arm_exception.S
-
-CMN_CSRCS += arm_vectors.c arm_memfault.c arm_initialstate.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_trigger_irq.c
-CMN_CSRCS += arm_doirq.c arm_hardfault.c arm_svcall.c arm_systemreset.c
-CMN_CSRCS += arm_tcbinfo.c arm_perf.c
-
-ifeq ($(CONFIG_ARMV7M_STACKCHECK),y)
-CMN_CSRCS += arm_stackcheck.c
-endif
-
-ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
-CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
-endif
-
-ifeq ($(CONFIG_ARM_MPU),y)
-CMN_CSRCS += arm_mpu.c
-endif
-
-ifeq ($(CONFIG_ARCH_FPU),y)
-CMN_CSRCS += arm_fpuconfig.c
-CMN_CSRCS += arm_fpucmp.c
-endif
-
 # Required LPC17xx files
 
 CHIP_CSRCS  = lpc17_40_allocateheap.c lpc17_40_clockconfig.c lpc17_40_clrpend.c
diff --git a/arch/arm/src/lpc43xx/Make.defs b/arch/arm/src/lpc43xx/Make.defs
index d01bf2f065..ab3c658702 100644
--- a/arch/arm/src/lpc43xx/Make.defs
+++ b/arch/arm/src/lpc43xx/Make.defs
@@ -20,25 +20,6 @@
 
 include armv7-m/Make.defs
 
-CMN_ASRCS += arm_exception.S
-
-CMN_CSRCS += arm_vectors.c arm_doirq.c arm_hardfault.c
-CMN_CSRCS += arm_initialstate.c arm_memfault.c arm_schedulesigaction.c
-CMN_CSRCS += arm_sigdeliver.c arm_svcall.c arm_trigger_irq.c arm_tcbinfo.c
-
-ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
-CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
-endif
-
-ifeq ($(CONFIG_ARM_MPU),y)
-CMN_CSRCS += arm_mpu.c
-endif
-
-ifeq ($(CONFIG_ARCH_FPU),y)
-CMN_CSRCS += arm_fpuconfig.c
-CMN_CSRCS += arm_fpucmp.c
-endif
-
 CHIP_CSRCS  = lpc43_allocateheap.c lpc43_cgu.c lpc43_clrpend.c lpc43_gpio.c
 CHIP_CSRCS += lpc43_irq.c lpc43_pinconfig.c lpc43_rgu.c lpc43_serial.c
 CHIP_CSRCS += lpc43_start.c lpc43_uart.c
diff --git a/arch/arm/src/lpc54xx/Make.defs b/arch/arm/src/lpc54xx/Make.defs
index 3e5fcc2ab2..a9edb18d49 100644
--- a/arch/arm/src/lpc54xx/Make.defs
+++ b/arch/arm/src/lpc54xx/Make.defs
@@ -20,25 +20,6 @@
 
 include armv7-m/Make.defs
 
-CMN_ASRCS += arm_exception.S
-
-CMN_CSRCS += arm_vectors.c arm_doirq.c arm_hardfault.c
-CMN_CSRCS += arm_initialstate.c arm_memfault.c arm_schedulesigaction.c
-CMN_CSRCS += arm_sigdeliver.c arm_svcall.c arm_trigger_irq.c arm_tcbinfo.c
-
-ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
-CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
-endif
-
-ifeq ($(CONFIG_ARM_MPU),y)
-CMN_CSRCS += arm_mpu.c
-endif
-
-ifeq ($(CONFIG_ARCH_FPU),y)
-CMN_CSRCS += arm_fpuconfig.c
-CMN_CSRCS += arm_fpucmp.c
-endif
-
 CHIP_CSRCS  = lpc54_start.c lpc54_clockconfig.c lpc54_irq.c lpc54_clrpend.c
 CHIP_CSRCS += lpc54_allocateheap.c lpc54_lowputc.c lpc54_gpio.c lpc54_reset.c
 
diff --git a/arch/arm/src/max326xx/Make.defs b/arch/arm/src/max326xx/Make.defs
index e1d98ad598..02efb42e08 100644
--- a/arch/arm/src/max326xx/Make.defs
+++ b/arch/arm/src/max326xx/Make.defs
@@ -22,26 +22,6 @@
 
 include armv7-m/Make.defs
 
-CMN_ASRCS += arm_exception.S
-
-CMN_CSRCS += arm_vectors.c arm_doirq.c arm_hardfault.c
-CMN_CSRCS += arm_initialstate.c arm_memfault.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c
-CMN_CSRCS += arm_svcall.c arm_trigger_irq.c arm_tcbinfo.c
-
-ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
-CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
-endif
-
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_mpu.c
-endif
-
-ifeq ($(CONFIG_ARCH_FPU),y)
-CMN_CSRCS += arm_fpuconfig.c
-CMN_CSRCS += arm_fpucmp.c
-endif
-
 # Common MAX326XX Source Files
 
 CHIP_CSRCS  = max326_start.c max326_irq.c max326_clrpend.c
diff --git a/arch/arm/src/nrf52/Make.defs b/arch/arm/src/nrf52/Make.defs
index 3ba4ca824a..282976f9d7 100644
--- a/arch/arm/src/nrf52/Make.defs
+++ b/arch/arm/src/nrf52/Make.defs
@@ -20,39 +20,15 @@
 
 include armv7-m/Make.defs
 
-CMN_ASRCS += arm_exception.S
-
-CMN_CSRCS += arm_vectors.c arm_doirq.c arm_hardfault.c arm_initialstate.c
-CMN_CSRCS += arm_memfault.c arm_schedulesigaction.c arm_sigdeliver.c
-CMN_CSRCS += arm_svcall.c arm_trigger_irq.c arm_systemreset.c
-CMN_CSRCS += arm_tcbinfo.c
-
 ifeq ($(CONFIG_NRF52_SYSTIMER_SYSTICK),y)
-CMN_CSRCS += arm_systick.c nrf52_systick.c
+CHIP_CSRCS += nrf52_systick.c
 else
 ifeq ($(CONFIG_NRF52_SYSTIMER_RTC),y)
-CMN_CSRCS += nrf52_tickless_rtc.c
-endif
-endif
-
-ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
-CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
-endif
-
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_mpu.c
-endif
-
-ifeq ($(CONFIG_ARMV7M_STACKCHECK),y)
-CMN_CSRCS += arm_stackcheck.c
+CHIP_CSRCS += nrf52_tickless_rtc.c
 endif
-
-ifeq ($(CONFIG_ARCH_FPU),y)
-CMN_CSRCS += arm_fpuconfig.c
-CMN_CSRCS += arm_fpucmp.c
 endif
 
-CHIP_CSRCS  = nrf52_start.c nrf52_clockconfig.c nrf52_irq.c nrf52_utils.c
+CHIP_CSRCS += nrf52_start.c nrf52_clockconfig.c nrf52_irq.c nrf52_utils.c
 CHIP_CSRCS += nrf52_allocateheap.c nrf52_lowputc.c nrf52_gpio.c nrf52_nvmc.c
 CHIP_CSRCS += nrf52_uid.c
 
diff --git a/arch/arm/src/nuc1xx/Make.defs b/arch/arm/src/nuc1xx/Make.defs
index 2d60aba1c8..44df844801 100644
--- a/arch/arm/src/nuc1xx/Make.defs
+++ b/arch/arm/src/nuc1xx/Make.defs
@@ -20,16 +20,6 @@
 
 include armv6-m/Make.defs
 
-CMN_ASRCS += arm_exception.S
-
-CMN_CSRCS += arm_initialstate.c arm_schedulesigaction.c arm_sigdeliver.c
-CMN_CSRCS += arm_systemreset.c arm_doirq.c arm_hardfault.c arm_svcall.c
-CMN_CSRCS += arm_vectors.c arm_tcbinfo.c
-
-ifeq ($(CONFIG_DEBUG_FEATURES),y)
-CMN_CSRCS += arm_dumpnvic.c
-endif
-
 CHIP_CSRCS  = nuc_clockconfig.c nuc_gpio.c nuc_irq.c nuc_lowputc.c
 CHIP_CSRCS += nuc_serial.c nuc_start.c
 
diff --git a/arch/arm/src/phy62xx/Make.defs b/arch/arm/src/phy62xx/Make.defs
index 9c99eed685..846f005da9 100644
--- a/arch/arm/src/phy62xx/Make.defs
+++ b/arch/arm/src/phy62xx/Make.defs
@@ -20,19 +20,9 @@
 
 include armv6-m/Make.defs
 
-CMN_ASRCS += phy62xx_exception.S phy62xx_start.S
-
-CMN_CSRCS += arm_initialstate.c arm_schedulesigaction.c arm_sigdeliver.c
-CMN_CSRCS += arm_systemreset.c arm_doirq.c phy62xx_hardfault.c
-CMN_CSRCS += arm_svcall.c arm_vectors.c arm_tcbinfo.c
-
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_pthread_exit.c
-endif
+CMN_ASRCS := $(filter-out arm_exception.S,$(CMN_ASRCS))
 
-ifeq ($(CONFIG_DEBUG_FEATURES),y)
-CMN_CSRCS += arm_dumpnvic.c
-endif
+CMN_ASRCS += phy62xx_exception.S phy62xx_start.S
 
 CHIP_CSRCS  = start.c gpio.c irq.c timer.c uart.c pwrmgr.c idle.c my_printf.c
 #CHIP_CSRCS  = start.c gpio.c irq.c timer.c clock.c uart.c pwrmgr.c idle.c my_printf.c flash.c
diff --git a/arch/arm/src/rp2040/Make.defs b/arch/arm/src/rp2040/Make.defs
index 6207e4db8f..3b19c39865 100644
--- a/arch/arm/src/rp2040/Make.defs
+++ b/arch/arm/src/rp2040/Make.defs
@@ -20,20 +20,6 @@
 
 include armv6-m/Make.defs
 
-CMN_ASRCS += arm_exception.S
-
-CMN_CSRCS += arm_initialstate.c arm_schedulesigaction.c arm_sigdeliver.c
-CMN_CSRCS += arm_systemreset.c arm_doirq.c arm_hardfault.c arm_svcall.c
-CMN_CSRCS += arm_vectors.c arm_tcbinfo.c
-
-ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
-CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
-endif
-
-ifeq ($(CONFIG_DEBUG_FEATURES),y)
-CMN_CSRCS += arm_dumpnvic.c
-endif
-
 CHIP_CSRCS += rp2040_idle.c
 CHIP_CSRCS += rp2040_irq.c
 CHIP_CSRCS += rp2040_uart.c
diff --git a/arch/arm/src/rtl8720c/Make.defs b/arch/arm/src/rtl8720c/Make.defs
index 797d5339fe..b816787078 100644
--- a/arch/arm/src/rtl8720c/Make.defs
+++ b/arch/arm/src/rtl8720c/Make.defs
@@ -20,16 +20,6 @@
 
 include armv8-m/Make.defs
 
-# arch/arm/src/armv8-m
-#
-CMN_ASRCS += arm_exception.S arm_setjmp.S
-
-CMN_CSRCS += arm_cache.c arm_doirq.c arm_hardfault.c arm_initialstate.c
-CMN_CSRCS += arm_itm_syslog.c arm_memfault.c arm_mpu.c arm_ramvec_attach.c
-CMN_CSRCS += arm_ramvec_initialize.c arm_schedulesigaction.c
-CMN_CSRCS += arm_sigdeliver.c arm_stackcheck.c arm_svcall.c arm_systick.c
-CMN_CSRCS += arm_tcbinfo.c
-
 # arch/arm/src/rtl8720c
 #
 CHIP_CSRCS += ameba_nvic.c ameba_heap.c ameba_idle.c ameba_uart.c ameba_start.c
diff --git a/arch/arm/src/s32k1xx/Make.defs b/arch/arm/src/s32k1xx/Make.defs
index 5ccf534e50..83d6d92a19 100644
--- a/arch/arm/src/s32k1xx/Make.defs
+++ b/arch/arm/src/s32k1xx/Make.defs
@@ -18,15 +18,6 @@
 #
 ############################################################################
 
-# Common ARM source files
-
-CMN_CSRCS += arm_tcbinfo.c
-
-ifeq ($(CONFIG_ARCH_FPU),y)
-CMN_CSRCS += arm_fpuconfig.c
-CMN_CSRCS += arm_fpucmp.c
-endif
-
 # Source files common to all S32K1xx chip families.
 
 CHIP_CSRCS  = s32k1xx_start.c s32k1xx_lowputc.c s32k1xx_clockconfig.c
diff --git a/arch/arm/src/s32k1xx/s32k11x/Make.defs b/arch/arm/src/s32k1xx/s32k11x/Make.defs
index 142bae38d1..15d41d08d3 100644
--- a/arch/arm/src/s32k1xx/s32k11x/Make.defs
+++ b/arch/arm/src/s32k1xx/s32k11x/Make.defs
@@ -22,16 +22,6 @@
 
 include armv6-m/Make.defs
 
-CMN_ASRCS += arm_exception.S
-
-CMN_CSRCS += arm_initialstate.c arm_schedulesigaction.c
-CMN_CSRCS += arm_sigdeliver.c arm_systemreset.c arm_doirq.c
-CMN_CSRCS += arm_hardfault.c arm_svcall.c arm_vectors.c
-
-ifeq ($(CONFIG_DEBUG_FEATURES),y)
-CMN_CSRCS += arm_dumpnvic.c
-endif
-
 # Source file specific to the S32k11x family
 
 CHIP_CSRCS += s32k11x_irq.c s32k11x_clockmapping.c s32k11x_periphfeatures.c
diff --git a/arch/arm/src/s32k1xx/s32k14x/Make.defs b/arch/arm/src/s32k1xx/s32k14x/Make.defs
index 76e6b650d3..54cc997543 100644
--- a/arch/arm/src/s32k1xx/s32k14x/Make.defs
+++ b/arch/arm/src/s32k1xx/s32k14x/Make.defs
@@ -22,20 +22,6 @@
 
 include armv7-m/Make.defs
 
-CMN_ASRCS += arm_exception.S
-
-CMN_CSRCS += arm_vectors.c arm_doirq.c arm_hardfault.c
-CMN_CSRCS += arm_initialstate.c arm_memfault.c arm_schedulesigaction.c
-CMN_CSRCS += arm_sigdeliver.c arm_svcall.c arm_trigger_irq.c arm_systemreset.c
-
-ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
-CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
-endif
-
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_mpu.c
-endif
-
 # Source file specific to the S32k11x family
 
 CHIP_CSRCS += s32k14x_irq.c s32k14x_clrpend.c s32k14x_clockmapping.c
diff --git a/arch/arm/src/sam34/Make.defs b/arch/arm/src/sam34/Make.defs
index 2bd00fedba..9bda3fdcbf 100644
--- a/arch/arm/src/sam34/Make.defs
+++ b/arch/arm/src/sam34/Make.defs
@@ -24,27 +24,6 @@
 
 include armv7-m/Make.defs
 
-CMN_ASRCS += arm_exception.S
-
-CMN_CSRCS += arm_vectors.c arm_doirq.c arm_hardfault.c arm_initialstate.c
-CMN_CSRCS += arm_memfault.c arm_schedulesigaction.c arm_sigdeliver.c
-CMN_CSRCS += arm_svcall.c arm_trigger_irq.c arm_tcbinfo.c
-
-# Configuration-dependent common files
-
-ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
-CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
-endif
-
-ifeq ($(CONFIG_ARM_MPU),y)
-CMN_CSRCS += arm_mpu.c
-endif
-
-ifeq ($(CONFIG_ARCH_FPU),y)
-CMN_CSRCS += arm_fpuconfig.c
-CMN_CSRCS += arm_fpucmp.c
-endif
-
 # Required SAM3/4 files
 
 CHIP_CSRCS  = sam_allocateheap.c sam_irq.c sam_lowputc.c sam_serial.c
diff --git a/arch/arm/src/samd2l2/Make.defs b/arch/arm/src/samd2l2/Make.defs
index 771af79af3..67645899a5 100644
--- a/arch/arm/src/samd2l2/Make.defs
+++ b/arch/arm/src/samd2l2/Make.defs
@@ -20,16 +20,6 @@
 
 include armv6-m/Make.defs
 
-CMN_ASRCS += arm_exception.S
-
-CMN_CSRCS += arm_initialstate.c arm_schedulesigaction.c arm_sigdeliver.c
-CMN_CSRCS += arm_systemreset.c arm_doirq.c arm_hardfault.c arm_svcall.c
-CMN_CSRCS += arm_vectors.c arm_tcbinfo.c
-
-ifeq ($(CONFIG_DEBUG_FEATURES),y)
-CMN_CSRCS += arm_dumpnvic.c
-endif
-
 CHIP_CSRCS  = sam_irq.c sam_lowputc.c sam_port.c sam_sercom.c sam_serial.c
 CHIP_CSRCS += sam_start.c sam_usart.c
 
diff --git a/arch/arm/src/samd5e5/Make.defs b/arch/arm/src/samd5e5/Make.defs
index 1b8fd5a3b7..295e69804c 100644
--- a/arch/arm/src/samd5e5/Make.defs
+++ b/arch/arm/src/samd5e5/Make.defs
@@ -24,27 +24,6 @@
 
 include armv7-m/Make.defs
 
-CMN_ASRCS += arm_exception.S
-
-CMN_CSRCS += arm_vectors.c arm_initialstate.c arm_memfault.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_svcall.c
-CMN_CSRCS += arm_trigger_irq.c arm_doirq.c arm_hardfault.c arm_tcbinfo.c
-
-# Configuration-dependent common files
-
-ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
-CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
-endif
-
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_mpu.c
-endif
-
-ifeq ($(CONFIG_ARCH_FPU),y)
-CMN_CSRCS += arm_fpuconfig.c
-CMN_CSRCS += arm_fpucmp.c
-endif
-
 # Required SAMD5x/E5x files
 
 CHIP_CSRCS  = sam_clockconfig.c sam_gclk.c sam_irq.c sam_lowputc.c
diff --git a/arch/arm/src/samv7/Make.defs b/arch/arm/src/samv7/Make.defs
index e633f88f6c..e57e17a7aa 100644
--- a/arch/arm/src/samv7/Make.defs
+++ b/arch/arm/src/samv7/Make.defs
@@ -25,32 +25,6 @@
 
 include armv7-m/Make.defs
 
-CMN_ASRCS += arm_exception.S
-
-CMN_CSRCS += arm_vectors.c arm_hardfault.c arm_initialstate.c
-CMN_CSRCS += arm_systemreset.c arm_memfault.c arm_schedulesigaction.c
-CMN_CSRCS += arm_sigdeliver.c arm_svcall.c arm_trigger_irq.c
-CMN_CSRCS += arm_doirq.c arm_tcbinfo.c arm_cache.c
-
-# Configuration-dependent common files
-
-ifeq ($(CONFIG_ARMV7M_STACKCHECK),y)
-CMN_CSRCS += arm_stackcheck.c
-endif
-
-ifeq ($(CONFIG_ARCH_FPU),y)
-CMN_CSRCS += arm_fpuconfig.c
-CMN_CSRCS += arm_fpucmp.c
-endif
-
-ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
-CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
-endif
-
-ifeq ($(CONFIG_ARM_MPU),y)
-CMN_CSRCS += arm_mpu.c
-endif
-
 # Required SAMV7 files
 
 CHIP_CSRCS  = sam_start.c sam_clockconfig.c sam_irq.c sam_allocateheap.c
diff --git a/arch/arm/src/stm32/Make.defs b/arch/arm/src/stm32/Make.defs
index dcb658fd32..b58ebd8149 100644
--- a/arch/arm/src/stm32/Make.defs
+++ b/arch/arm/src/stm32/Make.defs
@@ -20,38 +20,6 @@
 
 include armv7-m/Make.defs
 
-CMN_ASRCS += arm_exception.S
-
-CMN_CSRCS += arm_vectors.c arm_hardfault.c arm_initialstate.c
-CMN_CSRCS += arm_memfault.c arm_schedulesigaction.c arm_sigdeliver.c
-CMN_CSRCS += arm_svcall.c arm_systemreset.c arm_trigger_irq.c
-CMN_CSRCS += arm_doirq.c arm_tcbinfo.c arm_perf.c
-
-ifeq ($(CONFIG_STM32_TICKLESS_SYSTICK),y)
-CMN_CSRCS += arm_systick.c
-endif
-
-ifeq ($(CONFIG_ARMV7M_STACKCHECK),y)
-CMN_CSRCS += arm_stackcheck.c
-endif
-
-ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
-CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
-endif
-
-ifneq ($(filter y,$(CONFIG_ARM_MPU) $(CONFIG_ARM_MPU_EARLY_RESET)),)
-CMN_CSRCS += arm_mpu.c
-endif
-
-ifeq ($(CONFIG_ARCH_FPU),y)
-CMN_CSRCS += arm_fpuconfig.c
-CMN_CSRCS += arm_fpucmp.c
-endif
-
-ifeq ($(CONFIG_ARMV7M_ITMSYSLOG),y)
-CMN_CSRCS += arm_itm_syslog.c
-endif
-
 CHIP_CSRCS  = stm32_allocateheap.c stm32_start.c stm32_rcc.c stm32_lse.c
 CHIP_CSRCS += stm32_lsi.c stm32_gpio.c stm32_exti_gpio.c stm32_flash.c
 CHIP_CSRCS += stm32_irq.c stm32_lowputc.c
diff --git a/arch/arm/src/stm32f0l0g0/Make.defs b/arch/arm/src/stm32f0l0g0/Make.defs
index e2136a709c..2b63457ada 100644
--- a/arch/arm/src/stm32f0l0g0/Make.defs
+++ b/arch/arm/src/stm32f0l0g0/Make.defs
@@ -20,16 +20,6 @@
 
 include armv6-m/Make.defs
 
-CMN_ASRCS += arm_exception.S
-
-CMN_CSRCS += arm_initialstate.c arm_schedulesigaction.c arm_sigdeliver.c
-CMN_CSRCS += arm_systemreset.c arm_doirq.c arm_hardfault.c arm_svcall.c
-CMN_CSRCS += arm_vectors.c arm_tcbinfo.c
-
-ifeq ($(CONFIG_DEBUG_FEATURES),y)
-CMN_CSRCS += arm_dumpnvic.c
-endif
-
 CHIP_CSRCS  = stm32_start.c stm32_gpio.c stm32_exti_gpio.c stm32_irq.c
 CHIP_CSRCS += stm32_lse.c stm32_lowputc.c stm32_serial.c stm32_rcc.c
 
diff --git a/arch/arm/src/stm32f7/Make.defs b/arch/arm/src/stm32f7/Make.defs
index 5aeb26319a..7addd28371 100644
--- a/arch/arm/src/stm32f7/Make.defs
+++ b/arch/arm/src/stm32f7/Make.defs
@@ -25,36 +25,6 @@
 
 include armv7-m/Make.defs
 
-CMN_ASRCS += arm_exception.S
-
-CMN_CSRCS += arm_vectors.c arm_doirq.c arm_hardfault.c arm_initialstate.c
-CMN_CSRCS += arm_memfault.c arm_schedulesigaction.c arm_sigdeliver.c
-CMN_CSRCS += arm_svcall.c arm_systemreset.c arm_trigger_irq.c
-CMN_CSRCS += arm_tcbinfo.c arm_cache.c
-
-ifeq ($(CONFIG_ARMV7M_STACKCHECK),y)
-CMN_CSRCS += arm_stackcheck.c
-endif
-
-# Configuration-dependent common files
-
-ifeq ($(CONFIG_ARCH_FPU),y)
-CMN_CSRCS += arm_fpuconfig.c
-CMN_CSRCS += arm_fpucmp.c
-endif
-
-ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
-CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
-endif
-
-ifeq ($(CONFIG_ARMV7M_ITMSYSLOG),y)
-CMN_CSRCS += arm_itm_syslog.c
-endif
-
-ifneq ($(filter y,$(CONFIG_ARM_MPU) $(CONFIG_ARM_MPU_EARLY_RESET)),)
-CMN_CSRCS += arm_mpu.c
-endif
-
 # Required STM32F7 files
 
 CHIP_CSRCS  = stm32_allocateheap.c stm32_exti_gpio.c stm32_gpio.c
diff --git a/arch/arm/src/stm32h7/Make.defs b/arch/arm/src/stm32h7/Make.defs
index 3b6ac34527..643f8c2e15 100644
--- a/arch/arm/src/stm32h7/Make.defs
+++ b/arch/arm/src/stm32h7/Make.defs
@@ -25,41 +25,13 @@
 
 include armv7-m/Make.defs
 
-CMN_ASRCS += arm_exception.S
-
-CMN_CSRCS += arm_vectors.c arm_doirq.c arm_hardfault.c arm_initialstate.c
-CMN_CSRCS += arm_memfault.c arm_schedulesigaction.c arm_sigdeliver.c
-CMN_CSRCS += arm_svcall.c arm_systemreset.c arm_trigger_irq.c
-CMN_CSRCS += arm_tcbinfo.c arm_cache.c arm_perf.c
-
-ifeq ($(CONFIG_ARMV7M_SYSTICK),y)
-CMN_CSRCS += arm_systick.c
-endif
-
-ifeq ($(CONFIG_ARMV7M_STACKCHECK),y)
-CMN_CSRCS += arm_stackcheck.c
-endif
-
-ifeq ($(CONFIG_ARCH_FPU),y)
-CMN_CSRCS += arm_fpuconfig.c
-CMN_CSRCS += arm_fpucmp.c
-endif
-
-ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
-CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
-endif
-
 ifeq ($(CONFIG_STM32H7_PROGMEM),y)
-CMN_CSRCS += stm32_flash.c
-endif
-
-ifneq ($(filter y,$(CONFIG_ARM_MPU) $(CONFIG_ARM_MPU_EARLY_RESET)),)
-CMN_CSRCS += arm_mpu.c
+CHIP_CSRCS += stm32_flash.c
 endif
 
 # Required STM32H7 files
 
-CHIP_CSRCS  = stm32_allocateheap.c stm32_exti_gpio.c stm32_gpio.c stm32_irq.c
+CHIP_CSRCS += stm32_allocateheap.c stm32_exti_gpio.c stm32_gpio.c stm32_irq.c
 CHIP_CSRCS += stm32_start.c stm32_rcc.c stm32_lowputc.c stm32_serial.c
 CHIP_CSRCS += stm32_uid.c
 
diff --git a/arch/arm/src/stm32l4/Make.defs b/arch/arm/src/stm32l4/Make.defs
index d3026ca242..72120d951d 100644
--- a/arch/arm/src/stm32l4/Make.defs
+++ b/arch/arm/src/stm32l4/Make.defs
@@ -25,30 +25,6 @@
 
 include armv7-m/Make.defs
 
-CMN_ASRCS += arm_exception.S
-
-CMN_CSRCS += arm_doirq.c arm_hardfault.c arm_initialstate.c
-CMN_CSRCS += arm_memfault.c arm_schedulesigaction.c arm_sigdeliver.c
-CMN_CSRCS += arm_svcall.c arm_systemreset.c arm_trigger_irq.c
-CMN_CSRCS += arm_tcbinfo.c arm_vectors.c
-
-ifeq ($(CONFIG_ARMV7M_STACKCHECK),y)
-CMN_CSRCS += arm_stackcheck.c
-endif
-
-ifeq ($(CONFIG_ARCH_FPU),y)
-CMN_CSRCS += arm_fpuconfig.c
-CMN_CSRCS += arm_fpucmp.c
-endif
-
-ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
-CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
-endif
-
-ifeq ($(CONFIG_ARM_MPU),y)
-CMN_CSRCS += arm_mpu.c
-endif
-
 # Required STM32L4 files
 
 CHIP_CSRCS  = stm32l4_allocateheap.c stm32l4_exti_gpio.c stm32l4_gpio.c
diff --git a/arch/arm/src/stm32l5/Make.defs b/arch/arm/src/stm32l5/Make.defs
index a9c3de418c..e31d3004ad 100644
--- a/arch/arm/src/stm32l5/Make.defs
+++ b/arch/arm/src/stm32l5/Make.defs
@@ -27,31 +27,6 @@ HEAD_ASRC =
 
 include armv8-m/Make.defs
 
-CMN_ASRCS += arm_exception.S
-
-CMN_CSRCS += arm_vectors.c arm_doirq.c arm_hardfault.c arm_initialstate.c
-CMN_CSRCS += arm_memfault.c arm_schedulesigaction.c arm_sigdeliver.c
-CMN_CSRCS += arm_svcall.c arm_systemreset.c arm_trigger_irq.c arm_tcbinfo.c
-
-# Configuration-dependent common files
-
-ifeq ($(CONFIG_ARMV8M_STACKCHECK),y)
-CMN_CSRCS += arm_stackcheck.c
-endif
-
-ifeq ($(CONFIG_ARCH_FPU),y)
-CMN_CSRCS += arm_fpuconfig.c
-CMN_CSRCS += arm_fpucmp.c
-endif
-
-ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
-CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
-endif
-
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_mpu.c
-endif
-
 # Required STM32L5 files
 
 CHIP_ASRCS  =
diff --git a/arch/arm/src/stm32u5/Make.defs b/arch/arm/src/stm32u5/Make.defs
index d0b410818e..c72ebb1423 100644
--- a/arch/arm/src/stm32u5/Make.defs
+++ b/arch/arm/src/stm32u5/Make.defs
@@ -27,34 +27,6 @@ HEAD_ASRC =
 
 include armv8-m/Make.defs
 
-CMN_ASRCS += arm_exception.S
-
-CMN_CSRCS += arm_vectors.c arm_doirq.c arm_hardfault.c
-CMN_CSRCS += arm_initialstate.c arm_memfault.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c
-CMN_CSRCS += arm_svcall.c arm_systemreset.c arm_tcbinfo.c
-CMN_CSRCS += arm_trigger_irq.c
-
-# Configuration-dependent common files
-
-ifeq ($(CONFIG_ARMV8M_STACKCHECK),y)
-CMN_CSRCS += arm_stackcheck.c
-endif
-
-ifeq ($(CONFIG_ARCH_FPU),y)
-CMN_CSRCS += arm_fpuconfig.c
-CMN_CSRCS += arm_fpucmp.c
-endif
-
-ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
-CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
-endif
-
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_mpu.c
-CMN_CSRCS += arm_pthread_exit.c
-endif
-
 # Required STM32U5 files
 
 CHIP_ASRCS  =
diff --git a/arch/arm/src/tiva/Make.defs b/arch/arm/src/tiva/Make.defs
index fda99d999b..3c4b66324d 100644
--- a/arch/arm/src/tiva/Make.defs
+++ b/arch/arm/src/tiva/Make.defs
@@ -20,30 +20,11 @@
 
 include armv7-m/Make.defs
 
-CMN_ASRCS += arm_exception.S
-
-CMN_CSRCS += arm_doirq.c arm_hardfault.c arm_initialstate.c
-CMN_CSRCS += arm_memfault.c arm_schedulesigaction.c arm_sigdeliver.c
-CMN_CSRCS += arm_svcall.c arm_trigger_irq.c arm_tcbinfo.c arm_vectors.c
-
 ifneq ($(CONFIG_ARCH_IDLE_CUSTOM),y)
-  CMN_CSRCS += tiva_idle.c
-endif
-
-ifeq ($(CONFIG_ARCH_FPU),y)
-  CMN_CSRCS += arm_fpuconfig.c
-  CMN_CSRCS += arm_fpucmp.c
-endif
-
-ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
-  CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
-endif
-
-ifeq ($(CONFIG_ARM_MPU),y)
-CMN_CSRCS += arm_mpu.c
+  CHIP_CSRCS += tiva_idle.c
 endif
 
-CHIP_CSRCS  = tiva_allocateheap.c tiva_irq.c tiva_lowputc.c tiva_serial.c
+CHIP_CSRCS += tiva_allocateheap.c tiva_irq.c tiva_lowputc.c tiva_serial.c
 CHIP_CSRCS += tiva_ssi.c
 
 ifeq ($(CONFIG_ARCH_CHIP_LM3S),y)
diff --git a/arch/arm/src/xmc4/Make.defs b/arch/arm/src/xmc4/Make.defs
index 13f7d66b95..2060484161 100644
--- a/arch/arm/src/xmc4/Make.defs
+++ b/arch/arm/src/xmc4/Make.defs
@@ -20,33 +20,6 @@
 
 include armv7-m/Make.defs
 
-CMN_ASRCS += arm_exception.S
-
-CMN_CSRCS += arm_vectors.c arm_doirq.c arm_initialstate.c
-CMN_CSRCS += arm_hardfault.c arm_memfault.c arm_schedulesigaction.c
-CMN_CSRCS += arm_sigdeliver.c arm_svcall.c arm_systemreset.c arm_tcbinfo.c
-
-ifeq ($(CONFIG_ARMV7M_STACKCHECK),y)
-CMN_CSRCS += arm_stackcheck.c
-endif
-
-ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
-CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
-endif
-
-ifeq ($(CONFIG_ARM_MPU),y)
-CMN_CSRCS += arm_mpu.c
-endif
-
-ifeq ($(CONFIG_ARCH_FPU),y)
-CMN_CSRCS += arm_fpuconfig.c
-CMN_CSRCS += arm_fpucmp.c
-endif
-
-ifeq ($(CONFIG_ARMV7M_ITMSYSLOG),y)
-CMN_CSRCS += arm_itm_syslog.c
-endif
-
 # Required XMC4xxx files
 
 CHIP_CSRCS  = xmc4_allocateheap.c xmc4_clockconfig.c xmc4_clockutils.c


[incubator-nuttx] 04/04: arch/arm/Make.defs: unify arch common source include

Posted by xi...@apache.org.
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/incubator-nuttx.git

commit 3ec2f7004686b2a6b05e7f18523eb87285f27f64
Author: chao.an <an...@xiaomi.com>
AuthorDate: Sat Apr 30 12:57:50 2022 +0800

    arch/arm/Make.defs: unify arch common source include
    
    Signed-off-by: chao.an <an...@xiaomi.com>
---
 arch/arm/src/arm/Make.defs     | 14 ++++++++++++++
 arch/arm/src/c5471/Make.defs   |  6 +-----
 arch/arm/src/dm320/Make.defs   |  9 ---------
 arch/arm/src/imx1/Make.defs    |  9 ---------
 arch/arm/src/lpc214x/Make.defs |  5 -----
 arch/arm/src/lpc2378/Make.defs |  7 +------
 arch/arm/src/lpc31xx/Make.defs | 13 -------------
 arch/arm/src/moxart/Make.defs  | 11 +++--------
 arch/arm/src/str71x/Make.defs  |  6 ------
 9 files changed, 19 insertions(+), 61 deletions(-)

diff --git a/arch/arm/src/arm/Make.defs b/arch/arm/src/arm/Make.defs
index dac854c713..15de378691 100644
--- a/arch/arm/src/arm/Make.defs
+++ b/arch/arm/src/arm/Make.defs
@@ -21,3 +21,17 @@
 # Common ARM files
 
 include common/Make.defs
+
+HEAD_ASRC  = arm_head.S
+
+CMN_CSRCS += arm_dataabort.c arm_doirq.c arm_initialstate.c
+CMN_CSRCS += arm_prefetchabort.c arm_schedulesigaction.c
+CMN_CSRCS += arm_sigdeliver.c arm_syscall.c arm_tcbinfo.c
+CMN_CSRCS += arm_undefinedinsn.c
+
+CMN_ASRCS += arm_cache.S arm_vectoraddrexcptn.S
+CMN_ASRCS += arm_vectors.S arm_vectortab.S
+
+ifeq ($(CONFIG_PAGING),y)
+  CMN_CSRCS += arm_pginitialize.c arm_checkmapping.c arm_allocpage.c arm_va2pte.c
+endif
diff --git a/arch/arm/src/c5471/Make.defs b/arch/arm/src/c5471/Make.defs
index de9a6e30d1..b79fb2d35e 100644
--- a/arch/arm/src/c5471/Make.defs
+++ b/arch/arm/src/c5471/Make.defs
@@ -20,11 +20,7 @@
 
 include arm/Make.defs
 
-HEAD_ASRC = arm_nommuhead.S
-
-CMN_CSRCS += arm_dataabort.c arm_doirq.c arm_initialstate.c
-CMN_CSRCS += arm_prefetchabort.c arm_schedulesigaction.c arm_sigdeliver.c
-CMN_CSRCS += arm_syscall.c arm_undefinedinsn.c arm_tcbinfo.c
+HEAD_ASRC  = arm_nommuhead.S
 
 CHIP_ASRCS = c5471_lowputc.S c5471_vectors.S
 CHIP_CSRCS = c5471_irq.c c5471_serial.c c5471_watchdog.c c5471_ethernet.c
diff --git a/arch/arm/src/dm320/Make.defs b/arch/arm/src/dm320/Make.defs
index 13cc78ad82..349f9ef3ab 100644
--- a/arch/arm/src/dm320/Make.defs
+++ b/arch/arm/src/dm320/Make.defs
@@ -20,15 +20,6 @@
 
 include arm/Make.defs
 
-HEAD_ASRC = arm_head.S
-
-CMN_ASRCS += arm_cache.S arm_vectors.S
-CMN_ASRCS += arm_vectoraddrexcptn.S arm_vectortab.S
-
-CMN_CSRCS += arm_dataabort.c arm_initialstate.c arm_prefetchabort.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_syscall.c
-CMN_CSRCS += arm_undefinedinsn.c arm_tcbinfo.c
-
 CHIP_ASRCS  = dm320_lowputc.S dm320_restart.S
 
 CHIP_CSRCS  = dm320_allocateheap.c dm320_boot.c dm320_decodeirq.c
diff --git a/arch/arm/src/imx1/Make.defs b/arch/arm/src/imx1/Make.defs
index e8e84ce83c..7ba3a87868 100644
--- a/arch/arm/src/imx1/Make.defs
+++ b/arch/arm/src/imx1/Make.defs
@@ -20,15 +20,6 @@
 
 include arm/Make.defs
 
-HEAD_ASRC = arm_head.S
-
-CMN_ASRCS += arm_cache.S
-CMN_ASRCS += arm_vectors.S arm_vectoraddrexcptn.S arm_vectortab.S
-
-CMN_CSRCS += arm_dataabort.c arm_initialstate.c arm_prefetchabort.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_syscall.c
-CMN_CSRCS += arm_undefinedinsn.c arm_tcbinfo.c
-
 CHIP_ASRCS  = imx_lowputc.S
 CHIP_CSRCS  = imx_boot.c imx_gpio.c imx_allocateheap.c imx_irq.c
 CHIP_CSRCS += imx_serial.c imx_decodeirq.c imx_spi.c
diff --git a/arch/arm/src/lpc214x/Make.defs b/arch/arm/src/lpc214x/Make.defs
index 5fdf5e1867..887e288a69 100644
--- a/arch/arm/src/lpc214x/Make.defs
+++ b/arch/arm/src/lpc214x/Make.defs
@@ -21,11 +21,6 @@
 include arm/Make.defs
 
 HEAD_ASRC  = lpc214x_head.S
-CMN_ASRCS += arm_vectors.S
-
-CMN_CSRCS += arm_dataabort.c arm_initialstate.c arm_prefetchabort.c
-CMN_CSRCS += arm_syscall.c arm_undefinedinsn.c arm_schedulesigaction.c
-CMN_CSRCS += arm_sigdeliver.c arm_tcbinfo.c
 
 CHIP_ASRCS = lpc214x_lowputc.S
 CHIP_CSRCS = lpc214x_decodeirq.c lpc214x_irq.c lpc214x_serial.c
diff --git a/arch/arm/src/lpc2378/Make.defs b/arch/arm/src/lpc2378/Make.defs
index 62ba3b48b4..b95622df2c 100644
--- a/arch/arm/src/lpc2378/Make.defs
+++ b/arch/arm/src/lpc2378/Make.defs
@@ -20,12 +20,7 @@
 
 include arm/Make.defs
 
-HEAD_ASRC  = lpc23xx_head.S
-CMN_ASRCS += arm_vectors.S
-
-CMN_CSRCS += arm_dataabort.c arm_initialstate.c arm_prefetchabort.c
-CMN_CSRCS += arm_syscall.c arm_undefinedinsn.c arm_schedulesigaction.c
-CMN_CSRCS += arm_sigdeliver.c arm_tcbinfo.c
+HEAD_ASRC   = lpc23xx_head.S
 
 CHIP_ASRCS  = lpc23xx_lowputc.S
 CHIP_CSRCS += lpc23xx_pllsetup.c  lpc23xx_decodeirq.c lpc23xx_irq.c
diff --git a/arch/arm/src/lpc31xx/Make.defs b/arch/arm/src/lpc31xx/Make.defs
index 4c03acedab..93d02ce3c8 100644
--- a/arch/arm/src/lpc31xx/Make.defs
+++ b/arch/arm/src/lpc31xx/Make.defs
@@ -20,19 +20,6 @@
 
 include arm/Make.defs
 
-HEAD_ASRC = arm_head.S
-
-CMN_ASRCS += arm_cache.S
-CMN_ASRCS += arm_vectors.S arm_vectoraddrexcptn.S arm_vectortab.S
-
-CMN_CSRCS += arm_dataabort.c arm_initialstate.c arm_prefetchabort.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_syscall.c
-CMN_CSRCS += arm_undefinedinsn.c arm_tcbinfo.c
-
-ifeq ($(CONFIG_PAGING),y)
-CMN_CSRCS += arm_pginitialize.c arm_checkmapping.c arm_allocpage.c arm_va2pte.c
-endif
-
 CGU_CSRCS  = lpc31_bcrndx.c lpc31_clkdomain.c lpc31_clkexten.c
 CGU_CSRCS += lpc31_clkfreq.c lpc31_clkinit.c lpc31_defclk.c
 CGU_CSRCS += lpc31_esrndx.c lpc31_fdcndx.c lpc31_fdivinit.c
diff --git a/arch/arm/src/moxart/Make.defs b/arch/arm/src/moxart/Make.defs
index 7da794efc3..b431414868 100644
--- a/arch/arm/src/moxart/Make.defs
+++ b/arch/arm/src/moxart/Make.defs
@@ -20,16 +20,11 @@
 
 include arm/Make.defs
 
-HEAD_ASRC = moxart_head.S
-CMN_ASRCS += arm_vectors.S arm_nommuhead.S
+HEAD_ASRC  = moxart_head.S
 
-CMN_CSRCS += arm_dataabort.c arm_initialstate.c arm_prefetchabort.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_syscall.c
-CMN_CSRCS += arm_undefinedinsn.c arm_tcbinfo.c
+CHIP_ASRCS = moxart_lowputc.S
 
-CHIP_ASRCS  = moxart_lowputc.S
-
-CHIP_CSRCS  = moxart_16550.c moxart_irq.c moxart_timer.c moxart_systemreset.c
+CHIP_CSRCS = moxart_16550.c moxart_irq.c moxart_timer.c moxart_systemreset.c
 
 # Configuration-dependent Kinetis K files
 
diff --git a/arch/arm/src/str71x/Make.defs b/arch/arm/src/str71x/Make.defs
index fb9e080707..4d38b40360 100644
--- a/arch/arm/src/str71x/Make.defs
+++ b/arch/arm/src/str71x/Make.defs
@@ -22,12 +22,6 @@ include arm/Make.defs
 
 HEAD_ASRC = str71x_head.S
 
-CMN_ASRCS += arm_vectors.S
-
-CMN_CSRCS += arm_dataabort.c arm_initialstate.c arm_prefetchabort.c
-CMN_CSRCS += arm_syscall.c arm_undefinedinsn.c arm_schedulesigaction.c
-CMN_CSRCS += arm_sigdeliver.c arm_tcbinfo.c
-
 CHIP_CSRCS  = str71x_prccu.c str71x_lowputc.c str71x_decodeirq.c str71x_irq.c
 CHIP_CSRCS += str71x_serial.c
 


[incubator-nuttx] 01/04: arch/arm/Make.defs: unify common source include

Posted by xi...@apache.org.
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/incubator-nuttx.git

commit a560eb5f8d7eee43fdd9d0aee26114112e9b6b0a
Author: chao.an <an...@xiaomi.com>
AuthorDate: Wed Apr 27 20:28:49 2022 +0800

    arch/arm/Make.defs: unify common source include
    
    Signed-off-by: chao.an <an...@xiaomi.com>
---
 arch/arm/src/a1x/Make.defs             | 38 ++++-----------
 arch/arm/src/am335x/Make.defs          | 31 +++---------
 arch/arm/src/arm/Make.defs             | 23 +++++++++
 arch/arm/src/armv6-m/Make.defs         | 23 +++++++++
 arch/arm/src/armv7-a/Make.defs         | 23 +++++++++
 arch/arm/src/armv7-m/Make.defs         | 23 +++++++++
 arch/arm/src/armv7-r/Make.defs         | 23 +++++++++
 arch/arm/src/armv8-m/Make.defs         | 23 +++++++++
 arch/arm/src/c5471/Make.defs           | 22 ++-------
 arch/arm/src/common/Make.defs          | 86 ++++++++++++++++++++++++++++++++++
 arch/arm/src/common/arm_etherstub.c    |  2 +
 arch/arm/src/cxd56xx/Make.defs         | 25 +++-------
 arch/arm/src/dm320/Make.defs           | 25 +++-------
 arch/arm/src/efm32/Make.defs           | 32 ++++---------
 arch/arm/src/eoss3/Make.defs           | 32 +++----------
 arch/arm/src/imx1/Make.defs            | 25 +++-------
 arch/arm/src/imx6/Make.defs            | 37 ++++-----------
 arch/arm/src/imxrt/Make.defs           | 30 +++---------
 arch/arm/src/kinetis/Make.defs         | 40 +++-------------
 arch/arm/src/kl/Make.defs              | 29 ++----------
 arch/arm/src/lc823450/Make.defs        | 30 +++---------
 arch/arm/src/lpc17xx_40xx/Make.defs    | 36 +++-----------
 arch/arm/src/lpc214x/Make.defs         | 24 +++-------
 arch/arm/src/lpc2378/Make.defs         | 26 +++-------
 arch/arm/src/lpc31xx/Make.defs         | 26 +++-------
 arch/arm/src/lpc43xx/Make.defs         | 32 +++----------
 arch/arm/src/lpc54xx/Make.defs         | 32 +++----------
 arch/arm/src/max326xx/Make.defs        | 32 ++++---------
 arch/arm/src/moxart/Make.defs          | 16 +++----
 arch/arm/src/nrf52/Make.defs           | 34 ++++----------
 arch/arm/src/nuc1xx/Make.defs          | 29 ++----------
 arch/arm/src/phy62xx/Make.defs         | 30 +++---------
 arch/arm/src/rp2040/Make.defs          | 31 +++---------
 arch/arm/src/rtl8720c/Make.defs        | 26 ++--------
 arch/arm/src/s32k1xx/Make.defs         | 16 -------
 arch/arm/src/s32k1xx/s32k11x/Make.defs | 20 +++-----
 arch/arm/src/s32k1xx/s32k14x/Make.defs | 16 +++----
 arch/arm/src/sam34/Make.defs           | 38 +++------------
 arch/arm/src/sama5/Make.defs           | 31 +++---------
 arch/arm/src/samd2l2/Make.defs         | 29 ++----------
 arch/arm/src/samd5e5/Make.defs         | 30 ++++--------
 arch/arm/src/samv7/Make.defs           | 34 +++-----------
 arch/arm/src/stm32/Make.defs           | 37 ++++-----------
 arch/arm/src/stm32f0l0g0/Make.defs     | 29 ++----------
 arch/arm/src/stm32f7/Make.defs         | 34 +++-----------
 arch/arm/src/stm32h7/Make.defs         | 39 ++++-----------
 arch/arm/src/stm32l4/Make.defs         | 32 +++----------
 arch/arm/src/stm32l5/Make.defs         | 30 ++++--------
 arch/arm/src/stm32u5/Make.defs         | 32 ++++---------
 arch/arm/src/str71x/Make.defs          | 24 +++-------
 arch/arm/src/tiva/Make.defs            | 34 ++------------
 arch/arm/src/tms570/Make.defs          | 36 ++++----------
 arch/arm/src/xmc4/Make.defs            | 42 +++--------------
 53 files changed, 527 insertions(+), 1052 deletions(-)

diff --git a/arch/arm/src/a1x/Make.defs b/arch/arm/src/a1x/Make.defs
index d859209f7a..258e4d92b2 100644
--- a/arch/arm/src/a1x/Make.defs
+++ b/arch/arm/src/a1x/Make.defs
@@ -18,6 +18,8 @@
 #
 ############################################################################
 
+include armv7-a/Make.defs
+
 # The vector table is the "head" object, i.e., the one that must forced into
 # the link in order to draw in all of the other components
 
@@ -34,50 +36,30 @@ endif
 # debug.
 
 ifeq ($(CONFIG_PAGING),y)
-CMN_ASRCS  = arm_pghead.S
+CMN_ASRCS += arm_pghead.S
 else
-CMN_ASRCS  = arm_head.S
+CMN_ASRCS += arm_head.S
 endif
 
 # Common assembly language files
 
-CMN_ASRCS += arm_vectors.S arm_vectoraddrexcptn.S vfork.S
-CMN_ASRCS += arm_fpuconfig.S arm_testset.S arm_fetchadd.S
+CMN_ASRCS += arm_vectors.S arm_vectoraddrexcptn.S arm_fpuconfig.S
 CMN_ASRCS += cp15_coherent_dcache.S cp15_invalidate_dcache.S
 CMN_ASRCS += cp15_clean_dcache.S cp15_flush_dcache.S cp15_invalidate_dcache_all.S
 CMN_ASRCS += cp15_clean_dcache_all.S cp15_flush_dcache_all.S cp15_cache_size.S
 
 # Common C source files
 
-CMN_CSRCS  = arm_initialize.c arm_interruptcontext.c arm_exit.c arm_createstack.c
-CMN_CSRCS += arm_releasestack.c arm_usestack.c arm_vfork.c arm_puts.c arm_mdelay.c
-CMN_CSRCS += arm_stackframe.c arm_udelay.c arm_modifyreg8.c arm_modifyreg16.c
-CMN_CSRCS += arm_modifyreg32.c arm_assert.c arm_blocktask.c arm_dataabort.c
-CMN_CSRCS += arm_doirq.c arm_initialstate.c arm_mmu.c arm_prefetchabort.c
-CMN_CSRCS += arm_releasepending.c arm_reprioritizertr.c arm_schedulesigaction.c
-CMN_CSRCS += arm_sigdeliver.c arm_syscall.c arm_unblocktask.c arm_undefinedinsn.c
-CMN_CSRCS += arm_switchcontext.c arm_saveusercontext.c arm_fullcontextrestore.c
+CMN_CSRCS += arm_dataabort.c arm_doirq.c arm_initialstate.c arm_mmu.c
+CMN_CSRCS += arm_prefetchabort.c arm_schedulesigaction.c
+CMN_CSRCS += arm_sigdeliver.c arm_syscall.c arm_undefinedinsn.c
 CMN_CSRCS += arm_cache.c arm_tcbinfo.c
 
-# Use common heap allocation for now (may need to be customized later)
-
-CMN_CSRCS += arm_allocateheap.c
-
-# Configuration dependent C and assembly language files
-
-ifneq ($(CONFIG_ARCH_IDLE_CUSTOM),y)
-CMN_CSRCS += arm_idle.c
-endif
-
 ifeq ($(CONFIG_PAGING),y)
 CMN_CSRCS += arm_allocpage.c arm_checkmapping.c arm_pginitialize.c
 CMN_CSRCS += arm_va2pte.c
 endif
 
-ifeq ($(CONFIG_BUILD_KERNEL),y)
-CMN_CSRCS += arm_task_start.c arm_pthread_start.c arm_signal_dispatch.c
-endif
-
 ifeq ($(CONFIG_ARCH_ADDRENV),y)
 CMN_CSRCS += arm_addrenv.c arm_addrenv_utils.c arm_pgalloc.c
 ifeq ($(CONFIG_ARCH_STACK_DYNAMIC),y)
@@ -102,10 +84,6 @@ ifeq ($(CONFIG_ARCH_FPU),y)
 CMN_CSRCS += arm_fpucmp.c
 endif
 
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
-
 # A1x-specific C source files
 
 CHIP_CSRCS  = a1x_boot.c a1x_irq.c a1x_pio.c a1x_lowputc.c a1x_serial.c
diff --git a/arch/arm/src/am335x/Make.defs b/arch/arm/src/am335x/Make.defs
index 7b27741a43..398825cb24 100644
--- a/arch/arm/src/am335x/Make.defs
+++ b/arch/arm/src/am335x/Make.defs
@@ -18,6 +18,8 @@
 #
 ############################################################################
 
+include armv7-a/Make.defs
+
 # The vector table is the "head" object, i.e., the one that must forced into
 # the link in order to draw in all of the other components
 
@@ -34,36 +36,25 @@ endif
 # debug.
 
 ifeq ($(CONFIG_PAGING),y)
-CMN_ASRCS  = arm_pghead.S
+CMN_ASRCS += arm_pghead.S
 else
-CMN_ASRCS  = arm_head.S
+CMN_ASRCS += arm_head.S
 endif
 
 # Common assembly language files
 
-CMN_ASRCS += arm_vectors.S arm_vectoraddrexcptn.S
-CMN_ASRCS += arm_fpuconfig.S arm_testset.S vfork.S
+CMN_ASRCS += arm_vectors.S arm_vectoraddrexcptn.S arm_fpuconfig.S
 CMN_ASRCS += cp15_coherent_dcache.S cp15_invalidate_dcache.S
 CMN_ASRCS += cp15_clean_dcache.S cp15_flush_dcache.S cp15_invalidate_dcache_all.S
 CMN_ASRCS += cp15_clean_dcache_all.S cp15_flush_dcache_all.S cp15_cache_size.S
 
 # Common C source files
 
-CMN_CSRCS  = arm_initialize.c arm_idle.c arm_interruptcontext.c arm_exit.c
-CMN_CSRCS += arm_createstack.c arm_releasestack.c arm_usestack.c arm_vfork.c
-CMN_CSRCS += arm_puts.c arm_mdelay.c arm_stackframe.c arm_udelay.c
-CMN_CSRCS += arm_modifyreg8.c arm_modifyreg16.c arm_modifyreg32.c
-CMN_CSRCS += arm_assert.c arm_blocktask.c arm_dataabort.c
 CMN_CSRCS += arm_doirq.c arm_initialstate.c arm_mmu.c arm_prefetchabort.c
-CMN_CSRCS += arm_releasepending.c arm_reprioritizertr.c arm_schedulesigaction.c
-CMN_CSRCS += arm_sigdeliver.c arm_syscall.c arm_unblocktask.c arm_undefinedinsn.c
-CMN_CSRCS += arm_switchcontext.c arm_saveusercontext.c arm_fullcontextrestore.c
+CMN_CSRCS += arm_schedulesigaction.c arm_dataabort.c
+CMN_CSRCS += arm_sigdeliver.c arm_syscall.c arm_undefinedinsn.c
 CMN_CSRCS += arm_cache.c arm_tcbinfo.c
 
-# Use common heap allocation for now (may need to be customized later)
-
-CMN_CSRCS += arm_allocateheap.c
-
 # Configuration dependent C and assembly language files
 
 ifeq ($(CONFIG_PAGING),y)
@@ -71,10 +62,6 @@ CMN_CSRCS += arm_allocpage.c arm_checkmapping.c arm_pginitialize.c
 CMN_CSRCS += arm_va2pte.c
 endif
 
-ifeq ($(CONFIG_BUILD_KERNEL),y)
-CMN_CSRCS += arm_task_start.c arm_pthread_start.c arm_signal_dispatch.c
-endif
-
 ifeq ($(CONFIG_ARCH_ADDRENV),y)
 CMN_CSRCS += arm_addrenv.c arm_addrenv_utils.c arm_pgalloc.c
 ifeq ($(CONFIG_ARCH_STACK_DYNAMIC),y)
@@ -99,10 +86,6 @@ ifeq ($(CONFIG_ARCH_FPU),y)
 CMN_CSRCS += arm_fpucmp.c
 endif
 
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
-
 # AM335x-specific C source files
 
 CHIP_CSRCS  = am335x_boot.c am335x_clockconfig.c am335x_pinmux.c am335x_irq.c
diff --git a/arch/arm/src/arm/Make.defs b/arch/arm/src/arm/Make.defs
new file mode 100644
index 0000000000..dac854c713
--- /dev/null
+++ b/arch/arm/src/arm/Make.defs
@@ -0,0 +1,23 @@
+############################################################################
+# arch/arm/src/arm/Make.defs
+#
+# 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 ARM files
+
+include common/Make.defs
diff --git a/arch/arm/src/armv6-m/Make.defs b/arch/arm/src/armv6-m/Make.defs
new file mode 100644
index 0000000000..de3f30efce
--- /dev/null
+++ b/arch/arm/src/armv6-m/Make.defs
@@ -0,0 +1,23 @@
+############################################################################
+# arch/arm/src/armv6-m/Make.defs
+#
+# 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 ARM files
+
+include common/Make.defs
diff --git a/arch/arm/src/armv7-a/Make.defs b/arch/arm/src/armv7-a/Make.defs
new file mode 100644
index 0000000000..93b8b5a75e
--- /dev/null
+++ b/arch/arm/src/armv7-a/Make.defs
@@ -0,0 +1,23 @@
+############################################################################
+# arch/arm/src/armv7-a/Make.defs
+#
+# 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 ARM files
+
+include common/Make.defs
diff --git a/arch/arm/src/armv7-m/Make.defs b/arch/arm/src/armv7-m/Make.defs
new file mode 100644
index 0000000000..8ef0c33694
--- /dev/null
+++ b/arch/arm/src/armv7-m/Make.defs
@@ -0,0 +1,23 @@
+############################################################################
+# arch/arm/src/armv7-m/Make.defs
+#
+# 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 ARM files
+
+include common/Make.defs
diff --git a/arch/arm/src/armv7-r/Make.defs b/arch/arm/src/armv7-r/Make.defs
new file mode 100644
index 0000000000..4ca08cb2ac
--- /dev/null
+++ b/arch/arm/src/armv7-r/Make.defs
@@ -0,0 +1,23 @@
+############################################################################
+# arch/arm/src/armv7-r/Make.defs
+#
+# 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 ARM files
+
+include common/Make.defs
diff --git a/arch/arm/src/armv8-m/Make.defs b/arch/arm/src/armv8-m/Make.defs
new file mode 100644
index 0000000000..c1e3f7676e
--- /dev/null
+++ b/arch/arm/src/armv8-m/Make.defs
@@ -0,0 +1,23 @@
+############################################################################
+# arch/arm/src/armv8-m/Make.defs
+#
+# 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 ARM files
+
+include common/Make.defs
diff --git a/arch/arm/src/c5471/Make.defs b/arch/arm/src/c5471/Make.defs
index f6ca0f753c..de9a6e30d1 100644
--- a/arch/arm/src/c5471/Make.defs
+++ b/arch/arm/src/c5471/Make.defs
@@ -18,25 +18,13 @@
 #
 ############################################################################
 
-HEAD_ASRC = arm_nommuhead.S
-CMN_ASRCS = vfork.S
-
-CMN_CSRCS  = arm_allocateheap.c arm_assert.c arm_blocktask.c
-CMN_CSRCS += arm_createstack.c arm_dataabort.c arm_mdelay.c arm_udelay.c arm_doirq.c
-CMN_CSRCS += arm_exit.c arm_initialize.c arm_initialstate.c arm_interruptcontext.c
-CMN_CSRCS += arm_prefetchabort.c arm_releasepending.c arm_releasestack.c
-CMN_CSRCS += arm_reprioritizertr.c arm_schedulesigaction.c arm_sigdeliver.c
-CMN_CSRCS += arm_stackframe.c arm_syscall.c arm_unblocktask.c arm_undefinedinsn.c
-CMN_CSRCS += arm_switchcontext.c arm_saveusercontext.c arm_fullcontextrestore.c
-CMN_CSRCS += arm_usestack.c arm_vfork.c arm_puts.c arm_tcbinfo.c
+include arm/Make.defs
 
-ifneq ($(CONFIG_ARCH_IDLE_CUSTOM),y)
-CMN_CSRCS += arm_idle.c
-endif
+HEAD_ASRC = arm_nommuhead.S
 
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
+CMN_CSRCS += arm_dataabort.c arm_doirq.c arm_initialstate.c
+CMN_CSRCS += arm_prefetchabort.c arm_schedulesigaction.c arm_sigdeliver.c
+CMN_CSRCS += arm_syscall.c arm_undefinedinsn.c arm_tcbinfo.c
 
 CHIP_ASRCS = c5471_lowputc.S c5471_vectors.S
 CHIP_CSRCS = c5471_irq.c c5471_serial.c c5471_watchdog.c c5471_ethernet.c
diff --git a/arch/arm/src/common/Make.defs b/arch/arm/src/common/Make.defs
new file mode 100644
index 0000000000..f8f3b1229b
--- /dev/null
+++ b/arch/arm/src/common/Make.defs
@@ -0,0 +1,86 @@
+############################################################################
+# arch/arm/src/common/Make.defs
+#
+# 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 ARM files
+
+CMN_CSRCS += arm_allocateheap.c arm_assert.c arm_blocktask.c
+CMN_CSRCS += arm_createstack.c arm_exit.c arm_fullcontextrestore.c
+CMN_CSRCS += arm_initialize.c arm_interruptcontext.c arm_lowputs.c
+CMN_CSRCS += arm_mdelay.c arm_modifyreg16.c arm_modifyreg32.c
+CMN_CSRCS += arm_modifyreg8.c arm_puts.c arm_releasepending.c
+CMN_CSRCS += arm_releasestack.c arm_reprioritizertr.c arm_saveusercontext.c
+CMN_CSRCS += arm_stackframe.c arm_switchcontext.c arm_udelay.c
+CMN_CSRCS += arm_vfork.c arm_unblocktask.c arm_usestack.c
+
+ifeq ($(CONFIG_STACK_COLORATION),y)
+  CMN_CSRCS += arm_checkstack.c
+endif
+
+ifneq ($(CONFIG_ARCH_IDLE_CUSTOM),y)
+  CMN_CSRCS += arm_idle.c
+endif
+
+ifeq ($(CONFIG_BUILD_PROTECTED)$(CONFIG_BUILD_KERNEL),y)
+  CMN_CSRCS += arm_task_start.c arm_pthread_start.c
+  CMN_CSRCS += arm_signal_dispatch.c
+  ifeq ($(CONFIG_BUILD_PROTECTED),y)
+    CMN_UASRCS += arm_signal_handler.S
+  endif
+endif
+
+ifeq ($(CONFIG_ARM_SEMIHOSTING_SYSLOG),y)
+  CMN_CSRCS += arm_semi_syslog.c
+endif
+
+ifeq ($(CONFIG_ARM_SEMIHOSTING_HOSTFS),y)
+  CMN_CSRCS += arm_hostfs.c
+endif
+
+ifeq ($(CONFIG_SCHED_THREAD_LOCAL),y)
+  CMN_CSRCS += arm_tls.c
+endif
+
+ifeq ($(CONFIG_SCHED_BACKTRACE),y)
+  ifeq ($(CONFIG_FRAME_POINTER),y)
+    CMN_CSRCS += arm_backtrace_fp.c
+  else
+    CMN_CSRCS += arm_backtrace_thumb.c
+  endif
+endif
+
+CMN_ASRCS += vfork.S
+ifeq ($(CONFIG_ARCH_HAVE_TESTSET),y)
+  ifeq ($(CONFIG_ARCH_ARMV6M),)
+    CMN_ASRCS += arm_testset.S
+  endif
+endif
+ifeq ($(CONFIG_ARCH_HAVE_FETCHADD),y)
+  CMN_ASRCS += arm_fetchadd.S
+endif
+
+# Use of common/arm_etherstub.c is deprecated.  The preferred mechanism is to
+# use CONFIG_NETDEV_LATEINIT=y to suppress the call to arm_netinitialize() in
+# up_initialize().  Then this stub would not be needed.
+
+ifeq ($(CONFIG_NET),y)
+  ifneq ($(CONFIG_ARCH_HAVE_PHY),y)
+    CMN_CSRCS += arm_etherstub.c
+  endif
+endif
diff --git a/arch/arm/src/common/arm_etherstub.c b/arch/arm/src/common/arm_etherstub.c
index 205387754f..d46699ea80 100644
--- a/arch/arm/src/common/arm_etherstub.c
+++ b/arch/arm/src/common/arm_etherstub.c
@@ -50,6 +50,8 @@
  *
  ****************************************************************************/
 
+#if defined(CONFIG_NET) && !defined(CONFIG_NETDEV_LATEINIT)
 void arm_netinitialize(void)
 {
 }
+#endif
diff --git a/arch/arm/src/cxd56xx/Make.defs b/arch/arm/src/cxd56xx/Make.defs
index 256add911c..de0b5e60d1 100644
--- a/arch/arm/src/cxd56xx/Make.defs
+++ b/arch/arm/src/cxd56xx/Make.defs
@@ -18,20 +18,13 @@
 #
 ############################################################################
 
-CMN_ASRCS  = vfork.S arm_exception.S
+include armv7-m/Make.defs
 
-ifneq ($(CONFIG_CXD56_TESTSET),y)
-CMN_ASRCS += arm_testset.S
-endif
+CMN_ASRCS += arm_exception.S
 
-CMN_CSRCS  = arm_assert.c arm_blocktask.c arm_createstack.c arm_exit.c
-CMN_CSRCS += arm_initialize.c arm_initialstate.c arm_interruptcontext.c
-CMN_CSRCS += arm_memfault.c arm_modifyreg8.c arm_modifyreg16.c arm_modifyreg32.c
-CMN_CSRCS += arm_releasepending.c arm_releasestack.c arm_reprioritizertr.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_stackframe.c
-CMN_CSRCS += arm_unblocktask.c arm_usestack.c arm_doirq.c arm_hardfault.c
-CMN_CSRCS += arm_svcall.c arm_vfork.c arm_switchcontext.c arm_saveusercontext.c
-CMN_CSRCS += arm_fullcontextrestore.c arm_puts.c arm_tcbinfo.c arm_vectors.c
+CMN_CSRCS += arm_initialstate.c arm_memfault.c arm_schedulesigaction.c
+CMN_CSRCS += arm_sigdeliver.c arm_doirq.c arm_hardfault.c arm_svcall.c
+CMN_CSRCS += arm_tcbinfo.c arm_vectors.c
 
 ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
 CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
@@ -42,13 +35,7 @@ CMN_ASRCS += up_memcpy.S
 endif
 
 ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_mpu.c arm_task_start.c arm_pthread_start.c
-CMN_CSRCS += arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
+CMN_CSRCS += arm_mpu.c
 endif
 
 ifeq ($(CONFIG_ARCH_FPU),y)
diff --git a/arch/arm/src/dm320/Make.defs b/arch/arm/src/dm320/Make.defs
index 7a5acedadc..13cc78ad82 100644
--- a/arch/arm/src/dm320/Make.defs
+++ b/arch/arm/src/dm320/Make.defs
@@ -18,27 +18,16 @@
 #
 ############################################################################
 
-HEAD_ASRC = arm_head.S
+include arm/Make.defs
 
-CMN_ASRCS  = arm_cache.S arm_vectors.S
-CMN_ASRCS += arm_vectoraddrexcptn.S arm_vectortab.S vfork.S
+HEAD_ASRC = arm_head.S
 
-CMN_CSRCS  = arm_assert.c arm_blocktask.c arm_createstack.c
-CMN_CSRCS += arm_dataabort.c arm_mdelay.c arm_udelay.c arm_exit.c
-CMN_CSRCS += arm_initialize.c arm_initialstate.c arm_interruptcontext.c
-CMN_CSRCS += arm_prefetchabort.c arm_releasepending.c arm_releasestack.c
-CMN_CSRCS += arm_reprioritizertr.c arm_schedulesigaction.c
-CMN_CSRCS += arm_sigdeliver.c arm_stackframe.c arm_syscall.c arm_unblocktask.c
-CMN_CSRCS += arm_undefinedinsn.c arm_usestack.c arm_vfork.c arm_switchcontext.c
-CMN_CSRCS += arm_saveusercontext.c arm_fullcontextrestore.c arm_puts.c arm_tcbinfo.c
+CMN_ASRCS += arm_cache.S arm_vectors.S
+CMN_ASRCS += arm_vectoraddrexcptn.S arm_vectortab.S
 
-ifneq ($(CONFIG_ARCH_IDLE_CUSTOM),y)
-CMN_CSRCS += arm_idle.c
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
+CMN_CSRCS += arm_dataabort.c arm_initialstate.c arm_prefetchabort.c
+CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_syscall.c
+CMN_CSRCS += arm_undefinedinsn.c arm_tcbinfo.c
 
 CHIP_ASRCS  = dm320_lowputc.S dm320_restart.S
 
diff --git a/arch/arm/src/efm32/Make.defs b/arch/arm/src/efm32/Make.defs
index b2ce68b8b3..a154f0be91 100644
--- a/arch/arm/src/efm32/Make.defs
+++ b/arch/arm/src/efm32/Make.defs
@@ -18,35 +18,21 @@
 #
 ############################################################################
 
-CMN_ASRCS  = arm_testset.S arm_fetchadd.S vfork.S arm_exception.S
-
-CMN_CSRCS  = arm_vectors.c arm_allocateheap.c arm_assert.c arm_blocktask.c
-CMN_CSRCS += arm_createstack.c arm_doirq.c arm_exit.c arm_hardfault.c
-CMN_CSRCS += arm_initialize.c arm_initialstate.c arm_interruptcontext.c
-CMN_CSRCS += arm_itm.c arm_mdelay.c arm_memfault.c arm_modifyreg8.c
-CMN_CSRCS += arm_modifyreg16.c arm_modifyreg32.c arm_releasepending.c
-CMN_CSRCS += arm_releasestack.c arm_reprioritizertr.c arm_schedulesigaction.c
-CMN_CSRCS += arm_sigdeliver.c arm_stackframe.c arm_svcall.c arm_systemreset.c
-CMN_CSRCS += arm_trigger_irq.c arm_udelay.c arm_unblocktask.c arm_usestack.c
-CMN_CSRCS += arm_vfork.c arm_switchcontext.c arm_saveusercontext.c
-CMN_CSRCS += arm_fullcontextrestore.c arm_puts.c arm_tcbinfo.c
+include armv7-m/Make.defs
+
+CMN_ASRCS += arm_exception.S
+
+CMN_CSRCS += arm_vectors.c arm_doirq.c arm_hardfault.c arm_initialstate.c
+CMN_CSRCS += arm_itm.c arm_memfault.c arm_schedulesigaction.c
+CMN_CSRCS += arm_sigdeliver.c arm_svcall.c arm_systemreset.c
+CMN_CSRCS += arm_trigger_irq.c arm_tcbinfo.c
 
 ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
 CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
 endif
 
 ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_mpu.c arm_task_start.c arm_pthread_start.c
-CMN_CSRCS += arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
-endif
-
-ifeq ($(CONFIG_SCHED_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
+CMN_CSRCS += arm_mpu.c
 endif
 
 ifeq ($(CONFIG_ARCH_FPU),y)
diff --git a/arch/arm/src/eoss3/Make.defs b/arch/arm/src/eoss3/Make.defs
index 5e2ee8bef5..8cd303f9d0 100644
--- a/arch/arm/src/eoss3/Make.defs
+++ b/arch/arm/src/eoss3/Make.defs
@@ -18,37 +18,19 @@
 #
 ############################################################################
 
-CMN_ASRCS  = arm_testset.S arm_fetchadd.S vfork.S arm_exception.S
+include armv7-m/Make.defs
 
-CMN_CSRCS  = arm_vectors.c arm_allocateheap.c arm_assert.c arm_blocktask.c
-CMN_CSRCS += arm_createstack.c arm_doirq.c arm_exit.c arm_hardfault.c
-CMN_CSRCS += arm_initialize.c arm_initialstate.c arm_interruptcontext.c
-CMN_CSRCS += arm_itm.c arm_mdelay.c arm_memfault.c arm_modifyreg8.c
-CMN_CSRCS += arm_modifyreg16.c arm_modifyreg32.c arm_releasepending.c
-CMN_CSRCS += arm_releasestack.c arm_reprioritizertr.c arm_schedulesigaction.c
-CMN_CSRCS += arm_sigdeliver.c arm_stackframe.c arm_svcall.c arm_systemreset.c
-CMN_CSRCS += arm_trigger_irq.c arm_udelay.c arm_unblocktask.c arm_usestack.c
-CMN_CSRCS += arm_vfork.c arm_switchcontext.c arm_saveusercontext.c
-CMN_CSRCS += arm_fullcontextrestore.c arm_puts.c arm_tcbinfo.c
+CMN_ASRCS += arm_exception.S
+
+CMN_CSRCS += arm_vectors.c arm_doirq.c arm_hardfault.c
+CMN_CSRCS += arm_initialstate.c arm_itm.c arm_memfault.c
+CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_svcall.c
+CMN_CSRCS += arm_systemreset.c arm_trigger_irq.c arm_tcbinfo.c
 
 ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
 CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
 endif
 
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_task_start.c arm_pthread_start.c
-CMN_CSRCS += arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
-endif
-
-ifeq ($(CONFIG_SCHED_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
-
 ifeq ($(CONFIG_ARCH_FPU),y)
 CMN_CSRCS += arm_fpuconfig.c
 CMN_CSRCS += arm_fpucmp.c
diff --git a/arch/arm/src/imx1/Make.defs b/arch/arm/src/imx1/Make.defs
index 41854e0308..e8e84ce83c 100644
--- a/arch/arm/src/imx1/Make.defs
+++ b/arch/arm/src/imx1/Make.defs
@@ -18,27 +18,16 @@
 #
 ############################################################################
 
-HEAD_ASRC = arm_head.S
+include arm/Make.defs
 
-CMN_ASRCS  = arm_cache.S
-CMN_ASRCS += arm_vectors.S arm_vectoraddrexcptn.S arm_vectortab.S vfork.S
+HEAD_ASRC = arm_head.S
 
-CMN_CSRCS  = arm_assert.c arm_blocktask.c arm_createstack.c
-CMN_CSRCS += arm_dataabort.c arm_mdelay.c arm_udelay.c arm_exit.c
-CMN_CSRCS += arm_initialize.c arm_initialstate.c arm_interruptcontext.c
-CMN_CSRCS += arm_prefetchabort.c arm_releasepending.c arm_releasestack.c
-CMN_CSRCS += arm_reprioritizertr.c arm_schedulesigaction.c arm_sigdeliver.c
-CMN_CSRCS += arm_stackframe.c arm_syscall.c arm_unblocktask.c arm_undefinedinsn.c
-CMN_CSRCS += arm_usestack.c arm_vfork.c arm_switchcontext.c arm_saveusercontext.c
-CMN_CSRCS += arm_fullcontextrestore.c arm_puts.c arm_tcbinfo.c
+CMN_ASRCS += arm_cache.S
+CMN_ASRCS += arm_vectors.S arm_vectoraddrexcptn.S arm_vectortab.S
 
-ifneq ($(CONFIG_ARCH_IDLE_CUSTOM),y)
-CMN_CSRCS += arm_idle.c
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
+CMN_CSRCS += arm_dataabort.c arm_initialstate.c arm_prefetchabort.c
+CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_syscall.c
+CMN_CSRCS += arm_undefinedinsn.c arm_tcbinfo.c
 
 CHIP_ASRCS  = imx_lowputc.S
 CHIP_CSRCS  = imx_boot.c imx_gpio.c imx_allocateheap.c imx_irq.c
diff --git a/arch/arm/src/imx6/Make.defs b/arch/arm/src/imx6/Make.defs
index 5aad2db3e2..e76d564325 100644
--- a/arch/arm/src/imx6/Make.defs
+++ b/arch/arm/src/imx6/Make.defs
@@ -18,6 +18,8 @@
 #
 ############################################################################
 
+include armv7-a/Make.defs
+
 # The vector table is the "head" object, i.e., the one that must forced into
 # the link in order to draw in all of the other components
 
@@ -34,9 +36,9 @@ endif
 # debug.
 
 ifeq ($(CONFIG_PAGING),y)
-CMN_ASRCS  = arm_pghead.S
+CMN_ASRCS += arm_pghead.S
 else
-CMN_ASRCS  = arm_head.S
+CMN_ASRCS += arm_head.S
 ifeq ($(CONFIG_SMP),y)
 CMN_ASRCS += arm_cpuhead.S
 endif
@@ -45,26 +47,17 @@ endif
 # Common assembly language files
 
 CMN_ASRCS += arm_vectors.S arm_fpuconfig.S
-CMN_ASRCS += arm_vectoraddrexcptn.S arm_testset.S arm_fetchadd.S vfork.S
+CMN_ASRCS += arm_vectoraddrexcptn.S
 CMN_ASRCS += cp15_coherent_dcache.S cp15_invalidate_dcache.S
 CMN_ASRCS += cp15_clean_dcache.S cp15_flush_dcache.S cp15_invalidate_dcache_all.S
 CMN_ASRCS += cp15_clean_dcache_all.S cp15_flush_dcache_all.S cp15_cache_size.S
 
 # Common C source files
 
-CMN_CSRCS  = arm_initialize.c arm_interruptcontext.c arm_exit.c arm_createstack.c
-CMN_CSRCS += arm_releasestack.c arm_usestack.c arm_vfork.c arm_puts.c arm_mdelay.c
-CMN_CSRCS += arm_stackframe.c arm_udelay.c arm_modifyreg8.c arm_modifyreg16.c
-CMN_CSRCS += arm_modifyreg32.c arm_assert.c arm_blocktask.c arm_dataabort.c
-CMN_CSRCS += arm_doirq.c arm_gicv2.c arm_initialstate.c arm_mmu.c
-CMN_CSRCS += arm_prefetchabort.c arm_releasepending.c arm_reprioritizertr.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_syscall.c
-CMN_CSRCS += arm_unblocktask.c arm_undefinedinsn.c arm_switchcontext.c
-CMN_CSRCS += arm_saveusercontext.c arm_fullcontextrestore.c arm_cache.c arm_tcbinfo.c
-
-ifeq ($(CONFIG_ARM_SEMIHOSTING_HOSTFS),y)
-CMN_CSRCS += arm_hostfs.c
-endif
+CMN_CSRCS += arm_dataabort.c arm_doirq.c arm_gicv2.c arm_initialstate.c
+CMN_CSRCS += arm_mmu.c arm_prefetchabort.c arm_schedulesigaction.c
+CMN_CSRCS += arm_sigdeliver.c arm_syscall.c arm_undefinedinsn.c
+CMN_CSRCS += arm_cache.c arm_tcbinfo.c
 
 ifneq ($(CONFIG_ARCH_IDLE_CUSTOM),y)
 CMN_CSRCS += imx_idle.c
@@ -79,10 +72,6 @@ ifeq ($(CONFIG_DEBUG_IRQ_INFO),y)
 CMN_CSRCS += arm_gicv2_dump.c
 endif
 
-# Use common heap allocation for now (may need to be customized later)
-
-CMN_CSRCS += arm_allocateheap.c
-
 # Configuration dependent C and assembly language files
 
 ifeq ($(CONFIG_PAGING),y)
@@ -90,10 +79,6 @@ CMN_CSRCS += arm_allocpage.c arm_checkmapping.c arm_pginitialize.c
 CMN_CSRCS += arm_va2pte.c
 endif
 
-ifeq ($(CONFIG_BUILD_KERNEL),y)
-CMN_CSRCS += arm_task_start.c arm_pthread_start.c arm_signal_dispatch.c
-endif
-
 ifeq ($(CONFIG_ARCH_ADDRENV),y)
 CMN_CSRCS += arm_addrenv.c arm_addrenv_utils.c arm_pgalloc.c
 ifeq ($(CONFIG_ARCH_STACK_DYNAMIC),y)
@@ -122,10 +107,6 @@ ifeq ($(CONFIG_ARCH_FPU),y)
 CMN_CSRCS += arm_fpucmp.c
 endif
 
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
-
 # i.MX6-specific C source files
 
 CHIP_CSRCS  = imx_boot.c imx_memorymap.c imx_clockconfig.c imx_irq.c
diff --git a/arch/arm/src/imxrt/Make.defs b/arch/arm/src/imxrt/Make.defs
index a66e87f2de..3d4fa61ba3 100644
--- a/arch/arm/src/imxrt/Make.defs
+++ b/arch/arm/src/imxrt/Make.defs
@@ -20,22 +20,14 @@
 
 # Common ARM and Cortex-M7 files
 
-CMN_ASRCS  = arm_testset.S arm_fetchadd.S vfork.S arm_exception.S
+include armv7-m/Make.defs
 
-CMN_CSRCS  = arm_assert.c arm_blocktask.c
-CMN_CSRCS += arm_createstack.c arm_mdelay.c arm_udelay.c arm_exit.c
-CMN_CSRCS += arm_initialize.c arm_initialstate.c arm_interruptcontext.c
-CMN_CSRCS += arm_memfault.c arm_modifyreg8.c arm_modifyreg16.c arm_modifyreg32.c
-CMN_CSRCS += arm_releasepending.c arm_releasestack.c arm_reprioritizertr.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_stackframe.c
-CMN_CSRCS += arm_unblocktask.c arm_usestack.c arm_doirq.c arm_hardfault.c
-CMN_CSRCS += arm_svcall.c arm_vfork.c arm_trigger_irq.c arm_systemreset.c
-CMN_CSRCS += arm_switchcontext.c arm_saveusercontext.c arm_fullcontextrestore.c
-CMN_CSRCS += arm_puts.c arm_tcbinfo.c arm_vectors.c
+CMN_ASRCS += arm_exception.S
 
-ifeq ($(CONFIG_SCHED_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
-endif
+CMN_CSRCS += arm_initialstate.c arm_memfault.c arm_schedulesigaction.c
+CMN_CSRCS += arm_sigdeliver.c arm_doirq.c arm_hardfault.c
+CMN_CSRCS += arm_svcall.c arm_trigger_irq.c arm_systemreset.c
+CMN_CSRCS += arm_tcbinfo.c arm_vectors.c
 
 ifeq ($(CONFIG_ARMV7M_STACKCHECK),y)
 CMN_CSRCS += arm_stackcheck.c
@@ -49,16 +41,6 @@ ifeq ($(CONFIG_ARM_MPU),y)
 CMN_CSRCS += arm_mpu.c
 endif
 
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_task_start.c arm_pthread_start.c
-CMN_CSRCS += arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
-
 CMN_CSRCS += arm_cache.c
 
 ifeq ($(CONFIG_ARCH_FPU),y)
diff --git a/arch/arm/src/kinetis/Make.defs b/arch/arm/src/kinetis/Make.defs
index bc5f196717..098a387394 100644
--- a/arch/arm/src/kinetis/Make.defs
+++ b/arch/arm/src/kinetis/Make.defs
@@ -18,22 +18,14 @@
 #
 ############################################################################
 
-CMN_ASRCS  = arm_testset.S arm_fetchadd.S vfork.S arm_exception.S
+include armv7-m/Make.defs
 
-CMN_CSRCS  = arm_assert.c arm_blocktask.c arm_createstack.c arm_vectors.c
-CMN_CSRCS += arm_mdelay.c arm_udelay.c arm_exit.c arm_initialize.c arm_memfault.c
-CMN_CSRCS += arm_initialstate.c arm_interruptcontext.c arm_modifyreg8.c
-CMN_CSRCS += arm_modifyreg16.c arm_modifyreg32.c arm_releasestack.c
-CMN_CSRCS += arm_reprioritizertr.c arm_schedulesigaction.c arm_releasepending.c
-CMN_CSRCS += arm_sigdeliver.c arm_stackframe.c arm_unblocktask.c arm_usestack.c
-CMN_CSRCS += arm_doirq.c arm_hardfault.c arm_svcall.c arm_vfork.c
-CMN_CSRCS += arm_systemreset.c arm_trigger_irq.c arm_switchcontext.c
-CMN_CSRCS += arm_saveusercontext.c arm_fullcontextrestore.c arm_puts.c
-CMN_CSRCS += arm_tcbinfo.c
+CMN_ASRCS += arm_exception.S
 
-ifeq ($(CONFIG_SCHED_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
-endif
+CMN_CSRCS += arm_vectors.c arm_memfault.c arm_initialstate.c
+CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c
+CMN_CSRCS += arm_doirq.c arm_hardfault.c arm_svcall.c
+CMN_CSRCS += arm_systemreset.c arm_trigger_irq.c arm_tcbinfo.c
 
 ifeq ($(CONFIG_ARMV7M_STACKCHECK),y)
 CMN_CSRCS += arm_stackcheck.c
@@ -47,26 +39,6 @@ ifeq ($(CONFIG_ARM_MPU),y)
 CMN_CSRCS += arm_mpu.c
 endif
 
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_task_start.c arm_pthread_start.c
-CMN_CSRCS += arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
-
-# Use of common/arm_etherstub.c is deprecated.  The preferred mechanism is to
-# use CONFIG_NETDEV_LATEINIT=y to suppress the call to arm_netinitialize() in
-# up_initialize().  Then this stub would not be needed.
-
-ifeq ($(CONFIG_NET),y)
-ifneq ($(CONFIG_KINETIS_ENET),y)
-CMN_CSRCS += arm_etherstub.c
-endif
-endif
-
 ifeq ($(CONFIG_ARCH_FPU),y)
 CMN_CSRCS += arm_fpuconfig.c
 CMN_CSRCS += arm_fpucmp.c
diff --git a/arch/arm/src/kl/Make.defs b/arch/arm/src/kl/Make.defs
index 62fda843c0..f67ad84d97 100644
--- a/arch/arm/src/kl/Make.defs
+++ b/arch/arm/src/kl/Make.defs
@@ -18,32 +18,13 @@
 #
 ############################################################################
 
-CMN_ASRCS  = arm_exception.S vfork.S
+include armv6-m/Make.defs
 
-CMN_CSRCS  = arm_allocateheap.c arm_assert.c arm_blocktask.c
-CMN_CSRCS += arm_createstack.c arm_mdelay.c arm_udelay.c arm_exit.c
-CMN_CSRCS += arm_initialize.c arm_initialstate.c arm_interruptcontext.c
-CMN_CSRCS += arm_puts.c arm_modifyreg8.c arm_modifyreg16.c arm_modifyreg32.c
-CMN_CSRCS += arm_releasepending.c arm_releasestack.c arm_reprioritizertr.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_stackframe.c
-CMN_CSRCS += arm_systemreset.c arm_unblocktask.c arm_usestack.c arm_doirq.c
-CMN_CSRCS += arm_hardfault.c arm_svcall.c arm_vectors.c arm_vfork.c
-CMN_CSRCS += arm_switchcontext.c arm_saveusercontext.c arm_fullcontextrestore.c
-CMN_CSRCS += arm_tcbinfo.c
+CMN_ASRCS += arm_exception.S
 
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_task_start.c arm_pthread_start.c
-CMN_CSRCS += arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
-endif
-
-ifeq ($(CONFIG_SCHED_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
+CMN_CSRCS += arm_initialstate.c arm_schedulesigaction.c arm_sigdeliver.c
+CMN_CSRCS += arm_systemreset.c arm_doirq.c arm_hardfault.c arm_svcall.c
+CMN_CSRCS += arm_vectors.c arm_tcbinfo.c
 
 ifeq ($(CONFIG_DEBUG_FEATURES),y)
 CMN_CSRCS += arm_dumpnvic.c
diff --git a/arch/arm/src/lc823450/Make.defs b/arch/arm/src/lc823450/Make.defs
index 5eb872bf50..1f1820c2fd 100644
--- a/arch/arm/src/lc823450/Make.defs
+++ b/arch/arm/src/lc823450/Make.defs
@@ -18,33 +18,19 @@
 #
 ############################################################################
 
-CMN_ASRCS  = vfork.S arm_exception.S
+include armv7-m/Make.defs
 
-CMN_CSRCS  = arm_assert.c arm_blocktask.c
-CMN_CSRCS += arm_createstack.c arm_mdelay.c arm_udelay.c arm_exit.c
-CMN_CSRCS += arm_initialize.c arm_initialstate.c arm_interruptcontext.c
-CMN_CSRCS += arm_memfault.c arm_modifyreg8.c arm_modifyreg16.c arm_modifyreg32.c
-CMN_CSRCS += arm_releasepending.c arm_releasestack.c arm_reprioritizertr.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_systemreset.c
-CMN_CSRCS += arm_unblocktask.c arm_usestack.c arm_doirq.c arm_hardfault.c
-CMN_CSRCS += arm_svcall.c arm_vfork.c arm_trigger_irq.c arm_switchcontext.c
-CMN_CSRCS += arm_saveusercontext.c arm_fullcontextrestore.c
-CMN_CSRCS += arm_puts.c arm_tcbinfo.c arm_stackframe.c arm_vectors.c
+CMN_ASRCS += arm_exception.S
 
-ifeq ($(CONFIG_SCHED_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
-endif
+CMN_CSRCS += arm_initialstate.c arm_memfault.c
+CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_systemreset.c
+CMN_CSRCS += arm_doirq.c arm_hardfault.c arm_svcall.c arm_trigger_irq.c
+CMN_CSRCS += arm_tcbinfo.c arm_vectors.c
 
 ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
 CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
 endif
 
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_task_start.c arm_pthread_start.c
-CMN_CSRCS += arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
-endif
-
 ifeq ($(CONFIG_ARCH_MEMCPY),y)
 CMN_ASRCS += memcpy-armv7m.S
 endif
@@ -53,10 +39,6 @@ ifeq ($(CONFIG_ARCH_MEMMOVE),y)
 CMN_CSRCS += up_memmove.c
 endif
 
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
-
 CHIP_CSRCS  = lc823450_allocateheap2.c lc823450_start.c lc823450_irq.c lc823450_timer.c
 CHIP_CSRCS += lc823450_lowputc.c lc823450_serial.c lc823450_clockconfig.c
 CHIP_CSRCS += lc823450_syscontrol.c lc823450_gpio.c
diff --git a/arch/arm/src/lpc17xx_40xx/Make.defs b/arch/arm/src/lpc17xx_40xx/Make.defs
index 082ac20391..0f2e26c734 100644
--- a/arch/arm/src/lpc17xx_40xx/Make.defs
+++ b/arch/arm/src/lpc17xx_40xx/Make.defs
@@ -20,22 +20,14 @@
 
 # Common ARM and Cortex-M3 files
 
-CMN_ASRCS  = arm_testset.S arm_fetchadd.S vfork.S arm_exception.S
+include armv7-m/Make.defs
 
-CMN_CSRCS  = arm_assert.c arm_blocktask.c arm_createstack.c arm_vectors.c
-CMN_CSRCS += arm_mdelay.c arm_udelay.c arm_exit.c arm_initialize.c arm_memfault.c
-CMN_CSRCS += arm_initialstate.c arm_interruptcontext.c arm_modifyreg8.c
-CMN_CSRCS += arm_modifyreg16.c arm_modifyreg32.c arm_releasepending.c
-CMN_CSRCS += arm_releasestack.c arm_reprioritizertr.c arm_schedulesigaction.c
-CMN_CSRCS += arm_sigdeliver.c arm_stackframe.c arm_trigger_irq.c
-CMN_CSRCS += arm_unblocktask.c arm_usestack.c arm_doirq.c arm_hardfault.c
-CMN_CSRCS += arm_svcall.c arm_checkstack.c arm_vfork.c arm_switchcontext.c
-CMN_CSRCS += arm_saveusercontext.c arm_fullcontextrestore.c arm_systemreset.c
-CMN_CSRCS += arm_puts.c arm_tcbinfo.c arm_perf.c
+CMN_ASRCS += arm_exception.S
 
-ifeq ($(CONFIG_SCHED_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
-endif
+CMN_CSRCS += arm_vectors.c arm_memfault.c arm_initialstate.c
+CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_trigger_irq.c
+CMN_CSRCS += arm_doirq.c arm_hardfault.c arm_svcall.c arm_systemreset.c
+CMN_CSRCS += arm_tcbinfo.c arm_perf.c
 
 ifeq ($(CONFIG_ARMV7M_STACKCHECK),y)
 CMN_CSRCS += arm_stackcheck.c
@@ -49,22 +41,6 @@ ifeq ($(CONFIG_ARM_MPU),y)
 CMN_CSRCS += arm_mpu.c
 endif
 
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_task_start.c arm_pthread_start.c
-CMN_CSRCS += arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
-endif
-
-# Use of common/arm_etherstub.c is deprecated.  The preferred mechanism is to
-# use CONFIG_NETDEV_LATEINIT=y to suppress the call to arm_netinitialize() in
-# up_initialize().  Then this stub would not be needed.
-
-ifeq ($(CONFIG_NET),y)
-ifneq ($(CONFIG_LPC17_40_ETHERNET),y)
-CMN_CSRCS += arm_etherstub.c
-endif
-endif
-
 ifeq ($(CONFIG_ARCH_FPU),y)
 CMN_CSRCS += arm_fpuconfig.c
 CMN_CSRCS += arm_fpucmp.c
diff --git a/arch/arm/src/lpc214x/Make.defs b/arch/arm/src/lpc214x/Make.defs
index aa9f4f8abe..5fdf5e1867 100644
--- a/arch/arm/src/lpc214x/Make.defs
+++ b/arch/arm/src/lpc214x/Make.defs
@@ -18,26 +18,14 @@
 #
 ##############################################################################
 
-HEAD_ASRC = lpc214x_head.S
-CMN_ASRCS = arm_vectors.S vfork.S
+include arm/Make.defs
 
-CMN_CSRCS  = arm_allocateheap.c arm_assert.c arm_blocktask.c
-CMN_CSRCS += arm_createstack.c arm_dataabort.c arm_mdelay.c arm_udelay.c
-CMN_CSRCS += arm_exit.c arm_initialize.c arm_initialstate.c
-CMN_CSRCS += arm_interruptcontext.c arm_prefetchabort.c arm_releasepending.c
-CMN_CSRCS += arm_releasestack.c arm_reprioritizertr.c arm_stackframe.c
-CMN_CSRCS += arm_syscall.c arm_unblocktask.c arm_undefinedinsn.c arm_usestack.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_lowputs.c arm_vfork.c
-CMN_CSRCS += arm_switchcontext.c arm_saveusercontext.c arm_fullcontextrestore.c
-CMN_CSRCS += arm_puts.c arm_tcbinfo.c
+HEAD_ASRC  = lpc214x_head.S
+CMN_ASRCS += arm_vectors.S
 
-ifneq ($(CONFIG_ARCH_IDLE_CUSTOM),y)
-CMN_CSRCS += arm_idle.c
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
+CMN_CSRCS += arm_dataabort.c arm_initialstate.c arm_prefetchabort.c
+CMN_CSRCS += arm_syscall.c arm_undefinedinsn.c arm_schedulesigaction.c
+CMN_CSRCS += arm_sigdeliver.c arm_tcbinfo.c
 
 CHIP_ASRCS = lpc214x_lowputc.S
 CHIP_CSRCS = lpc214x_decodeirq.c lpc214x_irq.c lpc214x_serial.c
diff --git a/arch/arm/src/lpc2378/Make.defs b/arch/arm/src/lpc2378/Make.defs
index c6c84cac6f..62ba3b48b4 100644
--- a/arch/arm/src/lpc2378/Make.defs
+++ b/arch/arm/src/lpc2378/Make.defs
@@ -18,26 +18,14 @@
 #
 ##############################################################################
 
-HEAD_ASRC = lpc23xx_head.S
-CMN_ASRCS = arm_vectors.S vfork.S
-
-CMN_CSRCS  = arm_allocateheap.c arm_assert.c arm_blocktask.c
-CMN_CSRCS += arm_createstack.c arm_dataabort.c arm_mdelay.c arm_udelay.c
-CMN_CSRCS += arm_exit.c arm_initialize.c arm_initialstate.c
-CMN_CSRCS += arm_interruptcontext.c arm_prefetchabort.c arm_releasepending.c
-CMN_CSRCS += arm_releasestack.c arm_reprioritizertr.c arm_stackframe.c
-CMN_CSRCS += arm_syscall.c arm_unblocktask.c arm_undefinedinsn.c
-CMN_CSRCS += arm_usestack.c arm_lowputs.c arm_vfork.c arm_schedulesigaction.c
-CMN_CSRCS += arm_sigdeliver.c arm_switchcontext.c arm_saveusercontext.c
-CMN_CSRCS += arm_fullcontextrestore.c arm_puts.c arm_tcbinfo.c
-
-ifneq ($(CONFIG_ARCH_IDLE_CUSTOM),y)
-CMN_CSRCS += arm_idle.c
-endif
+include arm/Make.defs
 
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
+HEAD_ASRC  = lpc23xx_head.S
+CMN_ASRCS += arm_vectors.S
+
+CMN_CSRCS += arm_dataabort.c arm_initialstate.c arm_prefetchabort.c
+CMN_CSRCS += arm_syscall.c arm_undefinedinsn.c arm_schedulesigaction.c
+CMN_CSRCS += arm_sigdeliver.c arm_tcbinfo.c
 
 CHIP_ASRCS  = lpc23xx_lowputc.S
 CHIP_CSRCS += lpc23xx_pllsetup.c  lpc23xx_decodeirq.c lpc23xx_irq.c
diff --git a/arch/arm/src/lpc31xx/Make.defs b/arch/arm/src/lpc31xx/Make.defs
index d6c140417e..4c03acedab 100644
--- a/arch/arm/src/lpc31xx/Make.defs
+++ b/arch/arm/src/lpc31xx/Make.defs
@@ -18,33 +18,21 @@
 #
 ############################################################################
 
-HEAD_ASRC = arm_head.S
+include arm/Make.defs
 
-CMN_ASRCS  = arm_cache.S
-CMN_ASRCS += arm_vectors.S arm_vectoraddrexcptn.S arm_vectortab.S vfork.S
+HEAD_ASRC = arm_head.S
 
-CMN_CSRCS  = arm_assert.c arm_blocktask.c arm_createstack.c
-CMN_CSRCS += arm_dataabort.c arm_mdelay.c arm_udelay.c arm_exit.c
-CMN_CSRCS += arm_initialize.c arm_initialstate.c arm_interruptcontext.c
-CMN_CSRCS += arm_modifyreg8.c arm_modifyreg16.c arm_modifyreg32.c
-CMN_CSRCS += arm_prefetchabort.c arm_releasepending.c arm_releasestack.c
-CMN_CSRCS += arm_reprioritizertr.c arm_schedulesigaction.c
-CMN_CSRCS += arm_sigdeliver.c arm_stackframe.c arm_syscall.c arm_unblocktask.c
-CMN_CSRCS += arm_undefinedinsn.c arm_usestack.c arm_vfork.c arm_switchcontext.c
-CMN_CSRCS += arm_saveusercontext.c arm_fullcontextrestore.c arm_puts.c arm_tcbinfo.c
+CMN_ASRCS += arm_cache.S
+CMN_ASRCS += arm_vectors.S arm_vectoraddrexcptn.S arm_vectortab.S
 
-ifneq ($(CONFIG_ARCH_IDLE_CUSTOM),y)
-CMN_CSRCS += arm_idle.c
-endif
+CMN_CSRCS += arm_dataabort.c arm_initialstate.c arm_prefetchabort.c
+CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_syscall.c
+CMN_CSRCS += arm_undefinedinsn.c arm_tcbinfo.c
 
 ifeq ($(CONFIG_PAGING),y)
 CMN_CSRCS += arm_pginitialize.c arm_checkmapping.c arm_allocpage.c arm_va2pte.c
 endif
 
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
-
 CGU_CSRCS  = lpc31_bcrndx.c lpc31_clkdomain.c lpc31_clkexten.c
 CGU_CSRCS += lpc31_clkfreq.c lpc31_clkinit.c lpc31_defclk.c
 CGU_CSRCS += lpc31_esrndx.c lpc31_fdcndx.c lpc31_fdivinit.c
diff --git a/arch/arm/src/lpc43xx/Make.defs b/arch/arm/src/lpc43xx/Make.defs
index d6f2641363..d01bf2f065 100644
--- a/arch/arm/src/lpc43xx/Make.defs
+++ b/arch/arm/src/lpc43xx/Make.defs
@@ -18,17 +18,13 @@
 #
 ############################################################################
 
-CMN_ASRCS  = arm_testset.S arm_fetchadd.S vfork.S arm_exception.S
-
-CMN_CSRCS  = arm_assert.c arm_blocktask.c arm_createstack.c arm_vectors.c
-CMN_CSRCS += arm_doirq.c arm_exit.c arm_hardfault.c arm_initialize.c
-CMN_CSRCS += arm_initialstate.c arm_interruptcontext.c arm_mdelay.c
-CMN_CSRCS += arm_memfault.c arm_modifyreg8.c arm_modifyreg16.c arm_modifyreg32.c
-CMN_CSRCS += arm_releasepending.c arm_releasestack.c arm_reprioritizertr.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_stackframe.c
-CMN_CSRCS += arm_svcall.c arm_trigger_irq.c arm_unblocktask.c arm_udelay.c
-CMN_CSRCS += arm_usestack.c arm_vfork.c arm_switchcontext.c arm_saveusercontext.c
-CMN_CSRCS += arm_fullcontextrestore.c arm_puts.c arm_tcbinfo.c
+include armv7-m/Make.defs
+
+CMN_ASRCS += arm_exception.S
+
+CMN_CSRCS += arm_vectors.c arm_doirq.c arm_hardfault.c
+CMN_CSRCS += arm_initialstate.c arm_memfault.c arm_schedulesigaction.c
+CMN_CSRCS += arm_sigdeliver.c arm_svcall.c arm_trigger_irq.c arm_tcbinfo.c
 
 ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
 CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
@@ -38,20 +34,6 @@ ifeq ($(CONFIG_ARM_MPU),y)
 CMN_CSRCS += arm_mpu.c
 endif
 
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_task_start.c arm_pthread_start.c
-CMN_CSRCS += arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
-endif
-
-ifeq ($(CONFIG_SCHED_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
-
 ifeq ($(CONFIG_ARCH_FPU),y)
 CMN_CSRCS += arm_fpuconfig.c
 CMN_CSRCS += arm_fpucmp.c
diff --git a/arch/arm/src/lpc54xx/Make.defs b/arch/arm/src/lpc54xx/Make.defs
index 09ff71d060..3e5fcc2ab2 100644
--- a/arch/arm/src/lpc54xx/Make.defs
+++ b/arch/arm/src/lpc54xx/Make.defs
@@ -18,17 +18,13 @@
 #
 ############################################################################
 
-CMN_ASRCS  = arm_testset.S arm_fetchadd.S vfork.S arm_exception.S
-
-CMN_CSRCS  = arm_assert.c arm_blocktask.c arm_createstack.c arm_vectors.c
-CMN_CSRCS += arm_doirq.c arm_exit.c arm_hardfault.c arm_initialize.c
-CMN_CSRCS += arm_initialstate.c arm_interruptcontext.c arm_mdelay.c
-CMN_CSRCS += arm_memfault.c arm_modifyreg8.c arm_modifyreg16.c arm_modifyreg32.c
-CMN_CSRCS += arm_releasepending.c arm_releasestack.c arm_reprioritizertr.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_stackframe.c
-CMN_CSRCS += arm_svcall.c arm_trigger_irq.c arm_unblocktask.c arm_udelay.c
-CMN_CSRCS += arm_usestack.c arm_vfork.c arm_switchcontext.c arm_saveusercontext.c
-CMN_CSRCS += arm_fullcontextrestore.c arm_puts.c arm_tcbinfo.c
+include armv7-m/Make.defs
+
+CMN_ASRCS += arm_exception.S
+
+CMN_CSRCS += arm_vectors.c arm_doirq.c arm_hardfault.c
+CMN_CSRCS += arm_initialstate.c arm_memfault.c arm_schedulesigaction.c
+CMN_CSRCS += arm_sigdeliver.c arm_svcall.c arm_trigger_irq.c arm_tcbinfo.c
 
 ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
 CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
@@ -38,20 +34,6 @@ ifeq ($(CONFIG_ARM_MPU),y)
 CMN_CSRCS += arm_mpu.c
 endif
 
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_task_start.c arm_pthread_start.c
-CMN_CSRCS += arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
-endif
-
-ifeq ($(CONFIG_SCHED_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
-
 ifeq ($(CONFIG_ARCH_FPU),y)
 CMN_CSRCS += arm_fpuconfig.c
 CMN_CSRCS += arm_fpucmp.c
diff --git a/arch/arm/src/max326xx/Make.defs b/arch/arm/src/max326xx/Make.defs
index 50b40298af..e1d98ad598 100644
--- a/arch/arm/src/max326xx/Make.defs
+++ b/arch/arm/src/max326xx/Make.defs
@@ -20,35 +20,21 @@
 
 # Common ARMv7-M Source Files
 
-CMN_ASRCS  = arm_testset.S arm_fetchadd.S vfork.S arm_exception.S
-
-CMN_CSRCS  = arm_allocateheap.c arm_assert.c arm_blocktask.c arm_vectors.c
-CMN_CSRCS += arm_createstack.c arm_doirq.c arm_exit.c arm_hardfault.c
-CMN_CSRCS += arm_initialize.c arm_initialstate.c arm_interruptcontext.c
-CMN_CSRCS += arm_mdelay.c arm_memfault.c arm_modifyreg8.c arm_modifyreg16.c
-CMN_CSRCS += arm_modifyreg32.c arm_releasepending.c arm_releasestack.c
-CMN_CSRCS += arm_reprioritizertr.c arm_schedulesigaction.c arm_sigdeliver.c
-CMN_CSRCS += arm_stackframe.c arm_svcall.c arm_trigger_irq.c arm_unblocktask.c
-CMN_CSRCS += arm_udelay.c arm_usestack.c arm_vfork.c arm_switchcontext.c
-CMN_CSRCS += arm_saveusercontext.c arm_fullcontextrestore.c
-CMN_CSRCS += arm_puts.c arm_tcbinfo.c
+include armv7-m/Make.defs
+
+CMN_ASRCS += arm_exception.S
+
+CMN_CSRCS += arm_vectors.c arm_doirq.c arm_hardfault.c
+CMN_CSRCS += arm_initialstate.c arm_memfault.c
+CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c
+CMN_CSRCS += arm_svcall.c arm_trigger_irq.c arm_tcbinfo.c
 
 ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
 CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
 endif
 
 ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_mpu.c arm_task_start.c arm_pthread_start.c
-CMN_CSRCS += arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
-endif
-
-ifeq ($(CONFIG_SCHED_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
+CMN_CSRCS += arm_mpu.c
 endif
 
 ifeq ($(CONFIG_ARCH_FPU),y)
diff --git a/arch/arm/src/moxart/Make.defs b/arch/arm/src/moxart/Make.defs
index fdfebec530..7da794efc3 100644
--- a/arch/arm/src/moxart/Make.defs
+++ b/arch/arm/src/moxart/Make.defs
@@ -18,18 +18,14 @@
 #
 ############################################################################
 
+include arm/Make.defs
+
 HEAD_ASRC = moxart_head.S
-CMN_ASRCS = arm_vectors.S arm_nommuhead.S vfork.S
+CMN_ASRCS += arm_vectors.S arm_nommuhead.S
 
-CMN_CSRCS  = arm_allocateheap.c arm_assert.c arm_blocktask.c
-CMN_CSRCS += arm_createstack.c arm_dataabort.c arm_mdelay.c arm_udelay.c
-CMN_CSRCS += arm_exit.c arm_initialstate.c arm_initialize.c
-CMN_CSRCS += arm_interruptcontext.c arm_prefetchabort.c arm_releasepending.c
-CMN_CSRCS += arm_releasestack.c arm_reprioritizertr.c arm_schedulesigaction.c
-CMN_CSRCS += arm_sigdeliver.c arm_stackframe.c arm_syscall.c arm_unblocktask.c
-CMN_CSRCS += arm_undefinedinsn.c arm_usestack.c arm_vfork.c arm_etherstub.c
-CMN_CSRCS += arm_switchcontext.c arm_saveusercontext.c arm_fullcontextrestore.c
-CMN_CSRCS += arm_puts.c arm_tcbinfo.c
+CMN_CSRCS += arm_dataabort.c arm_initialstate.c arm_prefetchabort.c
+CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_syscall.c
+CMN_CSRCS += arm_undefinedinsn.c arm_tcbinfo.c
 
 CHIP_ASRCS  = moxart_lowputc.S
 
diff --git a/arch/arm/src/nrf52/Make.defs b/arch/arm/src/nrf52/Make.defs
index 1b65e07040..3ba4ca824a 100644
--- a/arch/arm/src/nrf52/Make.defs
+++ b/arch/arm/src/nrf52/Make.defs
@@ -18,24 +18,20 @@
 #
 ############################################################################
 
-CMN_ASRCS  = arm_testset.S vfork.S arm_exception.S
-
-CMN_CSRCS  = arm_assert.c arm_blocktask.c arm_vectors.c
-CMN_CSRCS += arm_createstack.c arm_doirq.c arm_exit.c arm_hardfault.c
-CMN_CSRCS += arm_initialize.c arm_initialstate.c arm_interruptcontext.c
-CMN_CSRCS += arm_memfault.c arm_modifyreg8.c arm_modifyreg16.c
-CMN_CSRCS += arm_modifyreg32.c arm_releasepending.c arm_releasestack.c
-CMN_CSRCS += arm_reprioritizertr.c arm_schedulesigaction.c arm_sigdeliver.c
-CMN_CSRCS += arm_stackframe.c arm_svcall.c arm_trigger_irq.c arm_udelay.c
-CMN_CSRCS += arm_unblocktask.c arm_usestack.c arm_vfork.c arm_systemreset.c
-CMN_CSRCS += arm_switchcontext.c arm_saveusercontext.c arm_fullcontextrestore.c
-CMN_CSRCS += arm_puts.c arm_tcbinfo.c
+include armv7-m/Make.defs
+
+CMN_ASRCS += arm_exception.S
+
+CMN_CSRCS += arm_vectors.c arm_doirq.c arm_hardfault.c arm_initialstate.c
+CMN_CSRCS += arm_memfault.c arm_schedulesigaction.c arm_sigdeliver.c
+CMN_CSRCS += arm_svcall.c arm_trigger_irq.c arm_systemreset.c
+CMN_CSRCS += arm_tcbinfo.c
 
 ifeq ($(CONFIG_NRF52_SYSTIMER_SYSTICK),y)
 CMN_CSRCS += arm_systick.c nrf52_systick.c
 else
 ifeq ($(CONFIG_NRF52_SYSTIMER_RTC),y)
-CMN_CSRCS += nrf52_tickless_rtc.c arm_mdelay.c
+CMN_CSRCS += nrf52_tickless_rtc.c
 endif
 endif
 
@@ -44,17 +40,7 @@ CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
 endif
 
 ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_mpu.c arm_task_start.c arm_pthread_start.c
-CMN_CSRCS += arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
-endif
-
-ifeq ($(CONFIG_SCHED_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
+CMN_CSRCS += arm_mpu.c
 endif
 
 ifeq ($(CONFIG_ARMV7M_STACKCHECK),y)
diff --git a/arch/arm/src/nuc1xx/Make.defs b/arch/arm/src/nuc1xx/Make.defs
index 0c8f73d2df..2d60aba1c8 100644
--- a/arch/arm/src/nuc1xx/Make.defs
+++ b/arch/arm/src/nuc1xx/Make.defs
@@ -18,32 +18,13 @@
 #
 ############################################################################
 
-CMN_ASRCS  = arm_exception.S vfork.S
+include armv6-m/Make.defs
 
-CMN_CSRCS  = arm_allocateheap.c arm_assert.c arm_blocktask.c
-CMN_CSRCS += arm_createstack.c arm_mdelay.c arm_udelay.c arm_exit.c
-CMN_CSRCS += arm_initialize.c arm_initialstate.c arm_interruptcontext.c
-CMN_CSRCS += arm_modifyreg8.c arm_modifyreg16.c arm_modifyreg32.c
-CMN_CSRCS += arm_releasepending.c arm_releasestack.c arm_reprioritizertr.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_stackframe.c
-CMN_CSRCS += arm_systemreset.c arm_unblocktask.c arm_usestack.c arm_doirq.c
-CMN_CSRCS += arm_hardfault.c arm_svcall.c arm_vectors.c arm_vfork.c
-CMN_CSRCS += arm_switchcontext.c arm_saveusercontext.c
-CMN_CSRCS += arm_fullcontextrestore.c arm_puts.c arm_tcbinfo.c
+CMN_ASRCS += arm_exception.S
 
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_task_start.c arm_pthread_start.c
-CMN_CSRCS += arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
-endif
-
-ifeq ($(CONFIG_SCHED_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
+CMN_CSRCS += arm_initialstate.c arm_schedulesigaction.c arm_sigdeliver.c
+CMN_CSRCS += arm_systemreset.c arm_doirq.c arm_hardfault.c arm_svcall.c
+CMN_CSRCS += arm_vectors.c arm_tcbinfo.c
 
 ifeq ($(CONFIG_DEBUG_FEATURES),y)
 CMN_CSRCS += arm_dumpnvic.c
diff --git a/arch/arm/src/phy62xx/Make.defs b/arch/arm/src/phy62xx/Make.defs
index 43b1554ccd..9c99eed685 100644
--- a/arch/arm/src/phy62xx/Make.defs
+++ b/arch/arm/src/phy62xx/Make.defs
@@ -18,32 +18,16 @@
 #
 ############################################################################
 
-CMN_ASRCS  = phy62xx_exception.S phy62xx_start.S vfork.S
-
-CMN_CSRCS  = arm_allocateheap.c arm_assert.c arm_blocktask.c
-CMN_CSRCS += arm_createstack.c arm_mdelay.c arm_udelay.c arm_exit.c
-CMN_CSRCS += arm_initialize.c arm_initialstate.c arm_interruptcontext.c
-CMN_CSRCS += arm_puts.c arm_modifyreg8.c arm_modifyreg16.c arm_modifyreg32.c
-CMN_CSRCS += arm_releasepending.c arm_releasestack.c arm_reprioritizertr.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_stackframe.c
-CMN_CSRCS += arm_systemreset.c arm_unblocktask.c arm_usestack.c arm_doirq.c
-CMN_CSRCS += phy62xx_hardfault.c arm_svcall.c arm_vectors.c arm_vfork.c
-CMN_CSRCS += arm_switchcontext.c arm_saveusercontext.c
-CMN_CSRCS += arm_fullcontextrestore.c arm_tcbinfo.c
-
-ifeq ($(CONFIG_ARCH_HAVE_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
-endif
+include armv6-m/Make.defs
+
+CMN_ASRCS += phy62xx_exception.S phy62xx_start.S
+
+CMN_CSRCS += arm_initialstate.c arm_schedulesigaction.c arm_sigdeliver.c
+CMN_CSRCS += arm_systemreset.c arm_doirq.c phy62xx_hardfault.c
+CMN_CSRCS += arm_svcall.c arm_vectors.c arm_tcbinfo.c
 
 ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_task_start.c arm_pthread_start.c
 CMN_CSRCS += arm_pthread_exit.c
-CMN_CSRCS += arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
 endif
 
 ifeq ($(CONFIG_DEBUG_FEATURES),y)
diff --git a/arch/arm/src/rp2040/Make.defs b/arch/arm/src/rp2040/Make.defs
index 8f2e62eac1..6207e4db8f 100644
--- a/arch/arm/src/rp2040/Make.defs
+++ b/arch/arm/src/rp2040/Make.defs
@@ -18,37 +18,18 @@
 #
 ############################################################################
 
-CMN_ASRCS  = arm_exception.S vfork.S
+include armv6-m/Make.defs
 
-CMN_CSRCS  = arm_allocateheap.c arm_assert.c arm_blocktask.c
-CMN_CSRCS += arm_createstack.c arm_mdelay.c arm_udelay.c arm_exit.c
-CMN_CSRCS += arm_initialize.c arm_initialstate.c arm_interruptcontext.c
-CMN_CSRCS += arm_modifyreg8.c arm_modifyreg16.c arm_modifyreg32.c
-CMN_CSRCS += arm_releasepending.c arm_releasestack.c arm_reprioritizertr.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_stackframe.c
-CMN_CSRCS += arm_systemreset.c arm_unblocktask.c arm_usestack.c arm_doirq.c
-CMN_CSRCS += arm_hardfault.c arm_svcall.c arm_vectors.c arm_vfork.c
-CMN_CSRCS += arm_switchcontext.c arm_saveusercontext.c
-CMN_CSRCS += arm_fullcontextrestore.c arm_puts.c arm_tcbinfo.c
+CMN_ASRCS += arm_exception.S
+
+CMN_CSRCS += arm_initialstate.c arm_schedulesigaction.c arm_sigdeliver.c
+CMN_CSRCS += arm_systemreset.c arm_doirq.c arm_hardfault.c arm_svcall.c
+CMN_CSRCS += arm_vectors.c arm_tcbinfo.c
 
 ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
 CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
 endif
 
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_task_start.c arm_pthread_start.c
-CMN_CSRCS += arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
-endif
-
-ifeq ($(CONFIG_SCHED_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
-
 ifeq ($(CONFIG_DEBUG_FEATURES),y)
 CMN_CSRCS += arm_dumpnvic.c
 endif
diff --git a/arch/arm/src/rtl8720c/Make.defs b/arch/arm/src/rtl8720c/Make.defs
index 16b9b00391..797d5339fe 100644
--- a/arch/arm/src/rtl8720c/Make.defs
+++ b/arch/arm/src/rtl8720c/Make.defs
@@ -18,34 +18,18 @@
 #
 ############################################################################
 
-# arch/arm/src/common
-#
-CMN_CSRCS += arm_checkstack.c arm_createstack.c arm_exit.c arm_hostfs.c
-CMN_CSRCS += arm_initialize.c arm_interruptcontext.c arm_modifyreg8.c
-CMN_CSRCS += arm_modifyreg16.c arm_modifyreg32.c arm_pthread_start.c
-CMN_CSRCS += arm_puts.c arm_releasestack.c arm_semi_syslog.c
-CMN_CSRCS += arm_stackframe.c arm_task_start.c arm_usestack.c arm_vfork.c
+include armv8-m/Make.defs
 
 # arch/arm/src/armv8-m
 #
-CMN_ASRCS += arm_exception.S arm_fetchadd.S arm_setjmp.S
-CMN_ASRCS += arm_testset.S vfork.S
-
-CMN_UASRCS += arm_signal_handler.S
+CMN_ASRCS += arm_exception.S arm_setjmp.S
 
-CMN_CSRCS += arm_assert.c arm_blocktask.c arm_cache.c
-CMN_CSRCS += arm_doirq.c arm_hardfault.c arm_initialstate.c
+CMN_CSRCS += arm_cache.c arm_doirq.c arm_hardfault.c arm_initialstate.c
 CMN_CSRCS += arm_itm_syslog.c arm_memfault.c arm_mpu.c arm_ramvec_attach.c
-CMN_CSRCS += arm_ramvec_initialize.c arm_releasepending.c arm_reprioritizertr.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_signal_dispatch.c
-CMN_CSRCS += arm_stackcheck.c arm_svcall.c arm_systick.c arm_unblocktask.c
-CMN_CSRCS += arm_switchcontext.c arm_saveusercontext.c arm_fullcontextrestore.c
+CMN_CSRCS += arm_ramvec_initialize.c arm_schedulesigaction.c
+CMN_CSRCS += arm_sigdeliver.c arm_stackcheck.c arm_svcall.c arm_systick.c
 CMN_CSRCS += arm_tcbinfo.c
 
-ifeq ($(CONFIG_SCHED_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
-endif
-
 # arch/arm/src/rtl8720c
 #
 CHIP_CSRCS += ameba_nvic.c ameba_heap.c ameba_idle.c ameba_uart.c ameba_start.c
diff --git a/arch/arm/src/s32k1xx/Make.defs b/arch/arm/src/s32k1xx/Make.defs
index e49d552069..5ccf534e50 100644
--- a/arch/arm/src/s32k1xx/Make.defs
+++ b/arch/arm/src/s32k1xx/Make.defs
@@ -20,24 +20,8 @@
 
 # Common ARM source files
 
-CMN_CSRCS  = arm_allocateheap.c arm_exit.c arm_initialize.c arm_interruptcontext.c
-CMN_CSRCS += arm_lowputs.c arm_mdelay.c arm_modifyreg8.c arm_modifyreg16.c
-CMN_CSRCS += arm_modifyreg32.c arm_puts.c arm_releasestack.c arm_stackframe.c
-CMN_CSRCS += arm_task_start.c arm_udelay.c arm_usestack.c arm_vfork.c
 CMN_CSRCS += arm_tcbinfo.c
 
-ifeq ($(CONFIG_SCHED_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
-
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_pthread_start.c
-endif
-
 ifeq ($(CONFIG_ARCH_FPU),y)
 CMN_CSRCS += arm_fpuconfig.c
 CMN_CSRCS += arm_fpucmp.c
diff --git a/arch/arm/src/s32k1xx/s32k11x/Make.defs b/arch/arm/src/s32k1xx/s32k11x/Make.defs
index eff84156b9..142bae38d1 100644
--- a/arch/arm/src/s32k1xx/s32k11x/Make.defs
+++ b/arch/arm/src/s32k1xx/s32k11x/Make.defs
@@ -20,19 +20,13 @@
 
 # Source files specific to the Cortex-M0+
 
-CMN_ASRCS += arm_exception.S vfork.S
-
-CMN_CSRCS += arm_assert.c arm_blocktask.c arm_createstack.c
-CMN_CSRCS += arm_initialstate.c arm_releasepending.c arm_reprioritizertr.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_systemreset.c
-CMN_CSRCS += arm_unblocktask.c arm_doirq.c arm_hardfault.c arm_svcall.c
-CMN_CSRCS += arm_vectors.c arm_switchcontext.c arm_saveusercontext.c
-CMN_CSRCS += arm_fullcontextrestore.c
-
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
-endif
+include armv6-m/Make.defs
+
+CMN_ASRCS += arm_exception.S
+
+CMN_CSRCS += arm_initialstate.c arm_schedulesigaction.c
+CMN_CSRCS += arm_sigdeliver.c arm_systemreset.c arm_doirq.c
+CMN_CSRCS += arm_hardfault.c arm_svcall.c arm_vectors.c
 
 ifeq ($(CONFIG_DEBUG_FEATURES),y)
 CMN_CSRCS += arm_dumpnvic.c
diff --git a/arch/arm/src/s32k1xx/s32k14x/Make.defs b/arch/arm/src/s32k1xx/s32k14x/Make.defs
index 4030be05e1..76e6b650d3 100644
--- a/arch/arm/src/s32k1xx/s32k14x/Make.defs
+++ b/arch/arm/src/s32k1xx/s32k14x/Make.defs
@@ -20,22 +20,20 @@
 
 # Source files specific to the Cortex-M4F
 
-CMN_ASRCS  = arm_testset.S arm_fetchadd.S vfork.S arm_exception.S
+include armv7-m/Make.defs
 
-CMN_CSRCS += arm_assert.c arm_blocktask.c arm_createstack.c arm_vectors.c
-CMN_CSRCS += arm_doirq.c arm_hardfault.c arm_initialstate.c arm_memfault.c
-CMN_CSRCS += arm_releasepending.c arm_reprioritizertr.c arm_schedulesigaction.c
-CMN_CSRCS += arm_sigdeliver.c arm_svcall.c arm_trigger_irq.c arm_unblocktask.c
-CMN_CSRCS += arm_systemreset.c arm_switchcontext.c arm_saveusercontext.c
-CMN_CSRCS += arm_fullcontextrestore.c
+CMN_ASRCS += arm_exception.S
+
+CMN_CSRCS += arm_vectors.c arm_doirq.c arm_hardfault.c
+CMN_CSRCS += arm_initialstate.c arm_memfault.c arm_schedulesigaction.c
+CMN_CSRCS += arm_sigdeliver.c arm_svcall.c arm_trigger_irq.c arm_systemreset.c
 
 ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
 CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
 endif
 
 ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_mpu.c arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
+CMN_CSRCS += arm_mpu.c
 endif
 
 # Source file specific to the S32k11x family
diff --git a/arch/arm/src/sam34/Make.defs b/arch/arm/src/sam34/Make.defs
index 1646907990..2bd00fedba 100644
--- a/arch/arm/src/sam34/Make.defs
+++ b/arch/arm/src/sam34/Make.defs
@@ -22,23 +22,13 @@
 
 # Common ARM and Cortex-M3 files
 
-CMN_ASRCS  = arm_testset.S arm_fetchadd.S vfork.S arm_exception.S
-
-CMN_CSRCS  = arm_assert.c arm_blocktask.c arm_createstack.c arm_vectors.c
-CMN_CSRCS += arm_doirq.c arm_exit.c arm_hardfault.c arm_initialize.c
-CMN_CSRCS += arm_initialstate.c arm_interruptcontext.c arm_mdelay.c
-CMN_CSRCS += arm_memfault.c arm_modifyreg8.c arm_modifyreg16.c arm_modifyreg32.c
-CMN_CSRCS += arm_releasepending.c arm_releasestack.c arm_reprioritizertr.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_stackframe.c
-CMN_CSRCS += arm_svcall.c arm_trigger_irq.c arm_unblocktask.c arm_udelay.c
-CMN_CSRCS += arm_usestack.c arm_vfork.c arm_switchcontext.c arm_saveusercontext.c
-CMN_CSRCS += arm_fullcontextrestore.c arm_puts.c arm_tcbinfo.c
-
-ifneq ($(CONFIG_SMP),y)
-ifneq ($(CONFIG_ARCH_IDLE_CUSTOM),y)
-CMN_CSRCS += arm_idle.c
-endif
-endif
+include armv7-m/Make.defs
+
+CMN_ASRCS += arm_exception.S
+
+CMN_CSRCS += arm_vectors.c arm_doirq.c arm_hardfault.c arm_initialstate.c
+CMN_CSRCS += arm_memfault.c arm_schedulesigaction.c arm_sigdeliver.c
+CMN_CSRCS += arm_svcall.c arm_trigger_irq.c arm_tcbinfo.c
 
 # Configuration-dependent common files
 
@@ -50,25 +40,11 @@ ifeq ($(CONFIG_ARM_MPU),y)
 CMN_CSRCS += arm_mpu.c
 endif
 
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_task_start.c arm_pthread_start.c
-CMN_CSRCS += arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
-endif
-
 ifeq ($(CONFIG_ARCH_FPU),y)
 CMN_CSRCS += arm_fpuconfig.c
 CMN_CSRCS += arm_fpucmp.c
 endif
 
-ifeq ($(CONFIG_SCHED_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
-
 # Required SAM3/4 files
 
 CHIP_CSRCS  = sam_allocateheap.c sam_irq.c sam_lowputc.c sam_serial.c
diff --git a/arch/arm/src/sama5/Make.defs b/arch/arm/src/sama5/Make.defs
index fb6e5900a2..f669badff5 100644
--- a/arch/arm/src/sama5/Make.defs
+++ b/arch/arm/src/sama5/Make.defs
@@ -18,6 +18,8 @@
 #
 ############################################################################
 
+include armv7-a/Make.defs
+
 # The vector table is the "head" object, i.e., the one that must forced into
 # the link in order to draw in all of the other components
 
@@ -34,15 +36,14 @@ endif
 # debug.
 
 ifeq ($(CONFIG_PAGING),y)
-CMN_ASRCS  = arm_pghead.S
+CMN_ASRCS += arm_pghead.S
 else
-CMN_ASRCS  = arm_head.S
+CMN_ASRCS += arm_head.S
 endif
 
 # Common assembly language files
 
 CMN_ASRCS += arm_vectors.S arm_fpuconfig.S arm_vectoraddrexcptn.S
-CMN_ASRCS += arm_testset.S arm_fetchadd.S vfork.S
 CMN_ASRCS += cp15_coherent_dcache.S cp15_invalidate_dcache.S
 CMN_ASRCS += cp15_clean_dcache.S cp15_flush_dcache.S cp15_invalidate_dcache_all.S
 CMN_ASRCS += cp15_clean_dcache_all.S cp15_flush_dcache_all.S cp15_cache_size.S
@@ -51,22 +52,12 @@ CMN_ASRCS += cp15_clean_dcache_all.S cp15_flush_dcache_all.S cp15_cache_size.S
 
 # Common C source files
 
-CMN_CSRCS  = arm_initialize.c arm_interruptcontext.c arm_exit.c arm_createstack.c
-CMN_CSRCS += arm_releasestack.c arm_usestack.c arm_vfork.c arm_puts.c arm_mdelay.c
-CMN_CSRCS += arm_stackframe.c arm_udelay.c arm_modifyreg8.c arm_modifyreg16.c
-CMN_CSRCS += arm_modifyreg32.c arm_assert.c arm_blocktask.c arm_dataabort.c
-CMN_CSRCS += arm_doirq.c arm_initialstate.c arm_mmu.c arm_prefetchabort.c
-CMN_CSRCS += arm_releasepending.c arm_reprioritizertr.c arm_cache.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_syscall.c
-CMN_CSRCS += arm_unblocktask.c arm_undefinedinsn.c arm_tcbinfo.c
-CMN_CSRCS += arm_switchcontext.c arm_saveusercontext.c arm_fullcontextrestore.c
+CMN_CSRCS += arm_dataabort.c arm_doirq.c arm_initialstate.c arm_mmu.c
+CMN_CSRCS += arm_prefetchabort.c arm_cache.c arm_schedulesigaction.c
+CMN_CSRCS += arm_sigdeliver.c arm_syscall.c arm_undefinedinsn.c arm_tcbinfo.c
 
 # Configuration dependent C files
 
-ifneq ($(CONFIG_ARCH_IDLE_CUSTOM),y)
-CMN_CSRCS += arm_idle.c
-endif
-
 ifeq ($(CONFIG_ARMV7A_L2CC_PL310),y)
 CMN_CSRCS += arm_l2cc_pl310.c
 endif
@@ -76,10 +67,6 @@ CMN_CSRCS += arm_allocpage.c arm_checkmapping.c arm_pginitialize.c
 CMN_CSRCS += arm_va2pte.c
 endif
 
-ifeq ($(CONFIG_BUILD_KERNEL),y)
-CMN_CSRCS += arm_task_start.c arm_pthread_start.c arm_signal_dispatch.c
-endif
-
 ifeq ($(CONFIG_ARCH_ADDRENV),y)
 CMN_CSRCS += arm_addrenv.c arm_addrenv_utils.c arm_pgalloc.c
 ifeq ($(CONFIG_ARCH_STACK_DYNAMIC),y)
@@ -104,10 +91,6 @@ ifeq ($(CONFIG_ARCH_FPU),y)
 CMN_CSRCS += arm_fpucmp.c
 endif
 
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
-
 # SAMA5-specific C source files
 
 CHIP_CSRCS  = sam_allocateheap.c sam_boot.c sam_clockconfig.c sam_irq.c
diff --git a/arch/arm/src/samd2l2/Make.defs b/arch/arm/src/samd2l2/Make.defs
index 7f747e90a0..771af79af3 100644
--- a/arch/arm/src/samd2l2/Make.defs
+++ b/arch/arm/src/samd2l2/Make.defs
@@ -18,32 +18,13 @@
 #
 ############################################################################
 
-CMN_ASRCS  = arm_exception.S vfork.S
-
-CMN_CSRCS  = arm_allocateheap.c arm_assert.c arm_blocktask.c
-CMN_CSRCS += arm_createstack.c arm_mdelay.c arm_udelay.c arm_exit.c
-CMN_CSRCS += arm_initialize.c arm_initialstate.c arm_interruptcontext.c
-CMN_CSRCS += arm_modifyreg8.c arm_modifyreg16.c arm_modifyreg32.c
-CMN_CSRCS += arm_releasepending.c arm_releasestack.c arm_reprioritizertr.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_stackframe.c
-CMN_CSRCS += arm_systemreset.c arm_unblocktask.c arm_usestack.c arm_doirq.c
-CMN_CSRCS += arm_hardfault.c arm_svcall.c arm_vectors.c arm_vfork.c
-CMN_CSRCS += arm_switchcontext.c arm_saveusercontext.c
-CMN_CSRCS += arm_fullcontextrestore.c arm_puts.c arm_tcbinfo.c
+include armv6-m/Make.defs
 
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_task_start.c arm_pthread_start.c
-CMN_CSRCS += arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
-endif
+CMN_ASRCS += arm_exception.S
 
-ifeq ($(CONFIG_SCHED_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
+CMN_CSRCS += arm_initialstate.c arm_schedulesigaction.c arm_sigdeliver.c
+CMN_CSRCS += arm_systemreset.c arm_doirq.c arm_hardfault.c arm_svcall.c
+CMN_CSRCS += arm_vectors.c arm_tcbinfo.c
 
 ifeq ($(CONFIG_DEBUG_FEATURES),y)
 CMN_CSRCS += arm_dumpnvic.c
diff --git a/arch/arm/src/samd5e5/Make.defs b/arch/arm/src/samd5e5/Make.defs
index db7045b105..1b8fd5a3b7 100644
--- a/arch/arm/src/samd5e5/Make.defs
+++ b/arch/arm/src/samd5e5/Make.defs
@@ -22,17 +22,13 @@
 
 # Common ARM and Cortex-M4 files
 
-CMN_ASRCS  = arm_testset.S arm_fetchadd.S vfork.S arm_exception.S
-
-CMN_CSRCS  = arm_allocateheap.c arm_assert.c arm_blocktask.c arm_vectors.c
-CMN_CSRCS += arm_createstack.c arm_exit.c arm_initialize.c arm_initialstate.c
-CMN_CSRCS += arm_interruptcontext.c arm_mdelay.c arm_memfault.c arm_modifyreg8.c
-CMN_CSRCS += arm_modifyreg16.c arm_modifyreg32.c arm_releasepending.c
-CMN_CSRCS += arm_releasestack.c arm_reprioritizertr.c arm_schedulesigaction.c
-CMN_CSRCS += arm_sigdeliver.c arm_stackframe.c arm_svcall.c arm_trigger_irq.c
-CMN_CSRCS += arm_unblocktask.c arm_udelay.c arm_usestack.c arm_doirq.c
-CMN_CSRCS += arm_hardfault.c arm_vfork.c arm_switchcontext.c arm_saveusercontext.c
-CMN_CSRCS += arm_fullcontextrestore.c arm_tcbinfo.c arm_puts.c
+include armv7-m/Make.defs
+
+CMN_ASRCS += arm_exception.S
+
+CMN_CSRCS += arm_vectors.c arm_initialstate.c arm_memfault.c
+CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_svcall.c
+CMN_CSRCS += arm_trigger_irq.c arm_doirq.c arm_hardfault.c arm_tcbinfo.c
 
 # Configuration-dependent common files
 
@@ -41,9 +37,7 @@ CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
 endif
 
 ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_mpu.c arm_task_start.c arm_pthread_start.c
-CMN_CSRCS += arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
+CMN_CSRCS += arm_mpu.c
 endif
 
 ifeq ($(CONFIG_ARCH_FPU),y)
@@ -51,14 +45,6 @@ CMN_CSRCS += arm_fpuconfig.c
 CMN_CSRCS += arm_fpucmp.c
 endif
 
-ifeq ($(CONFIG_SCHED_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
-
 # Required SAMD5x/E5x files
 
 CHIP_CSRCS  = sam_clockconfig.c sam_gclk.c sam_irq.c sam_lowputc.c
diff --git a/arch/arm/src/samv7/Make.defs b/arch/arm/src/samv7/Make.defs
index 09b436dc43..e633f88f6c 100644
--- a/arch/arm/src/samv7/Make.defs
+++ b/arch/arm/src/samv7/Make.defs
@@ -23,27 +23,16 @@
 
 # Common ARM and Cortex-M7 files
 
-CMN_ASRCS  = arm_testset.S arm_fetchadd.S vfork.S arm_exception.S
-
-CMN_CSRCS  = arm_assert.c arm_blocktask.c arm_createstack.c arm_vectors.c
-CMN_CSRCS += arm_exit.c arm_hardfault.c arm_initialize.c arm_initialstate.c
-CMN_CSRCS += arm_interruptcontext.c arm_mdelay.c arm_udelay.c arm_systemreset.c
-CMN_CSRCS += arm_memfault.c arm_modifyreg8.c arm_modifyreg16.c arm_modifyreg32.c
-CMN_CSRCS += arm_releasepending.c arm_releasestack.c arm_reprioritizertr.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_stackframe.c
-CMN_CSRCS += arm_svcall.c arm_trigger_irq.c arm_unblocktask.c arm_usestack.c
-CMN_CSRCS += arm_doirq.c arm_vfork.c arm_switchcontext.c arm_saveusercontext.c
-CMN_CSRCS += arm_fullcontextrestore.c arm_puts.c arm_tcbinfo.c arm_cache.c
+include armv7-m/Make.defs
 
-# Configuration-dependent common files
+CMN_ASRCS += arm_exception.S
 
-ifneq ($(CONFIG_ARCH_IDLE_CUSTOM),y)
-CMN_CSRCS += arm_idle.c
-endif
+CMN_CSRCS += arm_vectors.c arm_hardfault.c arm_initialstate.c
+CMN_CSRCS += arm_systemreset.c arm_memfault.c arm_schedulesigaction.c
+CMN_CSRCS += arm_sigdeliver.c arm_svcall.c arm_trigger_irq.c
+CMN_CSRCS += arm_doirq.c arm_tcbinfo.c arm_cache.c
 
-ifeq ($(CONFIG_SCHED_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
-endif
+# Configuration-dependent common files
 
 ifeq ($(CONFIG_ARMV7M_STACKCHECK),y)
 CMN_CSRCS += arm_stackcheck.c
@@ -60,15 +49,6 @@ endif
 
 ifeq ($(CONFIG_ARM_MPU),y)
 CMN_CSRCS += arm_mpu.c
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_task_start.c arm_pthread_start.c
-CMN_CSRCS += arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
-endif
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
 endif
 
 # Required SAMV7 files
diff --git a/arch/arm/src/stm32/Make.defs b/arch/arm/src/stm32/Make.defs
index e3856744a0..dcb658fd32 100644
--- a/arch/arm/src/stm32/Make.defs
+++ b/arch/arm/src/stm32/Make.defs
@@ -18,26 +18,19 @@
 #
 ############################################################################
 
-CMN_ASRCS  = arm_testset.S arm_fetchadd.S vfork.S arm_exception.S
-
-CMN_CSRCS  = arm_assert.c arm_blocktask.c arm_createstack.c arm_vectors.c
-CMN_CSRCS += arm_exit.c arm_hardfault.c arm_initialize.c arm_initialstate.c
-CMN_CSRCS += arm_interruptcontext.c arm_memfault.c arm_modifyreg8.c arm_mdelay.c
-CMN_CSRCS += arm_modifyreg16.c arm_modifyreg32.c arm_releasepending.c
-CMN_CSRCS += arm_releasestack.c arm_reprioritizertr.c arm_schedulesigaction.c
-CMN_CSRCS += arm_sigdeliver.c arm_stackframe.c arm_svcall.c arm_systemreset.c
-CMN_CSRCS += arm_trigger_irq.c arm_unblocktask.c arm_udelay.c arm_usestack.c
-CMN_CSRCS += arm_doirq.c arm_vfork.c arm_switchcontext.c arm_saveusercontext.c
-CMN_CSRCS += arm_fullcontextrestore.c arm_puts.c arm_tcbinfo.c arm_perf.c
+include armv7-m/Make.defs
+
+CMN_ASRCS += arm_exception.S
+
+CMN_CSRCS += arm_vectors.c arm_hardfault.c arm_initialstate.c
+CMN_CSRCS += arm_memfault.c arm_schedulesigaction.c arm_sigdeliver.c
+CMN_CSRCS += arm_svcall.c arm_systemreset.c arm_trigger_irq.c
+CMN_CSRCS += arm_doirq.c arm_tcbinfo.c arm_perf.c
 
 ifeq ($(CONFIG_STM32_TICKLESS_SYSTICK),y)
 CMN_CSRCS += arm_systick.c
 endif
 
-ifeq ($(CONFIG_SCHED_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
-endif
-
 ifeq ($(CONFIG_ARMV7M_STACKCHECK),y)
 CMN_CSRCS += arm_stackcheck.c
 endif
@@ -50,16 +43,6 @@ ifneq ($(filter y,$(CONFIG_ARM_MPU) $(CONFIG_ARM_MPU_EARLY_RESET)),)
 CMN_CSRCS += arm_mpu.c
 endif
 
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_task_start.c arm_pthread_start.c
-CMN_CSRCS += arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
-
 ifeq ($(CONFIG_ARCH_FPU),y)
 CMN_CSRCS += arm_fpuconfig.c
 CMN_CSRCS += arm_fpucmp.c
@@ -69,10 +52,6 @@ ifeq ($(CONFIG_ARMV7M_ITMSYSLOG),y)
 CMN_CSRCS += arm_itm_syslog.c
 endif
 
-ifeq ($(CONFIG_SCHED_THREAD_LOCAL),y)
-CMN_CSRCS += arm_tls.c
-endif
-
 CHIP_CSRCS  = stm32_allocateheap.c stm32_start.c stm32_rcc.c stm32_lse.c
 CHIP_CSRCS += stm32_lsi.c stm32_gpio.c stm32_exti_gpio.c stm32_flash.c
 CHIP_CSRCS += stm32_irq.c stm32_lowputc.c
diff --git a/arch/arm/src/stm32f0l0g0/Make.defs b/arch/arm/src/stm32f0l0g0/Make.defs
index cff2c25c5b..e2136a709c 100644
--- a/arch/arm/src/stm32f0l0g0/Make.defs
+++ b/arch/arm/src/stm32f0l0g0/Make.defs
@@ -18,32 +18,13 @@
 #
 ############################################################################
 
-CMN_ASRCS  = arm_exception.S vfork.S
-
-CMN_CSRCS  = arm_allocateheap.c arm_assert.c arm_blocktask.c
-CMN_CSRCS += arm_createstack.c arm_mdelay.c arm_udelay.c arm_exit.c
-CMN_CSRCS += arm_initialize.c arm_initialstate.c arm_interruptcontext.c
-CMN_CSRCS += arm_puts.c arm_modifyreg8.c arm_modifyreg16.c arm_modifyreg32.c
-CMN_CSRCS += arm_releasepending.c arm_releasestack.c arm_reprioritizertr.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_stackframe.c
-CMN_CSRCS += arm_systemreset.c arm_unblocktask.c arm_usestack.c arm_doirq.c
-CMN_CSRCS += arm_hardfault.c arm_svcall.c arm_vectors.c arm_vfork.c
-CMN_CSRCS += arm_switchcontext.c arm_saveusercontext.c arm_fullcontextrestore.c
-CMN_CSRCS += arm_tcbinfo.c
+include armv6-m/Make.defs
 
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_task_start.c arm_pthread_start.c
-CMN_CSRCS += arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
-endif
+CMN_ASRCS += arm_exception.S
 
-ifeq ($(CONFIG_SCHED_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
+CMN_CSRCS += arm_initialstate.c arm_schedulesigaction.c arm_sigdeliver.c
+CMN_CSRCS += arm_systemreset.c arm_doirq.c arm_hardfault.c arm_svcall.c
+CMN_CSRCS += arm_vectors.c arm_tcbinfo.c
 
 ifeq ($(CONFIG_DEBUG_FEATURES),y)
 CMN_CSRCS += arm_dumpnvic.c
diff --git a/arch/arm/src/stm32f7/Make.defs b/arch/arm/src/stm32f7/Make.defs
index c4b4151248..5aeb26319a 100644
--- a/arch/arm/src/stm32f7/Make.defs
+++ b/arch/arm/src/stm32f7/Make.defs
@@ -23,26 +23,14 @@
 
 # Common ARM and Cortex-M7 files
 
-CMN_ASRCS  = arm_testset.S arm_fetchadd.S vfork.S arm_exception.S
-
-CMN_CSRCS  = arm_assert.c arm_blocktask.c arm_createstack.c arm_vectors.c
-CMN_CSRCS += arm_doirq.c arm_exit.c arm_hardfault.c arm_initialize.c arm_puts.c
-CMN_CSRCS += arm_initialstate.c arm_interruptcontext.c arm_mdelay.c
-CMN_CSRCS += arm_memfault.c arm_modifyreg8.c arm_modifyreg16.c arm_modifyreg32.c
-CMN_CSRCS += arm_releasepending.c arm_releasestack.c arm_reprioritizertr.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_stackframe.c
-CMN_CSRCS += arm_svcall.c arm_systemreset.c arm_trigger_irq.c arm_unblocktask.c
-CMN_CSRCS += arm_udelay.c arm_usestack.c arm_vfork.c arm_switchcontext.c
-CMN_CSRCS += arm_saveusercontext.c arm_fullcontextrestore.c
-CMN_CSRCS += arm_tcbinfo.c arm_cache.c
+include armv7-m/Make.defs
 
-ifeq ($(CONFIG_SCHED_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
-endif
+CMN_ASRCS += arm_exception.S
 
-ifneq ($(CONFIG_ARCH_IDLE_CUSTOM),y)
-CMN_CSRCS += arm_idle.c
-endif
+CMN_CSRCS += arm_vectors.c arm_doirq.c arm_hardfault.c arm_initialstate.c
+CMN_CSRCS += arm_memfault.c arm_schedulesigaction.c arm_sigdeliver.c
+CMN_CSRCS += arm_svcall.c arm_systemreset.c arm_trigger_irq.c
+CMN_CSRCS += arm_tcbinfo.c arm_cache.c
 
 ifeq ($(CONFIG_ARMV7M_STACKCHECK),y)
 CMN_CSRCS += arm_stackcheck.c
@@ -67,16 +55,6 @@ ifneq ($(filter y,$(CONFIG_ARM_MPU) $(CONFIG_ARM_MPU_EARLY_RESET)),)
 CMN_CSRCS += arm_mpu.c
 endif
 
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_task_start.c arm_pthread_start.c
-CMN_CSRCS += arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
-
 # Required STM32F7 files
 
 CHIP_CSRCS  = stm32_allocateheap.c stm32_exti_gpio.c stm32_gpio.c
diff --git a/arch/arm/src/stm32h7/Make.defs b/arch/arm/src/stm32h7/Make.defs
index a3c60902e9..3b6ac34527 100644
--- a/arch/arm/src/stm32h7/Make.defs
+++ b/arch/arm/src/stm32h7/Make.defs
@@ -23,26 +23,17 @@
 
 # Common ARM and Cortex-M7 files
 
-CMN_ASRCS  = arm_testset.S vfork.S arm_exception.S
-
-CMN_CSRCS  = arm_assert.c arm_blocktask.c arm_createstack.c arm_vectors.c
-CMN_CSRCS += arm_doirq.c arm_exit.c arm_hardfault.c arm_initialize.c
-CMN_CSRCS += arm_initialstate.c arm_interruptcontext.c arm_mdelay.c arm_memfault.c
-CMN_CSRCS += arm_modifyreg8.c arm_modifyreg16.c arm_modifyreg32.c
-CMN_CSRCS += arm_releasepending.c arm_releasestack.c arm_reprioritizertr.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_stackframe.c arm_svcall.c
-CMN_CSRCS += arm_systemreset.c arm_trigger_irq.c arm_udelay.c arm_unblocktask.c
-CMN_CSRCS += arm_usestack.c arm_vfork.c arm_switchcontext.c arm_saveusercontext.c
-CMN_CSRCS += arm_fullcontextrestore.c arm_puts.c arm_tcbinfo.c arm_cache.c arm_perf.c
+include armv7-m/Make.defs
 
-ifeq ($(CONFIG_ARMV7M_SYSTICK),y)
-CMN_CSRCS += arm_systick.c
-endif
+CMN_ASRCS += arm_exception.S
 
-# Configuration-dependent common files
+CMN_CSRCS += arm_vectors.c arm_doirq.c arm_hardfault.c arm_initialstate.c
+CMN_CSRCS += arm_memfault.c arm_schedulesigaction.c arm_sigdeliver.c
+CMN_CSRCS += arm_svcall.c arm_systemreset.c arm_trigger_irq.c
+CMN_CSRCS += arm_tcbinfo.c arm_cache.c arm_perf.c
 
-ifeq ($(CONFIG_SCHED_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
+ifeq ($(CONFIG_ARMV7M_SYSTICK),y)
+CMN_CSRCS += arm_systick.c
 endif
 
 ifeq ($(CONFIG_ARMV7M_STACKCHECK),y)
@@ -54,10 +45,6 @@ CMN_CSRCS += arm_fpuconfig.c
 CMN_CSRCS += arm_fpucmp.c
 endif
 
-ifneq ($(CONFIG_ARCH_IDLE_CUSTOM),y)
-CMN_CSRCS += arm_idle.c
-endif
-
 ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
 CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
 endif
@@ -70,16 +57,6 @@ ifneq ($(filter y,$(CONFIG_ARM_MPU) $(CONFIG_ARM_MPU_EARLY_RESET)),)
 CMN_CSRCS += arm_mpu.c
 endif
 
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_task_start.c arm_pthread_start.c
-CMN_CSRCS += arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
-
 # Required STM32H7 files
 
 CHIP_CSRCS  = stm32_allocateheap.c stm32_exti_gpio.c stm32_gpio.c stm32_irq.c
diff --git a/arch/arm/src/stm32l4/Make.defs b/arch/arm/src/stm32l4/Make.defs
index de0a07eceb..d3026ca242 100644
--- a/arch/arm/src/stm32l4/Make.defs
+++ b/arch/arm/src/stm32l4/Make.defs
@@ -23,24 +23,14 @@
 
 # Common ARM and Cortex-M4 files (copied from stm32/Make.defs)
 
-CMN_ASRCS  = arm_testset.S arm_fetchadd.S vfork.S arm_exception.S
-
-CMN_CSRCS  = arm_assert.c arm_blocktask.c arm_createstack.c
-CMN_CSRCS += arm_doirq.c arm_exit.c arm_hardfault.c arm_initialize.c
-CMN_CSRCS += arm_initialstate.c arm_interruptcontext.c arm_mdelay.c arm_memfault.c
-CMN_CSRCS += arm_modifyreg8.c arm_modifyreg16.c arm_modifyreg32.c
-CMN_CSRCS += arm_releasepending.c arm_releasestack.c arm_reprioritizertr.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_stackframe.c
-CMN_CSRCS += arm_svcall.c arm_systemreset.c arm_trigger_irq.c arm_udelay.c
-CMN_CSRCS += arm_unblocktask.c arm_usestack.c arm_vfork.c arm_switchcontext.c
-CMN_CSRCS += arm_saveusercontext.c arm_fullcontextrestore.c arm_puts.c
-CMN_CSRCS += arm_tcbinfo.c arm_vectors.c
+include armv7-m/Make.defs
 
-# Configuration-dependent common files
+CMN_ASRCS += arm_exception.S
 
-ifeq ($(CONFIG_SCHED_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
-endif
+CMN_CSRCS += arm_doirq.c arm_hardfault.c arm_initialstate.c
+CMN_CSRCS += arm_memfault.c arm_schedulesigaction.c arm_sigdeliver.c
+CMN_CSRCS += arm_svcall.c arm_systemreset.c arm_trigger_irq.c
+CMN_CSRCS += arm_tcbinfo.c arm_vectors.c
 
 ifeq ($(CONFIG_ARMV7M_STACKCHECK),y)
 CMN_CSRCS += arm_stackcheck.c
@@ -59,16 +49,6 @@ ifeq ($(CONFIG_ARM_MPU),y)
 CMN_CSRCS += arm_mpu.c
 endif
 
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_task_start.c arm_pthread_start.c
-CMN_CSRCS += arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
-
 # Required STM32L4 files
 
 CHIP_CSRCS  = stm32l4_allocateheap.c stm32l4_exti_gpio.c stm32l4_gpio.c
diff --git a/arch/arm/src/stm32l5/Make.defs b/arch/arm/src/stm32l5/Make.defs
index d1da0d7d0c..a9c3de418c 100644
--- a/arch/arm/src/stm32l5/Make.defs
+++ b/arch/arm/src/stm32l5/Make.defs
@@ -25,23 +25,15 @@ HEAD_ASRC =
 
 # Common ARM and Cortex-M4 files (copied from stm32/Make.defs)
 
-CMN_ASRCS  = arm_testset.S arm_fetchadd.S vfork.S arm_exception.S
-
-CMN_CSRCS  = arm_assert.c arm_blocktask.c arm_createstack.c arm_vectors.c
-CMN_CSRCS += arm_doirq.c arm_exit.c arm_hardfault.c arm_initialize.c
-CMN_CSRCS += arm_initialstate.c arm_interruptcontext.c arm_mdelay.c arm_memfault.c
-CMN_CSRCS += arm_modifyreg8.c arm_modifyreg16.c arm_modifyreg32.c
-CMN_CSRCS += arm_releasepending.c arm_releasestack.c arm_reprioritizertr.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_stackframe.c
-CMN_CSRCS += arm_svcall.c arm_systemreset.c arm_trigger_irq.c arm_udelay.c
-CMN_CSRCS += arm_unblocktask.c arm_usestack.c arm_vfork.c arm_switchcontext.c
-CMN_CSRCS += arm_saveusercontext.c arm_fullcontextrestore.c arm_puts.c arm_tcbinfo.c
+include armv8-m/Make.defs
 
-# Configuration-dependent common files
+CMN_ASRCS += arm_exception.S
 
-ifeq ($(CONFIG_SCHED_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
-endif
+CMN_CSRCS += arm_vectors.c arm_doirq.c arm_hardfault.c arm_initialstate.c
+CMN_CSRCS += arm_memfault.c arm_schedulesigaction.c arm_sigdeliver.c
+CMN_CSRCS += arm_svcall.c arm_systemreset.c arm_trigger_irq.c arm_tcbinfo.c
+
+# Configuration-dependent common files
 
 ifeq ($(CONFIG_ARMV8M_STACKCHECK),y)
 CMN_CSRCS += arm_stackcheck.c
@@ -57,13 +49,7 @@ CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
 endif
 
 ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_mpu.c arm_task_start.c arm_pthread_start.c
-CMN_CSRCS += arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
+CMN_CSRCS += arm_mpu.c
 endif
 
 # Required STM32L5 files
diff --git a/arch/arm/src/stm32u5/Make.defs b/arch/arm/src/stm32u5/Make.defs
index 619f0495f9..d0b410818e 100644
--- a/arch/arm/src/stm32u5/Make.defs
+++ b/arch/arm/src/stm32u5/Make.defs
@@ -25,23 +25,17 @@ HEAD_ASRC =
 
 # Common ARM and Cortex-M4 files (copied from stm32/Make.defs)
 
-CMN_ASRCS  = arm_testset.S arm_fetchadd.S vfork.S arm_exception.S
-
-CMN_CSRCS  = arm_assert.c arm_blocktask.c arm_createstack.c arm_vectors.c
-CMN_CSRCS += arm_doirq.c arm_exit.c arm_hardfault.c arm_initialize.c
-CMN_CSRCS += arm_initialstate.c arm_interruptcontext.c arm_mdelay.c arm_memfault.c
-CMN_CSRCS += arm_modifyreg8.c arm_modifyreg16.c arm_modifyreg32.c arm_puts.c
-CMN_CSRCS += arm_releasepending.c arm_releasestack.c arm_reprioritizertr.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_stackframe.c
-CMN_CSRCS += arm_svcall.c arm_switchcontext.c arm_systemreset.c arm_tcbinfo.c
-CMN_CSRCS += arm_trigger_irq.c arm_udelay.c arm_unblocktask.c arm_usestack.c
-CMN_CSRCS += arm_vfork.c arm_saveusercontext.c arm_fullcontextrestore.c
+include armv8-m/Make.defs
 
-# Configuration-dependent common files
+CMN_ASRCS += arm_exception.S
 
-ifeq ($(CONFIG_SCHED_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
-endif
+CMN_CSRCS += arm_vectors.c arm_doirq.c arm_hardfault.c
+CMN_CSRCS += arm_initialstate.c arm_memfault.c
+CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c
+CMN_CSRCS += arm_svcall.c arm_systemreset.c arm_tcbinfo.c
+CMN_CSRCS += arm_trigger_irq.c
+
+# Configuration-dependent common files
 
 ifeq ($(CONFIG_ARMV8M_STACKCHECK),y)
 CMN_CSRCS += arm_stackcheck.c
@@ -57,14 +51,8 @@ CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
 endif
 
 ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_mpu.c arm_task_start.c arm_pthread_start.c
+CMN_CSRCS += arm_mpu.c
 CMN_CSRCS += arm_pthread_exit.c
-CMN_CSRCS += arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
 endif
 
 # Required STM32U5 files
diff --git a/arch/arm/src/str71x/Make.defs b/arch/arm/src/str71x/Make.defs
index 4503799528..fb9e080707 100644
--- a/arch/arm/src/str71x/Make.defs
+++ b/arch/arm/src/str71x/Make.defs
@@ -18,27 +18,15 @@
 #
 ##############################################################################
 
-HEAD_ASRC = str71x_head.S
+include arm/Make.defs
 
-CMN_ASRCS  = arm_vectors.S vfork.S
+HEAD_ASRC = str71x_head.S
 
-CMN_CSRCS  = arm_allocateheap.c arm_assert.c arm_blocktask.c
-CMN_CSRCS += arm_createstack.c arm_dataabort.c arm_mdelay.c arm_udelay.c
-CMN_CSRCS += arm_exit.c arm_initialize.c arm_initialstate.c
-CMN_CSRCS += arm_interruptcontext.c arm_prefetchabort.c arm_releasepending.c
-CMN_CSRCS += arm_releasestack.c arm_reprioritizertr.c arm_stackframe.c
-CMN_CSRCS += arm_syscall.c arm_unblocktask.c arm_undefinedinsn.c arm_usestack.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c
-CMN_CSRCS += arm_lowputs.c arm_vfork.c arm_switchcontext.c arm_saveusercontext.c
-CMN_CSRCS += arm_fullcontextrestore.c arm_puts.c arm_tcbinfo.c
+CMN_ASRCS += arm_vectors.S
 
-ifneq ($(CONFIG_ARCH_IDLE_CUSTOM),y)
-CMN_CSRCS += arm_idle.c
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
+CMN_CSRCS += arm_dataabort.c arm_initialstate.c arm_prefetchabort.c
+CMN_CSRCS += arm_syscall.c arm_undefinedinsn.c arm_schedulesigaction.c
+CMN_CSRCS += arm_sigdeliver.c arm_tcbinfo.c
 
 CHIP_CSRCS  = str71x_prccu.c str71x_lowputc.c str71x_decodeirq.c str71x_irq.c
 CHIP_CSRCS += str71x_serial.c
diff --git a/arch/arm/src/tiva/Make.defs b/arch/arm/src/tiva/Make.defs
index 3f18bb62f9..fda99d999b 100644
--- a/arch/arm/src/tiva/Make.defs
+++ b/arch/arm/src/tiva/Make.defs
@@ -18,21 +18,13 @@
 #
 ############################################################################
 
-CMN_ASRCS  = arm_testset.S arm_fetchadd.S vfork.S arm_exception.S
+include armv7-m/Make.defs
 
-CMN_CSRCS  = arm_assert.c arm_blocktask.c arm_createstack.c
-CMN_CSRCS += arm_doirq.c arm_exit.c arm_hardfault.c arm_initialize.c
-CMN_CSRCS += arm_initialstate.c arm_interruptcontext.c arm_mdelay.c
-CMN_CSRCS += arm_memfault.c arm_modifyreg8.c arm_modifyreg16.c arm_modifyreg32.c
-CMN_CSRCS += arm_releasepending.c arm_releasestack.c arm_reprioritizertr.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_stackframe.c
-CMN_CSRCS += arm_svcall.c arm_trigger_irq.c arm_unblocktask.c arm_udelay.c
-CMN_CSRCS += arm_usestack.c arm_vfork.c arm_switchcontext.c arm_saveusercontext.c
-CMN_CSRCS += arm_fullcontextrestore.c arm_puts.c arm_tcbinfo.c arm_vectors.c
+CMN_ASRCS += arm_exception.S
 
-ifeq ($(CONFIG_ARM_SEMIHOSTING_HOSTFS),y)
-  CMN_CSRCS += arm_hostfs.c
-endif
+CMN_CSRCS += arm_doirq.c arm_hardfault.c arm_initialstate.c
+CMN_CSRCS += arm_memfault.c arm_schedulesigaction.c arm_sigdeliver.c
+CMN_CSRCS += arm_svcall.c arm_trigger_irq.c arm_tcbinfo.c arm_vectors.c
 
 ifneq ($(CONFIG_ARCH_IDLE_CUSTOM),y)
   CMN_CSRCS += tiva_idle.c
@@ -47,26 +39,10 @@ ifeq ($(CONFIG_ARCH_RAMVECTORS),y)
   CMN_CSRCS += arm_ramvec_initialize.c arm_ramvec_attach.c
 endif
 
-ifeq ($(CONFIG_SCHED_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-  CMN_CSRCS += arm_checkstack.c
-endif
-
 ifeq ($(CONFIG_ARM_MPU),y)
 CMN_CSRCS += arm_mpu.c
 endif
 
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-  CMN_CSRCS += arm_task_start.c arm_pthread_start.c
-  CMN_CSRCS += arm_signal_dispatch.c
-  CMN_UASRCS += arm_signal_handler.S
-else
-  CMN_CSRCS += arm_allocateheap.c
-endif
-
 CHIP_CSRCS  = tiva_allocateheap.c tiva_irq.c tiva_lowputc.c tiva_serial.c
 CHIP_CSRCS += tiva_ssi.c
 
diff --git a/arch/arm/src/tms570/Make.defs b/arch/arm/src/tms570/Make.defs
index 74e9907b55..d1e9232db5 100644
--- a/arch/arm/src/tms570/Make.defs
+++ b/arch/arm/src/tms570/Make.defs
@@ -18,15 +18,17 @@
 #
 ############################################################################
 
+include armv7-r/Make.defs
+
 # The vector table is the "head" object, i.e., the one that must forced into
 # the link in order to draw in all of the other components
 
-HEAD_ASRC  = arm_vectortab.S
+HEAD_ASRC += arm_vectortab.S
 
 # Common assembly language files
 
 CMN_ASRCS += arm_vectortab.S arm_vectors.S arm_head.S
-CMN_ASRCS += arm_vectoraddrexcptn.S arm_testset.S arm_fetchadd.S vfork.S
+CMN_ASRCS += arm_vectoraddrexcptn.S
 CMN_ASRCS += cp15_coherent_dcache.S cp15_invalidate_dcache.S
 CMN_ASRCS += cp15_clean_dcache.S cp15_flush_dcache.S
 CMN_ASRCS += cp15_clean_dcache_all.S cp15_flush_dcache_all.S
@@ -40,28 +42,14 @@ endif
 
 # Common C source files
 
-CMN_CSRCS  = arm_allocateheap.c arm_initialize.c arm_interruptcontext.c
-CMN_CSRCS += arm_exit.c arm_createstack.c arm_releasestack.c arm_usestack.c
-CMN_CSRCS += arm_vfork.c arm_puts.c arm_mdelay.c arm_stackframe.c arm_udelay.c
-CMN_CSRCS += arm_modifyreg8.c arm_modifyreg16.c arm_modifyreg32.c
-
-CMN_CSRCS += arm_assert.c arm_blocktask.c arm_dataabort.c
-CMN_CSRCS += arm_doirq.c arm_initialstate.c arm_prefetchabort.c
-CMN_CSRCS += arm_releasepending.c arm_reprioritizertr.c
-CMN_CSRCS += arm_schedulesigaction.c arm_sigdeliver.c arm_syscall.c
-CMN_CSRCS += arm_unblocktask.c arm_undefinedinsn.c arm_switchcontext.c
-CMN_CSRCS += arm_saveusercontext.c arm_fullcontextrestore.c arm_cache.c
+CMN_CSRCS += arm_dataabort.c arm_doirq.c arm_initialstate.c
+CMN_CSRCS += arm_prefetchabort.c arm_schedulesigaction.c arm_sigdeliver.c
+CMN_CSRCS += arm_syscall.c arm_undefinedinsn.c arm_cache.c
 
 # Configuration dependent C files
 
-ifneq ($(CONFIG_ARCH_IDLE_CUSTOM),y)
-CMN_CSRCS += arm_idle.c
-endif
-
 ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_mpu.c arm_task_start.c arm_pthread_start.c
-CMN_CSRCS += arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
+CMN_CSRCS += arm_mpu.c
 endif
 
 ifeq ($(CONFIG_ARMV7R_L2CC_PL310),y)
@@ -72,14 +60,6 @@ ifeq ($(CONFIG_ARCH_FPU),y)
 CMN_CSRCS += arm_fpucmp.c
 endif
 
-ifeq ($(CONFIG_SCHED_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
-
 # SAMA5-specific C source files
 
 CHIP_CSRCS  = tms570_boot.c tms570_clockconfig.c tms570_esm.c tms570_gio.c
diff --git a/arch/arm/src/xmc4/Make.defs b/arch/arm/src/xmc4/Make.defs
index accb1c38d7..13f7d66b95 100644
--- a/arch/arm/src/xmc4/Make.defs
+++ b/arch/arm/src/xmc4/Make.defs
@@ -18,21 +18,13 @@
 #
 ############################################################################
 
-CMN_ASRCS  = arm_testset.S arm_fetchadd.S vfork.S arm_exception.S
-
-CMN_CSRCS  = arm_assert.c arm_blocktask.c arm_createstack.c arm_vectors.c
-CMN_CSRCS += arm_doirq.c arm_exit.c arm_initialize.c arm_initialstate.c
-CMN_CSRCS += arm_hardfault.c arm_interruptcontext.c arm_memfault.c arm_mdelay.c
-CMN_CSRCS += arm_modifyreg8.c arm_modifyreg16.c arm_modifyreg32.c
-CMN_CSRCS += arm_releasestack.c arm_reprioritizertr.c arm_schedulesigaction.c
-CMN_CSRCS += arm_releasepending.c arm_sigdeliver.c arm_stackframe.c arm_svcall.c
-CMN_CSRCS += arm_systemreset.c arm_udelay.c arm_unblocktask.c arm_usestack.c
-CMN_CSRCS += arm_vfork.c arm_switchcontext.c arm_saveusercontext.c
-CMN_CSRCS += arm_fullcontextrestore.c arm_puts.c arm_tcbinfo.c
-
-ifeq ($(CONFIG_SCHED_BACKTRACE),y)
-CMN_CSRCS += arm_backtrace_thumb.c
-endif
+include armv7-m/Make.defs
+
+CMN_ASRCS += arm_exception.S
+
+CMN_CSRCS += arm_vectors.c arm_doirq.c arm_initialstate.c
+CMN_CSRCS += arm_hardfault.c arm_memfault.c arm_schedulesigaction.c
+CMN_CSRCS += arm_sigdeliver.c arm_svcall.c arm_systemreset.c arm_tcbinfo.c
 
 ifeq ($(CONFIG_ARMV7M_STACKCHECK),y)
 CMN_CSRCS += arm_stackcheck.c
@@ -46,26 +38,6 @@ ifeq ($(CONFIG_ARM_MPU),y)
 CMN_CSRCS += arm_mpu.c
 endif
 
-ifeq ($(CONFIG_BUILD_PROTECTED),y)
-CMN_CSRCS += arm_task_start.c arm_pthread_start.c
-CMN_CSRCS += arm_signal_dispatch.c
-CMN_UASRCS += arm_signal_handler.S
-endif
-
-ifeq ($(CONFIG_STACK_COLORATION),y)
-CMN_CSRCS += arm_checkstack.c
-endif
-
-# Use of common/arm_etherstub.c is deprecated.  The preferred mechanism is to
-# use CONFIG_NETDEV_LATEINIT=y to suppress the call to arm_netinitialize() in
-# up_initialize().  Then this stub would not be needed.
-
-ifeq ($(CONFIG_NET),y)
-ifneq ($(CONFIG_XMC4_ENET),y)
-CMN_CSRCS += arm_etherstub.c
-endif
-endif
-
 ifeq ($(CONFIG_ARCH_FPU),y)
 CMN_CSRCS += arm_fpuconfig.c
 CMN_CSRCS += arm_fpucmp.c