summaryrefslogtreecommitdiff
path: root/platforms
diff options
context:
space:
mode:
authorVegard Storheil Eriksen <zyp@jvnv.net>2021-01-07 02:12:00 +0100
committerVegard Storheil Eriksen <zyp@jvnv.net>2021-01-07 02:12:00 +0100
commitd4244f3d52f276337b44b0bab8c85094c985682f (patch)
tree26732a0db12d0b856d450409312536e8a1969e37 /platforms
parentba807914e4f6afe9f95aad7aa4e634d47193ba5c (diff)
build: Add platform spec framework.
Diffstat (limited to 'platforms')
-rw-r--r--platforms/cortex-m.yaml13
-rw-r--r--platforms/index.yaml9
-rw-r--r--platforms/stm32/f4.yaml30
-rw-r--r--platforms/stm32/index.yaml8
4 files changed, 60 insertions, 0 deletions
diff --git a/platforms/cortex-m.yaml b/platforms/cortex-m.yaml
new file mode 100644
index 0000000..d1612b2
--- /dev/null
+++ b/platforms/cortex-m.yaml
@@ -0,0 +1,13 @@
+- match:
+ cpu: cortex-m4f
+
+ cflags:
+ - -mcpu=cortex-m4
+ - -mfloat-abi=hard
+ - -mfpu=fpv4-sp-d16
+
+ define:
+ - HAS_FPU
+
+ toolchains:
+ - arm-none-eabi
diff --git a/platforms/index.yaml b/platforms/index.yaml
new file mode 100644
index 0000000..558b535
--- /dev/null
+++ b/platforms/index.yaml
@@ -0,0 +1,9 @@
+- match:
+ mcu: !re stm32
+
+ -: !import stm32/index.yaml
+
+- match:
+ cpu: !re cortex-m
+
+ -: !import cortex-m.yaml
diff --git a/platforms/stm32/f4.yaml b/platforms/stm32/f4.yaml
new file mode 100644
index 0000000..0d336ce
--- /dev/null
+++ b/platforms/stm32/f4.yaml
@@ -0,0 +1,30 @@
+- match:
+ mem: e
+ mem:
+ flash:
+ origin: 0x08000000
+ size: 512k
+ ld_script: stm32_f4_e.ld
+
+- match:
+ mem: g
+ mem:
+ flash:
+ origin: 0x08000000
+ size: 1M
+ ld_script: stm32_f4_g.ld
+
+- mem:
+ ram:
+ origin: 0x20000000
+ size: 128k
+
+ ccm:
+ origin: 0x10000000
+ size: 64k
+
+ define:
+ - STM32F4
+
+ meta:
+ cpu: cortex-m4f \ No newline at end of file
diff --git a/platforms/stm32/index.yaml b/platforms/stm32/index.yaml
new file mode 100644
index 0000000..a8cb56f
--- /dev/null
+++ b/platforms/stm32/index.yaml
@@ -0,0 +1,8 @@
+- match:
+ mcu: !re stm32(?P<family>..)(?P<variant>..).(?P<mem>.)
+
+ -:
+ - match:
+ family: f4
+
+ -: !import f4.yaml