mirror of
https://github.com/hathach/tinyusb.git
synced 2025-02-18 21:41:12 +00:00
fix linking missing ivt symbol for imxrt with cmake
changed device port = 0, host port =1 for imxrt 1060 and 1064
This commit is contained in:
parent
654f182176
commit
4fc4f35a8a
@ -1,5 +1,5 @@
|
||||
<component name="ProjectRunConfigurationManager">
|
||||
<configuration default="false" name="rt10xx" type="com.jetbrains.cidr.embedded.customgdbserver.type" factoryName="com.jetbrains.cidr.embedded.customgdbserver.factory" PROGRAM_PARAMS="gdbserver -p 55503 -t mimxrt1010" REDIRECT_INPUT="false" ELEVATE="false" USE_EXTERNAL_CONSOLE="false" PASS_PARENT_ENVS_2="true" PROJECT_NAME="tinyusb_device_examples" TARGET_NAME="cdc_msc_freertos" version="1" RUN_TARGET_PROJECT_NAME="tinyusb_device_examples" RUN_TARGET_NAME="cdc_msc_freertos">
|
||||
<configuration default="false" name="rt1010" type="com.jetbrains.cidr.embedded.customgdbserver.type" factoryName="com.jetbrains.cidr.embedded.customgdbserver.factory" PROGRAM_PARAMS="gdbserver -p 55503 -t mimxrt1010" REDIRECT_INPUT="false" ELEVATE="false" USE_EXTERNAL_CONSOLE="false" PASS_PARENT_ENVS_2="true" PROJECT_NAME="cdc_msc" TARGET_NAME="cdc_msc" CONFIG_NAME="rt1060 evk" version="1" RUN_TARGET_PROJECT_NAME="cdc_msc" RUN_TARGET_NAME="cdc_msc">
|
||||
<custom-gdb-server version="1" gdb-connect="tcp::55503" executable="$USER_HOME$/.local/bin/pyocd" warmup-ms="0" download-type="UPDATED_ONLY" reset-cmd="monitor reset" reset-type="AFTER_DOWNLOAD">
|
||||
<debugger kind="GDB" isBundled="true" />
|
||||
</custom-gdb-server>
|
5
.idea/runConfigurations/tinyusb_examples.xml
generated
5
.idea/runConfigurations/tinyusb_examples.xml
generated
@ -1,5 +0,0 @@
|
||||
<component name="ProjectRunConfigurationManager">
|
||||
<configuration default="false" name="tinyusb_examples" type="CMakeListConfigurationType" factoryName="CMakeListConfigurationFactory">
|
||||
<method v="2" />
|
||||
</configuration>
|
||||
</component>
|
@ -1,5 +1,5 @@
|
||||
if (TOOLCHAIN STREQUAL "gcc")
|
||||
set(TOOLCHAIN_COMMON_FLAGS
|
||||
list(APPEND TOOLCHAIN_COMMON_FLAGS
|
||||
-mthumb
|
||||
-mcpu=cortex-m7
|
||||
-mfloat-abi=hard
|
||||
|
@ -25,7 +25,13 @@ list(APPEND TOOLCHAIN_COMMON_FLAGS
|
||||
-fno-strict-aliasing
|
||||
)
|
||||
|
||||
set(TOOLCHAIN_WARNING_FLAGS
|
||||
list(APPEND TOOLCHAIN_EXE_LINKER_FLAGS
|
||||
-Wl,--print-memory-usage
|
||||
-Wl,--gc-sections
|
||||
-Wl,--cref
|
||||
)
|
||||
|
||||
list(APPEND TOOLCHAIN_WARNING_FLAGS
|
||||
-Wall
|
||||
-Wextra
|
||||
-Werror
|
||||
|
@ -11,6 +11,9 @@ foreach(LANG IN ITEMS C CXX ASM)
|
||||
set(CMAKE_${LANG}_FLAGS_DEBUG_INIT "-Og")
|
||||
endforeach()
|
||||
|
||||
# Linker
|
||||
list(JOIN TOOLCHAIN_EXE_LINKER_FLAGS " " CMAKE_EXE_LINKER_FLAGS_INIT)
|
||||
|
||||
# try_compile is cmake test compiling its own example,
|
||||
# pass -nostdlib to skip stdlib linking
|
||||
get_property(IS_IN_TRY_COMPILE GLOBAL PROPERTY IN_TRY_COMPILE)
|
||||
|
@ -1,4 +1,5 @@
|
||||
cmake_minimum_required(VERSION 3.17)
|
||||
set_property(GLOBAL PROPERTY USE_FOLDERS ON)
|
||||
|
||||
include(${CMAKE_CURRENT_SOURCE_DIR}/../../../hw/bsp/family_support.cmake)
|
||||
|
||||
|
@ -169,7 +169,7 @@ $(BUILD)/$(PROJECT).hex: $(BUILD)/$(PROJECT).elf
|
||||
|
||||
$(BUILD)/$(PROJECT).elf: $(OBJ)
|
||||
@echo LINK $@
|
||||
@$(LD) -o $@ $(LDFLAGS) $^ -Wl,--start-group $(LIBS) -Wl,--end-group
|
||||
@$(LD) -o $@ $(LDFLAGS) $^ -Wl,--print-memory-usage -Wl,--start-group $(LIBS) -Wl,--end-group
|
||||
|
||||
endif
|
||||
|
||||
|
15
hw/bsp/imxrt/boards/mimxrt1060_evk/board.cmake
Normal file
15
hw/bsp/imxrt/boards/mimxrt1060_evk/board.cmake
Normal file
@ -0,0 +1,15 @@
|
||||
set(MCU_VARIANT MIMXRT1062)
|
||||
|
||||
set(JLINK_DEVICE MIMXRT1062xxx6A)
|
||||
set(PYOCD_TARGET mimxrt1060)
|
||||
|
||||
function(update_board TARGET)
|
||||
target_sources(${TARGET} PUBLIC
|
||||
${CMAKE_CURRENT_FUNCTION_LIST_DIR}/evkmimxrt1060_flexspi_nor_config.c
|
||||
)
|
||||
target_compile_definitions(${TARGET} PUBLIC
|
||||
CPU_MIMXRT1062DVL6A
|
||||
BOARD_TUD_RHPORT=0
|
||||
BOARD_TUH_RHPORT=1
|
||||
)
|
||||
endfunction()
|
@ -7,8 +7,8 @@ JLINK_DEVICE = MIMXRT1062xxx6A
|
||||
# For flash-pyocd target
|
||||
PYOCD_TARGET = mimxrt1060
|
||||
|
||||
BOARD_TUD_RHPORT = 1
|
||||
BOARD_TUH_RHPORT = 0
|
||||
BOARD_TUD_RHPORT = 0
|
||||
BOARD_TUH_RHPORT = 1
|
||||
|
||||
# flash using pyocd
|
||||
flash: flash-pyocd
|
||||
|
15
hw/bsp/imxrt/boards/mimxrt1064_evk/board.cmake
Normal file
15
hw/bsp/imxrt/boards/mimxrt1064_evk/board.cmake
Normal file
@ -0,0 +1,15 @@
|
||||
set(MCU_VARIANT MIMXRT1064)
|
||||
|
||||
set(JLINK_DEVICE MIMXRT1064xxx6A)
|
||||
set(PYOCD_TARGET mimxrt1064)
|
||||
|
||||
function(update_board TARGET)
|
||||
target_sources(${TARGET} PUBLIC
|
||||
${CMAKE_CURRENT_FUNCTION_LIST_DIR}/evkmimxrt1064_flexspi_nor_config.c
|
||||
)
|
||||
target_compile_definitions(${TARGET} PUBLIC
|
||||
CPU_MIMXRT1064DVL6A
|
||||
BOARD_TUD_RHPORT=0
|
||||
BOARD_TUH_RHPORT=1
|
||||
)
|
||||
endfunction()
|
@ -7,8 +7,8 @@ JLINK_DEVICE = MIMXRT1064xxx6A
|
||||
# For flash-pyocd target
|
||||
PYOCD_TARGET = mimxrt1064
|
||||
|
||||
BOARD_TUD_RHPORT = 1
|
||||
BOARD_TUH_RHPORT = 0
|
||||
BOARD_TUD_RHPORT = 0
|
||||
BOARD_TUH_RHPORT = 1
|
||||
|
||||
# flash using pyocd
|
||||
flash: flash-pyocd
|
||||
|
@ -47,6 +47,7 @@
|
||||
#endif
|
||||
|
||||
// needed by fsl_flexspi_nor_boot
|
||||
TU_ATTR_USED
|
||||
const uint8_t dcd_data[] = { 0x00 };
|
||||
|
||||
//--------------------------------------------------------------------+
|
||||
|
@ -63,8 +63,13 @@ if (NOT TARGET ${BOARD_TARGET})
|
||||
)
|
||||
target_link_options(${BOARD_TARGET} PUBLIC
|
||||
"LINKER:--script=${SDK_DIR}/devices/${MCU_VARIANT}/gcc/${MCU_VARIANT}xxxxx_flexspi_nor.ld"
|
||||
"LINKER:-Map=$<IF:$<BOOL:$<TARGET_PROPERTY:OUTPUT_NAME>>,$<TARGET_PROPERTY:OUTPUT_NAME>,$<TARGET_PROPERTY:NAME>>${CMAKE_EXECUTABLE_SUFFIX}.map"
|
||||
# nanolib
|
||||
--specs=nosys.specs
|
||||
--specs=nano.specs
|
||||
# force linker to look for these symbols
|
||||
-Wl,-uimage_vector_table
|
||||
-Wl,-ug_boot_data
|
||||
)
|
||||
else ()
|
||||
# TODO support IAR
|
||||
@ -116,12 +121,17 @@ function(family_configure_target TARGET)
|
||||
|
||||
# Link dependencies
|
||||
target_link_libraries(${BSP_TARGET} PUBLIC ${BOARD_TARGET} ${TARGET}-tinyusb)
|
||||
target_link_libraries(${TARGET} PUBLIC ${BSP_TARGET} ${TARGET}-tinyusb)
|
||||
target_link_libraries(${TARGET} PUBLIC ${BOARD_TARGET} ${BSP_TARGET} ${TARGET}-tinyusb)
|
||||
|
||||
# Flash Target
|
||||
add_custom_target(${TARGET}-pyocd
|
||||
COMMAND pyocd flash -t ${PYOCD_TARGET} $<TARGET_FILE:${TARGET}>
|
||||
)
|
||||
|
||||
# group target
|
||||
set_target_properties(${BSP_TARGET} ${TARGET}-tinyusb ${TARGET}-tinyusb_config ${TARGET}-pyocd
|
||||
PROPERTIES FOLDER ${TARGET}
|
||||
)
|
||||
endfunction()
|
||||
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user