CM3: integrate the Cortex-M3 porting in the wizard.
authorarighi <arighi@38d2e660-2303-0410-9eaa-f027e97ec537>
Wed, 14 Apr 2010 10:47:37 +0000 (10:47 +0000)
committerarighi <arighi@38d2e660-2303-0410-9eaa-f027e97ec537>
Wed, 14 Apr 2010 10:47:37 +0000 (10:47 +0000)
git-svn-id: https://src.develer.com/svnoss/bertos/trunk@3437 38d2e660-2303-0410-9eaa-f027e97ec537

bertos/cpu/cortex-m3/info/cm3.common [new file with mode: 0644]

diff --git a/bertos/cpu/cortex-m3/info/cm3.common b/bertos/cpu/cortex-m3/info/cm3.common
new file mode 100644 (file)
index 0000000..f7f078a
--- /dev/null
@@ -0,0 +1,82 @@
+#
+#-*- 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_FLASH_SCRIPT = PRG_SCRIPTS_DIR + "arm/flash-cortex.sh"
+MK_STOPFLASH_SCRIPT = PRG_SCRIPTS_DIR + "arm/stopopenocd.sh"
+MK_DEBUG_SCRIPT = PRG_SCRIPTS_DIR + "arm/debug-cortex.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_lm3s.c " + DRV_DIR + "irq_cm3.c "