############################################################################
# arch/avr/src/at90usb/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 start-up, "head", file

HEAD_ASRC = at90usb_head.S

# Common AVR files

CMN_ASRCS  = avr_doswitch.S avr_saveusercontext.S
CMN_CSRCS  = avr_allocateheap.c avr_copystate.c avr_createstack.c
CMN_CSRCS += avr_doirq.c avr_exit.c avr_idle.c avr_irq.c avr_udelay.c
CMN_CSRCS += avr_initialize.c avr_initialstate.c avr_lowputs.c avr_mdelay.c
CMN_CSRCS += avr_modifyreg8.c avr_modifyreg16.c avr_modifyreg32.c
CMN_CSRCS += avr_nputs.c avr_releasestack.c avr_registerdump.c
CMN_CSRCS += avr_getintstack.c avr_stackframe.c avr_switchcontext.c
CMN_CSRCS += avr_usestack.c

# Configuration-dependent common files

ifneq ($(CONFIG_DISABLE_SIGNALS),y)
CMN_CSRCS += avr_schedulesigaction.c avr_sigdeliver.c
endif

ifeq ($(CONFIG_AVR_SPI),y)
CMN_CSRCS += avr_spi.c
endif

ifeq ($(CONFIG_STACK_COLORATION),y)
CMN_CSRCS += avr_checkstack.c
endif

ifeq ($(CONFIG_ARCH_ROMGETC),y)
CMN_CSRCS += avr_romgetc.c
endif

# Required AT90USB files

CHIP_ASRCS = at90usb_exceptions.S
CHIP_CSRCS = at90usb_lowconsole.c at90usb_lowinit.c at90usb_serial.c

# Configuration-dependent aT90USB files

ifneq ($(CONFIG_SCHED_TICKLESS),y)
CHIP_CSRCS += at90usb_timerisr.c
endif

ifeq ($(CONFIG_AVR_USBDEV),y)
CHIP_CSRCS += at90usb_usbdev.c
endif