Puya PY32F MCU support (#5106)

* pinout yamls removed

* machine: implement default UART pin configuration for Embedfire boards

* flash command moved to chip level so VS Code plugin can select bare chip

* machine: add support for alternate pin mode configuration

* add build targets for embedfire on py32

* add support for embedfire target in GNUmakefile for py32

* lib/py32-svd: remove duplicate DBGMCU.IDCODE CODE field

Update submodule to fix duplicate SetIDCODE/GetIDCODE method
declarations in the generated py32f002bxx.go device file.

* update subproject commit reference in py32-svd

* refactor: update CPU frequency handling in machine and runtime packages

* refactor: replace ConfigureUARTPin function with direct pin configuration in UART setup

* SetAltFunc documentation for GPIO pin alternate functions

* refactor: improve UART write and flush error handling with timeout

* machine/py32: generalize UART driver to any USART

Add a per-instance setup func to the UART type so the driver is no longer
hardwired to USART1. DefaultUART stays USART1; add UART2 (USART2) in a
separately build-tagged file since py32f002x parts lack USART2. RX IRQ
handlers reference runtime-assigned vars to break the init cycle, and setup
is assigned in the var initializer so it runs before InitSerial.

Add the py32f003_32k_4k target (32K flash / 4K RAM).

* Add canonical PY32F002, F003, and F030 density targets

Use CMSIS/pyocd device names for target files and build tags. Add all F003 and F030 densities plus F002A/B, correct F002B to 24K flash and its own startup file, fix the F030x8 pyocd target, and update Embedfire inheritance.

* Add targets for all PY32 CMSIS devices

* Support all PY32 register layout variants

* machine/py32: use generated register definitions

* machine/py32: fix alternate-function documentation

* machine/py32: report the configured CPU frequency

* machine/py32: use unsafe.Add for GPIO ports

* machine/py32: bound and yield UART polling

* machine/py32: configure UART pins from UARTConfig

* build: use the current PY32 SVD repository URL

* test: cover PY32 UART register layouts

* machine/py32: restore dynamic CPU frequency tracking

* machine/py32: share the USART TX-ready bit

* targets/py32: scale system stacks with RAM

* machine/py32: keep clock state internal

* targets/py32: normalize generated metadata

* machine/py32: normalize GPIO configuration

* machine/py32: fix T020 UART setup

* machine/py32: reduce clock variant files

* machine/py32: clean up UART variants

* machine/py32: decouple UART clock capability

* lib/py32-svd: use organization repository

* runtime/py32: name 24MHz HSI encodings

* machine/py32: derive startup clock from capability

* machine/py32: use generated USART clock mask

* machine/py32: name T020 8-bit UART mode

* ci: include PY32 in sharded smoke tests

* runtime: remove PY32 HSI frequency workaround
This commit is contained in:
Pavel Burgr
2026-08-29 08:41:43 +02:00
committed by GitHub
parent f6e502e121
commit b420a8be17
272 changed files with 3744 additions and 9 deletions
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32f002bx5"
],
"build-tags": [
"embedfire_py32f002b",
"py32_default_uart_pins"
]
}
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32f030x8"
],
"build-tags": [
"embedfire_py32f030",
"py32_default_uart_pins"
]
}
+11
View File
@@ -0,0 +1,11 @@
{
"inherits": [
"cortex-m4"
],
"scheduler": "none",
"gc": "none",
"serial": "uart",
"build-tags": [
"py32"
]
}
+11
View File
@@ -0,0 +1,11 @@
{
"inherits": [
"cortex-m0plus"
],
"scheduler": "none",
"gc": "none",
"serial": "uart",
"build-tags": [
"py32"
]
}
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32e407xx"
],
"build-tags": [
"py32e407xc"
],
"linkerscript": "targets/py32e407xc.ld"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x40000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x1c000
}
_stack_size = 4K;
INCLUDE "targets/arm.ld"
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32e407xx"
],
"build-tags": [
"py32e407xd"
],
"linkerscript": "targets/py32e407xd.ld"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x60000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x24000
}
_stack_size = 4K;
INCLUDE "targets/arm.ld"
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32e407xx"
],
"build-tags": [
"py32e407xe"
],
"linkerscript": "targets/py32e407xe.ld"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x80000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x24000
}
_stack_size = 4K;
INCLUDE "targets/arm.ld"
+16
View File
@@ -0,0 +1,16 @@
{
"inherits": [
"py32-m4"
],
"build-tags": [
"py32e407xx",
"py32_gpio_ospdder",
"py32_gpio_clock_ahb2",
"py32_no_hsi_fs",
"py32_usart_split_data",
"py32_uart_clock_apb2"
],
"extra-files": [
"src/device/py32/py32e407xx.s"
]
}
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32f001cxx"
],
"build-tags": [
"py32f001cx4"
],
"linkerscript": "targets/py32f001cx4.ld"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x4000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0xc00
}
_stack_size = 1K;
INCLUDE "targets/arm.ld"
+13
View File
@@ -0,0 +1,13 @@
{
"inherits": [
"py32"
],
"build-tags": [
"py32f001cxx",
"py32_no_gpio_afrh",
"py32_usart1_clock_literal"
],
"extra-files": [
"src/device/py32/py32f001cxx.s"
]
}
+12
View File
@@ -0,0 +1,12 @@
{
"inherits": [
"py32"
],
"build-tags": [
"py32f001xx",
"py32_usart1_clock_literal"
],
"extra-files": [
"src/device/py32/py32f001xx.s"
]
}
+10
View File
@@ -0,0 +1,10 @@
{
"inherits": [
"py32f002axx"
],
"build-tags": [
"py32f002ax5"
],
"linkerscript": "targets/py32f002ax5.ld",
"flash-command": "pyocd load -t py32f002ax5 {bin}"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x5000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0xc00
}
_stack_size = 1K;
INCLUDE "targets/arm.ld"
+11
View File
@@ -0,0 +1,11 @@
{
"inherits": [
"py32"
],
"build-tags": [
"py32f002axx"
],
"extra-files": [
"src/device/py32/py32f002axx.s"
]
}
+10
View File
@@ -0,0 +1,10 @@
{
"inherits": [
"py32f002bxx"
],
"build-tags": [
"py32f002bx5"
],
"linkerscript": "targets/py32f002bx5.ld",
"flash-command": "pyocd load -t py32f002bx5 {bin}"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x6000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0xc00
}
_stack_size = 1K;
INCLUDE "targets/arm.ld"
+12
View File
@@ -0,0 +1,12 @@
{
"inherits": [
"py32"
],
"build-tags": [
"py32f002bxx",
"py32_no_gpio_afrh"
],
"extra-files": [
"src/device/py32/py32f002bxx.s"
]
}
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32f002cxx"
],
"build-tags": [
"py32f002cx5"
],
"linkerscript": "targets/py32f002cx5.ld"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x8000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0xc00
}
_stack_size = 1K;
INCLUDE "targets/arm.ld"
+12
View File
@@ -0,0 +1,12 @@
{
"inherits": [
"py32"
],
"build-tags": [
"py32f002cxx",
"py32_no_gpio_afrh"
],
"extra-files": [
"src/device/py32/py32f002cxx.s"
]
}
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32f002xxx"
],
"build-tags": [
"py32f002xx2"
],
"linkerscript": "targets/py32f002xx2.ld"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x2000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0xc00
}
_stack_size = 1K;
INCLUDE "targets/arm.ld"
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32f002xxx"
],
"build-tags": [
"py32f002xx4"
],
"linkerscript": "targets/py32f002xx4.ld"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x4000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0xc00
}
_stack_size = 1K;
INCLUDE "targets/arm.ld"
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32f002xxx"
],
"build-tags": [
"py32f002xx5"
],
"linkerscript": "targets/py32f002xx5.ld"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x6000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0xc00
}
_stack_size = 1K;
INCLUDE "targets/arm.ld"
+12
View File
@@ -0,0 +1,12 @@
{
"inherits": [
"py32"
],
"build-tags": [
"py32f002xxx",
"py32_no_gpio_afrh"
],
"extra-files": [
"src/device/py32/py32f002xxx.s"
]
}
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32f002zxx"
],
"build-tags": [
"py32f002zx4"
],
"linkerscript": "targets/py32f002zx4.ld"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x4000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0xc00
}
_stack_size = 1K;
INCLUDE "targets/arm.ld"
+12
View File
@@ -0,0 +1,12 @@
{
"inherits": [
"py32"
],
"build-tags": [
"py32f002zxx",
"py32_no_gpio_afrh"
],
"extra-files": [
"src/device/py32/py32f002zxx.s"
]
}
+10
View File
@@ -0,0 +1,10 @@
{
"inherits": [
"py32f003xx"
],
"build-tags": [
"py32f003x4"
],
"linkerscript": "targets/py32f003x4.ld",
"flash-command": "pyocd load -t py32f003x4 {bin}"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x4000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x800
}
_stack_size = 1K;
INCLUDE "targets/arm.ld"
+10
View File
@@ -0,0 +1,10 @@
{
"inherits": [
"py32f003xx"
],
"build-tags": [
"py32f003x6"
],
"linkerscript": "targets/py32f003x6.ld",
"flash-command": "pyocd load -t py32f003x6 {bin}"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x8000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x1000
}
_stack_size = 1K;
INCLUDE "targets/arm.ld"
+10
View File
@@ -0,0 +1,10 @@
{
"inherits": [
"py32f003xx"
],
"build-tags": [
"py32f003x7"
],
"linkerscript": "targets/py32f003x7.ld",
"flash-command": "pyocd load -t py32f003x7 {bin}"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0xc000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x1800
}
_stack_size = 2K;
INCLUDE "targets/arm.ld"
+10
View File
@@ -0,0 +1,10 @@
{
"inherits": [
"py32f003xx"
],
"build-tags": [
"py32f003x8"
],
"linkerscript": "targets/py32f003x8.ld",
"flash-command": "pyocd load -t py32f003x8 {bin}"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x10000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x2000
}
_stack_size = 2K;
INCLUDE "targets/arm.ld"
+11
View File
@@ -0,0 +1,11 @@
{
"inherits": [
"py32"
],
"build-tags": [
"py32f003xx"
],
"extra-files": [
"src/device/py32/py32f003xx.s"
]
}
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32f021xx"
],
"build-tags": [
"py32f021x8"
],
"linkerscript": "targets/py32f021x8.ld"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x10000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x2000
}
_stack_size = 2K;
INCLUDE "targets/arm.ld"
+11
View File
@@ -0,0 +1,11 @@
{
"inherits": [
"py32"
],
"build-tags": [
"py32f021xx"
],
"extra-files": [
"src/device/py32/py32f021xx.s"
]
}
+10
View File
@@ -0,0 +1,10 @@
{
"inherits": [
"py32f030xx"
],
"build-tags": [
"py32f030x4"
],
"linkerscript": "targets/py32f030x4.ld",
"flash-command": "pyocd load -t py32f030x4 {bin}"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x4000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x800
}
_stack_size = 1K;
INCLUDE "targets/arm.ld"
+10
View File
@@ -0,0 +1,10 @@
{
"inherits": [
"py32f030xx"
],
"build-tags": [
"py32f030x6"
],
"linkerscript": "targets/py32f030x6.ld",
"flash-command": "pyocd load -t py32f030x6 {bin}"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x8000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x1000
}
_stack_size = 1K;
INCLUDE "targets/arm.ld"
+10
View File
@@ -0,0 +1,10 @@
{
"inherits": [
"py32f030xx"
],
"build-tags": [
"py32f030x7"
],
"linkerscript": "targets/py32f030x7.ld",
"flash-command": "pyocd load -t py32f030x7 {bin}"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0xc000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x1800
}
_stack_size = 2K;
INCLUDE "targets/arm.ld"
+10
View File
@@ -0,0 +1,10 @@
{
"inherits": [
"py32f030xx"
],
"build-tags": [
"py32f030x8"
],
"linkerscript": "targets/py32f030x8.ld",
"flash-command": "pyocd load -t py32f030x8 {bin}"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x10000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x2000
}
_stack_size = 2K;
INCLUDE "targets/arm.ld"
+11
View File
@@ -0,0 +1,11 @@
{
"inherits": [
"py32"
],
"build-tags": [
"py32f030xx"
],
"extra-files": [
"src/device/py32/py32f030xx.s"
]
}
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32f031xx"
],
"build-tags": [
"py32f031x4"
],
"linkerscript": "targets/py32f031x4.ld"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x4000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x800
}
_stack_size = 1K;
INCLUDE "targets/arm.ld"
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32f031xx"
],
"build-tags": [
"py32f031x6"
],
"linkerscript": "targets/py32f031x6.ld"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x8000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x1000
}
_stack_size = 1K;
INCLUDE "targets/arm.ld"
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32f031xx"
],
"build-tags": [
"py32f031x7"
],
"linkerscript": "targets/py32f031x7.ld"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0xc000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x1800
}
_stack_size = 2K;
INCLUDE "targets/arm.ld"
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32f031xx"
],
"build-tags": [
"py32f031x8"
],
"linkerscript": "targets/py32f031x8.ld"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x10000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x2000
}
_stack_size = 2K;
INCLUDE "targets/arm.ld"
+11
View File
@@ -0,0 +1,11 @@
{
"inherits": [
"py32"
],
"build-tags": [
"py32f031xx"
],
"extra-files": [
"src/device/py32/py32f031xx.s"
]
}
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32f032xx"
],
"build-tags": [
"py32f032x8"
],
"linkerscript": "targets/py32f032x8.ld"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x10000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x2000
}
_stack_size = 2K;
INCLUDE "targets/arm.ld"
+11
View File
@@ -0,0 +1,11 @@
{
"inherits": [
"py32"
],
"build-tags": [
"py32f032xx"
],
"extra-files": [
"src/device/py32/py32f032xx.s"
]
}
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32f040cxx"
],
"build-tags": [
"py32f040cx6"
],
"linkerscript": "targets/py32f040cx6.ld"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x8000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x1000
}
_stack_size = 1K;
INCLUDE "targets/arm.ld"
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32f040cxx"
],
"build-tags": [
"py32f040cx8"
],
"linkerscript": "targets/py32f040cx8.ld"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x10000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x2000
}
_stack_size = 2K;
INCLUDE "targets/arm.ld"
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32f040cxx"
],
"build-tags": [
"py32f040cx9"
],
"linkerscript": "targets/py32f040cx9.ld"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x18000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x3000
}
_stack_size = 2K;
INCLUDE "targets/arm.ld"
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32f040cxx"
],
"build-tags": [
"py32f040cxb"
],
"linkerscript": "targets/py32f040cxb.ld"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x20000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x4000
}
_stack_size = 2K;
INCLUDE "targets/arm.ld"
+11
View File
@@ -0,0 +1,11 @@
{
"inherits": [
"py32"
],
"build-tags": [
"py32f040cxx"
],
"extra-files": [
"src/device/py32/py32f040cxx.s"
]
}
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32f040epxx"
],
"build-tags": [
"py32f040epxb"
],
"linkerscript": "targets/py32f040epxb.ld"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x20000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x4000
}
_stack_size = 2K;
INCLUDE "targets/arm.ld"
+11
View File
@@ -0,0 +1,11 @@
{
"inherits": [
"py32"
],
"build-tags": [
"py32f040epxx"
],
"extra-files": [
"src/device/py32/py32f040epxx.s"
]
}
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32f040exx"
],
"build-tags": [
"py32f040ex6"
],
"linkerscript": "targets/py32f040ex6.ld"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x8000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x1000
}
_stack_size = 1K;
INCLUDE "targets/arm.ld"
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32f040exx"
],
"build-tags": [
"py32f040ex8"
],
"linkerscript": "targets/py32f040ex8.ld"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x10000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x2000
}
_stack_size = 2K;
INCLUDE "targets/arm.ld"
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32f040exx"
],
"build-tags": [
"py32f040ex9"
],
"linkerscript": "targets/py32f040ex9.ld"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x18000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x3000
}
_stack_size = 2K;
INCLUDE "targets/arm.ld"
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32f040exx"
],
"build-tags": [
"py32f040exb"
],
"linkerscript": "targets/py32f040exb.ld"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x20000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x4000
}
_stack_size = 2K;
INCLUDE "targets/arm.ld"
+11
View File
@@ -0,0 +1,11 @@
{
"inherits": [
"py32"
],
"build-tags": [
"py32f040exx"
],
"extra-files": [
"src/device/py32/py32f040exx.s"
]
}
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32f040xx"
],
"build-tags": [
"py32f040x6"
],
"linkerscript": "targets/py32f040x6.ld"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x8000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x1000
}
_stack_size = 1K;
INCLUDE "targets/arm.ld"
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32f040xx"
],
"build-tags": [
"py32f040x8"
],
"linkerscript": "targets/py32f040x8.ld"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x10000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x2000
}
_stack_size = 2K;
INCLUDE "targets/arm.ld"
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32f040xx"
],
"build-tags": [
"py32f040x9"
],
"linkerscript": "targets/py32f040x9.ld"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x18000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x3000
}
_stack_size = 2K;
INCLUDE "targets/arm.ld"
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32f040xx"
],
"build-tags": [
"py32f040xb"
],
"linkerscript": "targets/py32f040xb.ld"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x20000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x4000
}
_stack_size = 2K;
INCLUDE "targets/arm.ld"
+11
View File
@@ -0,0 +1,11 @@
{
"inherits": [
"py32"
],
"build-tags": [
"py32f040xx"
],
"extra-files": [
"src/device/py32/py32f040xx.s"
]
}
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32f071cxx"
],
"build-tags": [
"py32f071cx6"
],
"linkerscript": "targets/py32f071cx6.ld"
}
+9
View File
@@ -0,0 +1,9 @@
MEMORY
{
FLASH_TEXT (rx) : ORIGIN = 0x8000000, LENGTH = 0x8000
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 0x1000
}
_stack_size = 1K;
INCLUDE "targets/arm.ld"
+9
View File
@@ -0,0 +1,9 @@
{
"inherits": [
"py32f071cxx"
],
"build-tags": [
"py32f071cx8"
],
"linkerscript": "targets/py32f071cx8.ld"
}

Some files were not shown because too many files have changed in this diff Show More