# 

menu.var_cfg=Variant
menu.usb_cfg=USB configuration
menu.opt=Optimize
menu.upload_method=Upload method

##############################################################
generic_f407v.name=STM32F407V series

generic_f407v.upload.file_type=bin
generic_f407v.upload.maximum_size=514288
generic_f407v.upload.maximum_data_size=131072

#generic_f407v.upload.usbID=0483:3748
#generic_f407v.upload.altID=1
#generic_f407v.upload.auto_reset=true

generic_f407v.build.core=maple
generic_f407v.build.board=generic_f407v
generic_f407v.build.variant=generic_f407v
generic_f407v.build.variant_system_lib=lib_f407.a

generic_f407v.menu.var_cfg.big_black=Generic black board
generic_f407v.menu.var_cfg.big_black.build.board=generic_f407v
generic_f407v.menu.var_cfg.big_black.build.extra_flags= -DCRYSTAL_FREQ=8 -DLED_BUILTIN=PA6
generic_f407v.menu.var_cfg.big_black.build.error_led_pin=PA7

generic_f407v.menu.var_cfg.small_black=Generic small black board (DevEBox)
generic_f407v.menu.var_cfg.small_black.build.board=generic_f407v
generic_f407v.menu.var_cfg.small_black.build.extra_flags= -DCRYSTAL_FREQ=8 -DLED_BUILTIN=PA1
generic_f407v.menu.var_cfg.small_black.build.error_led_pin=PA1

generic_f407v.menu.var_cfg.small_blue=Generic blue board
generic_f407v.menu.var_cfg.small_blue.build.board=generic_f407v
generic_f407v.menu.var_cfg.small_blue.build.extra_flags= -DCRYSTAL_FREQ=25 -DLED_BUILTIN=PB9
generic_f407v.menu.var_cfg.small_blue.build.error_led_pin=PA1

generic_f407v.menu.var_cfg.disco_f4=Discovery F407
generic_f407v.menu.var_cfg.disco_f4.build.board=discovery_f407
generic_f407v.menu.var_cfg.disco_f4.build.extra_flags= -DCRYSTAL_FREQ=8 -DLED_BUILTIN=PD14
generic_f407v.menu.var_cfg.disco_f4.build.error_led_pin=PD14

generic_f407v.menu.var_cfg.arch_max=Seeed Arch Max v1.1
generic_f407v.menu.var_cfg.arch_max.build.board=arch_max
generic_f407v.menu.var_cfg.arch_max.build.extra_flags= -DCRYSTAL_FREQ=8 -DLED_BUILTIN=PB3
generic_f407v.menu.var_cfg.arch_max.build.error_led_pin=PB3


generic_f407v.menu.usb_cfg.usb_serial=USB serial (CDC)
generic_f407v.menu.usb_cfg.usb_serial.build.cpu_flags=-DSERIAL_USB
generic_f407v.menu.usb_cfg.usb_nc=USB inactive
generic_f407v.menu.usb_cfg.usb_nc.build.cpu_flags=-DUSB_NC
generic_f407v.menu.usb_cfg.usb_msc=USB Mass Storage (MSC)
generic_f407v.menu.usb_cfg.usb_msc.build.cpu_flags=-DUSB_MSC

#note STLink is the default from the main block of config above, so does not need settings for everything
generic_f407v.menu.upload_method.STLinkMethod=STLink
generic_f407v.menu.upload_method.STLinkMethod.upload.protocol=STLink
generic_f407v.menu.upload_method.STLinkMethod.upload.tool=stlink_upload
generic_f407v.menu.upload_method.STLinkMethod.upload.dfuse_addr=0x08004000
generic_f407v.menu.upload_method.STLinkMethod.build.vect_flags=-DUSER_ADDR_ROM=0x08000000
generic_f407v.menu.upload_method.STLinkMethod.build.ldscript=ld/jtag.ld

generic_f407v.menu.upload_method.HIDUploadMethod=HID bootloader 2.0
generic_f407v.menu.upload_method.HIDUploadMethod.upload.protocol=hid_boot
generic_f407v.menu.upload_method.HIDUploadMethod.upload.tool=hid_upload
generic_f407v.menu.upload_method.HIDUploadMethod.build.vect_flags=-DUSER_ADDR_ROM=0x08004000
generic_f407v.menu.upload_method.HIDUploadMethod.build.ldscript=ld/bootloader_8004000.ld

#-- Optimizations
generic_f407v.menu.opt.osstd=Smallest (default)
generic_f407v.menu.opt.oslto=Smallest Code with LTO
generic_f407v.menu.opt.oslto.build.flags.optimize=-Os -flto
generic_f407v.menu.opt.oslto.build.flags.ldspecs=-flto
generic_f407v.menu.opt.o1std=Fast (-O1)
generic_f407v.menu.opt.o1std.build.flags.optimize=-O1
generic_f407v.menu.opt.o1std.build.flags.ldspecs=
generic_f407v.menu.opt.o1lto=Fast (-O1) with LTO
generic_f407v.menu.opt.o1lto.build.flags.optimize=-O1 -flto
generic_f407v.menu.opt.o1lto.build.flags.ldspecs=-flto
generic_f407v.menu.opt.o2std=Faster (-O2)
generic_f407v.menu.opt.o2std.build.flags.optimize=-O2
generic_f407v.menu.opt.o2std.build.flags.ldspecs=
generic_f407v.menu.opt.o2lto=Faster (-O2) with LTO
generic_f407v.menu.opt.o2lto.build.flags.optimize=-O2 -flto
generic_f407v.menu.opt.o2lto.build.flags.ldspecs=-flto
generic_f407v.menu.opt.o3std=Fastest (-O3)
generic_f407v.menu.opt.o3std.build.flags.optimize=-O3
generic_f407v.menu.opt.o3std.build.flags.ldspecs=
generic_f407v.menu.opt.o3lto=Fastest (-O3) with LTO
generic_f407v.menu.opt.o3lto.build.flags.optimize=-O3 -flto
generic_f407v.menu.opt.o3lto.build.flags.ldspecs=-flto
generic_f407v.menu.opt.ogstd=Debug (-g)
generic_f407v.menu.opt.ogstd.build.flags.optimize=-Og
generic_f407v.menu.opt.ogstd.build.flags.ldspecs=
##############################################################
disco_f411.name=STM32F411VE series
          
disco_f411.upload.tool=stlink_upload
disco_f411.upload.protocol=stlink
          
disco_f411.upload.file_type=bin
disco_f411.upload.maximum_size=1048576
disco_f411.upload.maximum_data_size=131072
          
disco_f411.build.core=maple
disco_f411.build.ldscript=ld/jtag.ld
disco_f411.build.board=disco_f411
disco_f411.build.variant=disco_f411
disco_f411.build.variant_system_lib=lib_f407.a
disco_f411.build.vect_flags=-DUSER_ADDR_ROM=0x08000000

disco_f411.menu.var_cfg.disco_f4=STM32 Discovery F411E
disco_f411.menu.var_cfg.disco_f4.build.board=disco_f411
disco_f411.menu.var_cfg.disco_f4.build.extra_flags= -DLED_BUILTIN=PD12 -DCRYSTAL_FREQ=8 -DNO_CCMRAM
disco_f411.menu.var_cfg.disco_f4.build.error_led_pin=PD14

disco_f411.menu.usb_cfg.usb_serial=USB serial (CDC)
disco_f411.menu.usb_cfg.usb_serial.build.cpu_flags=-DSERIAL_USB
disco_f411.menu.usb_cfg.usb_nc=USB inactive
disco_f411.menu.usb_cfg.usb_nc.build.cpu_flags=-DUSB_NC
disco_f411.menu.usb_cfg.usb_msc=USB Mass Storage (MSC)
disco_f411.menu.usb_cfg.usb_msc.build.cpu_flags=-DUSB_MSC

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