Skip to content

Commit

Permalink
[variant] Add Generic L5xx and Nucleo L552ZE-Q
Browse files Browse the repository at this point in the history
Supersede stm32duino#1256

Signed-off-by: Frederic Pillon <frederic.pillon@st.com>
  • Loading branch information
fpistm committed Feb 1, 2021
1 parent dda4061 commit 5eff3f0
Show file tree
Hide file tree
Showing 9 changed files with 1,928 additions and 0 deletions.
8 changes: 8 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@ User can add a STM32 based board following this [wiki](https://github.com/stm32d
- [Generic STM32H7 boards](#generic-stm32h7-boards)
- [Generic STM32L0 boards](#generic-stm32l0-boards)
- [Generic STM32L4 boards](#generic-stm32l4-boards)
- [Generic STM32L5 boards](#generic-stm32l5-boards)
- [3D printer boards](#3d-printer-boards)
- [LoRa boards](#lora-boards)
- [Electronic Speed Controller boards](#electronic-speed-controller-boards)
Expand All @@ -81,6 +82,7 @@ User can add a STM32 based board following this [wiki](https://github.com/stm32d
| :green_heart: | STM32L496ZG-P | [Nucleo L496ZG-P](http://www.st.com/en/evaluation-tools/nucleo-l496zg-p.html) | *1.3.0* | |
| :green_heart: | STM32L4R5ZI | [Nucleo L4R5ZI](http://www.st.com/en/evaluation-tools/nucleo-l4r5zi.html) | *1.4.0* | |
| :green_heart: | STM32L4R5ZI-P | [Nucleo L4R5ZI-P](http://www.st.com/en/evaluation-tools/nucleo-l4r5zi-p.html) | *1.4.0* | |
| :yellow_heart: | STM32L552ZE-Q | [Nucleo L552ZE-Q](https://www.st.com/en/evaluation-tools/nucleo-l552ze-q.html) | **2.0.0** | |
| :green_heart: | STM32H743ZI | [Nucleo H743ZI(2)](https://www.st.com/en/evaluation-tools/nucleo-h743zi.html) | *1.5.0* | Nucleo H743ZI2 since 1.6.0 |

### [Nucleo 64](https://www.st.com/content/st_com/en/products/evaluation-tools/product-evaluation-tools/mcu-eval-tools/stm32-mcu-eval-tools/stm32-nucleo-boards.html) boards
Expand Down Expand Up @@ -267,6 +269,12 @@ User can add a STM32 based board following this [wiki](https://github.com/stm32d
| :yellow_heart: | STM32L4R9ZGJ<br>STM32L4R9ZIJ | Generic Board | **2.0.0** | |
| :yellow_heart: | STM32L4S5VI | Generic Board | **2.0.0** | |

### Generic STM32L5 boards

| Status | Device(s) | Name | Release | Notes |
| :----: | :-------: | ---- | :-----: | :---- |
| :yellow_heart: | STM32L552ZC-Q<br>STM32L552ZE-Q | Generic Board | **2.0.0** | |

### 3D printer boards

| Status | Device(s) | Name | Release | Notes |
Expand Down
105 changes: 105 additions & 0 deletions boards.txt
Original file line number Diff line number Diff line change
Expand Up @@ -161,6 +161,19 @@ Nucleo_144.menu.pnum.NUCLEO_L4R5ZI_P.build.product_line=STM32L4R5xx
Nucleo_144.menu.pnum.NUCLEO_L4R5ZI_P.build.variant=STM32L4xx/Generic_L4R5ZI_P
Nucleo_144.menu.pnum.NUCLEO_L4R5ZI_P.build.cmsis_lib_gcc=arm_cortexM4lf_math

# NUCLEO_L552ZE-Q board
Nucleo_144.menu.pnum.NUCLEO_L552ZE_Q=Nucleo L552ZE-Q
Nucleo_144.menu.pnum.NUCLEO_L552ZE_Q.node=NODE_L552ZE
Nucleo_144.menu.pnum.NUCLEO_L552ZE_Q.upload.maximum_size=524288
Nucleo_144.menu.pnum.NUCLEO_L552ZE_Q.upload.maximum_data_size=196608
Nucleo_144.menu.pnum.NUCLEO_L552ZE_Q.build.mcu=cortex-m33
Nucleo_144.menu.pnum.NUCLEO_L552ZE_Q.build.flags.fp=-mfpu=fpv4-sp-d16 -mfloat-abi=hard
Nucleo_144.menu.pnum.NUCLEO_L552ZE_Q.build.board=NUCLEO_L552ZE_Q
Nucleo_144.menu.pnum.NUCLEO_L552ZE_Q.build.series=STM32L5xx
Nucleo_144.menu.pnum.NUCLEO_L552ZE_Q.build.product_line=STM32L552xx
Nucleo_144.menu.pnum.NUCLEO_L552ZE_Q.build.variant=STM32L5xx/Generic_L552ZxT_Q
Nucleo_144.menu.pnum.NUCLEO_L552ZE_Q.build.cmsis_lib_gcc=arm_ARMv8MMLlfsp_math

# Upload menu
Nucleo_144.menu.upload_method.MassStorage=Mass Storage
Nucleo_144.menu.upload_method.MassStorage.upload.protocol=
Expand Down Expand Up @@ -2250,6 +2263,50 @@ GenL4.menu.upload_method.dfuMethod.upload.protocol=2
GenL4.menu.upload_method.dfuMethod.upload.options=-g
GenL4.menu.upload_method.dfuMethod.upload.tool=stm32CubeProg

################################################################################
# Generic L5
GenL5.name=Generic STM32L5 series

GenL5.build.core=arduino
GenL5.build.board=GenL5
GenL5.build.extra_flags=-D{build.product_line} {build.enable_usb} {build.xSerial}
GenL5.build.mcu=cortex-m33
GenL5.build.flags.fp=-mfpu=fpv4-sp-d16 -mfloat-abi=hard
GenL5.build.series=STM32L5xx
GenL5.build.cmsis_lib_gcc=arm_ARMv8MMLlfsp_math

# Generic L552ZC-Q board
GenL5.menu.pnum.GENERIC_L552ZC_Q=Generic L552ZC-Q
GenL5.menu.pnum.GENERIC_L552ZC_Q.upload.maximum_size=262144
GenL5.menu.pnum.GENERIC_L552ZC_Q.upload.maximum_data_size=196608
GenL5.menu.pnum.GENERIC_L552ZC_Q.build.board=GENERIC_L552ZC_Q
GenL5.menu.pnum.GENERIC_L552ZC_Q.build.product_line=STM32L552xx
GenL5.menu.pnum.GENERIC_L552ZC_Q.build.variant=STM32L5xx/Generic_L552ZxT_Q

# Generic L552ZE-Q board
GenL5.menu.pnum.GENERIC_L552ZE_Q=Generic L552ZE-Q
GenL5.menu.pnum.GENERIC_L552ZE_Q.upload.maximum_size=524288
GenL5.menu.pnum.GENERIC_L552ZE_Q.upload.maximum_data_size=196608
GenL5.menu.pnum.GENERIC_L552ZE_Q.build.board=GENERIC_L552ZE_Q
GenL5.menu.pnum.GENERIC_L552ZE_Q.build.product_line=STM32L552xx
GenL5.menu.pnum.GENERIC_L552ZE_Q.build.variant=STM32L5xx/Generic_L552ZxT_Q

# Upload menu
GenL5.menu.upload_method.swdMethod=STM32CubeProgrammer (SWD)
GenL5.menu.upload_method.swdMethod.upload.protocol=0
GenL5.menu.upload_method.swdMethod.upload.options=-g
GenL5.menu.upload_method.swdMethod.upload.tool=stm32CubeProg

GenL5.menu.upload_method.serialMethod=STM32CubeProgrammer (Serial)
GenL5.menu.upload_method.serialMethod.upload.protocol=1
GenL5.menu.upload_method.serialMethod.upload.options={serial.port.file} -s
GenL5.menu.upload_method.serialMethod.upload.tool=stm32CubeProg

GenL5.menu.upload_method.dfuMethod=STM32CubeProgrammer (DFU)
GenL5.menu.upload_method.dfuMethod.upload.protocol=2
GenL5.menu.upload_method.dfuMethod.upload.options=-g
GenL5.menu.upload_method.dfuMethod.upload.tool=stm32CubeProg

#################################################################################
## Generic MP1 microprocessor series (MPU + MCU)
#GenMP1.name=Generic STM32MP1 series coprocessor
Expand Down Expand Up @@ -2869,6 +2926,12 @@ GenL4.menu.xserial.none.build.xSerial=-DHAL_UART_MODULE_ENABLED -DHWSERIAL_NONE
GenL4.menu.xserial.disabled=Disabled (no Serial support)
GenL4.menu.xserial.disabled.build.xSerial=

GenL5.menu.xserial.generic=Enabled (generic 'Serial')
GenL5.menu.xserial.none=Enabled (no generic 'Serial')
GenL5.menu.xserial.none.build.xSerial=-DHAL_UART_MODULE_ENABLED -DHWSERIAL_NONE
GenL5.menu.xserial.disabled=Disabled (no Serial support)
GenL5.menu.xserial.disabled.build.xSerial=

#GenMP1.menu.virtio.disable=Disabled (no SerialVirtIO nor /dev/ttyRPMSG0 available)
#GenMP1.menu.virtio.disable.build.enable_virtio=
#GenMP1.menu.virtio.generic=SerialVirtIO (= generic 'Serial') <=> /dev/ttyRPMSG0
Expand Down Expand Up @@ -3077,6 +3140,19 @@ GenL4.menu.xusb.HS.build.usb_speed=-DUSE_USB_HS
GenL4.menu.xusb.HSFS=High Speed in Full Speed mode
GenL4.menu.xusb.HSFS.build.usb_speed=-DUSE_USB_HS -DUSE_USB_HS_IN_FS

GenL5.menu.usb.none=None
GenL5.menu.usb.CDCgen=CDC (generic 'Serial' supersede U(S)ART)
GenL5.menu.usb.CDCgen.build.enable_usb={build.usb_flags} -DUSBD_USE_CDC
GenL5.menu.usb.CDC=CDC (no generic 'Serial')
GenL5.menu.usb.CDC.build.enable_usb={build.usb_flags} -DUSBD_USE_CDC -DDISABLE_GENERIC_SERIALUSB
GenL5.menu.usb.HID=HID (keyboard and mouse)
GenL5.menu.usb.HID.build.enable_usb={build.usb_flags} -DUSBD_USE_HID_COMPOSITE
GenL5.menu.xusb.FS=Low/Full Speed
GenL5.menu.xusb.HS=High Speed
GenL5.menu.xusb.HS.build.usb_speed=-DUSE_USB_HS
GenL5.menu.xusb.HSFS=High Speed in Full Speed mode
GenL5.menu.xusb.HSFS.build.usb_speed=-DUSE_USB_HS -DUSE_USB_HS_IN_FS

3dprinter.menu.usb.none=None
3dprinter.menu.usb.CDCgen=CDC (generic 'Serial' supersede U(S)ART)
3dprinter.menu.usb.CDCgen.build.enable_usb={build.usb_flags} -DUSBD_USE_CDC
Expand Down Expand Up @@ -3396,6 +3472,25 @@ GenL4.menu.opt.o3lto.build.flags.optimize=-O3 -flto
GenL4.menu.opt.ogstd=Debug (-g)
GenL4.menu.opt.ogstd.build.flags.optimize=-g -Og

GenL5.menu.opt.osstd=Smallest (-Os default)
GenL5.menu.opt.osstd.build.flags.optimize=-Os
GenL5.menu.opt.oslto=Smallest (-Os) with LTO
GenL5.menu.opt.oslto.build.flags.optimize=-Os -flto
GenL5.menu.opt.o1std=Fast (-O1)
GenL5.menu.opt.o1std.build.flags.optimize=-O1
GenL5.menu.opt.o1lto=Fast (-O1) with LTO
GenL5.menu.opt.o1lto.build.flags.optimize=-O1 -flto
GenL5.menu.opt.o2std=Faster (-O2)
GenL5.menu.opt.o2std.build.flags.optimize=-O2
GenL5.menu.opt.o2lto=Faster (-O2) with LTO
GenL5.menu.opt.o2lto.build.flags.optimize=-O2 -flto
GenL5.menu.opt.o3std=Fastest (-O3)
GenL5.menu.opt.o3std.build.flags.optimize=-O3
GenL5.menu.opt.o3lto=Fastest (-O3) with LTO
GenL5.menu.opt.o3lto.build.flags.optimize=-O3 -flto
GenL5.menu.opt.ogstd=Debug (-g)
GenL5.menu.opt.ogstd.build.flags.optimize=-g -Og

#GenMP1.menu.opt.osstd=Smallest (-Os default)
#GenMP1.menu.opt.oslto=Smallest (-Os) with LTO
#GenMP1.menu.opt.oslto.build.flags.optimize=-Os -flto
Expand Down Expand Up @@ -3673,6 +3768,16 @@ GenL4.menu.rtlib.nanofps.build.flags.ldspecs=--specs=nano.specs -u _printf_float
GenL4.menu.rtlib.full=Newlib Standard
GenL4.menu.rtlib.full.build.flags.ldspecs=

GenL5.menu.rtlib.nano=Newlib Nano (default)
GenL5.menu.rtlib.nanofp=Newlib Nano + Float Printf
GenL5.menu.rtlib.nanofp.build.flags.ldspecs=--specs=nano.specs -u _printf_float
GenL5.menu.rtlib.nanofs=Newlib Nano + Float Scanf
GenL5.menu.rtlib.nanofs.build.flags.ldspecs=--specs=nano.specs -u _scanf_float
GenL5.menu.rtlib.nanofps=Newlib Nano + Float Printf/Scanf
GenL5.menu.rtlib.nanofps.build.flags.ldspecs=--specs=nano.specs -u _printf_float -u _scanf_float
GenL5.menu.rtlib.full=Newlib Standard
GenL5.menu.rtlib.full.build.flags.ldspecs=

#GenMP1.menu.rtlib.nano=Newlib Nano (default)
#GenMP1.menu.rtlib.nanofp=Newlib Nano + Float Printf
#GenMP1.menu.rtlib.nanofp.build.flags.ldspecs=--specs=nano.specs -u _printf_float
Expand Down
Loading

0 comments on commit 5eff3f0

Please sign in to comment.