summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhathach <[email protected]>2018-11-22 00:25:03 +0700
committerhathach <[email protected]>2018-11-22 00:25:03 +0700
commit1a91b5a62e514908d32d983431b0e2f2df9d12d3 (patch)
treee77dc0940ecdea6cecf72afbf8e38aa6bce46d7d
parent97f73eed5f7f5bd8810f4be8424ca12e05178cd8 (diff)
refractor device composite example
-rw-r--r--examples/device/device_composite/ses/device_composite.emProject292
-rw-r--r--examples/device/device_composite/ses/ses_nrf5x/nrf5x.emProject123
-rw-r--r--examples/device_composite/ses/device_composite.emSession95
-rw-r--r--examples/device_composite/ses/nrf5x/flash_placement.xml (renamed from examples/device/device_composite/ses/ses_nrf5x/flash_placement.xml)0
-rw-r--r--examples/device_composite/ses/nrf5x/nRF52840_xxAA_MemoryMap.xml (renamed from examples/device/device_composite/ses/ses_nrf5x/nRF52840_xxAA_MemoryMap.xml)0
-rw-r--r--examples/device_composite/ses/nrf5x/nRF_Target.js (renamed from examples/device/device_composite/ses/ses_nrf5x/nRF_Target.js)0
-rw-r--r--examples/device_composite/ses/nrf5x/nrf52840_Registers.xml (renamed from examples/device/device_composite/ses/ses_nrf5x/nrf52840_Registers.xml)0
-rw-r--r--examples/device_composite/ses/nrf5x/nrf5x.emProject109
-rw-r--r--examples/device_composite/ses/nrf5x/thumb_crt0.s (renamed from examples/device/device_composite/ses/ses_nrf5x/thumb_crt0.s)0
-rw-r--r--examples/device_composite/ses/samd21/ATSAMD21G18A_MemoryMap.xml (renamed from examples/device/device_composite/ses/ses_samd21/ATSAMD21G18A_MemoryMap.xml)0
-rw-r--r--examples/device_composite/ses/samd21/ATSAMD21G18A_Registers.xml (renamed from examples/device/device_composite/ses/ses_samd21/ATSAMD21G18A_Registers.xml)0
-rw-r--r--examples/device_composite/ses/samd21/ATSAMD21G18A_Vectors.s (renamed from examples/device/device_composite/ses/ses_samd21/ATSAMD21G18A_Vectors.s)0
-rw-r--r--examples/device_composite/ses/samd21/SAMD21_Startup.s (renamed from examples/device/device_composite/ses/ses_samd21/SAMD21_Startup.s)0
-rw-r--r--examples/device_composite/ses/samd21/SAMD21_Target.js (renamed from examples/device/device_composite/ses/ses_samd21/SAMD21_Target.js)0
-rw-r--r--examples/device_composite/ses/samd21/flash_placement.xml (renamed from examples/device/device_composite/ses/ses_samd21/flash_placement.xml)0
-rw-r--r--examples/device_composite/ses/samd21/samd21.emProject103
-rw-r--r--examples/device_composite/ses/samd21/thumb_crt0.s (renamed from examples/device/device_composite/ses/ses_samd21/thumb_crt0.s)0
-rw-r--r--examples/device_composite/ses/samd51/ATSAMD51J19A_MemoryMap.xml (renamed from examples/device/device_composite/ses/ses_samd51/ATSAMD51J19A_MemoryMap.xml)0
-rw-r--r--examples/device_composite/ses/samd51/ATSAMD51J19A_Registers.xml (renamed from examples/device/device_composite/ses/ses_samd51/ATSAMD51J19A_Registers.xml)0
-rw-r--r--examples/device_composite/ses/samd51/ATSAMD51J19A_Vectors.s (renamed from examples/device/device_composite/ses/ses_samd51/ATSAMD51J19A_Vectors.s)0
-rw-r--r--examples/device_composite/ses/samd51/SAMD51_Startup.s (renamed from examples/device/device_composite/ses/ses_samd51/SAMD51_Startup.s)0
-rw-r--r--examples/device_composite/ses/samd51/SAMD51_Target.js (renamed from examples/device/device_composite/ses/ses_samd51/SAMD51_Target.js)0
-rw-r--r--examples/device_composite/ses/samd51/flash_placement.xml (renamed from examples/device/device_composite/ses/ses_samd51/flash_placement.xml)0
-rw-r--r--examples/device_composite/ses/samd51/samd51.emProject107
-rw-r--r--examples/device_composite/ses/samd51/thumb_crt0.s (renamed from examples/device/device_composite/ses/ses_samd51/thumb_crt0.s)0
-rw-r--r--examples/device_composite/src/main.c (renamed from examples/device/device_composite/src/main.c)0
-rw-r--r--examples/device_composite/src/msc_app.c (renamed from examples/device/device_composite/src/msc_app.c)0
-rw-r--r--examples/device_composite/src/msc_app.h (renamed from examples/device/device_composite/src/msc_app.h)0
-rw-r--r--examples/device_composite/src/msc_flash_qspi.c (renamed from examples/device/device_composite/src/msc_flash_qspi.c)0
-rw-r--r--examples/device_composite/src/msc_flash_ram.c (renamed from examples/device/device_composite/src/msc_flash_ram.c)0
-rw-r--r--examples/device_composite/src/tusb_config.h (renamed from examples/device/device_composite/src/tusb_config.h)0
-rw-r--r--examples/device_composite/src/tusb_descriptors.c (renamed from examples/device/device_composite/src/tusb_descriptors.c)0
-rw-r--r--lib/segger_rtt/SEGGER_RTT.c (renamed from examples/device/device_composite/src/segger_rtt/SEGGER_RTT.c)0
-rw-r--r--lib/segger_rtt/SEGGER_RTT.h (renamed from examples/device/device_composite/src/segger_rtt/SEGGER_RTT.h)0
-rw-r--r--lib/segger_rtt/SEGGER_RTT_Conf.h (renamed from examples/device/device_composite/src/segger_rtt/SEGGER_RTT_Conf.h)0
-rw-r--r--lib/segger_rtt/SEGGER_RTT_SES.c (renamed from examples/device/device_composite/src/segger_rtt/SEGGER_RTT_SES.c)0
36 files changed, 414 insertions, 415 deletions
diff --git a/examples/device/device_composite/ses/device_composite.emProject b/examples/device/device_composite/ses/device_composite.emProject
deleted file mode 100644
index f8168b7d3..000000000
--- a/examples/device/device_composite/ses/device_composite.emProject
+++ /dev/null
@@ -1,292 +0,0 @@
-<!DOCTYPE CrossStudio_Project_File>
-<solution Name="device_composite" target="8" version="2">
- <project Name="Nordic nRF5x">
- <configuration
- Name="Common"
- Placement="Flash"
- Target="nRF52840_xxAA"
- arm_architecture="v7EM"
- arm_core_type="Cortex-M4"
- arm_endian="Little"
- arm_fp_abi="Hard"
- arm_fpu_type="FPv4-SP-D16"
- arm_interwork="No"
- arm_linker_heap_size="1024"
- arm_linker_process_stack_size="0"
- arm_linker_stack_size="1024"
- arm_simulator_memory_simulation_parameter="ROM;0x00000000;0x00100000;RAM;0x20000000;0x00040000"
- arm_target_debug_interface_type="ADIv5"
- arm_target_device_name="nRF52840_xxAA"
- arm_target_interface_type="SWD"
- build_treat_warnings_as_errors="Yes"
- c_preprocessor_definitions="NRF52840_XXAA;__nRF_FAMILY;ARM_MATH_CM4;FLASH_PLACEMENT=1;BOARD_PCA10056;CFG_TUSB_MCU=OPT_MCU_NRF5X"
- c_user_include_directories="../src;$(rootDir)/hw/cmsis/Include;$(rootDir)/hw;$(rootDir)/src;$(nrfxDir)/..;$(nrfxDir);$(nrfxDir)/mdk;$(nrfxDir)/hal;$(nrfxDir)/drivers/include"
- debug_register_definition_file="ses_nrf5x/nrf52840_Registers.xml"
- debug_target_connection="J-Link"
- gcc_entry_point="Reset_Handler"
- link_use_linker_script_file="No"
- linker_memory_map_file="ses_nrf5x/nRF52840_xxAA_MemoryMap.xml"
- linker_section_placement_file="ses_nrf5x/flash_placement.xml"
- macros="DeviceFamily=nRF;Target=nRF52840_xxAA;Placement=Flash;rootDir=../../../..;nrfxDir=../../../../hw/mcu/nordic/nrfx"
- project_directory=""
- project_type="Executable"
- target_reset_script="Reset();"
- target_script_file="$(ProjectDir)/ses_nrf5x/nRF_Target.js"
- target_trace_initialize_script="EnableTrace(&quot;$(TraceInterfaceType)&quot;)" />
- <folder
- Name="tinyusb"
- exclude=""
- filter="*.c;*.h"
- path="../../../../src"
- recurse="Yes" />
- <folder Name="hw">
- <folder Name="bsp">
- <folder Name="pca10056">
- <file file_name="../../../../hw/bsp/pca10056/board_pca10056.c" />
- <file file_name="../../../../hw/bsp/pca10056/board_pca10056.h" />
- </folder>
- <file file_name="../../../../hw/bsp/ansi_escape.h" />
- <file file_name="../../../../hw/bsp/board.h" />
- </folder>
- <folder Name="mcu">
- <folder Name="nordic">
- <folder Name="nrfx">
- <folder Name="drivers">
- <folder Name="include">
- <file file_name="../../../../hw/mcu/nordic/nrfx/drivers/include/nrfx_power_clock.h" />
- <file file_name="../../../../hw/mcu/nordic/nrfx/drivers/include/nrfx_power.h" />
- <file file_name="../../../../hw/mcu/nordic/nrfx/drivers/include/nrfx_qspi.h" />
- </folder>
- <folder Name="src">
- <file file_name="../../../../hw/mcu/nordic/nrfx/drivers/src/nrfx_power.c" />
- <file file_name="../../../../hw/mcu/nordic/nrfx/drivers/src/nrfx_qspi.c" />
- </folder>
- </folder>
- <folder Name="hal">
- <file file_name="../../../../hw/mcu/nordic/nrfx/hal/nrf_power.h" />
- <file file_name="../../../../hw/mcu/nordic/nrfx/hal/nrf_qspi.h" />
- <file file_name="../../../../hw/mcu/nordic/nrfx/hal/nrf_usbd.h" />
- </folder>
- <folder Name="mdk">
- <file file_name="../../../../hw/mcu/nordic/nrfx/mdk/nrf51_to_nrf52840.h" />
- <file file_name="../../../../hw/mcu/nordic/nrfx/mdk/nrf52840_bitfields.h" />
- <file file_name="../../../../hw/mcu/nordic/nrfx/mdk/nrf52840.h" />
- <file file_name="../../../../hw/mcu/nordic/nrfx/mdk/nrf52840_peripherals.h" />
- <file file_name="../../../../hw/mcu/nordic/nrfx/mdk/nrf52_to_nrf52840.h" />
- <file file_name="../../../../hw/mcu/nordic/nrfx/mdk/ses_startup_nrf52840.s" />
- <file file_name="../../../../hw/mcu/nordic/nrfx/mdk/ses_startup_nrf_common.s" />
- <file file_name="../../../../hw/mcu/nordic/nrfx/mdk/system_nrf52840.c" />
- <file file_name="../../../../hw/mcu/nordic/nrfx/mdk/system_nrf52840.h" />
- </folder>
- </folder>
- <file file_name="../../../../hw/mcu/nordic/nrfx_config.h" />
- <file file_name="../../../../hw/mcu/nordic/nrfx_glue.h" />
- </folder>
- </folder>
- </folder>
- <configuration Name="Debug" build_treat_warnings_as_errors="Yes" />
- <folder Name="ses_nrf5x">
- <file file_name="ses_nrf5x/flash_placement.xml" />
- <file file_name="ses_nrf5x/nrf52840_Registers.xml" />
- <file file_name="ses_nrf5x/nRF52840_xxAA_MemoryMap.xml" />
- <file file_name="ses_nrf5x/nRF_Target.js" />
- <file file_name="ses_nrf5x/thumb_crt0.s" />
- </folder>
- <folder
- Name="src"
- exclude=""
- filter="*.c;*.h"
- path="../src"
- recurse="Yes" />
- </project>
- <project Name="Microchip SAMD51">
- <configuration
- Name="Common"
- Placement="Flash"
- Target="nRF52840_xxAA"
- arm_architecture="v7EM"
- arm_core_type="Cortex-M4"
- arm_endian="Little"
- arm_fp_abi="Hard"
- arm_fpu_type="FPv4-SP-D16"
- arm_interwork="No"
- arm_linker_heap_size="1024"
- arm_linker_process_stack_size="0"
- arm_linker_stack_size="1024"
- arm_simulator_memory_simulation_parameter="RX 00000000,00080000,FFFFFFFF;RWX 20000000,00030000,CDCDCDCD"
- arm_target_debug_interface_type="ADIv5"
- arm_target_device_name="ATSAMD51J19"
- arm_target_interface_type="SWD"
- build_treat_warnings_as_errors="Yes"
- c_preprocessor_definitions="__SAMD51_FAMILY;__SAMD51J19A__;ARM_MATH_CM4;FLASH_PLACEMENT=1;USE_SIMPLE_ASSERT;BOARD_METRO_M4_EXPRESS;CFG_TUSB_MCU=OPT_MCU_SAMD51"
- c_user_include_directories="../src;$(rootDir)/hw/cmsis/Include;$(rootDir)/hw;$(rootDir)/src;$(asf4Dir);$(asf4Dir)/include;$(asf4Dir)/config;$(asf4Dir)/hri;$(asf4Dir)/hal/include;$(asf4Dir)/hal/utils/include;$(asf4Dir)/hpl/port;$(asf4Dir)/hpl/gclk"
- debug_register_definition_file="ses_samd51/ATSAMD51J19A_Registers.xml"
- debug_target_connection="J-Link"
- gcc_entry_point="Reset_Handler"
- link_use_linker_script_file="No"
- linker_memory_map_file="$(ProjectDir)/ses_samd51/ATSAMD51J19A_MemoryMap.xml"
- linker_section_placement_file="ses_samd51/flash_placement.xml"
- linker_section_placements_segments="FLASH RX 0x00000000 0x00080000;RAM RWX 0x20000000 0x00030000"
- macros="DeviceFamily=SAMD51;Target=ATSAMD51J19A;Placement=Flash;rootDir=../../../..;asf4Dir=../../../../hw/mcu/microchip/samd/asf4/samd51"
- project_directory=""
- project_type="Executable"
- target_reset_script="Reset();"
- target_script_file="$(ProjectDir)/ses_samd51/SAMD51_Target.js"
- target_trace_initialize_script="EnableTrace(&quot;$(TraceInterfaceType)&quot;)" />
- <folder
- Name="tinyusb"
- exclude=""
- filter="*.c;*.h"
- path="../../../../src"
- recurse="Yes" />
- <folder Name="hw">
- <folder Name="bsp">
- <file file_name="../../../../hw/bsp/ansi_escape.h" />
- <file file_name="../../../../hw/bsp/board.h" />
- <folder Name="metro_m4_express">
- <file file_name="../../../../hw/bsp/metro_m4_express/board_metro_m4_express.c" />
- <file file_name="../../../../hw/bsp/metro_m4_express/board_metro_m4_express.h" />
- </folder>
- </folder>
- <folder Name="mcu">
- <folder Name="microchip">
- <folder Name="samd">
- <folder Name="asf4">
- <folder Name="samd51">
- <folder Name="gcc">
- <file file_name="../../../../hw/mcu/microchip/samd/asf4/samd51/gcc/system_samd51.c" />
- </folder>
- <folder Name="hpl">
- <folder Name="core">
- <file file_name="../../../../hw/mcu/microchip/samd/asf4/samd51/hpl/core/hpl_init.c" />
- </folder>
- <folder Name="osc32kctrl">
- <file file_name="../../../../hw/mcu/microchip/samd/asf4/samd51/hpl/osc32kctrl/hpl_osc32kctrl.c" />
- </folder>
- <folder Name="oscctrl">
- <file file_name="../../../../hw/mcu/microchip/samd/asf4/samd51/hpl/oscctrl/hpl_oscctrl.c" />
- </folder>
- <folder Name="mclk">
- <file file_name="../../../../hw/mcu/microchip/samd/asf4/samd51/hpl/mclk/hpl_mclk.c" />
- </folder>
- <folder Name="gclk">
- <file file_name="../../../../hw/mcu/microchip/samd/asf4/samd51/hpl/gclk/hpl_gclk.c" />
- </folder>
- </folder>
- </folder>
- </folder>
- </folder>
- </folder>
- </folder>
- </folder>
- <configuration Name="Debug" build_treat_warnings_as_errors="Yes" />
- <folder Name="ses_samd51">
- <file file_name="ses_samd51/ATSAMD51J19A_MemoryMap.xml" />
- <file file_name="ses_samd51/ATSAMD51J19A_Registers.xml" />
- <file file_name="ses_samd51/ATSAMD51J19A_Vectors.s" />
- <file file_name="ses_samd51/flash_placement.xml" />
- <file file_name="ses_samd51/SAMD51_Startup.s" />
- <file file_name="ses_samd51/SAMD51_Target.js" />
- <file file_name="ses_samd51/thumb_crt0.s" />
- </folder>
- <folder
- Name="src"
- exclude=""
- filter="*.c;*.h"
- path="../src"
- recurse="Yes" />
- </project>
- <project Name="Microchip SAMD21">
- <configuration
- Name="Common"
- Placement="Flash"
- Target="nRF52840_xxAA"
- arm_architecture="v6M"
- arm_core_type="Cortex-M0+"
- arm_endian="Little"
- arm_fpu_type="None"
- arm_interwork="No"
- arm_linker_heap_size="1024"
- arm_linker_process_stack_size="0"
- arm_linker_stack_size="1024"
- arm_simulator_memory_simulation_parameter="RX 00000000,00080000,FFFFFFFF;RWX 20000000,00030000,CDCDCDCD"
- arm_target_debug_interface_type="ADIv5"
- arm_target_device_name="ATSAMD21G18A"
- arm_target_interface_type="SWD"
- build_treat_warnings_as_errors="Yes"
- c_preprocessor_definitions="__SAMD21G18A__;__SAMD21_FAMILY;__SAM_D21_SUBFAMILY;ARM_MATH_CM0PLUS;FLASH_PLACEMENT=1;USE_SIMPLE_ASSERT;CONF_XOSC32K_CONFIG=1;CONF_OSC32K_ENABLE=1;CONF_OSC32K_EN32K=1;CONF_XOSC32K_STARTUP=CONF_XOSC32K_STARTUP_TIME_2000092MCS;CONF_DFLL_ONDEMAND=0;CONF_DFLL_OVERWRITE_CALIBRATION=0;BOARD_METRO_M0_EXPRESS;CFG_TUSB_MCU=OPT_MCU_SAMD21"
- c_user_include_directories="../src;$(rootDir)/hw/cmsis/Include;$(rootDir)/hw;$(rootDir)/src;$(asf4Dir);$(asf4Dir)/include;$(asf4Dir)/config;$(asf4Dir)/hri;$(asf4Dir)/hal/include;$(asf4Dir)/hal/utils/include;$(asf4Dir)/hpl/port;$(asf4Dir)/hpl/gclk;$(asf4Dir)/hpl/pm"
- debug_register_definition_file="ses_samd21/ATSAMD21G18A_Registers.xml"
- debug_target_connection="J-Link"
- gcc_entry_point="Reset_Handler"
- link_use_linker_script_file="No"
- linker_memory_map_file="$(ProjectDir)/ses_samd21/ATSAMD21G18A_MemoryMap.xml"
- linker_section_placement_file="ses_samd21/flash_placement.xml"
- linker_section_placements_segments="FLASH RX 0x00000000 0x00080000;RAM RWX 0x20000000 0x00030000"
- macros="DeviceFamily=SAMD21;Target=ATSAMD21G18A;Placement=Flash;rootDir=../../../..;asf4Dir=../../../../hw/mcu/microchip/samd/asf4/samd21"
- project_directory=""
- project_type="Executable"
- target_reset_script="Reset();"
- target_script_file="$(ProjectDir)/ses_samd21/SAMD21_Target.js"
- target_trace_initialize_script="EnableTrace(&quot;$(TraceInterfaceType)&quot;)" />
- <folder
- Name="tinyusb"
- exclude=""
- filter="*.c;*.h"
- path="../../../../src"
- recurse="Yes" />
- <folder Name="hw">
- <folder Name="bsp">
- <file file_name="../../../../hw/bsp/ansi_escape.h" />
- <file file_name="../../../../hw/bsp/board.h" />
- <folder Name="metro_m0_express">
- <file file_name="../../../../hw/bsp/metro_m0_express/board_metro_m0_express.c" />
- <file file_name="../../../../hw/bsp/metro_m0_express/board_metro_m0_express.h" />
- </folder>
- </folder>
- <folder Name="mcu">
- <folder Name="microchip">
- <folder Name="samd">
- <folder Name="asf4">
- <folder Name="samd21">
- <folder Name="gcc">
- <file file_name="../../../../hw/mcu/microchip/samd/asf4/samd21/gcc/system_samd21.c" />
- </folder>
- <folder Name="hpl">
- <folder Name="core">
- <file file_name="../../../../hw/mcu/microchip/samd/asf4/samd21/hpl/core/hpl_init.c" />
- </folder>
- <folder Name="gclk">
- <file file_name="../../../../hw/mcu/microchip/samd/asf4/samd21/hpl/gclk/hpl_gclk.c" />
- </folder>
- <folder Name="pm">
- <file file_name="../../../../hw/mcu/microchip/samd/asf4/samd21/hpl/pm/hpl_pm.c" />
- </folder>
- <folder Name="sysctrl">
- <file file_name="../../../../hw/mcu/microchip/samd/asf4/samd21/hpl/sysctrl/hpl_sysctrl.c" />
- </folder>
- </folder>
- </folder>
- </folder>
- </folder>
- </folder>
- </folder>
- </folder>
- <configuration Name="Debug" build_treat_warnings_as_errors="Yes" />
- <folder
- Name="src"
- exclude=""
- filter="*.c;*.h"
- path="../src"
- recurse="Yes" />
- <folder Name="ses_samd21">
- <file file_name="ses_samd21/ATSAMD21G18A_MemoryMap.xml" />
- <file file_name="ses_samd21/ATSAMD21G18A_Registers.xml" />
- <file file_name="ses_samd21/ATSAMD21G18A_Vectors.s" />
- <file file_name="ses_samd21/flash_placement.xml" />
- <file file_name="ses_samd21/SAMD21_Startup.s" />
- <file file_name="ses_samd21/SAMD21_Target.js" />
- <file file_name="ses_samd21/thumb_crt0.s" />
- </folder>
- </project>
-</solution>
diff --git a/examples/device/device_composite/ses/ses_nrf5x/nrf5x.emProject b/examples/device/device_composite/ses/ses_nrf5x/nrf5x.emProject
deleted file mode 100644
index 377ae4347..000000000
--- a/examples/device/device_composite/ses/ses_nrf5x/nrf5x.emProject
+++ /dev/null
@@ -1,123 +0,0 @@
-<!DOCTYPE CrossStudio_Project_File>
-<solution Name="nrf5x" target="8" version="2">
- <project Name="nrf5x">
- <configuration
- Name="Common"
- Placement="Flash"
- Target="nRF52840_xxAA"
- arm_architecture="v7EM"
- arm_core_type="Cortex-M4"
- arm_endian="Little"
- arm_fp_abi="Hard"
- arm_fpu_type="FPv4-SP-D16"
- arm_interwork="No"
- arm_linker_heap_size="1024"
- arm_linker_process_stack_size="0"
- arm_linker_stack_size="1024"
- arm_simulator_memory_simulation_parameter="ROM;0x00000000;0x00100000;RAM;0x20000000;0x00040000"
- arm_target_debug_interface_type="ADIv5"
- arm_target_device_name="nRF52840_xxAA"
- arm_target_interface_type="SWD"
- build_treat_warnings_as_errors="Yes"
- c_preprocessor_definitions="NRF52840_XXAA;__nRF_FAMILY;ARM_MATH_CM4;FLASH_PLACEMENT=1;BOARD_PCA10056"
- c_user_include_directories="../../src;$(rootDir)/hw/cmsis/Include;$(rootDir)/hw;$(rootDir)/src;$(nrfxDir)/..;$(nrfxDir);$(nrfxDir)/mdk;$(nrfxDir)/hal;$(nrfxDir)/drivers/include"
- debug_register_definition_file="$(ProjectDir)/nrf52840_Registers.xml"
- debug_target_connection="J-Link"
- gcc_entry_point="Reset_Handler"
- linker_memory_map_file="$(ProjectDir)/nRF52840_xxAA_MemoryMap.xml"
- linker_section_placement_file="$(ProjectDir)/flash_placement.xml"
- macros="DeviceHeaderFile=$(PackagesDir)/nRF/CMSIS/Device/Include/nrf.h;DeviceLibraryIdentifier=M4lf;DeviceSystemFile=$(PackagesDir)/nRF/CMSIS/Device/Source/system_nrf52840.c;DeviceVectorsFile=$(PackagesDir)/nRF/Source/ses_nrf52840_Vectors.s;DeviceFamily=nRF;Target=nRF52840_xxAA;Placement=Flash;rootDir=../../../../..;nrfxDir=../../../../../hw/mcu/nordic/nrfx"
- project_directory=""
- project_type="Executable"
- target_reset_script="Reset();"
- target_script_file="$(ProjectDir)/nRF_Target.js"
- target_trace_initialize_script="EnableTrace(&quot;$(TraceInterfaceType)&quot;)" />
- <folder Name="Script Files">
- <file file_name="nRF_Target.js">
- <configuration Name="Common" file_type="Reset Script" />
- </file>
- </folder>
- <folder Name="System Files">
- <file file_name="thumb_crt0.s" />
- </folder>
- <folder
- Name="tinyusb"
- exclude=""
- filter="*.c;*.h"
- path="../../../../../src"
- recurse="Yes" />
- <folder Name="src">
- <file file_name="../../src/main.c" />
- <file file_name="../../src/tusb_config.h" />
- <file file_name="../../src/tusb_descriptors.c" />
- <file file_name="../../src/tusb_descriptors.h" />
- <file file_name="../../src/msc_app.c" />
- <file file_name="../../src/msc_app.h" />
- <file file_name="../../src/msc_flash_ram.c" />
- <file file_name="../../src/msc_flash_qspi.c" />
- <folder Name="segger_rtt">
- <file file_name="../../src/segger_rtt/SEGGER_RTT.c" />
- <file file_name="../../src/segger_rtt/SEGGER_RTT_Conf.h" />
- <file file_name="../../src/segger_rtt/SEGGER_RTT.h" />
- <file file_name="../../src/segger_rtt/SEGGER_RTT_SES.c" />
- </folder>
- </folder>
- <folder Name="hw">
- <folder Name="bsp">
- <folder Name="pca10056">
- <file file_name="../../../../../hw/bsp/pca10056/board_pca10056.c" />
- <file file_name="../../../../../hw/bsp/pca10056/board_pca10056.h" />
- </folder>
- <file file_name="../../../../../hw/bsp/ansi_escape.h" />
- <file file_name="../../../../../hw/bsp/board.h" />
- </folder>
- <folder Name="mcu">
- <folder Name="nordic">
- <folder Name="nrfx">
- <folder Name="drivers">
- <folder Name="include">
- <file file_name="../../../../../hw/mcu/nordic/nrfx/drivers/include/nrfx_power_clock.h" />
- <file file_name="../../../../../hw/mcu/nordic/nrfx/drivers/include/nrfx_power.h" />
- <file file_name="../../../../../hw/mcu/nordic/nrfx/drivers/include/nrfx_qspi.h" />
- </folder>
- <folder Name="src">
- <file file_name="../../../../../hw/mcu/nordic/nrfx/drivers/src/nrfx_power.c" />
- <file file_name="../../../../../hw/mcu/nordic/nrfx/drivers/src/nrfx_qspi.c" />
- </folder>
- </folder>
- <folder Name="hal">
- <file file_name="../../../../../hw/mcu/nordic/nrfx/hal/nrf_power.h" />
- <file file_name="../../../../../hw/mcu/nordic/nrfx/hal/nrf_qspi.h" />
- <file file_name="../../../../../hw/mcu/nordic/nrfx/hal/nrf_usbd.h" />
- </folder>
- <folder Name="mdk">
- <file file_name="../../../../../hw/mcu/nordic/nrfx/mdk/nrf51_to_nrf52840.h" />
- <file file_name="../../../../../hw/mcu/nordic/nrfx/mdk/nrf52840_bitfields.h" />
- <file file_name="../../../../../hw/mcu/nordic/nrfx/mdk/nrf52840.h" />
- <file file_name="../../../../../hw/mcu/nordic/nrfx/mdk/nrf52840_peripherals.h" />
- <file file_name="../../../../../hw/mcu/nordic/nrfx/mdk/nrf52_to_nrf52840.h" />
- <file file_name="../../../../../hw/mcu/nordic/nrfx/mdk/ses_startup_nrf52840.s" />
- <file file_name="../../../../../hw/mcu/nordic/nrfx/mdk/ses_startup_nrf_common.s" />
- <file file_name="../../../../../hw/mcu/nordic/nrfx/mdk/system_nrf52840.c" />
- <file file_name="../../../../../hw/mcu/nordic/nrfx/mdk/system_nrf52840.h" />
- </folder>
- </folder>
- <file file_name="../../../../../hw/mcu/nordic/nrfx_config.h" />
- <file file_name="../../../../../hw/mcu/nordic/nrfx_glue.h" />
- </folder>
- </folder>
- </folder>
- <configuration Name="Debug" build_treat_warnings_as_errors="Yes" />
- </project>
- <configuration
- Name="Debug"
- c_preprocessor_definitions="DEBUG"
- gcc_debugging_level="Level 3"
- gcc_optimization_level="None" />
- <configuration
- Name="Release"
- c_preprocessor_definitions="NDEBUG"
- gcc_debugging_level="None"
- gcc_omit_frame_pointer="Yes"
- gcc_optimization_level="Level 1" />
-</solution>
diff --git a/examples/device_composite/ses/device_composite.emSession b/examples/device_composite/ses/device_composite.emSession
new file mode 100644
index 000000000..86dfea211
--- /dev/null
+++ b/examples/device_composite/ses/device_composite.emSession
@@ -0,0 +1,95 @@
+<!DOCTYPE CrossStudio_Session_File>
+<session>
+ <Bookmarks/>
+ <Breakpoints groups="Breakpoints" active_group="Breakpoints"/>
+ <ExecutionProfileWindow/>
+ <FrameBufferWindow>
+ <FrameBufferWindow bufferHeight="-1" addressSpace="" addressText="" bufferWidth="-1"/>
+ </FrameBufferWindow>
+ <Memory1>
+ <MemoryWindow addressSpace="" dataSize="1" autoEvaluate="0" viewMode="0" addressOrder="0" columnsText="" refreshPeriod="0" name="Hello World" radix="16" sizeText="" addressText=""/>
+ <MemoryWindow addressSpace="" dataSize="1" autoEvaluate="0" viewMode="0" addressOrder="0" columnsText="" refreshPeriod="0" name="Nordic nrf5x" radix="16" sizeText="" addressText=""/>
+ <MemoryWindow addressSpace="" dataSize="1" autoEvaluate="0" viewMode="0" addressOrder="0" columnsText="" refreshPeriod="0" name="Microchip samd51" radix="16" sizeText="" addressText=""/>
+ <MemoryWindow addressSpace="" dataSize="1" autoEvaluate="0" viewMode="0" addressOrder="0" columnsText="" refreshPeriod="0" name="Microchip SAMD21" radix="16" sizeText="" addressText=""/>
+ </Memory1>
+ <Memory2>
+ <MemoryWindow addressSpace="" dataSize="1" autoEvaluate="0" viewMode="0" addressOrder="0" columnsText="" refreshPeriod="0" name="Hello World" radix="16" sizeText="" addressText=""/>
+ <MemoryWindow addressSpace="" dataSize="1" autoEvaluate="0" viewMode="0" addressOrder="0" columnsText="" refreshPeriod="0" name="Nordic nrf5x" radix="16" sizeText="" addressText=""/>
+ <MemoryWindow addressSpace="" dataSize="1" autoEvaluate="0" viewMode="0" addressOrder="0" columnsText="" refreshPeriod="0" name="Microchip samd51" radix="16" sizeText="" addressText=""/>
+ <MemoryWindow addressSpace="" dataSize="1" autoEvaluate="0" viewMode="0" addressOrder="0" columnsText="" refreshPeriod="0" name="Microchip SAMD21" radix="16" sizeText="" addressText=""/>
+ </Memory2>
+ <Memory3>
+ <MemoryWindow addressSpace="" dataSize="1" autoEvaluate="0" viewMode="0" addressOrder="0" columnsText="" refreshPeriod="0" name="Hello World" radix="16" sizeText="" addressText=""/>
+ <MemoryWindow addressSpace="" dataSize="1" autoEvaluate="0" viewMode="0" addressOrder="0" columnsText="" refreshPeriod="0" name="Nordic nrf5x" radix="16" sizeText="" addressText=""/>
+ <MemoryWindow addressSpace="" dataSize="1" autoEvaluate="0" viewMode="0" addressOrder="0" columnsText="" refreshPeriod="0" name="Microchip samd51" radix="16" sizeText="" addressText=""/>
+ <MemoryWindow addressSpace="" dataSize="1" autoEvaluate="0" viewMode="0" addressOrder="0" columnsText="" refreshPeriod="0" name="Microchip SAMD21" radix="16" sizeText="" addressText=""/>
+ </Memory3>
+ <Memory4>
+ <MemoryWindow addressSpace="" dataSize="1" autoEvaluate="0" viewMode="0" addressOrder="0" columnsText="" refreshPeriod="0" name="Hello World" radix="16" sizeText="" addressText=""/>
+ <MemoryWindow addressSpace="" dataSize="1" autoEvaluate="0" viewMode="0" addressOrder="0" columnsText="" refreshPeriod="0" name="Nordic nrf5x" radix="16" sizeText="" addressText=""/>
+ <MemoryWindow addressSpace="" dataSize="1" autoEvaluate="0" viewMode="0" addressOrder="0" columnsText="" refreshPeriod="0" name="Microchip samd51" radix="16" sizeText="" addressText=""/>
+ <MemoryWindow addressSpace="" dataSize="1" autoEvaluate="0" viewMode="0" addressOrder="0" columnsText="" refreshPeriod="0" name="Microchip SAMD21" radix="16" sizeText="" addressText=""/>
+ </Memory4>
+ <Project>
+ <ProjectSessionItem path="device_composite"/>
+ <ProjectSessionItem path="device_composite;nrf5x"/>
+ <ProjectSessionItem path="device_composite;nrf5x;nrf5x"/>
+ <ProjectSessionItem path="device_composite;samd21"/>
+ <ProjectSessionItem path="device_composite;samd21;samd21"/>
+ <ProjectSessionItem path="device_composite;samd51"/>
+ <ProjectSessionItem path="device_composite;samd51;samd51"/>
+ <ProjectSessionItem path="device_composite;samd51;samd51;hw"/>
+ <ProjectSessionItem path="device_composite;samd51;samd51;src"/>
+ </Project>
+ <Register1>
+ <RegisterWindow visibleNodes="CPU - Current Context/r0;CPU - Current Context/r1;CPU - Current Context/r2;CPU - Current Context/r3;CPU - Current Context/r4;CPU - Current Context/r5;CPU - Current Context/r6;CPU - Current Context/r7;CPU - Current Context/r8;CPU - Current Context/r9;CPU - Current Context/r10;CPU - Current Context/r11;CPU - Current Context/r12;CPU - Current Context/sp(r13);CPU - Current Context/lr(r14);CPU - Current Context/pc(r15);CPU - Current Context/apsr;CPU/r0;CPU/r1;CPU/r2;CPU/r3;CPU/r4;CPU/r5;CPU/r6;CPU/r7;CPU/r8;CPU/r9;CPU/r10;CPU/r11;CPU/r12;CPU/sp(r13);CPU/lr(r14);CPU/pc(r15);CPU/xpsr;CPU/msp;CPU/psp;CPU/cfbp" binaryNodes="" asciiNodes="" openNodes="CPU - Current Context" name="Hello World" decimalNodes="" octalNodes="" unsignedNodes=""/>
+ <RegisterWindow visibleNodes="USBD/TASKS_STARTEPIN[0];USBD/TASKS_STARTEPIN[1];USBD/TASKS_STARTEPIN[2];USBD/TASKS_STARTEPIN[3];USBD/TASKS_STARTEPIN[4];USBD/TASKS_STARTEPIN[5];USBD/TASKS_STARTEPIN[6];USBD/TASKS_STARTEPIN[7];USBD/TASKS_STARTISOIN;USBD/TASKS_STARTEPOUT[0];USBD/TASKS_STARTEPOUT[1];USBD/TASKS_STARTEPOUT[2];USBD/TASKS_STARTEPOUT[3];USBD/TASKS_STARTEPOUT[4];USBD/TASKS_STARTEPOUT[5];USBD/TASKS_STARTEPOUT[6];USBD/TASKS_STARTEPOUT[7];USBD/TASKS_STARTISOOUT;USBD/TASKS_EP0RCVOUT;USBD/TASKS_EP0STATUS;USBD/TASKS_EP0STALL;USBD/TASKS_DPDMDRIVE;USBD/TASKS_DPDMNODRIVE;USBD/EVENTS_USBRESET;USBD/EVENTS_STARTED;USBD/EVENTS_ENDEPIN[0];USBD/EVENTS_ENDEPIN[1];USBD/EVENTS_ENDEPIN[2];USBD/EVENTS_ENDEPIN[3];USBD/EVENTS_ENDEPIN[4];USBD/EVENTS_ENDEPIN[5];USBD/EVENTS_ENDEPIN[6];USBD/EVENTS_ENDEPIN[7];USBD/EVENTS_EP0DATADONE;USBD/EVENTS_ENDISOIN;USBD/EVENTS_ENDEPOUT[0];USBD/EVENTS_ENDEPOUT[1];USBD/EVENTS_ENDEPOUT[2];USBD/EVENTS_ENDEPOUT[3];USBD/EVENTS_ENDEPOUT[4];USBD/EVENTS_ENDEPOUT[5];USBD/EVENTS_ENDEPOUT[6];USBD/EVENTS_ENDEPOUT[7];USBD/EVENTS_ENDISOOUT;USBD/EVENTS_SOF;USBD/EVENTS_USBEVENT;USBD/EVENTS_EP0SETUP;USBD/EVENTS_EPDATA;USBD/EVENTS_ACCESSFAULT;USBD/SHORTS;USBD/INTEN;USBD/INTENSET;USBD/INTENCLR;USBD/EVENTCAUSE;USBD/BUSSTATE;USBD/EPSTATUS;USBD/EPDATASTATUS;USBD/USBADDR;USBD/BMREQUESTTYPE;USBD/BREQUEST;USBD/WVALUEL;USBD/WVALUEH;USBD/WINDEXL;USBD/WINDEXH;USBD/WLENGTHL;USBD/WLENGTHH;USBD/ENABLE;USBD/USBPULLUP;USBD/DPDMVALUE;USBD/DTOGGLE;USBD/EPINEN;USBD/EPOUTEN;USBD/EPSTALL;USBD/ISOSPLIT;USBD/FRAMECNTR;USBD/LOWPOWER;USBD/ISOINCONFIG;USBD/HALTED.EPIN[0];USBD/HALTED.EPIN[1];USBD/HALTED.EPIN[2];USBD/HALTED.EPIN[3];USBD/HALTED.EPIN[4];USBD/HALTED.EPIN[5];USBD/HALTED.EPIN[6];USBD/HALTED.EPIN[7];USBD/HALTED.EPOUT[0];USBD/HALTED.EPOUT[1];USBD/HALTED.EPOUT[2];USBD/HALTED.EPOUT[3];USBD/HALTED.EPOUT[4];USBD/HALTED.EPOUT[5];USBD/HALTED.EPOUT[6];USBD/HALTED.EPOUT[7];USBD/SIZE.EPOUT[0];USBD/SIZE.EPOUT[1];USBD/SIZE.EPOUT[2];USBD/SIZE.EPOUT[3];USBD/SIZE.EPOUT[4];USBD/SIZE.EPOUT[5];USBD/SIZE.EPOUT[6];USBD/SIZE.EPOUT[7];USBD/SIZE.ISOOUT;USBD/EPIN[0].PTR;USBD/EPIN[0].MAXCNT;USBD/EPIN[0].AMOUNT;USBD/EPIN[1].PTR;USBD/EPIN[1].MAXCNT;USBD/EPIN[1].AMOUNT;USBD/EPIN[2].PTR;USBD/EPIN[2].MAXCNT;USBD/EPIN[2].AMOUNT;USBD/EPIN[3].PTR;USBD/EPIN[3].MAXCNT;USBD/EPIN[3].AMOUNT;USBD/EPIN[4].PTR;USBD/EPIN[4].MAXCNT;USBD/EPIN[4].AMOUNT;USBD/EPIN[5].PTR;USBD/EPIN[5].MAXCNT;USBD/EPIN[5].AMOUNT;USBD/EPIN[6].PTR;USBD/EPIN[6].MAXCNT;USBD/EPIN[6].AMOUNT;USBD/EPIN[7].PTR;USBD/EPIN[7].MAXCNT;USBD/EPIN[7].AMOUNT;USBD/ISOIN.PTR;USBD/ISOIN.MAXCNT;USBD/ISOIN.AMOUNT;USBD/EPOUT[0].PTR;USBD/EPOUT[0].MAXCNT;USBD/EPOUT[0].AMOUNT;USBD/EPOUT[1].PTR;USBD/EPOUT[1].MAXCNT;USBD/EPOUT[1].AMOUNT;USBD/EPOUT[2].PTR;USBD/EPOUT[2].MAXCNT;USBD/EPOUT[2].AMOUNT;USBD/EPOUT[3].PTR;USBD/EPOUT[3].MAXCNT;USBD/EPOUT[3].AMOUNT;USBD/EPOUT[4].PTR;USBD/EPOUT[4].MAXCNT;USBD/EPOUT[4].AMOUNT;USBD/EPOUT[5].PTR;USBD/EPOUT[5].MAXCNT;USBD/EPOUT[5].AMOUNT;USBD/EPOUT[6].PTR;USBD/EPOUT[6].MAXCNT;USBD/EPOUT[6].AMOUNT;USBD/EPOUT[7].PTR;USBD/EPOUT[7].MAXCNT;USBD/EPOUT[7].AMOUNT;USBD/ISOOUT.PTR;USBD/ISOOUT.MAXCNT;USBD/ISOOUT.AMOUNT" binaryNodes="" asciiNodes="" openNodes="USBD;USBD/EPSTATUS;USBD/BMREQUESTTYPE" name="Nordic nrf5x" decimalNodes="" octalNodes="" unsignedNodes=""/>
+ <RegisterWindow visibleNodes="USB (DEVICE)/USB_CTRLA;USB (DEVICE)/USB_SYNCBUSY;USB (DEVICE)/USB_QOSCTRL;USB (DEVICE)/USB_CTRLB;USB (DEVICE)/USB_DADD;USB (DEVICE)/USB_STATUS;USB (DEVICE)/USB_FSMSTATUS;USB (DEVICE)/USB_FNUM;USB (DEVICE)/USB_INTENCLR;USB (DEVICE)/USB_INTENSET;USB (DEVICE)/USB_INTFLAG;USB (DEVICE)/USB_EPINTSMRY;USB (DEVICE)/USB_DESCADD;USB (DEVICE)/USB_PADCAL;USB (DEVICE)/USB_EPCFG0;USB (DEVICE)/USB_EPCFG1;USB (DEVICE)/USB_EPCFG2;USB (DEVICE)/USB_EPCFG3;USB (DEVICE)/USB_EPCFG4;USB (DEVICE)/USB_EPCFG5;USB (DEVICE)/USB_EPCFG6;USB (DEVICE)/USB_EPCFG7;USB (DEVICE)/USB_EPSTATUSCLR0;USB (DEVICE)/USB_EPSTATUSCLR1;USB (DEVICE)/USB_EPSTATUSCLR2;USB (DEVICE)/USB_EPSTATUSCLR3;USB (DEVICE)/USB_EPSTATUSCLR4;USB (DEVICE)/USB_EPSTATUSCLR5;USB (DEVICE)/USB_EPSTATUSCLR6;USB (DEVICE)/USB_EPSTATUSCLR7;USB (DEVICE)/USB_EPSTATUSSET0;USB (DEVICE)/USB_EPSTATUSSET1;USB (DEVICE)/USB_EPSTATUSSET2;USB (DEVICE)/USB_EPSTATUSSET3;USB (DEVICE)/USB_EPSTATUSSET4;USB (DEVICE)/USB_EPSTATUSSET5;USB (DEVICE)/USB_EPSTATUSSET6;USB (DEVICE)/USB_EPSTATUSSET7;USB (DEVICE)/USB_EPSTATUS0;USB (DEVICE)/USB_EPSTATUS1;USB (DEVICE)/USB_EPSTATUS2;USB (DEVICE)/USB_EPSTATUS3;USB (DEVICE)/USB_EPSTATUS4;USB (DEVICE)/USB_EPSTATUS5;USB (DEVICE)/USB_EPSTATUS6;USB (DEVICE)/USB_EPSTATUS7;USB (DEVICE)/USB_EPINTFLAG0;USB (DEVICE)/USB_EPINTFLAG1;USB (DEVICE)/USB_EPINTFLAG2;USB (DEVICE)/USB_EPINTFLAG3;USB (DEVICE)/USB_EPINTFLAG4;USB (DEVICE)/USB_EPINTFLAG5;USB (DEVICE)/USB_EPINTFLAG6;USB (DEVICE)/USB_EPINTFLAG7;USB (DEVICE)/USB_EPINTENCLR0;USB (DEVICE)/USB_EPINTENCLR1;USB (DEVICE)/USB_EPINTENCLR2;USB (DEVICE)/USB_EPINTENCLR3;USB (DEVICE)/USB_EPINTENCLR4;USB (DEVICE)/USB_EPINTENCLR5;USB (DEVICE)/USB_EPINTENCLR6;USB (DEVICE)/USB_EPINTENCLR7;USB (DEVICE)/USB_EPINTENSET0;USB (DEVICE)/USB_EPINTENSET1;USB (DEVICE)/USB_EPINTENSET2;USB (DEVICE)/USB_EPINTENSET3;USB (DEVICE)/USB_EPINTENSET4;USB (DEVICE)/USB_EPINTENSET5;USB (DEVICE)/USB_EPINTENSET6;USB (DEVICE)/USB_EPINTENSET7" binaryNodes="" asciiNodes="" openNodes="USB (DEVICE);USB (DEVICE)/USB_EPSTATUS0" name="Microchip samd51" decimalNodes="" octalNodes="" unsignedNodes=""/>
+ <RegisterWindow visibleNodes="USB (DEVICE)/USB_CTRLA;USB (DEVICE)/USB_CTRLB;USB (DEVICE)/USB_DADD;USB (DEVICE)/USB_DESCADD;USB (DEVICE)/USB_EPCFG0;USB (DEVICE)/USB_EPCFG1;USB (DEVICE)/USB_EPCFG2;USB (DEVICE)/USB_EPCFG3;USB (DEVICE)/USB_EPCFG4;USB (DEVICE)/USB_EPCFG5;USB (DEVICE)/USB_EPCFG6;USB (DEVICE)/USB_EPCFG7;USB (DEVICE)/USB_EPINTENCLR0;USB (DEVICE)/USB_EPINTENCLR1;USB (DEVICE)/USB_EPINTENCLR2;USB (DEVICE)/USB_EPINTENCLR3;USB (DEVICE)/USB_EPINTENCLR4;USB (DEVICE)/USB_EPINTENCLR5;USB (DEVICE)/USB_EPINTENCLR6;USB (DEVICE)/USB_EPINTENCLR7;USB (DEVICE)/USB_EPINTENSET0;USB (DEVICE)/USB_EPINTENSET1;USB (DEVICE)/USB_EPINTENSET2;USB (DEVICE)/USB_EPINTENSET3;USB (DEVICE)/USB_EPINTENSET4;USB (DEVICE)/USB_EPINTENSET5;USB (DEVICE)/USB_EPINTENSET6;USB (DEVICE)/USB_EPINTENSET7;USB (DEVICE)/USB_EPINTFLAG0;USB (DEVICE)/USB_EPINTFLAG1;USB (DEVICE)/USB_EPINTFLAG2;USB (DEVICE)/USB_EPINTFLAG3;USB (DEVICE)/USB_EPINTFLAG4;USB (DEVICE)/USB_EPINTFLAG5;USB (DEVICE)/USB_EPINTFLAG6;USB (DEVICE)/USB_EPINTFLAG7;USB (DEVICE)/USB_EPINTSMRY;USB (DEVICE)/USB_EPSTATUS0;USB (DEVICE)/USB_EPSTATUS1;USB (DEVICE)/USB_EPSTATUS2;USB (DEVICE)/USB_EPSTATUS3;USB (DEVICE)/USB_EPSTATUS4;USB (DEVICE)/USB_EPSTATUS5;USB (DEVICE)/USB_EPSTATUS6;USB (DEVICE)/USB_EPSTATUS7;USB (DEVICE)/USB_EPSTATUSCLR0;USB (DEVICE)/USB_EPSTATUSCLR1;USB (DEVICE)/USB_EPSTATUSCLR2;USB (DEVICE)/USB_EPSTATUSCLR3;USB (DEVICE)/USB_EPSTATUSCLR4;USB (DEVICE)/USB_EPSTATUSCLR5;USB (DEVICE)/USB_EPSTATUSCLR6;USB (DEVICE)/USB_EPSTATUSCLR7;USB (DEVICE)/USB_EPSTATUSSET0;USB (DEVICE)/USB_EPSTATUSSET1;USB (DEVICE)/USB_EPSTATUSSET2;USB (DEVICE)/USB_EPSTATUSSET3;USB (DEVICE)/USB_EPSTATUSSET4;USB (DEVICE)/USB_EPSTATUSSET5;USB (DEVICE)/USB_EPSTATUSSET6;USB (DEVICE)/USB_EPSTATUSSET7;USB (DEVICE)/USB_FNUM;USB (DEVICE)/USB_FSMSTATUS;USB (DEVICE)/USB_INTENCLR;USB (DEVICE)/USB_INTENSET;USB (DEVICE)/USB_INTFLAG;USB (DEVICE)/USB_PADCAL;USB (DEVICE)/USB_QOSCTRL;USB (DEVICE)/USB_STATUS;USB (DEVICE)/USB_SYNCBUSY" binaryNodes="" asciiNodes="" openNodes="USB (DEVICE);USB (DEVICE)/USB_CTRLA;USB (DEVICE)/USB_CTRLB;USB (DEVICE)/USB_DADD;USB (DEVICE)/USB_EPCFG0;USB (DEVICE)/USB_EPINTENCLR0;USB (DEVICE)/USB_EPSTATUS0;USB (DEVICE)/USB_STATUS" name="Microchip SAMD21" decimalNodes="" octalNodes="" unsignedNodes=""/>
+ </Register1>
+ <Register2>
+ <RegisterWindow visibleNodes="CPU - Current Context/r0;CPU - Current Context/r1;CPU - Current Context/r2;CPU - Current Context/r3;CPU - Current Context/r4;CPU - Current Context/r5;CPU - Current Context/r6;CPU - Current Context/r7;CPU - Current Context/r8;CPU - Current Context/r9;CPU - Current Context/r10;CPU - Current Context/r11;CPU - Current Context/r12;CPU - Current Context/sp(r13);CPU - Current Context/lr(r14);CPU - Current Context/pc(r15);CPU - Current Context/apsr;CPU/r0;CPU/r1;CPU/r2;CPU/r3;CPU/r4;CPU/r5;CPU/r6;CPU/r7;CPU/r8;CPU/r9;CPU/r10;CPU/r11;CPU/r12;CPU/sp(r13);CPU/lr(r14);CPU/pc(r15);CPU/xpsr;CPU/msp;CPU/psp;CPU/cfbp" binaryNodes="" asciiNodes="" openNodes="CPU - Current Context" name="Hello World" decimalNodes="" octalNodes="" unsignedNodes=""/>
+ <RegisterWindow visibleNodes="CPU - Current Context/r0;CPU - Current Context/r1;CPU - Current Context/r2;CPU - Current Context/r3;CPU - Current Context/r4;CPU - Current Context/r5;CPU - Current Context/r6;CPU - Current Context/r7;CPU - Current Context/r8;CPU - Current Context/r9;CPU - Current Context/r10;CPU - Current Context/r11;CPU - Current Context/r12;CPU - Current Context/sp(r13);CPU - Current Context/lr(r14);CPU - Current Context/pc(r15);CPU - Current Context/apsr;CPU/r0;CPU/r1;CPU/r2;CPU/r3;CPU/r4;CPU/r5;CPU/r6;CPU/r7;CPU/r8;CPU/r9;CPU/r10;CPU/r11;CPU/r12;CPU/sp(r13);CPU/lr(r14);CPU/pc(r15);CPU/xpsr;CPU/msp;CPU/psp;CPU/cfbp" binaryNodes="" asciiNodes="" openNodes="CPU - Current Context" name="Nordic nrf5x" decimalNodes="" octalNodes="" unsignedNodes=""/>
+ <RegisterWindow visibleNodes="CPU - Current Context/r0;CPU - Current Context/r1;CPU - Current Context/r2;CPU - Current Context/r3;CPU - Current Context/r4;CPU - Current Context/r5;CPU - Current Context/r6;CPU - Current Context/r7;CPU - Current Context/r8;CPU - Current Context/r9;CPU - Current Context/r10;CPU - Current Context/r11;CPU - Current Context/r12;CPU - Current Context/sp(r13);CPU - Current Context/lr(r14);CPU - Current Context/pc(r15);CPU - Current Context/apsr;CPU/r0;CPU/r1;CPU/r2;CPU/r3;CPU/r4;CPU/r5;CPU/r6;CPU/r7;CPU/r8;CPU/r9;CPU/r10;CPU/r11;CPU/r12;CPU/sp(r13);CPU/lr(r14);CPU/pc(r15);CPU/xpsr;CPU/msp;CPU/psp;CPU/cfbp" binaryNodes="" asciiNodes="" openNodes="CPU - Current Context" name="Microchip samd51" decimalNodes="" octalNodes="" unsignedNodes=""/>
+ <RegisterWindow visibleNodes="CPU - Current Context/r0;CPU - Current Context/r1;CPU - Current Context/r2;CPU - Current Context/r3;CPU - Current Context/r4;CPU - Current Context/r5;CPU - Current Context/r6;CPU - Current Context/r7;CPU - Current Context/r8;CPU - Current Context/r9;CPU - Current Context/r10;CPU - Current Context/r11;CPU - Current Context/r12;CPU - Current Context/sp(r13);CPU - Current Context/lr(r14);CPU - Current Context/pc(r15);CPU - Current Context/apsr;CPU/r0;CPU/r1;CPU/r2;CPU/r3;CPU/r4;CPU/r5;CPU/r6;CPU/r7;CPU/r8;CPU/r9;CPU/r10;CPU/r11;CPU/r12;CPU/sp(r13);CPU/lr(r14);CPU/pc(r15);CPU/xpsr;CPU/msp;CPU/psp;CPU/cfbp" binaryNodes="" asciiNodes="" openNodes="CPU - Current Context" name="Microchip SAMD21" decimalNodes="" octalNodes="" unsignedNodes=""/>
+ </Register2>
+ <Register3>
+ <RegisterWindow visibleNodes="CPU - Current Context/r0;CPU - Current Context/r1;CPU - Current Context/r2;CPU - Current Context/r3;CPU - Current Context/r4;CPU - Current Context/r5;CPU - Current Context/r6;CPU - Current Context/r7;CPU - Current Context/r8;CPU - Current Context/r9;CPU - Current Context/r10;CPU - Current Context/r11;CPU - Current Context/r12;CPU - Current Context/sp(r13);CPU - Current Context/lr(r14);CPU - Current Context/pc(r15);CPU - Current Context/apsr;CPU/r0;CPU/r1;CPU/r2;CPU/r3;CPU/r4;CPU/r5;CPU/r6;CPU/r7;CPU/r8;CPU/r9;CPU/r10;CPU/r11;CPU/r12;CPU/sp(r13);CPU/lr(r14);CPU/pc(r15);CPU/xpsr;CPU/msp;CPU/psp;CPU/cfbp" binaryNodes="" asciiNodes="" openNodes="CPU - Current Context" name="Hello World" decimalNodes="" octalNodes="" unsignedNodes=""/>
+ <RegisterWindow visibleNodes="CPU - Current Context/r0;CPU - Current Context/r1;CPU - Current Context/r2;CPU - Current Context/r3;CPU - Current Context/r4;CPU - Current Context/r5;CPU - Current Context/r6;CPU - Current Context/r7;CPU - Current Context/r8;CPU - Current Context/r9;CPU - Current Context/r10;CPU - Current Context/r11;CPU - Current Context/r12;CPU - Current Context/sp(r13);CPU - Current Context/lr(r14);CPU - Current Context/pc(r15);CPU - Current Context/apsr;CPU/r0;CPU/r1;CPU/r2;CPU/r3;CPU/r4;CPU/r5;CPU/r6;CPU/r7;CPU/r8;CPU/r9;CPU/r10;CPU/r11;CPU/r12;CPU/sp(r13);CPU/lr(r14);CPU/pc(r15);CPU/xpsr;CPU/msp;CPU/psp;CPU/cfbp" binaryNodes="" asciiNodes="" openNodes="CPU - Current Context" name="Nordic nrf5x" decimalNodes="" octalNodes="" unsignedNodes=""/>
+ <RegisterWindow visibleNodes="CPU - Current Context/r0;CPU - Current Context/r1;CPU - Current Context/r2;CPU - Current Context/r3;CPU - Current Context/r4;CPU - Current Context/r5;CPU - Current Context/r6;CPU - Current Context/r7;CPU - Current Context/r8;CPU - Current Context/r9;CPU - Current Context/r10;CPU - Current Context/r11;CPU - Current Context/r12;CPU - Current Context/sp(r13);CPU - Current Context/lr(r14);CPU - Current Context/pc(r15);CPU - Current Context/apsr;CPU/r0;CPU/r1;CPU/r2;CPU/r3;CPU/r4;CPU/r5;CPU/r6;CPU/r7;CPU/r8;CPU/r9;CPU/r10;CPU/r11;CPU/r12;CPU/sp(r13);CPU/lr(r14);CPU/pc(r15);CPU/xpsr;CPU/msp;CPU/psp;CPU/cfbp" binaryNodes="" asciiNodes="" openNodes="CPU - Current Context" name="Microchip samd51" decimalNodes="" octalNodes="" unsignedNodes=""/>
+ <RegisterWindow visibleNodes="CPU - Current Context/r0;CPU - Current Context/r1;CPU - Current Context/r2;CPU - Current Context/r3;CPU - Current Context/r4;CPU - Current Context/r5;CPU - Current Context/r6;CPU - Current Context/r7;CPU - Current Context/r8;CPU - Current Context/r9;CPU - Current Context/r10;CPU - Current Context/r11;CPU - Current Context/r12;CPU - Current Context/sp(r13);CPU - Current Context/lr(r14);CPU - Current Context/pc(r15);CPU - Current Context/apsr;CPU/r0;CPU/r1;CPU/r2;CPU/r3;CPU/r4;CPU/r5;CPU/r6;CPU/r7;CPU/r8;CPU/r9;CPU/r10;CPU/r11;CPU/r12;CPU/sp(r13);CPU/lr(r14);CPU/pc(r15);CPU/xpsr;CPU/msp;CPU/psp;CPU/cfbp" binaryNodes="" asciiNodes="" openNodes="CPU - Current Context" name="Microchip SAMD21" decimalNodes="" octalNodes="" unsignedNodes=""/>
+ </Register3>
+ <Register4>
+ <RegisterWindow visibleNodes="CPU - Current Context/r0;CPU - Current Context/r1;CPU - Current Context/r2;CPU - Current Context/r3;CPU - Current Context/r4;CPU - Current Context/r5;CPU - Current Context/r6;CPU - Current Context/r7;CPU - Current Context/r8;CPU - Current Context/r9;CPU - Current Context/r10;CPU - Current Context/r11;CPU - Current Context/r12;CPU - Current Context/sp(r13);CPU - Current Context/lr(r14);CPU - Current Context/pc(r15);CPU - Current Context/apsr;CPU/r0;CPU/r1;CPU/r2;CPU/r3;CPU/r4;CPU/r5;CPU/r6;CPU/r7;CPU/r8;CPU/r9;CPU/r10;CPU/r11;CPU/r12;CPU/sp(r13);CPU/lr(r14);CPU/pc(r15);CPU/xpsr;CPU/msp;CPU/psp;CPU/cfbp" binaryNodes="" asciiNodes="" openNodes="CPU - Current Context" name="Hello World" decimalNodes="" octalNodes="" unsignedNodes=""/>
+ <RegisterWindow visibleNodes="CPU - Current Context/r0;CPU - Current Context/r1;CPU - Current Context/r2;CPU - Current Context/r3;CPU - Current Context/r4;CPU - Current Context/r5;CPU - Current Context/r6;CPU - Current Context/r7;CPU - Current Context/r8;CPU - Current Context/r9;CPU - Current Context/r10;CPU - Current Context/r11;CPU - Current Context/r12;CPU - Current Context/sp(r13);CPU - Current Context/lr(r14);CPU - Current Context/pc(r15);CPU - Current Context/apsr;CPU/r0;CPU/r1;CPU/r2;CPU/r3;CPU/r4;CPU/r5;CPU/r6;CPU/r7;CPU/r8;CPU/r9;CPU/r10;CPU/r11;CPU/r12;CPU/sp(r13);CPU/lr(r14);CPU/pc(r15);CPU/xpsr;CPU/msp;CPU/psp;CPU/cfbp" binaryNodes="" asciiNodes="" openNodes="CPU - Current Context" name="Nordic nrf5x" decimalNodes="" octalNodes="" unsignedNodes=""/>
+ <RegisterWindow visibleNodes="CPU - Current Context/r0;CPU - Current Context/r1;CPU - Current Context/r2;CPU - Current Context/r3;CPU - Current Context/r4;CPU - Current Context/r5;CPU - Current Context/r6;CPU - Current Context/r7;CPU - Current Context/r8;CPU - Current Context/r9;CPU - Current Context/r10;CPU - Current Context/r11;CPU - Current Context/r12;CPU - Current Context/sp(r13);CPU - Current Context/lr(r14);CPU - Current Context/pc(r15);CPU - Current Context/apsr;CPU/r0;CPU/r1;CPU/r2;CPU/r3;CPU/r4;CPU/r5;CPU/r6;CPU/r7;CPU/r8;CPU/r9;CPU/r10;CPU/r11;CPU/r12;CPU/sp(r13);CPU/lr(r14);CPU/pc(r15);CPU/xpsr;CPU/msp;CPU/psp;CPU/cfbp" binaryNodes="" asciiNodes="" openNodes="CPU - Current Context" name="Microchip samd51" decimalNodes="" octalNodes="" unsignedNodes=""/>
+ <RegisterWindow visibleNodes="CPU - Current Context/r0;CPU - Current Context/r1;CPU - Current Context/r2;CPU - Current Context/r3;CPU - Current Context/r4;CPU - Current Context/r5;CPU - Current Context/r6;CPU - Current Context/r7;CPU - Current Context/r8;CPU - Current Context/r9;CPU - Current Context/r10;CPU - Current Context/r11;CPU - Current Context/r12;CPU - Current Context/sp(r13);CPU - Current Context/lr(r14);CPU - Current Context/pc(r15);CPU - Current Context/apsr;CPU/r0;CPU/r1;CPU/r2;CPU/r3;CPU/r4;CPU/r5;CPU/r6;CPU/r7;CPU/r8;CPU/r9;CPU/r10;CPU/r11;CPU/r12;CPU/sp(r13);CPU/lr(r14);CPU/pc(r15);CPU/xpsr;CPU/msp;CPU/psp;CPU/cfbp" binaryNodes="" asciiNodes="" openNodes="CPU - Current Context" name="Microchip SAMD21" decimalNodes="" octalNodes="" unsignedNodes=""/>
+ </Register4>
+ <Threads>
+ <ThreadsWindow showLists=""/>
+ </Threads>
+ <TraceWindow>
+ <Trace enabled="Yes"/>
+ </TraceWindow>
+ <Watch1>
+ <Watches active="1" update="Never">
+ <Watchpoint numelements="0" expression="_usbd_q" evalMode="1" name="_usbd_q" radix="-1" linenumber="0" filename="../ses" list=""/>
+ <Watchpoint numelements="0" expression="_dcd" evalMode="0" name="_dcd" radix="-1" linenumber="0" filename="../ses" list=""/>
+ <Watchpoint numelements="0" expression="_control_state" evalMode="0" name="_control_state" radix="-1" linenumber="0" filename="../ses" list=""/>
+ <Watchpoint numelements="0" expression="_cdcd_itf[0]" evalMode="0" name="_cdcd_itf[0]" radix="-1" linenumber="0" filename="../ses" list=""/>
+ </Watches>
+ </Watch1>
+ <Watch2>
+ <Watches active="0" update="Never"/>
+ </Watch2>
+ <Watch3>
+ <Watches active="0" update="Never"/>
+ </Watch3>
+ <Watch4>
+ <Watches active="0" update="Never"/>
+ </Watch4>
+ <Files>
+ <SessionOpenFile windowGroup="DockEditLeft" x="29" y="49" useTextEdit="1" useBinaryEdit="0" left="0" path="../src/main.c" selected="1" top="23" codecName="Default"/>
+ </Files>
+ <ARMCrossStudioWindow activeProject="samd51(samd51)" fileDialogDefaultFilter="*.c" autoConnectTarget="J-Link" buildConfiguration="Metro M4 Express" debugSearchFileMap="" fileDialogInitialDirectory="/home/hathach/Dropbox/tinyusb/workspace/tinyusb/hw/mcu/microchip/samd/asf4/samd21/hpl/sysctrl" debugSearchPath="" autoConnectCapabilities="3199"/>
+</session>
diff --git a/examples/device/device_composite/ses/ses_nrf5x/flash_placement.xml b/examples/device_composite/ses/nrf5x/flash_placement.xml
index 951d23710..951d23710 100644
--- a/examples/device/device_composite/ses/ses_nrf5x/flash_placement.xml
+++ b/examples/device_composite/ses/nrf5x/flash_placement.xml
diff --git a/examples/device/device_composite/ses/ses_nrf5x/nRF52840_xxAA_MemoryMap.xml b/examples/device_composite/ses/nrf5x/nRF52840_xxAA_MemoryMap.xml
index cc4056c0d..cc4056c0d 100644
--- a/examples/device/device_composite/ses/ses_nrf5x/nRF52840_xxAA_MemoryMap.xml
+++ b/examples/device_composite/ses/nrf5x/nRF52840_xxAA_MemoryMap.xml
diff --git a/examples/device/device_composite/ses/ses_nrf5x/nRF_Target.js b/examples/device_composite/ses/nrf5x/nRF_Target.js
index 20560af43..20560af43 100644
--- a/examples/device/device_composite/ses/ses_nrf5x/nRF_Target.js
+++ b/examples/device_composite/ses/nrf5x/nRF_Target.js
diff --git a/examples/device/device_composite/ses/ses_nrf5x/nrf52840_Registers.xml b/examples/device_composite/ses/nrf5x/nrf52840_Registers.xml
index 39f861f95..39f861f95 100644
--- a/examples/device/device_composite/ses/ses_nrf5x/nrf52840_Registers.xml
+++ b/examples/device_composite/ses/nrf5x/nrf52840_Registers.xml
diff --git a/examples/device_composite/ses/nrf5x/nrf5x.emProject b/examples/device_composite/ses/nrf5x/nrf5x.emProject
new file mode 100644
index 000000000..c785e4287
--- /dev/null
+++ b/examples/device_composite/ses/nrf5x/nrf5x.emProject
@@ -0,0 +1,109 @@
+<!DOCTYPE CrossStudio_Project_File>
+<solution Name="nrf5x" target="8" version="2">
+ <project Name="nrf5x">
+ <configuration
+ Name="Common"
+ Placement="Flash"
+ Target="nRF52840_xxAA"
+ arm_architecture="v7EM"
+ arm_core_type="Cortex-M4"
+ arm_endian="Little"
+ arm_fp_abi="Hard"
+ arm_fpu_type="FPv4-SP-D16"
+ arm_interwork="No"
+ arm_linker_heap_size="1024"
+ arm_linker_process_stack_size="0"
+ arm_linker_stack_size="1024"
+ arm_simulator_memory_simulation_parameter="ROM;0x00000000;0x00100000;RAM;0x20000000;0x00040000"
+ arm_target_debug_interface_type="ADIv5"
+ arm_target_device_name="nRF52840_xxAA"
+ arm_target_interface_type="SWD"
+ build_treat_warnings_as_errors="Yes"
+ c_preprocessor_definitions="NRF52840_XXAA;__nRF_FAMILY;ARM_MATH_CM4;FLASH_PLACEMENT=1;BOARD_PCA10056;CFG_TUSB_MCU=OPT_MCU_NRF5X"
+ c_user_include_directories="../../src;$(rootDir)/hw/cmsis/Include;$(rootDir)/hw;$(rootDir)/src;$(nrfxDir)/..;$(nrfxDir);$(nrfxDir)/mdk;$(nrfxDir)/hal;$(nrfxDir)/drivers/include"
+ debug_register_definition_file="nrf52840_Registers.xml"
+ debug_target_connection="J-Link"
+ gcc_entry_point="Reset_Handler"
+ link_use_linker_script_file="No"
+ linker_memory_map_file="nRF52840_xxAA_MemoryMap.xml"
+ linker_section_placement_file="flash_placement.xml"
+ macros="DeviceFamily=nRF;Target=nRF52840_xxAA;Placement=Flash;rootDir=../../../..;nrfxDir=../../../../hw/mcu/nordic/nrfx"
+ project_directory=""
+ project_type="Executable"
+ target_reset_script="Reset();"
+ target_script_file="$(ProjectDir)/nRF_Target.js"
+ target_trace_initialize_script="EnableTrace(&quot;$(TraceInterfaceType)&quot;)" />
+ <folder
+ Name="tinyusb"
+ exclude=""
+ filter="*.c;*.h"
+ path="../../../../src"
+ recurse="Yes" />
+ <folder Name="hw">
+ <folder Name="bsp">
+ <folder Name="pca10056">
+ <file file_name="../../../../hw/bsp/pca10056/board_pca10056.c" />
+ <file file_name="../../../../hw/bsp/pca10056/board_pca10056.h" />
+ </folder>
+ <file file_name="../../../../hw/bsp/ansi_escape.h" />
+ <file file_name="../../../../hw/bsp/board.h" />
+ </folder>
+ <folder Name="mcu">
+ <folder Name="nordic">
+ <folder Name="nrfx">
+ <folder Name="drivers">
+ <folder Name="include">
+ <file file_name="../../../../hw/mcu/nordic/nrfx/drivers/include/nrfx_power_clock.h" />
+ <file file_name="../../../../hw/mcu/nordic/nrfx/drivers/include/nrfx_power.h" />
+ <file file_name="../../../../hw/mcu/nordic/nrfx/drivers/include/nrfx_qspi.h" />
+ </folder>
+ <folder Name="src">
+ <file file_name="../../../../hw/mcu/nordic/nrfx/drivers/src/nrfx_power.c" />
+ <file file_name="../../../../hw/mcu/nordic/nrfx/drivers/src/nrfx_qspi.c" />
+ </folder>
+ </folder>
+ <folder Name="hal">
+ <file file_name="../../../../hw/mcu/nordic/nrfx/hal/nrf_power.h" />
+ <file file_name="../../../../hw/mcu/nordic/nrfx/hal/nrf_qspi.h" />
+ <file file_name="../../../../hw/mcu/nordic/nrfx/hal/nrf_usbd.h" />
+ </folder>
+ <folder Name="mdk">
+ <file file_name="../../../../hw/mcu/nordic/nrfx/mdk/nrf51_to_nrf52840.h" />
+ <file file_name="../../../../hw/mcu/nordic/nrfx/mdk/nrf52840_bitfields.h" />
+ <file file_name="../../../../hw/mcu/nordic/nrfx/mdk/nrf52840.h" />
+ <file file_name="../../../../hw/mcu/nordic/nrfx/mdk/nrf52840_peripherals.h" />
+ <file file_name="../../../../hw/mcu/nordic/nrfx/mdk/nrf52_to_nrf52840.h" />
+ <file file_name="../../../../hw/mcu/nordic/nrfx/mdk/ses_startup_nrf52840.s" />
+ <file file_name="../../../../hw/mcu/nordic/nrfx/mdk/ses_startup_nrf_common.s" />
+ <file file_name="../../../../hw/mcu/nordic/nrfx/mdk/system_nrf52840.c" />
+ <file file_name="../../../../hw/mcu/nordic/nrfx/mdk/system_nrf52840.h" />
+ </folder>
+ </folder>
+ <file file_name="../../../../hw/mcu/nordic/nrfx_config.h" />
+ <file file_name="../../../../hw/mcu/nordic/nrfx_glue.h" />
+ </folder>
+ </folder>
+ </folder>
+ <configuration Name="Debug" build_treat_warnings_as_errors="Yes" />
+ <folder
+ Name="src"
+ exclude=""
+ filter="*.c;*.h"
+ path="../../src"
+ recurse="Yes" />
+ <folder Name="System Files">
+ <file file_name="flash_placement.xml" />
+ <file file_name="nrf52840_Registers.xml" />
+ <file file_name="nRF52840_xxAA_MemoryMap.xml" />
+ <file file_name="nRF_Target.js" />
+ <file file_name="thumb_crt0.s" />
+ </folder>
+ <folder
+ Name="segger_rtt"
+ exclude=""
+ filter="*.c;*.h"
+ path="../../../../lib/segger_rtt"
+ recurse="No" />
+ </project>
+ <configuration Name="pca10056" />
+</solution>
diff --git a/examples/device/device_composite/ses/ses_nrf5x/thumb_crt0.s b/examples/device_composite/ses/nrf5x/thumb_crt0.s
index 71820cb51..71820cb51 100644
--- a/examples/device/device_composite/ses/ses_nrf5x/thumb_crt0.s
+++ b/examples/device_composite/ses/nrf5x/thumb_crt0.s
diff --git a/examples/device/device_composite/ses/ses_samd21/ATSAMD21G18A_MemoryMap.xml b/examples/device_composite/ses/samd21/ATSAMD21G18A_MemoryMap.xml
index 2143d3055..2143d3055 100644
--- a/examples/device/device_composite/ses/ses_samd21/ATSAMD21G18A_MemoryMap.xml
+++ b/examples/device_composite/ses/samd21/ATSAMD21G18A_MemoryMap.xml
diff --git a/examples/device/device_composite/ses/ses_samd21/ATSAMD21G18A_Registers.xml b/examples/device_composite/ses/samd21/ATSAMD21G18A_Registers.xml
index 2e0fa0619..2e0fa0619 100644
--- a/examples/device/device_composite/ses/ses_samd21/ATSAMD21G18A_Registers.xml
+++ b/examples/device_composite/ses/samd21/ATSAMD21G18A_Registers.xml
diff --git a/examples/device/device_composite/ses/ses_samd21/ATSAMD21G18A_Vectors.s b/examples/device_composite/ses/samd21/ATSAMD21G18A_Vectors.s
index 5cecbd23b..5cecbd23b 100644
--- a/examples/device/device_composite/ses/ses_samd21/ATSAMD21G18A_Vectors.s
+++ b/examples/device_composite/ses/samd21/ATSAMD21G18A_Vectors.s
diff --git a/examples/device/device_composite/ses/ses_samd21/SAMD21_Startup.s b/examples/device_composite/ses/samd21/SAMD21_Startup.s
index c4b48d351..c4b48d351 100644
--- a/examples/device/device_composite/ses/ses_samd21/SAMD21_Startup.s
+++ b/examples/device_composite/ses/samd21/SAMD21_Startup.s
diff --git a/examples/device/device_composite/ses/ses_samd21/SAMD21_Target.js b/examples/device_composite/ses/samd21/SAMD21_Target.js
index 20560af43..20560af43 100644
--- a/examples/device/device_composite/ses/ses_samd21/SAMD21_Target.js
+++ b/examples/device_composite/ses/samd21/SAMD21_Target.js
diff --git a/examples/device/device_composite/ses/ses_samd21/flash_placement.xml b/examples/device_composite/ses/samd21/flash_placement.xml
index 79bedc537..79bedc537 100644
--- a/examples/device/device_composite/ses/ses_samd21/flash_placement.xml
+++ b/examples/device_composite/ses/samd21/flash_placement.xml
diff --git a/examples/device_composite/ses/samd21/samd21.emProject b/examples/device_composite/ses/samd21/samd21.emProject
new file mode 100644
index 000000000..54767199a
--- /dev/null
+++ b/examples/device_composite/ses/samd21/samd21.emProject
@@ -0,0 +1,103 @@
+<!DOCTYPE CrossStudio_Project_File>
+<solution Name="samd21" target="8" version="2">
+ <project Name="samd21">
+ <configuration
+ Name="Common"
+ Placement="Flash"
+ Target="nRF52840_xxAA"
+ arm_architecture="v6M"
+ arm_core_type="Cortex-M0+"
+ arm_endian="Little"
+ arm_fpu_type="None"
+ arm_interwork="No"
+ arm_linker_heap_size="1024"
+ arm_linker_process_stack_size="0"
+ arm_linker_stack_size="1024"
+ arm_simulator_memory_simulation_parameter="RX 00000000,00080000,FFFFFFFF;RWX 20000000,00030000,CDCDCDCD"
+ arm_target_debug_interface_type="ADIv5"
+ arm_target_device_name="ATSAMD21G18A"
+ arm_target_interface_type="SWD"
+ build_treat_warnings_as_errors="Yes"
+ c_preprocessor_definitions="__SAMD21G18A__;__SAMD21_FAMILY;__SAM_D21_SUBFAMILY;ARM_MATH_CM0PLUS;FLASH_PLACEMENT=1;USE_SIMPLE_ASSERT;CONF_XOSC32K_CONFIG=1;CONF_OSC32K_ENABLE=1;CONF_OSC32K_EN32K=1;CONF_XOSC32K_STARTUP=CONF_XOSC32K_STARTUP_TIME_2000092MCS;CONF_DFLL_ONDEMAND=0;CONF_DFLL_OVERWRITE_CALIBRATION=0;BOARD_METRO_M0_EXPRESS;CFG_TUSB_MCU=OPT_MCU_SAMD21"
+ c_user_include_directories="../../src;$(rootDir)/hw/cmsis/Include;$(rootDir)/hw;$(rootDir)/src;$(asf4Dir);$(asf4Dir)/include;$(asf4Dir)/config;$(asf4Dir)/hri;$(asf4Dir)/hal/include;$(asf4Dir)/hal/utils/include;$(asf4Dir)/hpl/port;$(asf4Dir)/hpl/gclk;$(asf4Dir)/hpl/pm"
+ debug_register_definition_file="ATSAMD21G18A_Registers.xml"
+ debug_target_connection="J-Link"
+ gcc_entry_point="Reset_Handler"
+ link_use_linker_script_file="No"
+ linker_memory_map_file="$(ProjectDir)/ATSAMD21G18A_MemoryMap.xml"
+ linker_section_placement_file="flash_placement.xml"
+ linker_section_placements_segments="FLASH RX 0x00000000 0x00080000;RAM RWX 0x20000000 0x00030000"
+ macros="DeviceFamily=SAMD21;Target=ATSAMD21G18A;Placement=Flash;rootDir=../../../..;asf4Dir=../../../../hw/mcu/microchip/samd/asf4/samd21"
+ project_directory=""
+ project_type="Executable"
+ target_reset_script="Reset();"
+ target_script_file="$(ProjectDir)/SAMD21_Target.js"
+ target_trace_initialize_script="EnableTrace(&quot;$(TraceInterfaceType)&quot;)" />
+ <folder
+ Name="tinyusb"
+ exclude=""
+ filter="*.c;*.h"
+ path="../../../../src"
+ recurse="Yes" />
+ <folder Name="hw">
+ <folder Name="bsp">
+ <file file_name="../../../../hw/bsp/ansi_escape.h" />
+ <file file_name="../../../../hw/bsp/board.h" />
+ <folder Name="metro_m0_express">
+ <file file_name="../../../../hw/bsp/metro_m0_express/board_metro_m0_express.c" />
+ <file file_name="../../../../hw/bsp/metro_m0_express/board_metro_m0_express.h" />
+ </folder>
+ </folder>
+ <folder Name="mcu">
+ <folder Name="microchip">
+ <folder Name="samd">
+ <folder Name="asf4">
+ <folder Name="samd21">
+ <folder Name="gcc">
+ <file file_name="../../../../hw/mcu/microchip/samd/asf4/samd21/gcc/system_samd21.c" />
+ </folder>
+ <folder Name="hpl">
+ <folder Name="core">
+ <file file_name="../../../../hw/mcu/microchip/samd/asf4/samd21/hpl/core/hpl_init.c" />
+ </folder>
+ <folder Name="gclk">
+ <file file_name="../../../../hw/mcu/microchip/samd/asf4/samd21/hpl/gclk/hpl_gclk.c" />
+ </folder>
+ <folder Name="pm">
+ <file file_name="../../../../hw/mcu/microchip/samd/asf4/samd21/hpl/pm/hpl_pm.c" />
+ </folder>
+ <folder Name="sysctrl">
+ <file file_name="../../../../hw/mcu/microchip/samd/asf4/samd21/hpl/sysctrl/hpl_sysctrl.c" />
+ </folder>
+ </folder>
+ </folder>
+ </folder>
+ </folder>
+ </folder>
+ </folder>
+ </folder>
+ <configuration Name="Debug" build_treat_warnings_as_errors="Yes" />
+ <folder
+ Name="src"
+ exclude=""
+ filter="*.c;*.h"
+ path="../../src"
+ recurse="Yes" />
+ <folder Name="System Files">
+ <file file_name="ATSAMD21G18A_MemoryMap.xml" />
+ <file file_name="ATSAMD21G18A_Registers.xml" />
+ <file file_name="ATSAMD21G18A_Vectors.s" />
+ <file file_name="flash_placement.xml" />
+ <file file_name="SAMD21_Startup.s" />
+ <file file_name="SAMD21_Target.js" />
+ <file file_name="thumb_crt0.s" />
+ </folder>
+ <folder
+ Name="segger_rtt"
+ exclude=""
+ filter="*.c;*.h"
+ path="../../../../lib/segger_rtt"
+ recurse="No" />
+ </project>
+ <configuration Name="Metro M0 Express" />
+</solution>
diff --git a/examples/device/device_composite/ses/ses_samd21/thumb_crt0.s b/examples/device_composite/ses/samd21/thumb_crt0.s
index 17f88e0ca..17f88e0ca 100644
--- a/examples/device/device_composite/ses/ses_samd21/thumb_crt0.s
+++ b/examples/device_composite/ses/samd21/thumb_crt0.s
diff --git a/examples/device/device_composite/ses/ses_samd51/ATSAMD51J19A_MemoryMap.xml b/examples/device_composite/ses/samd51/ATSAMD51J19A_MemoryMap.xml
index 49d9a9cbd..49d9a9cbd 100644
--- a/examples/device/device_composite/ses/ses_samd51/ATSAMD51J19A_MemoryMap.xml
+++ b/examples/device_composite/ses/samd51/ATSAMD51J19A_MemoryMap.xml
diff --git a/examples/device/device_composite/ses/ses_samd51/ATSAMD51J19A_Registers.xml b/examples/device_composite/ses/samd51/ATSAMD51J19A_Registers.xml
index 83fe837fa..83fe837fa 100644
--- a/examples/device/device_composite/ses/ses_samd51/ATSAMD51J19A_Registers.xml
+++ b/examples/device_composite/ses/samd51/ATSAMD51J19A_Registers.xml
diff --git a/examples/device/device_composite/ses/ses_samd51/ATSAMD51J19A_Vectors.s b/examples/device_composite/ses/samd51/ATSAMD51J19A_Vectors.s
index 6369de863..6369de863 100644
--- a/examples/device/device_composite/ses/ses_samd51/ATSAMD51J19A_Vectors.s
+++ b/examples/device_composite/ses/samd51/ATSAMD51J19A_Vectors.s
diff --git a/examples/device/device_composite/ses/ses_samd51/SAMD51_Startup.s b/examples/device_composite/ses/samd51/SAMD51_Startup.s
index 03bf54def..03bf54def 100644
--- a/examples/device/device_composite/ses/ses_samd51/SAMD51_Startup.s
+++ b/examples/device_composite/ses/samd51/SAMD51_Startup.s
diff --git a/examples/device/device_composite/ses/ses_samd51/SAMD51_Target.js b/examples/device_composite/ses/samd51/SAMD51_Target.js
index 20560af43..20560af43 100644
--- a/examples/device/device_composite/ses/ses_samd51/SAMD51_Target.js
+++ b/examples/device_composite/ses/samd51/SAMD51_Target.js
diff --git a/examples/device/device_composite/ses/ses_samd51/flash_placement.xml b/examples/device_composite/ses/samd51/flash_placement.xml
index 79bedc537..79bedc537 100644
--- a/examples/device/device_composite/ses/ses_samd51/flash_placement.xml
+++ b/examples/device_composite/ses/samd51/flash_placement.xml
diff --git a/examples/device_composite/ses/samd51/samd51.emProject b/examples/device_composite/ses/samd51/samd51.emProject
new file mode 100644
index 000000000..76be9cf5e
--- /dev/null
+++ b/examples/device_composite/ses/samd51/samd51.emProject
@@ -0,0 +1,107 @@
+<!DOCTYPE CrossStudio_Project_File>
+<solution Name="samd51" target="8" version="2">
+ <project Name="samd51">
+ <configuration
+ Name="Common"
+ Placement="Flash"
+ Target="nRF52840_xxAA"
+ arm_architecture="v7EM"
+ arm_core_type="Cortex-M4"
+ arm_endian="Little"
+ arm_fp_abi="Hard"
+ arm_fpu_type="FPv4-SP-D16"
+ arm_interwork="No"
+ arm_linker_heap_size="1024"
+ arm_linker_process_stack_size="0"
+ arm_linker_stack_size="1024"
+ arm_simulator_memory_simulation_parameter="RX 00000000,00080000,FFFFFFFF;RWX 20000000,00030000,CDCDCDCD"
+ arm_target_debug_interface_type="ADIv5"
+ arm_target_device_name="ATSAMD51J19"
+ arm_target_interface_type="SWD"
+ build_treat_warnings_as_errors="Yes"
+ c_preprocessor_definitions="__SAMD51_FAMILY;__SAMD51J19A__;ARM_MATH_CM4;FLASH_PLACEMENT=1;USE_SIMPLE_ASSERT;BOARD_METRO_M4_EXPRESS;CFG_TUSB_MCU=OPT_MCU_SAMD51"
+ c_user_include_directories="../../src;$(rootDir)/hw/cmsis/Include;$(rootDir)/hw;$(rootDir)/src;$(asf4Dir);$(asf4Dir)/include;$(asf4Dir)/config;$(asf4Dir)/hri;$(asf4Dir)/hal/include;$(asf4Dir)/hal/utils/include;$(asf4Dir)/hpl/port;$(asf4Dir)/hpl/gclk"
+ debug_register_definition_file="ATSAMD51J19A_Registers.xml"
+ debug_target_connection="J-Link"
+ gcc_entry_point="Reset_Handler"
+ link_use_linker_script_file="No"
+ linker_memory_map_file="ATSAMD51J19A_MemoryMap.xml"
+ linker_section_placement_file="flash_placement.xml"
+ linker_section_placements_segments="FLASH RX 0x00000000 0x00080000;RAM RWX 0x20000000 0x00030000"
+ macros="DeviceFamily=SAMD51;Target=ATSAMD51J19A;Placement=Flash;rootDir=../../../..;asf4Dir=../../../../hw/mcu/microchip/samd/asf4/samd51"
+ project_directory=""
+ project_type="Executable"
+ target_reset_script="Reset();"
+ target_script_file="$(ProjectDir)/SAMD51_Target.js"
+ target_trace_initialize_script="EnableTrace(&quot;$(TraceInterfaceType)&quot;)" />
+ <folder
+ Name="tinyusb"
+ exclude=""
+ filter="*.c;*.h"
+ path="../../../../src"
+ recurse="Yes" />
+ <folder Name="hw">
+ <folder Name="bsp">
+ <file file_name="../../../../hw/bsp/ansi_escape.h" />
+ <file file_name="../../../../hw/bsp/board.h" />
+ <folder Name="metro_m4_express">
+ <file file_name="../../../../hw/bsp/metro_m4_express/board_metro_m4_express.c" />
+ <file file_name="../../../../hw/bsp/metro_m4_express/board_metro_m4_express.h" />
+ </folder>
+ </folder>
+ <folder Name="mcu">
+ <folder Name="microchip">
+ <folder Name="samd">
+ <folder Name="asf4">
+ <folder Name="samd51">
+ <folder Name="gcc">
+ <file file_name="../../../../hw/mcu/microchip/samd/asf4/samd51/gcc/system_samd51.c" />
+ </folder>
+ <folder Name="hpl">
+ <folder Name="core">
+ <file file_name="../../../../hw/mcu/microchip/samd/asf4/samd51/hpl/core/hpl_init.c" />
+ </folder>
+ <folder Name="osc32kctrl">
+ <file file_name="../../../../hw/mcu/microchip/samd/asf4/samd51/hpl/osc32kctrl/hpl_osc32kctrl.c" />
+ </folder>
+ <folder Name="oscctrl">
+ <file file_name="../../../../hw/mcu/microchip/samd/asf4/samd51/hpl/oscctrl/hpl_oscctrl.c" />
+ </folder>
+ <folder Name="mclk">
+ <file file_name="../../../../hw/mcu/microchip/samd/asf4/samd51/hpl/mclk/hpl_mclk.c" />
+ </folder>
+ <folder Name="gclk">
+ <file file_name="../../../../hw/mcu/microchip/samd/asf4/samd51/hpl/gclk/hpl_gclk.c" />
+ </folder>
+ </folder>
+ </folder>
+ </folder>
+ </folder>
+ </folder>
+ </folder>
+ </folder>
+ <configuration Name="Debug" build_treat_warnings_as_errors="Yes" />
+ <folder
+ Name="src"
+ exclude=""
+ filter="*.c;*.h"
+ path="../../src"
+ recurse="Yes" />
+ <folder Name="System Files">
+ <file file_name="ATSAMD51J19A_MemoryMap.xml" />
+ <file file_name="ATSAMD51J19A_Registers.xml" />
+ <file file_name="ATSAMD51J19A_Vectors.s" />
+ <file file_name="flash_placement.xml" />
+ <file file_name="SAMD51_Startup.s" />
+ <file file_name="SAMD51_Target.js" />
+ <file file_name="thumb_crt0.s" />
+ </folder>
+ <folder
+ Name="segger_rtt"
+ exclude=""
+ filter="*.c;*.h"
+ path="../../../../lib/segger_rtt"
+ recurse="No" />
+ </project>
+ <configuration Name="Metro M4 Express" />
+</solution>
diff --git a/examples/device/device_composite/ses/ses_samd51/thumb_crt0.s b/examples/device_composite/ses/samd51/thumb_crt0.s
index 17f88e0ca..17f88e0ca 100644
--- a/examples/device/device_composite/ses/ses_samd51/thumb_crt0.s
+++ b/examples/device_composite/ses/samd51/thumb_crt0.s
diff --git a/examples/device/device_composite/src/main.c b/examples/device_composite/src/main.c
index 4c8730242..4c8730242 100644
--- a/examples/device/device_composite/src/main.c
+++ b/examples/device_composite/src/main.c
diff --git a/examples/device/device_composite/src/msc_app.c b/examples/device_composite/src/msc_app.c
index 52cf58f78..52cf58f78 100644
--- a/examples/device/device_composite/src/msc_app.c
+++ b/examples/device_composite/src/msc_app.c
diff --git a/examples/device/device_composite/src/msc_app.h b/examples/device_composite/src/msc_app.h
index 38d0f4c99..38d0f4c99 100644
--- a/examples/device/device_composite/src/msc_app.h
+++ b/examples/device_composite/src/msc_app.h
diff --git a/examples/device/device_composite/src/msc_flash_qspi.c b/examples/device_composite/src/msc_flash_qspi.c
index 30adf1d92..30adf1d92 100644
--- a/examples/device/device_composite/src/msc_flash_qspi.c
+++ b/examples/device_composite/src/msc_flash_qspi.c
diff --git a/examples/device/device_composite/src/msc_flash_ram.c b/examples/device_composite/src/msc_flash_ram.c
index 269a72fa4..269a72fa4 100644
--- a/examples/device/device_composite/src/msc_flash_ram.c
+++ b/examples/device_composite/src/msc_flash_ram.c
diff --git a/examples/device/device_composite/src/tusb_config.h b/examples/device_composite/src/tusb_config.h
index b5b4fe088..b5b4fe088 100644
--- a/examples/device/device_composite/src/tusb_config.h
+++ b/examples/device_composite/src/tusb_config.h
diff --git a/examples/device/device_composite/src/tusb_descriptors.c b/examples/device_composite/src/tusb_descriptors.c
index 2b219c87a..2b219c87a 100644
--- a/examples/device/device_composite/src/tusb_descriptors.c
+++ b/examples/device_composite/src/tusb_descriptors.c
diff --git a/examples/device/device_composite/src/segger_rtt/SEGGER_RTT.c b/lib/segger_rtt/SEGGER_RTT.c
index ea4478cbd..ea4478cbd 100644
--- a/examples/device/device_composite/src/segger_rtt/SEGGER_RTT.c
+++ b/lib/segger_rtt/SEGGER_RTT.c
diff --git a/examples/device/device_composite/src/segger_rtt/SEGGER_RTT.h b/lib/segger_rtt/SEGGER_RTT.h
index 70120f5aa..70120f5aa 100644
--- a/examples/device/device_composite/src/segger_rtt/SEGGER_RTT.h
+++ b/lib/segger_rtt/SEGGER_RTT.h
diff --git a/examples/device/device_composite/src/segger_rtt/SEGGER_RTT_Conf.h b/lib/segger_rtt/SEGGER_RTT_Conf.h
index 13c80e37f..13c80e37f 100644
--- a/examples/device/device_composite/src/segger_rtt/SEGGER_RTT_Conf.h
+++ b/lib/segger_rtt/SEGGER_RTT_Conf.h
diff --git a/examples/device/device_composite/src/segger_rtt/SEGGER_RTT_SES.c b/lib/segger_rtt/SEGGER_RTT_SES.c
index 685e9ec40..685e9ec40 100644
--- a/examples/device/device_composite/src/segger_rtt/SEGGER_RTT_SES.c
+++ b/lib/segger_rtt/SEGGER_RTT_SES.c