129 lines
4.2 KiB
Plaintext
129 lines
4.2 KiB
Plaintext
############################################################################
|
|
# arch/arm/src/kinetis/Make.defs
|
|
#
|
|
# Copyright (C) 2017-2018 Gregory Nutt. All rights reserved.
|
|
# Author: Gregory Nutt <gnutt@nuttx.org>
|
|
#
|
|
# Redistribution and use in source and binary forms, with or without
|
|
# modification, are permitted provided that the following conditions
|
|
# are met:
|
|
#
|
|
# 1. Redistributions of source code must retain the above copyright
|
|
# notice, this list of conditions and the following disclaimer.
|
|
# 2. Redistributions in binary form must reproduce the above copyright
|
|
# notice, this list of conditions and the following disclaimer in
|
|
# the documentation and/or other materials provided with the
|
|
# distribution.
|
|
# 3. Neither the name NuttX nor the names of its contributors may be
|
|
# used to endorse or promote products derived from this software
|
|
# without specific prior written permission.
|
|
#
|
|
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
|
|
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
|
|
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
|
|
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
|
|
# COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
|
|
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
|
|
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS
|
|
# OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
|
|
# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
|
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
|
|
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
# POSSIBILITY OF SUCH DAMAGE.
|
|
#
|
|
############################################################################
|
|
|
|
CMN_ASRCS = arm_saveusercontext.S arm_fullcontextrestore.S arm_switchcontext.S
|
|
CMN_ASRCS += arm_testset.S arm_fetchadd.S vfork.S
|
|
|
|
ifeq ($(CONFIG_ARCH_SETJMP_H),y)
|
|
ifeq ($(CONFIG_ARCH_TOOLCHAIN_GNU),y)
|
|
CMN_ASRCS += arm_setjmp.S
|
|
endif
|
|
endif
|
|
|
|
CMN_CSRCS = arm_assert.c arm_blocktask.c arm_copyfullstate.c arm_createstack.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
|
|
|
|
ifeq ($(CONFIG_ARMV7M_STACKCHECK),y)
|
|
CMN_CSRCS += arm_stackcheck.c
|
|
endif
|
|
|
|
ifeq ($(CONFIG_ARMV7M_LAZYFPU),y)
|
|
CMN_ASRCS += arm_lazyexception.S
|
|
else
|
|
CMN_ASRCS += arm_exception.S
|
|
endif
|
|
CMN_CSRCS += arm_vectors.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_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_ASRCS += arm_fpu.S
|
|
CMN_CSRCS += arm_copyarmstate.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
|
|
CHIP_CSRCS += xmc4_clrpend.c xmc4_irq.c xmc4_lowputc.c xmc4_gpio.c
|
|
CHIP_CSRCS += xmc4_serial.c xmc4_start.c xmc4_usic.c
|
|
|
|
# Configuration-dependent Kinetis files
|
|
|
|
ifneq ($(CONFIG_ARCH_IDLE_CUSTOM),y)
|
|
CHIP_CSRCS += xmc4_idle.c
|
|
endif
|
|
|
|
ifneq ($(CONFIG_SCHED_TICKLESS),y)
|
|
CHIP_CSRCS += xmc4_timerisr.c
|
|
endif
|
|
|
|
ifeq ($(CONFIG_BUILD_PROTECTED),y)
|
|
CHIP_CSRCS += xmc4_userspace.c xmc4_mpuinit.c
|
|
endif
|
|
|
|
ifeq ($(CONFIG_DEBUG_GPIO_INFO),y)
|
|
CHIP_CSRCS += xmc4_pindump.c
|
|
endif
|
|
|
|
ifeq ($(CONFIG_XMC4_USCI_SPI),y)
|
|
CHIP_CSRCS += xmc4_spi.c
|
|
endif
|