Commit Graph

55 Commits

Author SHA1 Message Date
Karl Palsson 418b609230 devices.data: stm32g4: _actually_ finish adding
Missed the CCM, missed the chain heads for the family itself.
2020-04-10 13:44:04 +00:00
Karl Palsson 4e70d06d63 stm32g4: Add basic support
* memorymap
* vectors
* rcc
* gpios
* makefiles
* devices for linker script generation
* doc structure
2020-04-09 23:29:00 +00:00
sur5r d0d23cff07 ld: lpc17xx: Fix RAM2_OFF on LPC17[78]x
- RAM2_OFF is at 0x20004000 (see UM10470 page 15)
- 0x20040000 is not a valid address on LPC17[78]x
2020-01-31 20:52:12 +00:00
Brian Viele dd18b9fdbc Qorvo pac55xx: initial support
Qorvo (Nee Active Semi) PAC55xx "Intelligent Motor Control" parts,
cortex-m4 SoCs
2019-11-26 23:28:02 +00:00
Karl Palsson 6d9139934c devices.data: add some more l0 parts 2019-10-22 10:35:04 +00:00
Karl Palsson 88b32e3ac0 devices.data: stm32f4: add all missing parts 2019-10-22 10:23:18 +00:00
Eivind Alexander Bergem af0509826d devices.data: Added stm32f410 2019-10-22 09:04:53 +02:00
Caleb Szalacinski 3c4ee6f4c0 SWM050: Finishes GPIO, IAP flash, sysclock, sleep/stop, and the sysctl memory map.
Updates the main memory map and the makefile.
Adds the SWM050 to devices.data, so that a linker script can be automatically generated.

Reviewed-by: Karl Palsson <karlp@tweak.net.au>
2019-10-17 11:41:33 +00:00
Karl Palsson b5d66ee63f devices.data: add all missing stm32f3 parts
Filled missing variants, added missing families, corrected one or two
mistakes in ccm availability

Fixes: https://github.com/libopencm3/libopencm3/pull/1109
2019-10-03 11:37:47 +00:00
Matthew Lai 5fbe5c8c47 devices.data: Added STM32F7 value line devices with 64K flash 2019-09-23 22:45:36 +00:00
Karl Palsson b0c3de8d85 devices.data: add missing stm32f301 parts
Fixes: https://github.com/libopencm3/libopencm3/issues/1098
2019-09-03 22:23:26 +00:00
Karl Palsson 7ff54cb7f0 devices.data: add more stm32l1 parts
Fixes some eeprom sizes, and adds all the -a and -x suffix parts.
Note that the explicit endings must be listed _before_ the base parts,
otherwise the matcher will find the wild card first.

Signed-off-by: Karl Palsson <karlp@etactica.com>
2019-08-22 10:01:11 +00:00
Sergey Shcherbakov e75a3614a4 stm32f3: ld: Added stm32f303x6/8
Signed-off-by: Sergey Shcherbakov <shchers@gmail.com>
2019-06-18 23:33:46 +03:00
Guillaume Revaillot b8d4b03722 stm32g0: add base, irqs, memorymap and current devices. 2019-05-20 23:43:41 +00:00
Karl Palsson 9551da6b6b devices.data: add stm32l15xx E series
Bigger brother parts, such as the l152re nucleo64 board.
2019-01-16 22:25:01 +00:00
Chuck McManis 63e0b6df3a Device Data: Add Specs for STM32F4[67]9 variant
The reference manual is incorrect, the data sheet is correct.
There is 320K of ram (up to address 0x20050000). This has been
tested on the STM32F469I-disco board.
2018-07-13 20:18:44 +00:00
Chuck McManis 564e485989 devices.data: Add STM32F446xC/E data 2018-06-23 22:21:53 +00:00
Maxim Sloyko 2b1ddc8490 sam/4l: monster commit
The original submitter of this squished everything into one series, and
has not returned. The code mostly appears good, and review comments were
followed for the most part.  The project doesn't really maintain any
testing or board farm for sam3/sam4 parts, so we're going to just trust
our users.

Reviewed-by: Karl Palsson <karlp@tweak.net.au>

sam/4l: IRQ Configuration file (irq.json)

sam/4l: Basic Memory Map.

sam/4l: GPIO Defines.

sam/4l: GPIO Functions

Added everything that needed to compile the library: Makefile, Linker
Script and common includes.

sam/4l: SCIF function to start OSC.

sam/4l: GPIO Enable/Disable and Multiplexing configuration functions.

sam/4l: PLL Clock configuration.

sam/4l: Peripheral clock configuration and basic USART support.

sam: USART Character length configuration.

sam/4l: Generic Clock configuration functions.

sam/4l: Analog to Digital Converter Interface (ADCIFE) basic support.
2018-04-14 18:40:54 +00:00
George Jiglau 396701808d genlink: Rewrite genlink script from awk to python
This removes the dependency on awk and should fix #732
python was already a dependency, for the irq generation
2018-04-14 18:40:54 +00:00
Guillaume Revaillot f63090d9b6 devices.data: add stm32f071?8 2018-03-28 11:53:10 +02:00
Guillaume Revaillot 613ecc9046 devices.data: add stm32f091?[bc] 2018-03-28 11:53:05 +02:00
Guillaume Revaillot 0c578fe11b devices.data: add stm32f070?[6b] 2018-03-28 11:52:59 +02:00
Guillaume Revaillot ca35b89c32 devices.data: add stm32f030?c 2018-03-28 11:36:58 +02:00
Karl Palsson c93c8676e6 ld: devices.data: simply l4 a little
Join some of the paired devices that differ only by encryption periphs
2018-03-24 21:11:23 +00:00
Tom Verbeure dba2430c89 Add full STM32L4 family memory sizes 2018-03-24 18:06:41 +00:00
Karl Palsson fcd06c6cae devices.data: add more efm32hg variants
Some of the F32 devices only have 4k RAM
2018-03-02 22:42:04 +00:00
Sebastian Holzapfel a86948ec6e efm32hg: add basic makefile, interrupts, device information 2018-03-02 22:42:04 +00:00
Christian Tacke 914521de90 Add RAM3 support for L4-Plus to linker generation
This only adds basic support.
Specific settings still need to be added.
2018-02-22 23:51:17 +00:00
Karl Palsson b4c4b4c3f9 devices.data: add stm32f105x8
Reported-by: Karl Hammar <karl@aspodata.se>
2017-06-17 21:58:46 +00:00
Garret Kelly ce615ad7c8 devices.data: stm32f0: add stm32f042x[46] devices 2017-04-30 19:55:24 -04:00
Karl Palsson d260f5c539 stm32l476: split sram sections for ld generator
The 128K of SRAM on the l476 devices is 96K of "normal" sram, and 32K of
parity SRAM at a different offset.

Fixes: https://github.com/libopencm3/libopencm3/issues/754
2017-03-30 21:48:07 +00:00
Matthew Lai 4a378a729a devices.data: stm32f7: added all STM32F7 chips (as Feb, 2017) 2017-02-28 16:57:28 +00:00
Karl Palsson 571a4cff17 devices.data: stm32l0: add new devices 2016-09-09 21:22:02 +00:00
Karl Palsson 53de290fda atmel samd: Basic framework.
Thoughts: should this be a "sam0" family rather than samd?  (Much like Atmel's
own software package lumps all the cortex-m0+ devices in one family)

This was enough to get a basic blinky working at least.
2016-08-18 22:08:58 +00:00
Karl Palsson f20d433e0d devices.data: add lm3s6965 2016-08-18 22:08:58 +00:00
Karl Palsson 374796c1fd devices.data: fix case on stm32f072xb
this is the part on the f072 discovery board.  The devices.data file is
expected to be already lowercased, while the user provided DEVICE= variable is
then lowercased.
2016-08-18 22:07:36 +00:00
Jonas Meyer 06aa6f1b16 devices.data: Add several chips
Added lpc43xx to devices.data

For now all lpc43 chips resolve to their cortex-m4 variant. How m0 should
be handled is to be determined later.

devices.data: add some vf6xx and lm4f support. fix typos

devices.data: added missing lpc13 family group

devices.data: fix lm4f with info from examples

devices.data: add some vf610 info

devices.data: add some entries for examples
2016-08-18 22:07:36 +00:00
Jonas Meyer c025dc0327 mk/genlink: change devices.data format to remove gcc specific options
As discussed with karlp on irc the devices.data file should not contain
gcc specific command line options.

For that reason the command line options for gcc are now generated from
the variables CPU and FPU by the rules in the mk directory.

This breaks the genlink tests.

genlink: simplified devices.data

devices.data already had the information about the family name.
By using the first field (by the pattern used to match it) as family name information that data doesn't
have to be provided explicitly. The same data is used to generate the
CPPFLAGS, such as -DSTM32F1

The architectures block of the devices.data file was redundant.

genlink-config.mk uses family and subfamily to figure out which libopencm3
variant actually exists.
2016-08-18 22:07:36 +00:00
Karl Palsson 6d4a7d1d0c devices.data: fix f7 and l0 tech details
f7 has -mfpu=fpv5-sp-d16 in the lib makefile, devices.data should have
the same setting.
l0 is a cortex m0+, not a cortex m0, and uses cortex-m0plus in the
library makefile, and should have the same setting in the devices.data
file.
2016-02-05 12:30:24 +00:00
Constantine Verutin 2eade079a9 Fix flash size for stm32f401x(D|E) in devices.data. According to
datasheet(http://www.st.com/st-web-ui/static/active/en/resource/technical/document/datasheet/DM00102166.pdf,
page 11) stm32f401xD has 384 Kb of flash and stm32f401xE has 512.
2015-12-02 10:15:09 +00:00
Karl Palsson d0ac7feb3b stm32l4: Add linker generation support 2015-11-11 00:51:50 +00:00
Frantisek Burian 3ef2c38120 [stm32f7] Add initial support of the family, GPIO support.
Most changes are noise from doxygen.
Readme udpated to explain newer FP_FLAGS for m7
stm32f7 library is skipped if the toolchain doesn't support it yet.
2015-10-15 10:34:28 +00:00
Hunz 9217a5f888 ld generator: add STM32F302x8 2015-10-11 18:46:25 +00:00
Hanspeter Portner 15a6103f8e stm32f3: ld: stm32f3x3x[bc] have 32K/40K RAM only.
Correct memory sizes in ld/devices.data for:

* stm32f3[01]3?c from RAM=48K to RAM=40K.
* stm32f303?b from RAM=40K to RAM=32K.

Reviewed-by: Karl Palsson <karlp@tweak.net.au>
2015-09-07 20:52:34 +00:00
Jeff Epler ef97de242e stm32: f373: support the 373xc devices
These devices have 32kiB RAM and 256kiB flash and are otherwise
register compatible with the f373x8 and f373xc devices.

Signed-off-by: Jeff Epler <jepler@unpythonic.net>
2015-02-05 22:55:51 -08:00
Frantisek Burian f9152eb00a [stm32l0] Initial support for STM32L0 architecture, Add GPIO peripheral 2014-10-15 19:31:41 +02:00
Felix Held 26edb8ec42 [sam3s8] add flash size information for linker script generator 2014-02-24 02:32:38 +01:00
Frantisek Burian 10b4010097 [GENLINK] Updated definitions of memory sizes
Updated according versions of datasheets:

STM32F030 DS9773  v1.0
STM32F031 DS10111 v1.0
STM32F050 DS9262  v1.0
STM32F051 DS8668  v4.0 (updated RAM size)
STM32F071 DS10009 v1.0
STM32F072 DS9826  v1.0

F1, F2 and F3 have no changes and no new datasheets.

STM32F401 DS9716  v2.1
STM32F401 DS10086 v1.0
STM32F405 DS8626  v4.0
STM32F415 DS8597  v4.0
STM32F427 DS9405  v3.0
STM32F439 DS9484  v4.0

STM32L151 DS6876  v9.0
STM32L152 DS8576  v6.0
STM32L152 DS8890  v6.0
STM32L162 DS8669  v4.0
STM32L162 DS8928  v5.0
STM32L100 DS9496  v1.0
STM32L100 DS9821  v1.0
2014-02-07 07:46:52 +01:00
Felix Held 1f702cd940 fix base adresses in sam3 devices with multiple sram blocks, add nfc section 2014-02-06 23:01:50 +01:00
Frantisek Burian b7785100c8 Add support of splitting parameter classes to ARCH, DEFS, LIB
in ARCH, there are all -m flags (will be expanded into ARCH_FLAGS in Makefile)
in DEFS, there are all -D flags (will be expanded into DEFS in Makefile)
in LIB, there are all -l flags (will be expanded into LIBNAME in Makefile)

If no MODE option specified, the generator behaves as in previous version.
2014-01-12 00:21:33 +01:00