81130bc692
Signed-off-by: chao.an <anchao@xiaomi.com>
121 lines
3.7 KiB
Plaintext
121 lines
3.7 KiB
Plaintext
############################################################################
|
|
# arch/arm/src/a1x/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.
|
|
#
|
|
############################################################################
|
|
|
|
# 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_fullcontextrestore.S
|
|
CMN_ASRCS += arm_saveusercontext.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
|
|
|
|
# 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
|
|
|
|
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
|
|
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
|
|
|
|
# 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)
|
|
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
|
|
|
|
CMN_CSRCS += arm_cache.c
|
|
|
|
ifeq ($(CONFIG_ARCH_FPU),y)
|
|
CMN_ASRCS += arm_savefpu.S arm_restorefpu.S
|
|
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
|
|
|
|
ifneq ($(CONFIG_SCHED_TICKLESS),y)
|
|
CHIP_CSRCS += a1x_timerisr.c
|
|
endif
|