Skip to content

Commit 2b2b8f0

Browse files
Add max SPI speed select menu for M4
1 parent 2061fe3 commit 2b2b8f0

File tree

5 files changed

+273
-285
lines changed

5 files changed

+273
-285
lines changed

boards.txt

Lines changed: 57 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@
1717
menu.cache=Cache
1818
menu.speed=CPU Speed
1919
menu.opt=Optimize
20+
menu.maxspi=Max SPI
2021

2122
# Adafruit Feather M0 (SAMD21)
2223
# ------------------------------
@@ -335,6 +336,12 @@ adafruit_metro_m4.menu.opt.fast=Fast (-O2)
335336
adafruit_metro_m4.menu.opt.fast.build.flags.optimize=-O2
336337
adafruit_metro_m4.menu.opt.dragons=Here be dragons (-Ofast -funroll-loops)
337338
adafruit_metro_m4.menu.opt.dragons.build.flags.optimize=-Ofast -funroll-loops
339+
adafruit_metro_m4.menu.maxspi.24=24 MHz (standard)
340+
adafruit_metro_m4.menu.maxspi.24.build.flags.maxspi=-DMAX_SPI=24000000
341+
adafruit_metro_m4.menu.maxspi.50=50 MHz
342+
adafruit_metro_m4.menu.maxspi.50.build.flags.maxspi=-DMAX_SPI=50000000
343+
adafruit_metro_m4.menu.maxspi.fcpu2=CPU Speed / 2
344+
adafruit_metro_m4.menu.maxspi.fcpu2.build.flags.maxspi=-DMAX_SPI=({build.f_cpu}/2)
338345

339346
# Adafruit Grand Central M4 (SAMD51)
340347
# ------------------------------
@@ -356,7 +363,7 @@ adafruit_grandcentral_m4.build.usb_product="Adafruit Grand Central M4"
356363
adafruit_grandcentral_m4.build.usb_manufacturer="Adafruit LLC"
357364
adafruit_grandcentral_m4.build.board=GRAND_CENTRAL_M4
358365
adafruit_grandcentral_m4.build.core=arduino
359-
adafruit_grandcentral_m4.build.extra_flags=-D__SAMD51P20A__ -DADAFRUIT_GRAND_CENTRAL_M4 -D__SAMD51__ {build.usb_flags} -D__FPU_PRESENT -DARM_MATH_CM4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 {build.flags.optimize}
366+
adafruit_grandcentral_m4.build.extra_flags=-D__SAMD51P20A__ -DADAFRUIT_GRAND_CENTRAL_M4 -D__SAMD51__ {build.usb_flags} -D__FPU_PRESENT -DARM_MATH_CM4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 {build.flags.optimize} {build.flags.maxspi}
360367
adafruit_grandcentral_m4.build.ldscript=linker_scripts/gcc/flash_with_bootloader.ld
361368
adafruit_grandcentral_m4.build.openocdscript=openocd_scripts/arduino_zero.cfg
362369
adafruit_grandcentral_m4.build.variant=grand_central_m4
@@ -384,6 +391,12 @@ adafruit_grandcentral_m4.menu.opt.fast=Fast (-O2)
384391
adafruit_grandcentral_m4.menu.opt.fast.build.flags.optimize=-O2
385392
adafruit_grandcentral_m4.menu.opt.dragons=Here be dragons (-Ofast -funroll-loops)
386393
adafruit_grandcentral_m4.menu.opt.dragons.build.flags.optimize=-Ofast -funroll-loops
394+
adafruit_grandcentral_m4.menu.maxspi.24=24 MHz (standard)
395+
adafruit_grandcentral_m4.menu.maxspi.24.build.flags.maxspi=-DMAX_SPI=24000000
396+
adafruit_grandcentral_m4.menu.maxspi.50=50 MHz
397+
adafruit_grandcentral_m4.menu.maxspi.50.build.flags.maxspi=-DMAX_SPI=50000000
398+
adafruit_grandcentral_m4.menu.maxspi.fcpu2=CPU Speed / 2
399+
adafruit_grandcentral_m4.menu.maxspi.fcpu2.build.flags.maxspi=-DMAX_SPI=({build.f_cpu}/2)
387400

388401
# Adafruit ItsyBitsy M4 (SAMD51)
389402
# ------------------------------
@@ -433,6 +446,12 @@ adafruit_itsybitsy_m4.menu.opt.fast=Fast (-O2)
433446
adafruit_itsybitsy_m4.menu.opt.fast.build.flags.optimize=-O2
434447
adafruit_itsybitsy_m4.menu.opt.dragons=Here be dragons (-Ofast -funroll-loops)
435448
adafruit_itsybitsy_m4.menu.opt.dragons.build.flags.optimize=-Ofast -funroll-loops
449+
adafruit_itsybitsy_m4.menu.maxspi.24=24 MHz (standard)
450+
adafruit_itsybitsy_m4.menu.maxspi.24.build.flags.maxspi=-DMAX_SPI=24000000
451+
adafruit_itsybitsy_m4.menu.maxspi.50=50 MHz
452+
adafruit_itsybitsy_m4.menu.maxspi.50.build.flags.maxspi=-DMAX_SPI=50000000
453+
adafruit_itsybitsy_m4.menu.maxspi.fcpu2=CPU Speed / 2
454+
adafruit_itsybitsy_m4.menu.maxspi.fcpu2.build.flags.maxspi=-DMAX_SPI=({build.f_cpu}/2)
436455

437456
# Adafruit Feather M4 Express (SAMD51)
438457
# ------------------------------
@@ -482,6 +501,12 @@ adafruit_feather_m4.menu.opt.fast=Fast (-O2)
482501
adafruit_feather_m4.menu.opt.fast.build.flags.optimize=-O2
483502
adafruit_feather_m4.menu.opt.dragons=Here be dragons (-Ofast -funroll-loops)
484503
adafruit_feather_m4.menu.opt.dragons.build.flags.optimize=-Ofast -funroll-loops
504+
adafruit_feather_m4.menu.maxspi.24=24 MHz (standard)
505+
adafruit_feather_m4.menu.maxspi.24.build.flags.maxspi=-DMAX_SPI=24000000
506+
adafruit_feather_m4.menu.maxspi.50=50 MHz
507+
adafruit_feather_m4.menu.maxspi.50.build.flags.maxspi=-DMAX_SPI=50000000
508+
adafruit_feather_m4.menu.maxspi.fcpu2=CPU Speed / 2
509+
adafruit_feather_m4.menu.maxspi.fcpu2.build.flags.maxspi=-DMAX_SPI=({build.f_cpu}/2)
485510

486511
# Adafruit HalloWing M0 (SAMD21)
487512
# ------------------------------
@@ -565,6 +590,12 @@ adafruit_trellis_m4.menu.opt.fast=Fast (-O2)
565590
adafruit_trellis_m4.menu.opt.fast.build.flags.optimize=-O2
566591
adafruit_trellis_m4.menu.opt.dragons=Here be dragons (-Ofast -funroll-loops)
567592
adafruit_trellis_m4.menu.opt.dragons.build.flags.optimize=-Ofast -funroll-loops
593+
adafruit_trellis_m4.menu.maxspi.24=24 MHz (standard)
594+
adafruit_trellis_m4.menu.maxspi.24.build.flags.maxspi=-DMAX_SPI=24000000
595+
adafruit_trellis_m4.menu.maxspi.50=50 MHz
596+
adafruit_trellis_m4.menu.maxspi.50.build.flags.maxspi=-DMAX_SPI=50000000
597+
adafruit_trellis_m4.menu.maxspi.fcpu2=CPU Speed / 2
598+
adafruit_trellis_m4.menu.maxspi.fcpu2.build.flags.maxspi=-DMAX_SPI=({build.f_cpu}/2)
568599

569600
# Adafruit Crickit M0 (SAMD21)
570601
# ------------------------------
@@ -646,6 +677,12 @@ adafruit_pyportal_m4.menu.opt.fast=Fast (-O2)
646677
adafruit_pyportal_m4.menu.opt.fast.build.flags.optimize=-O2
647678
adafruit_pyportal_m4.menu.opt.dragons=Here be dragons (-Ofast -funroll-loops)
648679
adafruit_pyportal_m4.menu.opt.dragons.build.flags.optimize=-Ofast -funroll-loops
680+
adafruit_pyportal_m4.menu.maxspi.24=24 MHz (standard)
681+
adafruit_pyportal_m4.menu.maxspi.24.build.flags.maxspi=-DMAX_SPI=24000000
682+
adafruit_pyportal_m4.menu.maxspi.50=50 MHz
683+
adafruit_pyportal_m4.menu.maxspi.50.build.flags.maxspi=-DMAX_SPI=50000000
684+
adafruit_pyportal_m4.menu.maxspi.fcpu2=CPU Speed / 2
685+
adafruit_pyportal_m4.menu.maxspi.fcpu2.build.flags.maxspi=-DMAX_SPI=({build.f_cpu}/2)
649686

650687
# Adafruit pyBadge M4 (SAMD51)
651688
# ------------------------------
@@ -697,6 +734,12 @@ adafruit_pybadge_m4.menu.opt.fast=Fast (-O2)
697734
adafruit_pybadge_m4.menu.opt.fast.build.flags.optimize=-O2
698735
adafruit_pybadge_m4.menu.opt.dragons=Here be dragons (-Ofast -funroll-loops)
699736
adafruit_pybadge_m4.menu.opt.dragons.build.flags.optimize=-Ofast -funroll-loops
737+
adafruit_pybadge_m4.menu.maxspi.24=24 MHz (standard)
738+
adafruit_pybadge_m4.menu.maxspi.24.build.flags.maxspi=-DMAX_SPI=24000000
739+
adafruit_pybadge_m4.menu.maxspi.50=50 MHz
740+
adafruit_pybadge_m4.menu.maxspi.50.build.flags.maxspi=-DMAX_SPI=50000000
741+
adafruit_pybadge_m4.menu.maxspi.fcpu2=CPU Speed / 2
742+
adafruit_pybadge_m4.menu.maxspi.fcpu2.build.flags.maxspi=-DMAX_SPI=({build.f_cpu}/2)
700743

701744
# Adafruit Metro M4 AirLift lite (SAMD51)
702745
# ------------------------------
@@ -746,6 +789,12 @@ adafruit_metro_m4_airliftlite.menu.opt.fast=Fast (-O2)
746789
adafruit_metro_m4_airliftlite.menu.opt.fast.build.flags.optimize=-O2
747790
adafruit_metro_m4_airliftlite.menu.opt.dragons=Here be dragons (-Ofast -funroll-loops)
748791
adafruit_metro_m4_airliftlite.menu.opt.dragons.build.flags.optimize=-Ofast -funroll-loops
792+
adafruit_metro_m4_airliftlite.menu.maxspi.24=24 MHz (standard)
793+
adafruit_metro_m4_airliftlite.menu.maxspi.24.build.flags.maxspi=-DMAX_SPI=24000000
794+
adafruit_metro_m4_airliftlite.menu.maxspi.50=50 MHz
795+
adafruit_metro_m4_airliftlite.menu.maxspi.50.build.flags.maxspi=-DMAX_SPI=50000000
796+
adafruit_metro_m4_airliftlite.menu.maxspi.fcpu2=CPU Speed / 2
797+
adafruit_metro_m4_airliftlite.menu.maxspi.fcpu2.build.flags.maxspi=-DMAX_SPI=({build.f_cpu}/2)
749798

750799
# Adafruit pyGamer M4 Express (SAMD51)
751800
# ------------------------------
@@ -769,7 +818,7 @@ adafruit_pygamer_m4.build.usb_product="Adafruit PyGamer M4"
769818
adafruit_pygamer_m4.build.usb_manufacturer="Adafruit LLC"
770819
adafruit_pygamer_m4.build.board=PYGAMER_M4
771820
adafruit_pygamer_m4.build.core=arduino
772-
adafruit_pygamer_m4.build.extra_flags=-D__SAMD51J19A__ -DADAFRUIT_PYGAMER_M4_EXPRESS -DADAFRUIT_PYGAMER_M4_EXPRESS -DCRYSTALLESS -D__SAMD51__ {build.usb_flags} -D__FPU_PRESENT -DARM_MATH_CM4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 {build.flags.optimize}
821+
adafruit_pygamer_m4.build.extra_flags=-D__SAMD51J19A__ -DADAFRUIT_PYGAMER_M4_EXPRESS -DADAFRUIT_PYGAMER_M4_EXPRESS -DCRYSTALLESS -D__SAMD51__ {build.usb_flags} -D__FPU_PRESENT -DARM_MATH_CM4 -mfloat-abi=hard -mfpu=fpv4-sp-d16 {build.flags.optimize} {build.flags.maxspi}
773822
adafruit_pygamer_m4.build.ldscript=linker_scripts/gcc/flash_with_bootloader.ld
774823
adafruit_pygamer_m4.build.openocdscript=openocd_scripts/arduino_zero.cfg
775824
adafruit_pygamer_m4.build.variant=pygamer_m4
@@ -797,3 +846,9 @@ adafruit_pygamer_m4.menu.opt.fast=Fast (-O2)
797846
adafruit_pygamer_m4.menu.opt.fast.build.flags.optimize=-O2
798847
adafruit_pygamer_m4.menu.opt.dragons=Here be dragons (-Ofast -funroll-loops)
799848
adafruit_pygamer_m4.menu.opt.dragons.build.flags.optimize=-Ofast -funroll-loops
849+
adafruit_pygamer_m4.menu.maxspi.24=24 MHz (standard)
850+
adafruit_pygamer_m4.menu.maxspi.24.build.flags.maxspi=-DMAX_SPI=24000000
851+
adafruit_pygamer_m4.menu.maxspi.50=50 MHz
852+
adafruit_pygamer_m4.menu.maxspi.50.build.flags.maxspi=-DMAX_SPI=50000000
853+
adafruit_pygamer_m4.menu.maxspi.fcpu2=CPU Speed / 2
854+
adafruit_pygamer_m4.menu.maxspi.fcpu2.build.flags.maxspi=-DMAX_SPI=({build.f_cpu}/2)

0 commit comments

Comments
 (0)