82 lines
2.9 KiB
Plaintext
82 lines
2.9 KiB
Plaintext
#
|
|
#-*- coding: utf-8 -*-
|
|
#
|
|
# \file
|
|
# <!--
|
|
# This file is part of BeRTOS.
|
|
#
|
|
# Bertos is free software; you can redistribute it and/or modify
|
|
# it under the terms of the GNU General Public License as published by
|
|
# the Free Software Foundation; either version 2 of the License, or
|
|
# (at your option) any later version.
|
|
#
|
|
# This program is distributed in the hope that it will be useful,
|
|
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
# GNU General Public License for more details.
|
|
#
|
|
# You should have received a copy of the GNU General Public License
|
|
# along with this program; if not, write to the Free Software
|
|
# Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
|
|
#
|
|
# As a special exception, you may use this file as part of a free software
|
|
# library without restriction. Specifically, if other files instantiate
|
|
# templates or use macros or inline functions from this file, or you compile
|
|
# this file and link it with other files to produce an executable, this
|
|
# file does not by itself cause the resulting executable to be covered by
|
|
# the GNU General Public License. This exception does not however
|
|
# invalidate any other reasons why the executable file might be covered by
|
|
# the GNU General Public License.
|
|
#
|
|
# Copyright 2010 Develer S.r.l. (http://www.develer.com/)
|
|
#
|
|
# -->
|
|
#
|
|
# General CPU info denfinition for Cortex-M3-based boards.
|
|
#
|
|
# This file contain all info for the BeRTOS wizard.
|
|
#
|
|
# \author Andrea Righi <arighi@develer.com>
|
|
#
|
|
#
|
|
|
|
# Import the common settings for the path.
|
|
include("../../path.common")
|
|
|
|
# Short description of the cpu.
|
|
CPU_DESC = ["ARM Cortex-M3",
|
|
"ARMv7-M Thumb-2 ISA",
|
|
"16-bit and 32-bit RISC Architecture"]
|
|
|
|
# Type of the toolchain we should use to compile the source for this CPU.
|
|
TOOLCHAIN = "arm"
|
|
|
|
# If we use the GCC compiler we should pass some flags.
|
|
CORE_CPU = "cortex-m3"
|
|
|
|
# Name of the flag used by the build system to pass to the compiler the CPU type.
|
|
MK_CPU = CORE_CPU
|
|
|
|
# Special CPU related tags.
|
|
CPU_TAGS = ["cm3"]
|
|
|
|
# Where are locate the bertos directories
|
|
SCRIPT_DIR = CPU_DIR + "cortex-m3/scripts/"
|
|
HW_DIR = CPU_DIR + "cortex-m3/hw/"
|
|
DRV_DIR = CPU_DIR + "cortex-m3/drv/"
|
|
|
|
MK_STOPFLASH_SCRIPT = PRG_SCRIPTS_DIR + "arm/stopopenocd.sh"
|
|
MK_DEBUG_SCRIPT = PRG_SCRIPTS_DIR + "arm/debug.sh"
|
|
MK_STOPDEBUG_SCRIPT = PRG_SCRIPTS_DIR + "arm/stopopenocd.sh"
|
|
|
|
GDB_INIT_SCRIPT = PRG_SCRIPTS_DIR + "arm/openocd/gdbinit-sam7"
|
|
|
|
# Common GCC flags.
|
|
MK_CPU_CPPAFLAGS = "-g -gdwarf-2 -mthumb -mno-thumb-interwork"
|
|
MK_CPU_CPPFLAGS = "-O0 -g3 -gdwarf-2 -mthumb -mno-thumb-interwork -fno-strict-aliasing -fwrapv -fverbose-asm -I" + CPU_DIR + "cortex-m3/"
|
|
MK_CPU_LDFLAGS = "-mthumb -mno-thumb-interwork -nostartfiles -Wl,--no-warn-mismatch"
|
|
|
|
# CRT files.
|
|
MK_CPU_CPPASRC = HW_DIR + "crt_cm3.S " + HW_DIR + "vectors_cm3.S "
|
|
MK_CPU_CSRC = HW_DIR + "init_cm3.c " + DRV_DIR + "irq_cm3.c "
|