#define CPU_HARVARD 0
/// Valid pointers should be >= than this value (used for debug)
- #if (CPU_CM3_LM3S1968 || CPU_CM3_LM3S8962 || CPU_CM3_STM32F103R8)
+ #if (CPU_CM3_LM3S1968 || CPU_CM3_LM3S8962 || CPU_CM3_STM32F103RB)
#define CPU_RAM_START 0x20000000
#else
#warning Fix CPU_RAM_START address for your Cortex-M3, default value set to 0x200
+++ /dev/null
-#
-#-*- 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 STM32-P103 board.
-#
-# This file contain all info for the BeRTOS wizard.
-#
-# \author Andrea Righi <arighi@develer.com>
-#
-#
-
-# Import the common settings for the path.
-include("cm3.common")
-
-# CPU type used for flashing/debugging
-MK_PROGRAMMER_CPU = "stm32"
-MK_FLASH_SCRIPT = PRG_SCRIPTS_DIR + "arm/flash-stm32.sh"
-
-# CPU default clock frequency
-CPU_DEFAULT_FREQ = "72000000UL"
-
-# Special CPU related tags.
-CPU_TAGS += ["stm32"]
-
-# Additional hw drivers.
-MK_CPU_CSRC += DRV_DIR + "gpio_stm32.c " + DRV_DIR + "clock_stm32.c "
-
-# Short description of the cpu.
-CPU_DESC += [ "128 Kbytes on-chip flash memory",
- "20 Kbytes on-chip SRAM memory" ]
-
-# GCC flags for this cpu.
-MK_CPU_CPPFLAGS += " -D__ARM_STM32F103R8__"
-MK_CPU_LDFLAGS += " -T " + SCRIPT_DIR + "stm32f103r8_rom.ld"
--- /dev/null
+#
+#-*- 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 STM32-P103 board.
+#
+# This file contain all info for the BeRTOS wizard.
+#
+# \author Andrea Righi <arighi@develer.com>
+#
+#
+
+# Import the common settings for the path.
+include("cm3.common")
+
+# CPU type used for flashing/debugging
+MK_PROGRAMMER_CPU = "stm32"
+MK_FLASH_SCRIPT = PRG_SCRIPTS_DIR + "arm/flash-stm32.sh"
+
+# CPU default clock frequency
+CPU_DEFAULT_FREQ = "72000000UL"
+
+# Special CPU related tags.
+CPU_TAGS += ["stm32"]
+
+# Additional hw drivers.
+MK_CPU_CSRC += DRV_DIR + "gpio_stm32.c " + DRV_DIR + "clock_stm32.c "
+
+# Short description of the cpu.
+CPU_DESC += [ "128 Kbytes on-chip flash memory",
+ "20 Kbytes on-chip SRAM memory" ]
+
+# GCC flags for this cpu.
+MK_CPU_CPPFLAGS += " -D__ARM_STM32F103RB__"
+MK_CPU_LDFLAGS += " -T " + SCRIPT_DIR + "stm32f103rb_rom.ld"
+++ /dev/null
-/**
- * \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/)
- *
- * -->
- *
- * \author Andrea Righi <arighi@develer.com>
- *
- * \brief Script for Olimex STM32-P103 Cortex-M3 board.
- *
- */
-
-SEARCH_DIR(.)
-OUTPUT_FORMAT("elf32-littlearm", "elf32-bigarm", "elf32-littlearm")
-OUTPUT_ARCH(arm)
-
-/*
- * Define memory configuration for STM32F103R8
- */
-MEMORY
-{
- rom(rx) : org = 0x00000000, len = 128k
- ram(rwx) : org = 0x20000000, len = 20k
-}
-
-/*
- * Define stack size here
- */
-STACK_SIZE = 0x1000;
-
-/*
- * Allocate section memory
- */
-SECTIONS
-{
- .text :
- {
- KEEP(*(.vectors));
- . = ALIGN (4);
- KEEP(*(.init));
- . = ALIGN (4);
- *(.rodata .rodata.*);
- . = ALIGN (4);
- *(.text .text.*);
- . = ALIGN (4);
- *(.glue_7t);
- . = ALIGN(4);
- *(.glue_7);
- . = ALIGN(4);
- } > rom
-
- __text_end = .;
- PROVIDE (__text_end = .);
-
- .data : AT (__text_end)
- {
- PROVIDE (__data_start = .);
- . = ALIGN (0x400);
- *(vtable)
- *(.data .data.*)
- . = ALIGN (4);
- _edata = .;
- PROVIDE (__data_end = .);
- } > ram
-
- .bss :
- {
- PROVIDE (__bss_start = .);
- *(.bss .bss.*)
- . = ALIGN(4);
- *(COMMON)
- . = ALIGN(4);
- PROVIDE (__bss_end = .);
- } > ram
-
- /*
- * Allocated stack at the end of bss section.
- * Data heap is allocate at end of stack.
- */
- PROVIDE (__msp_start = .);
- . = ALIGN(8);
- . += STACK_SIZE;
- PROVIDE (__msp_end = .);
-
- PROVIDE (__psp_start = .);
- . = ALIGN(8);
- . += STACK_SIZE;
- PROVIDE (__psp_end = .);
-
- PROVIDE (__heap_start = .);
- . = ALIGN(8);
-}
--- /dev/null
+/**
+ * \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/)
+ *
+ * -->
+ *
+ * \author Andrea Righi <arighi@develer.com>
+ *
+ * \brief Script for Olimex STM32-P103 Cortex-M3 board.
+ *
+ */
+
+SEARCH_DIR(.)
+OUTPUT_FORMAT("elf32-littlearm", "elf32-bigarm", "elf32-littlearm")
+OUTPUT_ARCH(arm)
+
+/*
+ * Define memory configuration for STM32F103R8
+ */
+MEMORY
+{
+ rom(rx) : org = 0x00000000, len = 128k
+ ram(rwx) : org = 0x20000000, len = 20k
+}
+
+/*
+ * Define stack size here
+ */
+STACK_SIZE = 0x1000;
+
+/*
+ * Allocate section memory
+ */
+SECTIONS
+{
+ .text :
+ {
+ KEEP(*(.vectors));
+ . = ALIGN (4);
+ KEEP(*(.init));
+ . = ALIGN (4);
+ *(.rodata .rodata.*);
+ . = ALIGN (4);
+ *(.text .text.*);
+ . = ALIGN (4);
+ *(.glue_7t);
+ . = ALIGN(4);
+ *(.glue_7);
+ . = ALIGN(4);
+ } > rom
+
+ __text_end = .;
+ PROVIDE (__text_end = .);
+
+ .data : AT (__text_end)
+ {
+ PROVIDE (__data_start = .);
+ . = ALIGN (0x400);
+ *(vtable)
+ *(.data .data.*)
+ . = ALIGN (4);
+ _edata = .;
+ PROVIDE (__data_end = .);
+ } > ram
+
+ .bss :
+ {
+ PROVIDE (__bss_start = .);
+ *(.bss .bss.*)
+ . = ALIGN(4);
+ *(COMMON)
+ . = ALIGN(4);
+ PROVIDE (__bss_end = .);
+ } > ram
+
+ /*
+ * Allocated stack at the end of bss section.
+ * Data heap is allocate at end of stack.
+ */
+ PROVIDE (__msp_start = .);
+ . = ALIGN(8);
+ . += STACK_SIZE;
+ PROVIDE (__msp_end = .);
+
+ PROVIDE (__psp_start = .);
+ . = ALIGN(8);
+ . += STACK_SIZE;
+ PROVIDE (__psp_end = .);
+
+ PROVIDE (__heap_start = .);
+ . = ALIGN(8);
+}
#define CPU_CM3_LM3S8962 0
#endif
- #if defined (__ARM_STM32F103R8__)
+ #if defined (__ARM_STM32F103RB__)
#define CPU_CM3_STM32 1
- #define CPU_CM3_STM32F103R8 1
+ #define CPU_CM3_STM32F103RB 1
#else
- #define CPU_CM3_STM32F103R8 0
+ #define CPU_CM3_STM32F103RB 0
#endif
#if defined (CPU_CM3_LM3S)
#endif
#define CPU_CM3_STM32 0
#elif defined (CPU_CM3_STM32)
- #if CPU_CM3_STM32F103R8 + 0 != 1
+ #if CPU_CM3_STM32F103RB + 0 != 1
#error STM32 Cortex-M3 CPU configuration error
#endif
#define CPU_CM3_LM3S 0
#define CPU_CM3_STM32 0
- #define CPU_CM3_STM32F103R8 0
+ #define CPU_CM3_STM32F103RB 0
#endif
#if (defined(__IAR_SYSTEMS_ICC__) || defined(__IAR_SYSTEMS_ICC)) \