From 9f6449b9229aa4bf2f4085df5e7fe44e16c57183 Mon Sep 17 00:00:00 2001 From: arighi Date: Wed, 28 Apr 2010 20:24:39 +0000 Subject: [PATCH] CM3: add support for the LM3S8962 evaluation board. git-svn-id: https://src.develer.com/svnoss/bertos/trunk@3567 38d2e660-2303-0410-9eaa-f027e97ec537 --- bertos/cpu/attr.h | 2 +- bertos/cpu/cortex-m3/info/LM3S8962.cdef | 64 +++++++++++++++++++++++++ bertos/cpu/cortex-m3/io/lm3s.h | 2 +- bertos/cpu/detect.h | 11 ++++- 4 files changed, 76 insertions(+), 3 deletions(-) create mode 100644 bertos/cpu/cortex-m3/info/LM3S8962.cdef diff --git a/bertos/cpu/attr.h b/bertos/cpu/attr.h index a02600f3..5ed8bfca 100644 --- a/bertos/cpu/attr.h +++ b/bertos/cpu/attr.h @@ -171,7 +171,7 @@ #define CPU_HARVARD 0 /// Valid pointers should be >= than this value (used for debug) - #if CPU_CM3_LM3S1968 + #if (CPU_CM3_LM3S1968 || CPU_CM3_LM3S8962) #define CPU_RAM_START 0x20000000 #else #warning Fix CPU_RAM_START address for your Cortex-M3, default value set to 0x200 diff --git a/bertos/cpu/cortex-m3/info/LM3S8962.cdef b/bertos/cpu/cortex-m3/info/LM3S8962.cdef new file mode 100644 index 00000000..f67e7c2a --- /dev/null +++ b/bertos/cpu/cortex-m3/info/LM3S8962.cdef @@ -0,0 +1,64 @@ +# +#-*- coding: utf-8 -*- +# +# \file +# +# +# General CPU info denfinition for Cortex-M3-based LM3S8962 board. +# +# This file contain all info for the BeRTOS wizard. +# +# \author Andrea Righi +# +# + +# Import the common settings for the path. +include("cm3.common") + +# CPU type used for flashing/debugging +MK_PROGRAMMER_CPU = "lm3s1968" + +# CPU default clock frequency +CPU_DEFAULT_FREQ = "50000000UL" + +# Special CPU related tags. +CPU_TAGS += ["lm3s"] + +# Additional hw drivers. +MK_CPU_CSRC += DRV_DIR + "gpio_lm3s.c " + DRV_DIR + "clock_lm3s.c " + +# Short description of the cpu. +CPU_DESC += [ "256 Kbytes on-chip flash memory", + "64 Kbytes on-chip SRAM memory" ] + +# GCC flags for this cpu. +MK_CPU_CPPFLAGS += " -D__ARM_LM3S8962__" +MK_CPU_LDFLAGS += " -T " + SCRIPT_DIR + "lm3s1968_rom.ld" diff --git a/bertos/cpu/cortex-m3/io/lm3s.h b/bertos/cpu/cortex-m3/io/lm3s.h index 012f0b11..d924d442 100644 --- a/bertos/cpu/cortex-m3/io/lm3s.h +++ b/bertos/cpu/cortex-m3/io/lm3s.h @@ -39,7 +39,7 @@ #include #include -#if CPU_CM3_LM3S1968 +#if (CPU_CM3_LM3S1968 || CPU_CM3_LM3S8962) #include "lm3s1968.h" #include "lm3s_types.h" #include "lm3s_ints.h" diff --git a/bertos/cpu/detect.h b/bertos/cpu/detect.h index d421f85e..fe940cb0 100644 --- a/bertos/cpu/detect.h +++ b/bertos/cpu/detect.h @@ -185,8 +185,15 @@ #define CPU_CM3_LM3S1968 0 #endif + #if defined (__ARM_LM3S8962__) + #define CPU_CM3_LM3S 1 + #define CPU_CM3_LM3S8962 1 + #else + #define CPU_CM3_LM3S8962 0 + #endif + #if defined (CPU_CM3_LM3S) - #if CPU_CM3_LM3S1968 + 0 != 1 + #if CPU_CM3_LM3S1968 + CPU_CM3_LM3S8962 + 0 != 1 #error Luminary Cortex-M3 CPU configuration error #endif /* #elif Add other Cortex-M3 families here */ @@ -205,6 +212,8 @@ #define CPU_CM3_LM3S 0 #define CPU_CM3_LM3S1968 0 + + #define CPU_CM3_LM3S8968 0 #endif #if (defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)) \ -- 2.25.1