From 8ec06b3867a92018713fabaaa48d442a83225fd1 Mon Sep 17 00:00:00 2001 From: Chun-Chieh Li Date: Tue, 13 Aug 2024 15:43:04 +0800 Subject: [PATCH] NUVOTON: Support upload methods Support targets include: - NUMAKER_PFM_NANO130 - NUMAKER_PFM_NUC472 - NUMAKER_PFM_M453 - NUMAKER_PFM_M487 - NUMAKER_IOT_M487 - NUMAKER_IOT_M467 - NUMAKER_IOT_M252 - NUMAKER_IOT_M263A - NU_M2354 --- .../upload_method_cfg/NUMAKER_IOT_M252.cmake | 24 +++++++++++++++++++ .../upload_method_cfg/NUMAKER_IOT_M263A.cmake | 24 +++++++++++++++++++ .../upload_method_cfg/NUMAKER_IOT_M467.cmake | 24 +++++++++++++++++++ .../upload_method_cfg/NUMAKER_IOT_M487.cmake | 24 +++++++++++++++++++ .../upload_method_cfg/NUMAKER_PFM_M453.cmake | 18 ++++++++++++++ .../upload_method_cfg/NUMAKER_PFM_M487.cmake | 24 +++++++++++++++++++ .../NUMAKER_PFM_NANO130.cmake | 18 ++++++++++++++ .../NUMAKER_PFM_NUC472.cmake | 18 ++++++++++++++ targets/upload_method_cfg/NU_M2354.cmake | 24 +++++++++++++++++++ .../openocd_cfgs/numicro_m0.cfg | 4 ++++ .../openocd_cfgs/numicro_m23.cfg | 13 ++++++++++ .../openocd_cfgs/numicro_m4.cfg | 4 ++++ 12 files changed, 219 insertions(+) create mode 100644 targets/upload_method_cfg/NUMAKER_IOT_M252.cmake create mode 100644 targets/upload_method_cfg/NUMAKER_IOT_M263A.cmake create mode 100644 targets/upload_method_cfg/NUMAKER_IOT_M467.cmake create mode 100644 targets/upload_method_cfg/NUMAKER_IOT_M487.cmake create mode 100644 targets/upload_method_cfg/NUMAKER_PFM_M453.cmake create mode 100644 targets/upload_method_cfg/NUMAKER_PFM_M487.cmake create mode 100644 targets/upload_method_cfg/NUMAKER_PFM_NANO130.cmake create mode 100644 targets/upload_method_cfg/NUMAKER_PFM_NUC472.cmake create mode 100644 targets/upload_method_cfg/NU_M2354.cmake create mode 100644 targets/upload_method_cfg/openocd_cfgs/numicro_m0.cfg create mode 100644 targets/upload_method_cfg/openocd_cfgs/numicro_m23.cfg create mode 100644 targets/upload_method_cfg/openocd_cfgs/numicro_m4.cfg diff --git a/targets/upload_method_cfg/NUMAKER_IOT_M252.cmake b/targets/upload_method_cfg/NUMAKER_IOT_M252.cmake new file mode 100644 index 000000000000..23182c505074 --- /dev/null +++ b/targets/upload_method_cfg/NUMAKER_IOT_M252.cmake @@ -0,0 +1,24 @@ +# Mbed OS upload method configuration file for target NUMAKER_IOT_M252. +# To change any of these parameters from their default values, set them in your build script between where you +# include app.cmake and where you add mbed os as a subdirectory. + +# General config parameters +# ------------------------------------------------------------- +set(UPLOAD_METHOD_DEFAULT MBED) + +# Config options for MBED +# ------------------------------------------------------------- +set(MBED_UPLOAD_ENABLED TRUE) +set(MBED_RESET_BAUDRATE 115200) + +# Config options for PYOCD +# ------------------------------------------------------------- +set(PYOCD_UPLOAD_ENABLED TRUE) +set(PYOCD_TARGET_NAME m252kg6ae) +set(PYOCD_CLOCK_SPEED 4000k) + +# Config options for OPENOCD +# ------------------------------------------------------------- +set(OPENOCD_UPLOAD_ENABLED TRUE) +set(OPENOCD_CHIP_CONFIG_COMMANDS + -f ${CMAKE_CURRENT_LIST_DIR}/openocd_cfgs/numicro_m23.cfg) diff --git a/targets/upload_method_cfg/NUMAKER_IOT_M263A.cmake b/targets/upload_method_cfg/NUMAKER_IOT_M263A.cmake new file mode 100644 index 000000000000..7f7d7c2c460c --- /dev/null +++ b/targets/upload_method_cfg/NUMAKER_IOT_M263A.cmake @@ -0,0 +1,24 @@ +# Mbed OS upload method configuration file for target NUMAKER_IOT_M263A. +# To change any of these parameters from their default values, set them in your build script between where you +# include app.cmake and where you add mbed os as a subdirectory. + +# General config parameters +# ------------------------------------------------------------- +set(UPLOAD_METHOD_DEFAULT MBED) + +# Config options for MBED +# ------------------------------------------------------------- +set(MBED_UPLOAD_ENABLED TRUE) +set(MBED_RESET_BAUDRATE 115200) + +# Config options for PYOCD +# ------------------------------------------------------------- +set(PYOCD_UPLOAD_ENABLED TRUE) +set(PYOCD_TARGET_NAME m263kiaae) +set(PYOCD_CLOCK_SPEED 4000k) + +# Config options for OPENOCD +# ------------------------------------------------------------- +set(OPENOCD_UPLOAD_ENABLED TRUE) +set(OPENOCD_CHIP_CONFIG_COMMANDS + -f ${CMAKE_CURRENT_LIST_DIR}/openocd_cfgs/numicro_m23.cfg) diff --git a/targets/upload_method_cfg/NUMAKER_IOT_M467.cmake b/targets/upload_method_cfg/NUMAKER_IOT_M467.cmake new file mode 100644 index 000000000000..2410a158cf3f --- /dev/null +++ b/targets/upload_method_cfg/NUMAKER_IOT_M467.cmake @@ -0,0 +1,24 @@ +# Mbed OS upload method configuration file for target NUMAKER_IOT_M467. +# To change any of these parameters from their default values, set them in your build script between where you +# include app.cmake and where you add mbed os as a subdirectory. + +# General config parameters +# ------------------------------------------------------------- +set(UPLOAD_METHOD_DEFAULT MBED) + +# Config options for MBED +# ------------------------------------------------------------- +set(MBED_UPLOAD_ENABLED TRUE) +set(MBED_RESET_BAUDRATE 115200) + +# Config options for PYOCD +# ------------------------------------------------------------- +set(PYOCD_UPLOAD_ENABLED TRUE) +set(PYOCD_TARGET_NAME m467hjhae) +set(PYOCD_CLOCK_SPEED 4000k) + +# Config options for OPENOCD +# ------------------------------------------------------------- +set(OPENOCD_UPLOAD_ENABLED TRUE) +set(OPENOCD_CHIP_CONFIG_COMMANDS + -f ${CMAKE_CURRENT_LIST_DIR}/openocd_cfgs/numicro_m4.cfg) diff --git a/targets/upload_method_cfg/NUMAKER_IOT_M487.cmake b/targets/upload_method_cfg/NUMAKER_IOT_M487.cmake new file mode 100644 index 000000000000..e659ba400806 --- /dev/null +++ b/targets/upload_method_cfg/NUMAKER_IOT_M487.cmake @@ -0,0 +1,24 @@ +# Mbed OS upload method configuration file for target NUMAKER_IOT_M487. +# To change any of these parameters from their default values, set them in your build script between where you +# include app.cmake and where you add mbed os as a subdirectory. + +# General config parameters +# ------------------------------------------------------------- +set(UPLOAD_METHOD_DEFAULT MBED) + +# Config options for MBED +# ------------------------------------------------------------- +set(MBED_UPLOAD_ENABLED TRUE) +set(MBED_RESET_BAUDRATE 115200) + +# Config options for PYOCD +# ------------------------------------------------------------- +set(PYOCD_UPLOAD_ENABLED TRUE) +set(PYOCD_TARGET_NAME m487jidae) +set(PYOCD_CLOCK_SPEED 4000k) + +# Config options for OPENOCD +# ------------------------------------------------------------- +set(OPENOCD_UPLOAD_ENABLED TRUE) +set(OPENOCD_CHIP_CONFIG_COMMANDS + -f ${CMAKE_CURRENT_LIST_DIR}/openocd_cfgs/numicro_m4.cfg) diff --git a/targets/upload_method_cfg/NUMAKER_PFM_M453.cmake b/targets/upload_method_cfg/NUMAKER_PFM_M453.cmake new file mode 100644 index 000000000000..b173f2675d85 --- /dev/null +++ b/targets/upload_method_cfg/NUMAKER_PFM_M453.cmake @@ -0,0 +1,18 @@ +# Mbed OS upload method configuration file for target NUMAKER_PFM_M453. +# To change any of these parameters from their default values, set them in your build script between where you +# include app.cmake and where you add mbed os as a subdirectory. + +# General config parameters +# ------------------------------------------------------------- +set(UPLOAD_METHOD_DEFAULT MBED) + +# Config options for MBED +# ------------------------------------------------------------- +set(MBED_UPLOAD_ENABLED TRUE) +set(MBED_RESET_BAUDRATE 115200) + +# Config options for OPENOCD +# ------------------------------------------------------------- +set(OPENOCD_UPLOAD_ENABLED TRUE) +set(OPENOCD_CHIP_CONFIG_COMMANDS + -f ${CMAKE_CURRENT_LIST_DIR}/openocd_cfgs/numicro_m4.cfg) diff --git a/targets/upload_method_cfg/NUMAKER_PFM_M487.cmake b/targets/upload_method_cfg/NUMAKER_PFM_M487.cmake new file mode 100644 index 000000000000..b0e853c9a692 --- /dev/null +++ b/targets/upload_method_cfg/NUMAKER_PFM_M487.cmake @@ -0,0 +1,24 @@ +# Mbed OS upload method configuration file for target NUMAKER_PFM_M487. +# To change any of these parameters from their default values, set them in your build script between where you +# include app.cmake and where you add mbed os as a subdirectory. + +# General config parameters +# ------------------------------------------------------------- +set(UPLOAD_METHOD_DEFAULT MBED) + +# Config options for MBED +# ------------------------------------------------------------- +set(MBED_UPLOAD_ENABLED TRUE) +set(MBED_RESET_BAUDRATE 115200) + +# Config options for PYOCD +# ------------------------------------------------------------- +set(PYOCD_UPLOAD_ENABLED TRUE) +set(PYOCD_TARGET_NAME m487jidae) +set(PYOCD_CLOCK_SPEED 4000k) + +# Config options for OPENOCD +# ------------------------------------------------------------- +set(OPENOCD_UPLOAD_ENABLED TRUE) +set(OPENOCD_CHIP_CONFIG_COMMANDS + -f ${CMAKE_CURRENT_LIST_DIR}/openocd_cfgs/numicro_m4.cfg) diff --git a/targets/upload_method_cfg/NUMAKER_PFM_NANO130.cmake b/targets/upload_method_cfg/NUMAKER_PFM_NANO130.cmake new file mode 100644 index 000000000000..74b7bfca344d --- /dev/null +++ b/targets/upload_method_cfg/NUMAKER_PFM_NANO130.cmake @@ -0,0 +1,18 @@ +# Mbed OS upload method configuration file for target NUMAKER_PFM_NANO130. +# To change any of these parameters from their default values, set them in your build script between where you +# include app.cmake and where you add mbed os as a subdirectory. + +# General config parameters +# ------------------------------------------------------------- +set(UPLOAD_METHOD_DEFAULT MBED) + +# Config options for MBED +# ------------------------------------------------------------- +set(MBED_UPLOAD_ENABLED TRUE) +set(MBED_RESET_BAUDRATE 115200) + +# Config options for OPENOCD +# ------------------------------------------------------------- +set(OPENOCD_UPLOAD_ENABLED TRUE) +set(OPENOCD_CHIP_CONFIG_COMMANDS + -f ${CMAKE_CURRENT_LIST_DIR}/openocd_cfgs/numicro_m0.cfg) diff --git a/targets/upload_method_cfg/NUMAKER_PFM_NUC472.cmake b/targets/upload_method_cfg/NUMAKER_PFM_NUC472.cmake new file mode 100644 index 000000000000..f5ec2173885c --- /dev/null +++ b/targets/upload_method_cfg/NUMAKER_PFM_NUC472.cmake @@ -0,0 +1,18 @@ +# Mbed OS upload method configuration file for target NUMAKER_PFM_NUC472. +# To change any of these parameters from their default values, set them in your build script between where you +# include app.cmake and where you add mbed os as a subdirectory. + +# General config parameters +# ------------------------------------------------------------- +set(UPLOAD_METHOD_DEFAULT MBED) + +# Config options for MBED +# ------------------------------------------------------------- +set(MBED_UPLOAD_ENABLED TRUE) +set(MBED_RESET_BAUDRATE 115200) + +# Config options for OPENOCD +# ------------------------------------------------------------- +set(OPENOCD_UPLOAD_ENABLED TRUE) +set(OPENOCD_CHIP_CONFIG_COMMANDS + -f ${CMAKE_CURRENT_LIST_DIR}/openocd_cfgs/numicro_m4.cfg) diff --git a/targets/upload_method_cfg/NU_M2354.cmake b/targets/upload_method_cfg/NU_M2354.cmake new file mode 100644 index 000000000000..d67ef70f61e8 --- /dev/null +++ b/targets/upload_method_cfg/NU_M2354.cmake @@ -0,0 +1,24 @@ +# Mbed OS upload method configuration file for target NU_M2354. +# To change any of these parameters from their default values, set them in your build script between where you +# include app.cmake and where you add mbed os as a subdirectory. + +# General config parameters +# ------------------------------------------------------------- +set(UPLOAD_METHOD_DEFAULT MBED) + +# Config options for MBED +# ------------------------------------------------------------- +set(MBED_UPLOAD_ENABLED TRUE) +set(MBED_RESET_BAUDRATE 115200) + +# Config options for PYOCD +# ------------------------------------------------------------- +set(PYOCD_UPLOAD_ENABLED TRUE) +set(PYOCD_TARGET_NAME m2354kjfae) +set(PYOCD_CLOCK_SPEED 4000k) + +# Config options for OPENOCD +# ------------------------------------------------------------- +set(OPENOCD_UPLOAD_ENABLED TRUE) +set(OPENOCD_CHIP_CONFIG_COMMANDS + -f ${CMAKE_CURRENT_LIST_DIR}/openocd_cfgs/numicro_m23.cfg) diff --git a/targets/upload_method_cfg/openocd_cfgs/numicro_m0.cfg b/targets/upload_method_cfg/openocd_cfgs/numicro_m0.cfg new file mode 100644 index 000000000000..fa2a33b299c0 --- /dev/null +++ b/targets/upload_method_cfg/openocd_cfgs/numicro_m0.cfg @@ -0,0 +1,4 @@ +# OpenOCD config file for Nuvoton NuMicro M0 series + +source [find interface/nulink.cfg] +source [find target/numicroM0.cfg] diff --git a/targets/upload_method_cfg/openocd_cfgs/numicro_m23.cfg b/targets/upload_method_cfg/openocd_cfgs/numicro_m23.cfg new file mode 100644 index 000000000000..968729067e30 --- /dev/null +++ b/targets/upload_method_cfg/openocd_cfgs/numicro_m23.cfg @@ -0,0 +1,13 @@ +# OpenOCD config file for Nuvoton NuMicro M4 series + +# Meet the following warning and flash programming gets to take too long +# to finish. Fix it by enlarging work area size. This fix will also get into +# numicroM23.cfg in upcoming NuEclipse OpenOCD release. +# +# Warn : not enough working area available(requested 4096) +# Warn : No large enough working area available, can't do block memory writes +# Warn : couldn't use block writes, falling back to single memory accesses +set WORKAREASIZE 0x8000 + +source [find interface/nulink.cfg] +source [find target/numicroM23.cfg] diff --git a/targets/upload_method_cfg/openocd_cfgs/numicro_m4.cfg b/targets/upload_method_cfg/openocd_cfgs/numicro_m4.cfg new file mode 100644 index 000000000000..6bbc7e61e28f --- /dev/null +++ b/targets/upload_method_cfg/openocd_cfgs/numicro_m4.cfg @@ -0,0 +1,4 @@ +# OpenOCD config file for Nuvoton NuMicro M4 series + +source [find interface/nulink.cfg] +source [find target/numicroM4.cfg]