BSP Cleanup
- Added MSDK flash rules for CMake - Removed partial IAR support. Uniform GCC support across MAX32 parts - Updated build scripts for correctly signing the MAX32651 - Added README files for the BSPs to describe flashing and limitiations
This commit is contained in:
28
hw/bsp/max78002/README.md
Normal file
28
hw/bsp/max78002/README.md
Normal file
@@ -0,0 +1,28 @@
|
||||
# Analog Devices MAX78002
|
||||
|
||||
This BSP is for working with the Analog Devices
|
||||
[MAX78002](https://www.analog.com/en/products/max78002.html) AI microcontroller.
|
||||
The following boards are supported:
|
||||
* [MAX78002EVKIT](https://www.analog.com/en/resources/evaluation-hardware-and-software/evaluation-boards-kits/max78002evkit.html)
|
||||
|
||||
This part family leverages the Maxim Microcontrollers SDK (MSDK) for the device
|
||||
interfaces and hardware abstraction layers. This source code package is fetched
|
||||
as part of the get-deps script.
|
||||
|
||||
The microcontroller utilizes the standard GNU ARM toolchain. If this toolchain
|
||||
is not already available on your build machine, it can be installed by using the
|
||||
bundled MSDK installation. Details on downloading and installing can be found
|
||||
in the [User's Guide](https://analogdevicesinc.github.io/msdk//USERGUIDE/).
|
||||
|
||||
## Flashing
|
||||
|
||||
The default flashing behavior in this BSP is to utilize JLink. This can be done
|
||||
by running the `flash` or `flash-jlink` rule for Makefiles, or the
|
||||
`<target>-jlink` target for CMake.
|
||||
|
||||
The Evaluation Kit is shipped with a CMSIS-DAP compatible debug probe. However,
|
||||
at the time of writing, the necessary flashing algorithms for OpenOCD have not
|
||||
yet been incorporated into the OpenOCD master branch. To utilize the provided
|
||||
debug probes, please install the bundled MSDK package which includes the
|
||||
appropriate OpenOCD modifications. To leverage this OpenOCD instance, run the
|
||||
`flash-msdk` Makefile rule, or `<target>-msdk` CMake target.
|
@@ -42,7 +42,6 @@ function(add_board_target BOARD_TARGET)
|
||||
# Startup & Linker script
|
||||
set(STARTUP_FILE_GNU ${MAX32_CMSIS}/Device/Maxim/MAX78002/Source/GCC/startup_max78002.S)
|
||||
set(STARTUP_FILE_Clang ${STARTUP_FILE_GNU})
|
||||
#set(STARTUP_FILE_IAR ?)
|
||||
|
||||
set(PERIPH_SRC ${MAX32_PERIPH}/Source)
|
||||
add_library(${BOARD_TARGET} STATIC
|
||||
@@ -87,8 +86,8 @@ function(add_board_target BOARD_TARGET)
|
||||
)
|
||||
|
||||
target_compile_options(${BOARD_TARGET} PRIVATE
|
||||
-Wno-error=strict-prototypes
|
||||
-Wno-error=redundant-decls
|
||||
-Wno-error=strict-prototypes
|
||||
-Wno-error=redundant-decls
|
||||
)
|
||||
update_board(${BOARD_TARGET})
|
||||
|
||||
@@ -102,10 +101,6 @@ function(add_board_target BOARD_TARGET)
|
||||
target_link_options(${BOARD_TARGET} PUBLIC
|
||||
"LINKER:--script=${LD_FILE_Clang}"
|
||||
)
|
||||
elseif (CMAKE_C_COMPILER_ID STREQUAL "IAR")
|
||||
target_link_options(${BOARD_TARGET} PUBLIC
|
||||
"LINKER:--config=${LD_FILE_IAR}"
|
||||
)
|
||||
endif ()
|
||||
endfunction()
|
||||
|
||||
@@ -146,8 +141,8 @@ function(family_configure_example TARGET RTOS)
|
||||
)
|
||||
target_link_libraries(${TARGET}-tinyusb PUBLIC board_${BOARD})
|
||||
target_compile_options(${TARGET}-tinyusb PRIVATE
|
||||
-Wno-error=strict-prototypes
|
||||
-Wno-error=redundant-decls
|
||||
-Wno-error=strict-prototypes
|
||||
-Wno-error=redundant-decls
|
||||
)
|
||||
|
||||
# Link dependencies
|
||||
@@ -155,4 +150,18 @@ function(family_configure_example TARGET RTOS)
|
||||
|
||||
# Flashing
|
||||
family_flash_jlink(${TARGET})
|
||||
family_flash_msdk(${TARGET})
|
||||
endfunction()
|
||||
|
||||
# Add flash msdk target
|
||||
function(family_flash_msdk TARGET)
|
||||
set(MAXIM_PATH "$ENV{MAXIM_PATH}")
|
||||
|
||||
add_custom_target(${TARGET}-msdk
|
||||
DEPENDS ${TARGET}
|
||||
COMMAND ${MAXIM_PATH}/Tools/OpenOCD/openocd -s ${MAXIM_PATH}/Tools/OpenOCD/scripts
|
||||
-f interface/cmsis-dap.cfg -f target/max78002.cfg
|
||||
-c "program $<TARGET_FILE:${TARGET}> verify; init; reset; exit"
|
||||
VERBATIM
|
||||
)
|
||||
endfunction()
|
||||
|
@@ -14,9 +14,6 @@ PORT ?= 0
|
||||
SRC_S_GCC += $(MAX32_CMSIS)/Device/Maxim/MAX78002/Source/GCC/startup_max78002.S
|
||||
LD_FILE = $(FAMILY_PATH)/max78002.ld
|
||||
|
||||
# IAR
|
||||
#SRC_S_IAR +=
|
||||
|
||||
# --------------
|
||||
# Compiler Flags
|
||||
# --------------
|
||||
@@ -45,7 +42,7 @@ LDFLAGS_GCC += -nostartfiles --specs=nosys.specs --specs=nano.specs
|
||||
# For flash-jlink target
|
||||
JLINK_DEVICE = max78000
|
||||
|
||||
# flash target using Jlik
|
||||
# flash target using Jlink by default
|
||||
flash: flash-jlink
|
||||
|
||||
# Optional flash option when running within an installed MSDK to use OpenOCD
|
||||
@@ -88,7 +85,6 @@ SRC_C += \
|
||||
$(PERIPH_SRC)/UART/uart_ai87.c \
|
||||
$(PERIPH_SRC)/UART/uart_revb.c \
|
||||
|
||||
|
||||
INC += \
|
||||
$(TOP)/$(BOARD_PATH) \
|
||||
$(TOP)/lib/CMSIS_5/CMSIS/Core/Include \
|
||||
|
Reference in New Issue
Block a user