From cffaf1ee6019bc04ef1eef770395589ae470e433 Mon Sep 17 00:00:00 2001 From: Karl Palsson Date: Mon, 28 Sep 2015 01:53:22 +0000 Subject: [PATCH] stm32:f0: Add a common range of ld scripts a couple from the f03, f04, f05 and f07 ranges, which, while having ST wide consistent flash size codes, differ in ram amounts. --- lib/stm32/f0/stm32f03xz6.ld | 31 +++++++++++++++++++++++++++++++ lib/stm32/f0/stm32f04xz6.ld | 31 +++++++++++++++++++++++++++++++ lib/stm32/f0/stm32f05xz6.ld | 31 +++++++++++++++++++++++++++++++ lib/stm32/f0/stm32f05xz8.ld | 31 +++++++++++++++++++++++++++++++ lib/stm32/f0/stm32f07xz8.ld | 31 +++++++++++++++++++++++++++++++ lib/stm32/f0/stm32f07xzb.ld | 31 +++++++++++++++++++++++++++++++ 6 files changed, 186 insertions(+) create mode 100644 lib/stm32/f0/stm32f03xz6.ld create mode 100644 lib/stm32/f0/stm32f04xz6.ld create mode 100644 lib/stm32/f0/stm32f05xz6.ld create mode 100644 lib/stm32/f0/stm32f05xz8.ld create mode 100644 lib/stm32/f0/stm32f07xz8.ld create mode 100644 lib/stm32/f0/stm32f07xzb.ld diff --git a/lib/stm32/f0/stm32f03xz6.ld b/lib/stm32/f0/stm32f03xz6.ld new file mode 100644 index 00000000..3cb420d4 --- /dev/null +++ b/lib/stm32/f0/stm32f03xz6.ld @@ -0,0 +1,31 @@ +/* + * This file is part of the libopencm3 project. + * + * Copyright (C) 2015 Karl Palsson + * + * This library is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This library 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 Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this library. If not, see . + */ + +/* Linker script for STM32F03xz6, 32k flash, 4k RAM. */ + +/* Define memory regions. */ +MEMORY +{ + rom (rx) : ORIGIN = 0x08000000, LENGTH = 32K + ram (rwx) : ORIGIN = 0x20000000, LENGTH = 4K +} + +/* Include the common ld script. */ +INCLUDE libopencm3_stm32f0.ld + diff --git a/lib/stm32/f0/stm32f04xz6.ld b/lib/stm32/f0/stm32f04xz6.ld new file mode 100644 index 00000000..772b6009 --- /dev/null +++ b/lib/stm32/f0/stm32f04xz6.ld @@ -0,0 +1,31 @@ +/* + * This file is part of the libopencm3 project. + * + * Copyright (C) 2015 Karl Palsson + * + * This library is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This library 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 Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this library. If not, see . + */ + +/* Linker script for STM32F04xz6, 32k flash, 6k RAM. */ + +/* Define memory regions. */ +MEMORY +{ + rom (rx) : ORIGIN = 0x08000000, LENGTH = 32K + ram (rwx) : ORIGIN = 0x20000000, LENGTH = 6K +} + +/* Include the common ld script. */ +INCLUDE libopencm3_stm32f0.ld + diff --git a/lib/stm32/f0/stm32f05xz6.ld b/lib/stm32/f0/stm32f05xz6.ld new file mode 100644 index 00000000..161bdc88 --- /dev/null +++ b/lib/stm32/f0/stm32f05xz6.ld @@ -0,0 +1,31 @@ +/* + * This file is part of the libopencm3 project. + * + * Copyright (C) 2015 Karl Palsson + * + * This library is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This library 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 Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this library. If not, see . + */ + +/* Linker script for STM32F05xz6, 32k flash, 8k RAM. */ + +/* Define memory regions. */ +MEMORY +{ + rom (rx) : ORIGIN = 0x08000000, LENGTH = 32K + ram (rwx) : ORIGIN = 0x20000000, LENGTH = 8K +} + +/* Include the common ld script. */ +INCLUDE libopencm3_stm32f0.ld + diff --git a/lib/stm32/f0/stm32f05xz8.ld b/lib/stm32/f0/stm32f05xz8.ld new file mode 100644 index 00000000..f53704cb --- /dev/null +++ b/lib/stm32/f0/stm32f05xz8.ld @@ -0,0 +1,31 @@ +/* + * This file is part of the libopencm3 project. + * + * Copyright (C) 2015 Karl Palsson + * + * This library is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This library 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 Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this library. If not, see . + */ + +/* Linker script for STM32F05xz8, 64k flash, 8k RAM. */ + +/* Define memory regions. */ +MEMORY +{ + rom (rx) : ORIGIN = 0x08000000, LENGTH = 64K + ram (rwx) : ORIGIN = 0x20000000, LENGTH = 8K +} + +/* Include the common ld script. */ +INCLUDE libopencm3_stm32f0.ld + diff --git a/lib/stm32/f0/stm32f07xz8.ld b/lib/stm32/f0/stm32f07xz8.ld new file mode 100644 index 00000000..dda24fdb --- /dev/null +++ b/lib/stm32/f0/stm32f07xz8.ld @@ -0,0 +1,31 @@ +/* + * This file is part of the libopencm3 project. + * + * Copyright (C) 2015 Karl Palsson + * + * This library is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This library 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 Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this library. If not, see . + */ + +/* Linker script for STM32F07xz8, 64k flash, 16k RAM. */ + +/* Define memory regions. */ +MEMORY +{ + rom (rx) : ORIGIN = 0x08000000, LENGTH = 64K + ram (rwx) : ORIGIN = 0x20000000, LENGTH = 16K +} + +/* Include the common ld script. */ +INCLUDE libopencm3_stm32f0.ld + diff --git a/lib/stm32/f0/stm32f07xzb.ld b/lib/stm32/f0/stm32f07xzb.ld new file mode 100644 index 00000000..0cbe7490 --- /dev/null +++ b/lib/stm32/f0/stm32f07xzb.ld @@ -0,0 +1,31 @@ +/* + * This file is part of the libopencm3 project. + * + * Copyright (C) 2015 Karl Palsson + * + * This library is free software: you can redistribute it and/or modify + * it under the terms of the GNU Lesser General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This library 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 Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with this library. If not, see . + */ + +/* Linker script for STM32F07xzB, 128k flash, 16k RAM. */ + +/* Define memory regions. */ +MEMORY +{ + rom (rx) : ORIGIN = 0x08000000, LENGTH = 128K + ram (rwx) : ORIGIN = 0x20000000, LENGTH = 16K +} + +/* Include the common ld script. */ +INCLUDE libopencm3_stm32f0.ld +