f4a0b7aedd
Drop to user-space in kernel/protected build with up_pthread_exit, now all pthread_cleanup functions executed in user mode. * A new syscall SYS_pthread_exit added * A new tcb flag TCB_FLAG_CANCEL_DOING added * up_pthread_exit implemented for riscv/arm arch Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
109 lines
3.3 KiB
Plaintext
109 lines
3.3 KiB
Plaintext
############################################################################
|
|
# arch/arm/src/xmc4/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.
|
|
#
|
|
############################################################################
|
|
|
|
CMN_ASRCS = arm_saveusercontext.S arm_fullcontextrestore.S arm_switchcontext.S
|
|
CMN_ASRCS += arm_testset.S arm_fetchadd.S vfork.S
|
|
|
|
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_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
|
|
|
|
# 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
|