From 8a703f42659b011f24229c5cec18d6ab1b3d2db9 Mon Sep 17 00:00:00 2001 From: Robin Jones Date: Thu, 21 Feb 2019 17:01:36 +0000 Subject: [PATCH] =?UTF-8?q?=F0=9F=9A=A7=20Migrate=20ChibiOS=20to=20v19.1?= =?UTF-8?q?=20=F0=9F=9A=A7=20(#1206)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit WIP, TODO: [ ] update board_sources.cmake for H7 & L0 boards [ ] test all reference boards with samples [ ] raise an issue to swap to HAL_USE_TRNG and hardware crypto lib [ ] Closes nanoframework/Home#446. --- CMake/ChibiOS.CMakeLists.cmake.in | 2 +- CMake/Modules/CHIBIOS_STM32F0xx_sources.cmake | 14 +- CMake/Modules/CHIBIOS_STM32F4xx_sources.cmake | 87 +++++----- CMake/Modules/CHIBIOS_STM32F7xx_sources.cmake | 28 +++- CMake/Modules/FindCHIBIOS.cmake | 20 ++- CMakeLists.txt | 6 +- VisualStudioDevelopment/README.md | 2 +- .../ChibiOS/MBN_QUAIL/nanoBooter/chconf.h | 24 ++- .../ChibiOS/MBN_QUAIL/nanoBooter/halconf.h | 72 ++++---- .../ChibiOS/MBN_QUAIL/nanoCLR/chconf.h | 24 ++- .../ChibiOS/MBN_QUAIL/nanoCLR/halconf.h | 73 ++++---- .../NETDUINO3_WIFI/nanoBooter/chconf.h | 24 ++- .../NETDUINO3_WIFI/nanoBooter/halconf.h | 72 ++++---- .../ChibiOS/NETDUINO3_WIFI/nanoCLR/chconf.h | 24 ++- .../ChibiOS/NETDUINO3_WIFI/nanoCLR/halconf.h | 73 ++++---- .../ST_NUCLEO64_F091RC/nanoBooter/chconf.h | 24 ++- .../ST_NUCLEO64_F091RC/nanoBooter/halconf.h | 72 ++++---- .../ST_NUCLEO64_F091RC/nanoCLR/chconf.h | 24 ++- .../ST_NUCLEO64_F091RC/nanoCLR/halconf.h | 73 ++++---- .../nanoBooter/chconf.h | 24 ++- .../nanoBooter/halconf.h | 157 +++++++++++++++++- .../ST_STM32F429I_DISCOVERY/nanoCLR/chconf.h | 24 ++- .../ST_STM32F429I_DISCOVERY/nanoCLR/halconf.h | 73 ++++---- .../ST_STM32F429I_DISCOVERY/nanoCLR/mcuconf.h | 1 + .../nanoBooter/chconf.h | 14 +- .../nanoBooter/halconf.h | 81 +++++---- .../nanoBooter/mcuconf.h | 13 ++ .../ST_STM32F769I_DISCOVERY/nanoCLR/chconf.h | 24 ++- .../ST_STM32F769I_DISCOVERY/nanoCLR/halconf.h | 78 +++++---- .../ST_STM32F769I_DISCOVERY/nanoCLR/mcuconf.h | 13 ++ .../ChibiOS/nanoCLR/target_platform.h.in | 4 - 31 files changed, 820 insertions(+), 424 deletions(-) diff --git a/CMake/ChibiOS.CMakeLists.cmake.in b/CMake/ChibiOS.CMakeLists.cmake.in index fa9d600a16..eaf0b167af 100644 --- a/CMake/ChibiOS.CMakeLists.cmake.in +++ b/CMake/ChibiOS.CMakeLists.cmake.in @@ -9,7 +9,7 @@ ExternalProject_Add( ChibiOS PREFIX ChibiOS SOURCE_DIR ${CMAKE_BINARY_DIR}/ChibiOS_Source - GIT_REPOSITORY https://github.com/nanoframework/ChibiOS + GIT_REPOSITORY https://github.com/nanoframework/chibios GIT_TAG ${CHIBIOS_GIT_TAG} # target specified branch GIT_SHALLOW 1 # download only the tip of the branch, not the complete history TIMEOUT 10 diff --git a/CMake/Modules/CHIBIOS_STM32F0xx_sources.cmake b/CMake/Modules/CHIBIOS_STM32F0xx_sources.cmake index 81e7863b46..733f967777 100644 --- a/CMake/Modules/CHIBIOS_STM32F0xx_sources.cmake +++ b/CMake/Modules/CHIBIOS_STM32F0xx_sources.cmake @@ -22,20 +22,26 @@ set(CHIBIOS_PORT_SRCS hal_adc_lld.c hal_can_lld.c - #hal_dac_lld.c + hal_dac_lld.c stm32_dma.c - hal_ext_lld.c + stm32_exti.c hal_pal_lld.c hal_i2c_lld.c hal_rtc_lld.c + + hal_i2s_lld.c hal_spi_lld.c + hal_st_lld.c hal_gpt_lld.c hal_icu_lld.c hal_pwm_lld.c + hal_serial_lld.c hal_uart_lld.c + hal_usb_lld.c + hal_wdg_lld.c # RT @@ -57,7 +63,7 @@ foreach(SRC_FILE ${CHIBIOS_PORT_SRCS}) ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/STM32F0xx ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/ADCv1 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/CANv1 - #${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/DACv1 + ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/DACv1 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/DMAv1 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/EXTIv1 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/GPIOv2 @@ -83,7 +89,7 @@ list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/common/ list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/ADCv1) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/CANv1) -#list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/DACv1) +list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/DACv1) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/DMAv1) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/EXTIv1) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/GPIOv2) diff --git a/CMake/Modules/CHIBIOS_STM32F4xx_sources.cmake b/CMake/Modules/CHIBIOS_STM32F4xx_sources.cmake index 33c18f5395..4138979a9c 100644 --- a/CMake/Modules/CHIBIOS_STM32F4xx_sources.cmake +++ b/CMake/Modules/CHIBIOS_STM32F4xx_sources.cmake @@ -11,40 +11,47 @@ ################################################################################################ set(CHIBIOS_PORT_SRCS - # startup code - crt1.c - vectors.S - crt0_v7m.S - - nvic.c - stm32_isr.c - hal_lld.c - - hal_adc_lld.c - hal_can_lld.c - #hal_dac_lld.c - stm32_dma.c - hal_ext_lld.c - hal_pal_lld.c - hal_i2c_lld.c - hal_mac_lld.c - hal_rtc_lld.c - hal_sdc_lld.c - #hal_i2s_lld.c - hal_spi_lld.c - hal_st_lld.c - hal_gpt_lld.c - hal_icu_lld.c - hal_pwm_lld.c - hal_serial_lld.c - hal_uart_lld.c - hal_usb_lld.c - hal_wdg_lld.c - - # RT - chcore.c - chcore_v7m.c - chcoreasm_v7m.S + # startup code + crt1.c + vectors.S + crt0_v7m.S + + nvic.c + stm32_isr.c + hal_lld.c + + hal_adc_lld.c + hal_can_lld.c + hal_crypto_lld.c + hal_dac_lld.c + stm32_dma.c + stm32_exti.c + hal_pal_lld.c + hal_i2c_lld.c + hal_mac_lld.c + hal_usb_lld.c + hal_wspi_lld.c + hal_trng_lld.c + hal_rtc_lld.c + hal_sdc_lld.c + + hal_i2s_lld.c + hal_spi_lld.c + + hal_st_lld.c + hal_gpt_lld.c + hal_icu_lld.c + hal_pwm_lld.c + + hal_serial_lld.c + hal_uart_lld.c + + hal_wdg_lld.c + + # RT + chcore.c + chcore_v7m.c + chcoreasm_v7m.S ) foreach(SRC_FILE ${CHIBIOS_PORT_SRCS}) @@ -60,19 +67,21 @@ foreach(SRC_FILE ${CHIBIOS_PORT_SRCS}) ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/STM32F4xx ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/ADCv2 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/CANv1 - #${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/DACv1 + ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/CRYPv1 + ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/DACv1 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/DMAv2 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/EXTIv1 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/GPIOv2 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/I2Cv1 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/MACv1 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/OTGv1 + ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/QUADSPIv1 + ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/RNGv1 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/RTCv2 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/SDIOv1 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/SPIv1 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/TIMv1 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/USARTv1 - ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/USBv1 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/xWDGv1 CMAKE_FIND_ROOT_PATH_BOTH @@ -89,19 +98,21 @@ list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/common/ list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/ADCv2) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/CANv1) -#list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/DACv1) +list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/CRYPv1) +list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/DACv1) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/DMAv2) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/EXTIv1) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/GPIOv2) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/I2Cv1) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/MACv1) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/OTGv1) +list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/QUADSPIv1) +list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/RNGv1) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/RTCv2) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/SDIOv1) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/SPIv1) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/TIMv1) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/USARTv1) -list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/USBv1) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/xWDGv1) diff --git a/CMake/Modules/CHIBIOS_STM32F7xx_sources.cmake b/CMake/Modules/CHIBIOS_STM32F7xx_sources.cmake index 8fddb24d2c..9bf9345c33 100644 --- a/CMake/Modules/CHIBIOS_STM32F7xx_sources.cmake +++ b/CMake/Modules/CHIBIOS_STM32F7xx_sources.cmake @@ -22,23 +22,30 @@ set(CHIBIOS_PORT_SRCS hal_adc_lld.c hal_can_lld.c - #hal_dac_lld.c + hal_crypto_lld.c + hal_dac_lld.c stm32_dma.c - hal_ext_lld.c + stm32_exti.c hal_pal_lld.c hal_i2c_lld.c hal_mac_lld.c + hal_usb_lld.c + hal_wspi_lld.c + hal_trng_lld.c hal_rtc_lld.c hal_sdc_lld.c - #hal_i2s_lld.c + + hal_i2s_lld.c hal_spi_lld.c + hal_st_lld.c hal_gpt_lld.c hal_icu_lld.c hal_pwm_lld.c + hal_serial_lld.c hal_uart_lld.c - hal_usb_lld.c + hal_wdg_lld.c # RT @@ -58,21 +65,24 @@ foreach(SRC_FILE ${CHIBIOS_PORT_SRCS}) ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/common/ARMCMx ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/STM32F7xx + ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/ADCv2 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/CANv1 - #${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/DACv1 + ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/CRYPv1 + ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/DACv1 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/DMAv2 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/EXTIv1 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/GPIOv2 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/I2Cv2 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/MACv1 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/OTGv1 + ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/QUADSPIv1 + ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/RNGv1 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/RTCv2 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/SDMMCv1 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/SPIv2 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/TIMv1 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/USARTv2 - ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/USBv1 ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/xWDGv1 CMAKE_FIND_ROOT_PATH_BOTH @@ -89,19 +99,21 @@ list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/common/ list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/ADCv2) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/CANv1) -#list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/DACv1) +list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/CRYPv1) +list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/DACv1) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/DMAv2) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/EXTIv1) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/GPIOv2) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/I2Cv2) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/MACv1) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/OTGv1) +list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/QUADSPIv1) +list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/RNGv1) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/RTCv2) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/SDMMCv1) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/SPIv2) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/TIMv1) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/USARTv2) -list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/USBv1) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/LLD/xWDGv1) diff --git a/CMake/Modules/FindCHIBIOS.cmake b/CMake/Modules/FindCHIBIOS.cmake index 5efaace3c4..a68dfb9a72 100644 --- a/CMake/Modules/FindCHIBIOS.cmake +++ b/CMake/Modules/FindCHIBIOS.cmake @@ -29,7 +29,7 @@ list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/por list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/include) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/boards/${CHIBIOS_BOARD}) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/osal/rt) -list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/common/oslib/include) +list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/oslib/include) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/rt/include) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/ports/STM32/${TARGET_SERIES}) list(APPEND CHIBIOS_INCLUDE_DIRS ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/common/ports/ARMCMx) @@ -67,7 +67,7 @@ set(CHIBIOS_SRCS hal_can.c hal_crypto.c hal_dac.c - hal_ext.c + #hal_ext.c #notfound hal_gpt.c hal_i2c.c hal_i2s.c @@ -76,15 +76,18 @@ set(CHIBIOS_SRCS hal_mmc_spi.c hal_pal.c hal_pwm.c - hal_qspi.c + #hal_qspi.c #notfound hal_rtc.c hal_sdc.c hal_serial.c hal_serial_usb.c + hal_sio.c #new hal_spi.c + hal_trng.c #new hal_uart.c hal_usb.c hal_wdg.c + hal_wspi.c #new # OSAL RT osal.c @@ -98,18 +101,19 @@ set(CHIBIOS_SRCS chthreads.c chtm.c chstats.c - chdynamic.c chregistry.c chsem.c chmtx.c chcond.c chevents.c chmsg.c - - chheap.c + chdynamic.c + chmboxes.c chmemcore.c + chmemheaps.c chmempools.c + chpipes.c chfactory.c # required to use malloc and other newlib stuff @@ -130,7 +134,7 @@ foreach(SRC_FILE ${CHIBIOS_SRCS}) ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/src ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/hal/osal/rt ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/rt/src - ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/common/oslib/src + ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/oslib/src ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/common/abstractions/cmsis_os ${PROJECT_BINARY_DIR}/ChibiOS_Source/os/various @@ -152,7 +156,7 @@ foreach(SRC_FILE ${CHIBIOS_SRCS}) CMAKE_FIND_ROOT_PATH_BOTH ) - # message("${SRC_FILE} >> ${CHIBIOS_SRC_FILE}") # debug helper + #message("${SRC_FILE} >> ${CHIBIOS_SRC_FILE}") # debug helper list(APPEND CHIBIOS_SOURCES ${CHIBIOS_SRC_FILE}) endforeach() diff --git a/CMakeLists.txt b/CMakeLists.txt index f61792352b..61521c74ad 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -662,8 +662,8 @@ if(RTOS_CHIBIOS_CHECK) if(CHIBIOS_VERSION_EMPTY) # no ChibiOS version actualy specified, must be empty which is fine, we'll grab the code from the stable_18.2.x branch - message(STATUS "RTOS is: CHIBIOS (latest available code from stable_18.2.x)") - set(CHIBIOS_GIT_TAG "stable_18.2.x") + message(STATUS "RTOS is: CHIBIOS (latest available code from stable_19.1.x)") + set(CHIBIOS_GIT_TAG "stable_19.1.x") else() message(STATUS "RTOS is: ChibiRTOS v${CHIBIOS_VERSION}") @@ -700,7 +700,7 @@ if(RTOS_CHIBIOS_CHECK) ChibiOS PREFIX ChibiOS SOURCE_DIR ${CMAKE_BINARY_DIR}/ChibiOS_Source - GIT_REPOSITORY https://github.com/nanoframework/ChibiOS + GIT_REPOSITORY https://github.com/nanoframework/chibios GIT_TAG ${CHIBIOS_GIT_TAG} # target specified branch GIT_SHALLOW 1 # download only the tip of the branch, not the complete history TIMEOUT 10 diff --git a/VisualStudioDevelopment/README.md b/VisualStudioDevelopment/README.md index 53602c53ba..17cf56f5fe 100644 --- a/VisualStudioDevelopment/README.md +++ b/VisualStudioDevelopment/README.md @@ -33,7 +33,7 @@ Sometime the CMake server goes away, shutting down Visual Studio and restarting #### c:\nanoFramework_Tools\ Manually create this directory to contain the following folders. ###### c:\nanoFramework_Tools\ChibiOS -+ Copy of the ChibiOS repository cloned from https://github.com/nanoframework/ChibiOS.git ++ Copy of the ChibiOS repository cloned from https://github.com/nanoframework/chibios.git ###### C:\nanoFramework_Tools\Tools\openocd + Copy of the openocd installation http://www.freddiechopin.info/en/download/category/4-openocd diff --git a/targets/CMSIS-OS/ChibiOS/MBN_QUAIL/nanoBooter/chconf.h b/targets/CMSIS-OS/ChibiOS/MBN_QUAIL/nanoBooter/chconf.h index 1ae2283f52..52b997da69 100644 --- a/targets/CMSIS-OS/ChibiOS/MBN_QUAIL/nanoBooter/chconf.h +++ b/targets/CMSIS-OS/ChibiOS/MBN_QUAIL/nanoBooter/chconf.h @@ -5,7 +5,7 @@ // /** - * @file templates/chconf.h + * @file rt/templates/chconf.h * @brief Configuration file template. * @details A copy of this file must be placed in each project directory, it * contains the application specific kernel settings. @@ -19,7 +19,7 @@ #define CHCONF_H #define _CHIBIOS_RT_CONF_ -#define _CHIBIOS_RT_CONF_VER_5_1_ +#define _CHIBIOS_RT_CONF_VER_6_0_ /*===========================================================================*/ /** @@ -298,7 +298,7 @@ #define CH_CFG_USE_MEMPOOLS TRUE /** - * @brief Objects FIFOs APIs. + * @brief Objects FIFOs APIs. * @details If enabled then the objects FIFOs APIs are included * in the kernel. * @@ -306,6 +306,17 @@ */ #define CH_CFG_USE_OBJ_FIFOS TRUE +/** + * @brief Pipes APIs. + * @details If enabled then the pipes APIs are included + * in the kernel. + * + * @note The default is @p TRUE. + */ +#if !defined(CH_CFG_USE_PIPES) +#define CH_CFG_USE_PIPES FALSE /* temporary */ +#endif + /** * @brief Dynamic Threads APIs. * @details If enabled then the dynamic threads creation APIs are included @@ -367,6 +378,13 @@ */ #define CH_CFG_FACTORY_OBJ_FIFOS TRUE +/** + * @brief Enables factory for Pipes. + */ +#if !defined(CH_CFG_FACTORY_PIPES) || defined(__DOXYGEN__) +#define CH_CFG_FACTORY_PIPES TRUE +#endif + /** @} */ /*===========================================================================*/ diff --git a/targets/CMSIS-OS/ChibiOS/MBN_QUAIL/nanoBooter/halconf.h b/targets/CMSIS-OS/ChibiOS/MBN_QUAIL/nanoBooter/halconf.h index 42602c5848..9f4352bae5 100644 --- a/targets/CMSIS-OS/ChibiOS/MBN_QUAIL/nanoBooter/halconf.h +++ b/targets/CMSIS-OS/ChibiOS/MBN_QUAIL/nanoBooter/halconf.h @@ -19,7 +19,7 @@ #define HALCONF_H #define _CHIBIOS_HAL_CONF_ -#define _CHIBIOS_HAL_CONF_VER_6_0_ +#define _CHIBIOS_HAL_CONF_VER_7_0_ #include "mcuconf.h" @@ -58,13 +58,6 @@ #define HAL_USE_DAC FALSE #endif -/** - * @brief Enables the EXT subsystem. - */ -#if !defined(HAL_USE_EXT) || defined(__DOXYGEN__) -#define HAL_USE_EXT FALSE -#endif - /** * @brief Enables the GPT subsystem. */ @@ -114,13 +107,6 @@ #define HAL_USE_PWM FALSE #endif -/** - * @brief Enables the QSPI subsystem. - */ -#if !defined(HAL_USE_QSPI) || defined(__DOXYGEN__) -#define HAL_USE_QSPI FALSE -#endif - /** * @brief Enables the RTC subsystem. */ @@ -149,6 +135,14 @@ #define HAL_USE_SERIAL_USB TRUE #endif +/** + * @brief Enables the SIO subsystem. + */ +#if !defined(HAL_USE_SIO) || defined(__DOXYGEN__) +#define HAL_USE_SIO FALSE +#endif + + /** * @brief Enables the SPI subsystem. */ @@ -156,6 +150,13 @@ #define HAL_USE_SPI FALSE #endif +/** + * @brief Enables the TRNG subsystem. + */ +#if !defined(HAL_USE_TRNG) || defined(__DOXYGEN__) +#define HAL_USE_TRNG FALSE +#endif + /** * @brief Enables the UART subsystem. */ @@ -322,26 +323,6 @@ #define MMC_NICE_WAITING TRUE #endif -/*===========================================================================*/ -/* QSPI driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(QSPI_USE_WAIT) || defined(__DOXYGEN__) -#define QSPI_USE_WAIT TRUE -#endif - -/** - * @brief Enables the @p qspiAcquireBus() and @p qspiReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(QSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define QSPI_USE_MUTUAL_EXCLUSION TRUE -#endif - /*===========================================================================*/ /* SDC driver related settings. */ /*===========================================================================*/ @@ -503,6 +484,27 @@ #define USB_USE_WAIT FALSE #endif +/*===========================================================================*/ +/* WSPI driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Enables synchronous APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(WSPI_USE_WAIT) || defined(__DOXYGEN__) +#define WSPI_USE_WAIT TRUE +#endif + +/** + * @brief Enables the @p wspiAcquireBus() and @p wspiReleaseBus() APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(WSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) +#define WSPI_USE_MUTUAL_EXCLUSION TRUE +#endif + + // header for nanoFramework overlay #include "halconf_nf.h" diff --git a/targets/CMSIS-OS/ChibiOS/MBN_QUAIL/nanoCLR/chconf.h b/targets/CMSIS-OS/ChibiOS/MBN_QUAIL/nanoCLR/chconf.h index fd71cd0e5a..be4a9b45f6 100644 --- a/targets/CMSIS-OS/ChibiOS/MBN_QUAIL/nanoCLR/chconf.h +++ b/targets/CMSIS-OS/ChibiOS/MBN_QUAIL/nanoCLR/chconf.h @@ -5,7 +5,7 @@ // /** - * @file templates/chconf.h + * @file rt/templates/chconf.h * @brief Configuration file template. * @details A copy of this file must be placed in each project directory, it * contains the application specific kernel settings. @@ -19,7 +19,7 @@ #define CHCONF_H #define _CHIBIOS_RT_CONF_ -#define _CHIBIOS_RT_CONF_VER_5_1_ +#define _CHIBIOS_RT_CONF_VER_6_0_ /*===========================================================================*/ /** @@ -298,7 +298,7 @@ #define CH_CFG_USE_MEMPOOLS TRUE /** - * @brief Objects FIFOs APIs. + * @brief Objects FIFOs APIs. * @details If enabled then the objects FIFOs APIs are included * in the kernel. * @@ -306,6 +306,17 @@ */ #define CH_CFG_USE_OBJ_FIFOS TRUE +/** + * @brief Pipes APIs. + * @details If enabled then the pipes APIs are included + * in the kernel. + * + * @note The default is @p TRUE. + */ +#if !defined(CH_CFG_USE_PIPES) +#define CH_CFG_USE_PIPES FALSE /* temporary */ +#endif + /** * @brief Dynamic Threads APIs. * @details If enabled then the dynamic threads creation APIs are included @@ -367,6 +378,13 @@ */ #define CH_CFG_FACTORY_OBJ_FIFOS TRUE +/** + * @brief Enables factory for Pipes. + */ +#if !defined(CH_CFG_FACTORY_PIPES) || defined(__DOXYGEN__) +#define CH_CFG_FACTORY_PIPES TRUE +#endif + /** @} */ /*===========================================================================*/ diff --git a/targets/CMSIS-OS/ChibiOS/MBN_QUAIL/nanoCLR/halconf.h b/targets/CMSIS-OS/ChibiOS/MBN_QUAIL/nanoCLR/halconf.h index 5b88194cb3..69403d2187 100644 --- a/targets/CMSIS-OS/ChibiOS/MBN_QUAIL/nanoCLR/halconf.h +++ b/targets/CMSIS-OS/ChibiOS/MBN_QUAIL/nanoCLR/halconf.h @@ -19,7 +19,7 @@ #define HALCONF_H #define _CHIBIOS_HAL_CONF_ -#define _CHIBIOS_HAL_CONF_VER_6_0_ +#define _CHIBIOS_HAL_CONF_VER_7_0_ #include #include "mcuconf.h" @@ -61,14 +61,6 @@ #define HAL_USE_DAC FALSE #endif -/** - * @brief Enables the EXT subsystem. - */ -// this option is set at target_platform.h (from config file) -// #if !defined(HAL_USE_EXT) || defined(__DOXYGEN__) -// #define HAL_USE_EXT FALSE -// #endif - /** * @brief Enables the GPT subsystem. */ @@ -121,13 +113,6 @@ // #define HAL_USE_PWM TRUE // #endif -/** - * @brief Enables the QSPI subsystem. - */ -#if !defined(HAL_USE_QSPI) || defined(__DOXYGEN__) -#define HAL_USE_QSPI FALSE -#endif - /** * @brief Enables the RTC subsystem. */ @@ -158,6 +143,14 @@ #define HAL_USE_SERIAL_USB TRUE #endif +/** + * @brief Enables the SIO subsystem. + */ +#if !defined(HAL_USE_SIO) || defined(__DOXYGEN__) +#define HAL_USE_SIO FALSE +#endif + + /** * @brief Enables the SPI subsystem. */ @@ -166,6 +159,13 @@ // #define HAL_USE_SPI TRUE // #endif +/** + * @brief Enables the TRNG subsystem. + */ +#if !defined(HAL_USE_TRNG) || defined(__DOXYGEN__) +#define HAL_USE_TRNG FALSE +#endif + /** * @brief Enables the UART subsystem. */ @@ -335,26 +335,6 @@ #define MMC_NICE_WAITING TRUE #endif -/*===========================================================================*/ -/* QSPI driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(QSPI_USE_WAIT) || defined(__DOXYGEN__) -#define QSPI_USE_WAIT TRUE -#endif - -/** - * @brief Enables the @p qspiAcquireBus() and @p qspiReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(QSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define QSPI_USE_MUTUAL_EXCLUSION TRUE -#endif - /*===========================================================================*/ /* SDC driver related settings. */ /*===========================================================================*/ @@ -516,6 +496,27 @@ #define USB_USE_WAIT FALSE #endif +/*===========================================================================*/ +/* WSPI driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Enables synchronous APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(WSPI_USE_WAIT) || defined(__DOXYGEN__) +#define WSPI_USE_WAIT TRUE +#endif + +/** + * @brief Enables the @p wspiAcquireBus() and @p wspiReleaseBus() APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(WSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) +#define WSPI_USE_MUTUAL_EXCLUSION TRUE +#endif + + // header for nanoFramework overlay #include "halconf_nf.h" diff --git a/targets/CMSIS-OS/ChibiOS/NETDUINO3_WIFI/nanoBooter/chconf.h b/targets/CMSIS-OS/ChibiOS/NETDUINO3_WIFI/nanoBooter/chconf.h index caecdc92bc..7354bc15a4 100644 --- a/targets/CMSIS-OS/ChibiOS/NETDUINO3_WIFI/nanoBooter/chconf.h +++ b/targets/CMSIS-OS/ChibiOS/NETDUINO3_WIFI/nanoBooter/chconf.h @@ -5,7 +5,7 @@ // /** - * @file templates/chconf.h + * @file rt/templates/chconf.h * @brief Configuration file template. * @details A copy of this file must be placed in each project directory, it * contains the application specific kernel settings. @@ -19,7 +19,7 @@ #define CHCONF_H #define _CHIBIOS_RT_CONF_ -#define _CHIBIOS_RT_CONF_VER_5_1_ +#define _CHIBIOS_RT_CONF_VER_6_0_ /*===========================================================================*/ /** @@ -298,7 +298,7 @@ #define CH_CFG_USE_MEMPOOLS TRUE /** - * @brief Objects FIFOs APIs. + * @brief Objects FIFOs APIs. * @details If enabled then the objects FIFOs APIs are included * in the kernel. * @@ -306,6 +306,17 @@ */ #define CH_CFG_USE_OBJ_FIFOS TRUE +/** + * @brief Pipes APIs. + * @details If enabled then the pipes APIs are included + * in the kernel. + * + * @note The default is @p TRUE. + */ +#if !defined(CH_CFG_USE_PIPES) +#define CH_CFG_USE_PIPES FALSE /* temporary */ +#endif + /** * @brief Dynamic Threads APIs. * @details If enabled then the dynamic threads creation APIs are included @@ -367,6 +378,13 @@ */ #define CH_CFG_FACTORY_OBJ_FIFOS TRUE +/** + * @brief Enables factory for Pipes. + */ +#if !defined(CH_CFG_FACTORY_PIPES) || defined(__DOXYGEN__) +#define CH_CFG_FACTORY_PIPES TRUE +#endif + /** @} */ /*===========================================================================*/ diff --git a/targets/CMSIS-OS/ChibiOS/NETDUINO3_WIFI/nanoBooter/halconf.h b/targets/CMSIS-OS/ChibiOS/NETDUINO3_WIFI/nanoBooter/halconf.h index 5f334d3042..87caf2e4f8 100644 --- a/targets/CMSIS-OS/ChibiOS/NETDUINO3_WIFI/nanoBooter/halconf.h +++ b/targets/CMSIS-OS/ChibiOS/NETDUINO3_WIFI/nanoBooter/halconf.h @@ -19,7 +19,7 @@ #define HALCONF_H #define _CHIBIOS_HAL_CONF_ -#define _CHIBIOS_HAL_CONF_VER_6_0_ +#define _CHIBIOS_HAL_CONF_VER_7_0_ #include "mcuconf.h" @@ -58,13 +58,6 @@ #define HAL_USE_DAC FALSE #endif -/** - * @brief Enables the EXT subsystem. - */ -#if !defined(HAL_USE_EXT) || defined(__DOXYGEN__) -#define HAL_USE_EXT FALSE -#endif - /** * @brief Enables the GPT subsystem. */ @@ -114,13 +107,6 @@ #define HAL_USE_PWM FALSE #endif -/** - * @brief Enables the QSPI subsystem. - */ -#if !defined(HAL_USE_QSPI) || defined(__DOXYGEN__) -#define HAL_USE_QSPI FALSE -#endif - /** * @brief Enables the RTC subsystem. */ @@ -149,6 +135,14 @@ #define HAL_USE_SERIAL_USB TRUE #endif +/** + * @brief Enables the SIO subsystem. + */ +#if !defined(HAL_USE_SIO) || defined(__DOXYGEN__) +#define HAL_USE_SIO FALSE +#endif + + /** * @brief Enables the SPI subsystem. */ @@ -156,6 +150,13 @@ #define HAL_USE_SPI FALSE #endif +/** + * @brief Enables the TRNG subsystem. + */ +#if !defined(HAL_USE_TRNG) || defined(__DOXYGEN__) +#define HAL_USE_TRNG FALSE +#endif + /** * @brief Enables the UART subsystem. */ @@ -322,26 +323,6 @@ #define MMC_NICE_WAITING TRUE #endif -/*===========================================================================*/ -/* QSPI driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(QSPI_USE_WAIT) || defined(__DOXYGEN__) -#define QSPI_USE_WAIT TRUE -#endif - -/** - * @brief Enables the @p qspiAcquireBus() and @p qspiReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(QSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define QSPI_USE_MUTUAL_EXCLUSION TRUE -#endif - /*===========================================================================*/ /* SDC driver related settings. */ /*===========================================================================*/ @@ -503,6 +484,27 @@ #define USB_USE_WAIT FALSE #endif +/*===========================================================================*/ +/* WSPI driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Enables synchronous APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(WSPI_USE_WAIT) || defined(__DOXYGEN__) +#define WSPI_USE_WAIT TRUE +#endif + +/** + * @brief Enables the @p wspiAcquireBus() and @p wspiReleaseBus() APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(WSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) +#define WSPI_USE_MUTUAL_EXCLUSION TRUE +#endif + + // header for nanoFramework overlay #include "halconf_nf.h" diff --git a/targets/CMSIS-OS/ChibiOS/NETDUINO3_WIFI/nanoCLR/chconf.h b/targets/CMSIS-OS/ChibiOS/NETDUINO3_WIFI/nanoCLR/chconf.h index 0b8c98e002..6b8d0c426b 100644 --- a/targets/CMSIS-OS/ChibiOS/NETDUINO3_WIFI/nanoCLR/chconf.h +++ b/targets/CMSIS-OS/ChibiOS/NETDUINO3_WIFI/nanoCLR/chconf.h @@ -5,7 +5,7 @@ // /** - * @file templates/chconf.h + * @file rt/templates/chconf.h * @brief Configuration file template. * @details A copy of this file must be placed in each project directory, it * contains the application specific kernel settings. @@ -19,7 +19,7 @@ #define CHCONF_H #define _CHIBIOS_RT_CONF_ -#define _CHIBIOS_RT_CONF_VER_5_1_ +#define _CHIBIOS_RT_CONF_VER_6_0_ /*===========================================================================*/ /** @@ -298,7 +298,7 @@ #define CH_CFG_USE_MEMPOOLS TRUE /** - * @brief Objects FIFOs APIs. + * @brief Objects FIFOs APIs. * @details If enabled then the objects FIFOs APIs are included * in the kernel. * @@ -306,6 +306,17 @@ */ #define CH_CFG_USE_OBJ_FIFOS TRUE +/** + * @brief Pipes APIs. + * @details If enabled then the pipes APIs are included + * in the kernel. + * + * @note The default is @p TRUE. + */ +#if !defined(CH_CFG_USE_PIPES) +#define CH_CFG_USE_PIPES FALSE /* temporary */ +#endif + /** * @brief Dynamic Threads APIs. * @details If enabled then the dynamic threads creation APIs are included @@ -367,6 +378,13 @@ */ #define CH_CFG_FACTORY_OBJ_FIFOS TRUE +/** + * @brief Enables factory for Pipes. + */ +#if !defined(CH_CFG_FACTORY_PIPES) || defined(__DOXYGEN__) +#define CH_CFG_FACTORY_PIPES TRUE +#endif + /** @} */ /*===========================================================================*/ diff --git a/targets/CMSIS-OS/ChibiOS/NETDUINO3_WIFI/nanoCLR/halconf.h b/targets/CMSIS-OS/ChibiOS/NETDUINO3_WIFI/nanoCLR/halconf.h index 0118d80587..9bac03bf40 100644 --- a/targets/CMSIS-OS/ChibiOS/NETDUINO3_WIFI/nanoCLR/halconf.h +++ b/targets/CMSIS-OS/ChibiOS/NETDUINO3_WIFI/nanoCLR/halconf.h @@ -19,7 +19,7 @@ #define HALCONF_H #define _CHIBIOS_HAL_CONF_ -#define _CHIBIOS_HAL_CONF_VER_6_0_ +#define _CHIBIOS_HAL_CONF_VER_7_0_ #include #include "mcuconf.h" @@ -61,14 +61,6 @@ #define HAL_USE_DAC FALSE #endif -/** - * @brief Enables the EXT subsystem. - */ -// this option is set at target_platform.h (from config file) -// #if !defined(HAL_USE_EXT) || defined(__DOXYGEN__) -// #define HAL_USE_EXT FALSE -// #endif - /** * @brief Enables the GPT subsystem. */ @@ -121,13 +113,6 @@ // #define HAL_USE_PWM TRUE // #endif -/** - * @brief Enables the QSPI subsystem. - */ -#if !defined(HAL_USE_QSPI) || defined(__DOXYGEN__) -#define HAL_USE_QSPI FALSE -#endif - /** * @brief Enables the RTC subsystem. */ @@ -158,6 +143,14 @@ #define HAL_USE_SERIAL_USB TRUE #endif +/** + * @brief Enables the SIO subsystem. + */ +#if !defined(HAL_USE_SIO) || defined(__DOXYGEN__) +#define HAL_USE_SIO FALSE +#endif + + /** * @brief Enables the SPI subsystem. */ @@ -166,6 +159,13 @@ // #define HAL_USE_SPI TRUE // #endif +/** + * @brief Enables the TRNG subsystem. + */ +#if !defined(HAL_USE_TRNG) || defined(__DOXYGEN__) +#define HAL_USE_TRNG FALSE +#endif + /** * @brief Enables the UART subsystem. */ @@ -335,26 +335,6 @@ #define MMC_NICE_WAITING TRUE #endif -/*===========================================================================*/ -/* QSPI driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(QSPI_USE_WAIT) || defined(__DOXYGEN__) -#define QSPI_USE_WAIT TRUE -#endif - -/** - * @brief Enables the @p qspiAcquireBus() and @p qspiReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(QSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define QSPI_USE_MUTUAL_EXCLUSION TRUE -#endif - /*===========================================================================*/ /* SDC driver related settings. */ /*===========================================================================*/ @@ -516,6 +496,27 @@ #define USB_USE_WAIT FALSE #endif +/*===========================================================================*/ +/* WSPI driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Enables synchronous APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(WSPI_USE_WAIT) || defined(__DOXYGEN__) +#define WSPI_USE_WAIT TRUE +#endif + +/** + * @brief Enables the @p wspiAcquireBus() and @p wspiReleaseBus() APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(WSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) +#define WSPI_USE_MUTUAL_EXCLUSION TRUE +#endif + + // header for nanoFramework overlay #include "halconf_nf.h" diff --git a/targets/CMSIS-OS/ChibiOS/ST_NUCLEO64_F091RC/nanoBooter/chconf.h b/targets/CMSIS-OS/ChibiOS/ST_NUCLEO64_F091RC/nanoBooter/chconf.h index cccbf35285..6744658ceb 100644 --- a/targets/CMSIS-OS/ChibiOS/ST_NUCLEO64_F091RC/nanoBooter/chconf.h +++ b/targets/CMSIS-OS/ChibiOS/ST_NUCLEO64_F091RC/nanoBooter/chconf.h @@ -5,7 +5,7 @@ // /** - * @file templates/chconf.h + * @file rt/templates/chconf.h * @brief Configuration file template. * @details A copy of this file must be placed in each project directory, it * contains the application specific kernel settings. @@ -19,7 +19,7 @@ #define CHCONF_H #define _CHIBIOS_RT_CONF_ -#define _CHIBIOS_RT_CONF_VER_5_1_ +#define _CHIBIOS_RT_CONF_VER_6_0_ /*===========================================================================*/ /** @@ -350,7 +350,7 @@ #endif /** - * @brief Objects FIFOs APIs. + * @brief Objects FIFOs APIs. * @details If enabled then the objects FIFOs APIs are included * in the kernel. * @@ -360,6 +360,17 @@ #define CH_CFG_USE_OBJ_FIFOS TRUE #endif +/** + * @brief Pipes APIs. + * @details If enabled then the pipes APIs are included + * in the kernel. + * + * @note The default is @p TRUE. + */ +#if !defined(CH_CFG_USE_PIPES) +#define CH_CFG_USE_PIPES FALSE /* temporary */ +#endif + /** * @brief Dynamic Threads APIs. * @details If enabled then the dynamic threads creation APIs are included @@ -437,6 +448,13 @@ #define CH_CFG_FACTORY_OBJ_FIFOS TRUE #endif +/** + * @brief Enables factory for Pipes. + */ +#if !defined(CH_CFG_FACTORY_PIPES) || defined(__DOXYGEN__) +#define CH_CFG_FACTORY_PIPES TRUE +#endif + /** @} */ /*===========================================================================*/ diff --git a/targets/CMSIS-OS/ChibiOS/ST_NUCLEO64_F091RC/nanoBooter/halconf.h b/targets/CMSIS-OS/ChibiOS/ST_NUCLEO64_F091RC/nanoBooter/halconf.h index a87ae097a9..98974f752b 100644 --- a/targets/CMSIS-OS/ChibiOS/ST_NUCLEO64_F091RC/nanoBooter/halconf.h +++ b/targets/CMSIS-OS/ChibiOS/ST_NUCLEO64_F091RC/nanoBooter/halconf.h @@ -19,7 +19,7 @@ #define HALCONF_H #define _CHIBIOS_HAL_CONF_ -#define _CHIBIOS_HAL_CONF_VER_6_0_ +#define _CHIBIOS_HAL_CONF_VER_7_0_ #include "mcuconf.h" @@ -58,13 +58,6 @@ #define HAL_USE_DAC FALSE #endif -/** - * @brief Enables the EXT subsystem. - */ -#if !defined(HAL_USE_EXT) || defined(__DOXYGEN__) -#define HAL_USE_EXT FALSE -#endif - /** * @brief Enables the GPT subsystem. */ @@ -114,13 +107,6 @@ #define HAL_USE_PWM FALSE #endif -/** - * @brief Enables the QSPI subsystem. - */ -#if !defined(HAL_USE_QSPI) || defined(__DOXYGEN__) -#define HAL_USE_QSPI FALSE -#endif - /** * @brief Enables the RTC subsystem. */ @@ -149,6 +135,14 @@ #define HAL_USE_SERIAL_USB FALSE #endif +/** + * @brief Enables the SIO subsystem. + */ +#if !defined(HAL_USE_SIO) || defined(__DOXYGEN__) +#define HAL_USE_SIO FALSE +#endif + + /** * @brief Enables the SPI subsystem. */ @@ -156,6 +150,13 @@ #define HAL_USE_SPI FALSE #endif +/** + * @brief Enables the TRNG subsystem. + */ +#if !defined(HAL_USE_TRNG) || defined(__DOXYGEN__) +#define HAL_USE_TRNG FALSE +#endif + /** * @brief Enables the UART subsystem. */ @@ -322,26 +323,6 @@ #define MMC_NICE_WAITING TRUE #endif -/*===========================================================================*/ -/* QSPI driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(QSPI_USE_WAIT) || defined(__DOXYGEN__) -#define QSPI_USE_WAIT TRUE -#endif - -/** - * @brief Enables the @p qspiAcquireBus() and @p qspiReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(QSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define QSPI_USE_MUTUAL_EXCLUSION TRUE -#endif - /*===========================================================================*/ /* SDC driver related settings. */ /*===========================================================================*/ @@ -503,6 +484,27 @@ #define USB_USE_WAIT FALSE #endif +/*===========================================================================*/ +/* WSPI driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Enables synchronous APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(WSPI_USE_WAIT) || defined(__DOXYGEN__) +#define WSPI_USE_WAIT TRUE +#endif + +/** + * @brief Enables the @p wspiAcquireBus() and @p wspiReleaseBus() APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(WSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) +#define WSPI_USE_MUTUAL_EXCLUSION TRUE +#endif + + // header for nanoFramework overlay #include "halconf_nf.h" diff --git a/targets/CMSIS-OS/ChibiOS/ST_NUCLEO64_F091RC/nanoCLR/chconf.h b/targets/CMSIS-OS/ChibiOS/ST_NUCLEO64_F091RC/nanoCLR/chconf.h index dfa01c197b..131b15dc1d 100644 --- a/targets/CMSIS-OS/ChibiOS/ST_NUCLEO64_F091RC/nanoCLR/chconf.h +++ b/targets/CMSIS-OS/ChibiOS/ST_NUCLEO64_F091RC/nanoCLR/chconf.h @@ -5,7 +5,7 @@ // /** - * @file templates/chconf.h + * @file rt/templates/chconf.h * @brief Configuration file template. * @details A copy of this file must be placed in each project directory, it * contains the application specific kernel settings. @@ -19,7 +19,7 @@ #define CHCONF_H #define _CHIBIOS_RT_CONF_ -#define _CHIBIOS_RT_CONF_VER_5_1_ +#define _CHIBIOS_RT_CONF_VER_6_0_ /*===========================================================================*/ /** @@ -350,7 +350,7 @@ #endif /** - * @brief Objects FIFOs APIs. + * @brief Objects FIFOs APIs. * @details If enabled then the objects FIFOs APIs are included * in the kernel. * @@ -360,6 +360,17 @@ #define CH_CFG_USE_OBJ_FIFOS TRUE #endif +/** + * @brief Pipes APIs. + * @details If enabled then the pipes APIs are included + * in the kernel. + * + * @note The default is @p TRUE. + */ +#if !defined(CH_CFG_USE_PIPES) +#define CH_CFG_USE_PIPES FALSE /* temporary */ +#endif + /** * @brief Dynamic Threads APIs. * @details If enabled then the dynamic threads creation APIs are included @@ -437,6 +448,13 @@ #define CH_CFG_FACTORY_OBJ_FIFOS TRUE #endif +/** + * @brief Enables factory for Pipes. + */ +#if !defined(CH_CFG_FACTORY_PIPES) || defined(__DOXYGEN__) +#define CH_CFG_FACTORY_PIPES TRUE +#endif + /** @} */ /*===========================================================================*/ diff --git a/targets/CMSIS-OS/ChibiOS/ST_NUCLEO64_F091RC/nanoCLR/halconf.h b/targets/CMSIS-OS/ChibiOS/ST_NUCLEO64_F091RC/nanoCLR/halconf.h index afdb6de483..5c83aa980d 100644 --- a/targets/CMSIS-OS/ChibiOS/ST_NUCLEO64_F091RC/nanoCLR/halconf.h +++ b/targets/CMSIS-OS/ChibiOS/ST_NUCLEO64_F091RC/nanoCLR/halconf.h @@ -19,7 +19,7 @@ #define HALCONF_H #define _CHIBIOS_HAL_CONF_ -#define _CHIBIOS_HAL_CONF_VER_6_0_ +#define _CHIBIOS_HAL_CONF_VER_7_0_ #include #include "mcuconf.h" @@ -61,14 +61,6 @@ #define HAL_USE_DAC FALSE #endif -/** - * @brief Enables the EXT subsystem. - */ -// this option is set at target_platform.h (from config file) -// #if !defined(HAL_USE_EXT) || defined(__DOXYGEN__) -// #define HAL_USE_EXT FALSE -// #endif - /** * @brief Enables the GPT subsystem. */ @@ -121,13 +113,6 @@ // #define HAL_USE_PWM FALSE // #endif -/** - * @brief Enables the QSPI subsystem. - */ -#if !defined(HAL_USE_QSPI) || defined(__DOXYGEN__) -#define HAL_USE_QSPI FALSE -#endif - /** * @brief Enables the RTC subsystem. */ @@ -158,6 +143,14 @@ #define HAL_USE_SERIAL_USB FALSE #endif +/** + * @brief Enables the SIO subsystem. + */ +#if !defined(HAL_USE_SIO) || defined(__DOXYGEN__) +#define HAL_USE_SIO FALSE +#endif + + /** * @brief Enables the SPI subsystem. */ @@ -166,6 +159,13 @@ // #define HAL_USE_SPI FALSE // #endif +/** + * @brief Enables the TRNG subsystem. + */ +#if !defined(HAL_USE_TRNG) || defined(__DOXYGEN__) +#define HAL_USE_TRNG FALSE +#endif + /** * @brief Enables the UART subsystem. */ @@ -334,26 +334,6 @@ #define MMC_NICE_WAITING TRUE #endif -/*===========================================================================*/ -/* QSPI driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(QSPI_USE_WAIT) || defined(__DOXYGEN__) -#define QSPI_USE_WAIT TRUE -#endif - -/** - * @brief Enables the @p qspiAcquireBus() and @p qspiReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(QSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define QSPI_USE_MUTUAL_EXCLUSION TRUE -#endif - /*===========================================================================*/ /* SDC driver related settings. */ /*===========================================================================*/ @@ -515,6 +495,27 @@ #define USB_USE_WAIT FALSE #endif +/*===========================================================================*/ +/* WSPI driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Enables synchronous APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(WSPI_USE_WAIT) || defined(__DOXYGEN__) +#define WSPI_USE_WAIT TRUE +#endif + +/** + * @brief Enables the @p wspiAcquireBus() and @p wspiReleaseBus() APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(WSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) +#define WSPI_USE_MUTUAL_EXCLUSION TRUE +#endif + + // header for nanoFramework overlay #include "halconf_nf.h" diff --git a/targets/CMSIS-OS/ChibiOS/ST_STM32F429I_DISCOVERY/nanoBooter/chconf.h b/targets/CMSIS-OS/ChibiOS/ST_STM32F429I_DISCOVERY/nanoBooter/chconf.h index 3d15c6f70f..02951ee03c 100644 --- a/targets/CMSIS-OS/ChibiOS/ST_STM32F429I_DISCOVERY/nanoBooter/chconf.h +++ b/targets/CMSIS-OS/ChibiOS/ST_STM32F429I_DISCOVERY/nanoBooter/chconf.h @@ -5,7 +5,7 @@ // /** - * @file templates/chconf.h + * @file rt/templates/chconf.h * @brief Configuration file template. * @details A copy of this file must be placed in each project directory, it * contains the application specific kernel settings. @@ -19,7 +19,7 @@ #define CHCONF_H #define _CHIBIOS_RT_CONF_ -#define _CHIBIOS_RT_CONF_VER_5_1_ +#define _CHIBIOS_RT_CONF_VER_6_0_ /*===========================================================================*/ /** @@ -298,7 +298,7 @@ #define CH_CFG_USE_MEMPOOLS TRUE /** - * @brief Objects FIFOs APIs. + * @brief Objects FIFOs APIs. * @details If enabled then the objects FIFOs APIs are included * in the kernel. * @@ -306,6 +306,17 @@ */ #define CH_CFG_USE_OBJ_FIFOS TRUE +/** + * @brief Pipes APIs. + * @details If enabled then the pipes APIs are included + * in the kernel. + * + * @note The default is @p TRUE. + */ +#if !defined(CH_CFG_USE_PIPES) +#define CH_CFG_USE_PIPES FALSE /* temporary */ +#endif + /** * @brief Dynamic Threads APIs. * @details If enabled then the dynamic threads creation APIs are included @@ -367,6 +378,13 @@ */ #define CH_CFG_FACTORY_OBJ_FIFOS TRUE +/** + * @brief Enables factory for Pipes. + */ +#if !defined(CH_CFG_FACTORY_PIPES) || defined(__DOXYGEN__) +#define CH_CFG_FACTORY_PIPES TRUE +#endif + /** @} */ /*===========================================================================*/ diff --git a/targets/CMSIS-OS/ChibiOS/ST_STM32F429I_DISCOVERY/nanoBooter/halconf.h b/targets/CMSIS-OS/ChibiOS/ST_STM32F429I_DISCOVERY/nanoBooter/halconf.h index 87696d5e88..745fc552c1 100644 --- a/targets/CMSIS-OS/ChibiOS/ST_STM32F429I_DISCOVERY/nanoBooter/halconf.h +++ b/targets/CMSIS-OS/ChibiOS/ST_STM32F429I_DISCOVERY/nanoBooter/halconf.h @@ -18,6 +18,9 @@ #ifndef HALCONF_H #define HALCONF_H +#define _CHIBIOS_HAL_CONF_ +#define _CHIBIOS_HAL_CONF_VER_7_0_ + #include "mcuconf.h" /** @@ -42,17 +45,17 @@ #endif /** - * @brief Enables the DAC subsystem. + * @brief Enables the cryptographic subsystem. */ -#if !defined(HAL_USE_DAC) || defined(__DOXYGEN__) -#define HAL_USE_DAC FALSE +#if !defined(HAL_USE_CRY) || defined(__DOXYGEN__) +#define HAL_USE_CRY FALSE #endif /** - * @brief Enables the EXT subsystem. + * @brief Enables the DAC subsystem. */ -#if !defined(HAL_USE_EXT) || defined(__DOXYGEN__) -#define HAL_USE_EXT FALSE +#if !defined(HAL_USE_DAC) || defined(__DOXYGEN__) +#define HAL_USE_DAC FALSE #endif /** @@ -132,6 +135,14 @@ #define HAL_USE_SERIAL_USB TRUE #endif +/** + * @brief Enables the SIO subsystem. + */ +#if !defined(HAL_USE_SIO) || defined(__DOXYGEN__) +#define HAL_USE_SIO FALSE +#endif + + /** * @brief Enables the SPI subsystem. */ @@ -139,6 +150,13 @@ #define HAL_USE_SPI FALSE #endif +/** + * @brief Enables the TRNG subsystem. + */ +#if !defined(HAL_USE_TRNG) || defined(__DOXYGEN__) +#define HAL_USE_TRNG FALSE +#endif + /** * @brief Enables the UART subsystem. */ @@ -160,6 +178,33 @@ #define HAL_USE_WDG FALSE #endif +/** + * @brief Enables the WSPI subsystem. + */ +#if !defined(HAL_USE_WSPI) || defined(__DOXYGEN__) +#define HAL_USE_WSPI FALSE +#endif + +/*===========================================================================*/ +/* PAL driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Enables synchronous APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(PAL_USE_CALLBACKS) || defined(__DOXYGEN__) +#define PAL_USE_CALLBACKS FALSE +#endif + +/** + * @brief Enables synchronous APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(PAL_USE_WAIT) || defined(__DOXYGEN__) +#define PAL_USE_WAIT FALSE +#endif + /*===========================================================================*/ /* ADC driver related settings. */ /*===========================================================================*/ @@ -191,6 +236,55 @@ #define CAN_USE_SLEEP_MODE TRUE #endif +/** + * @brief Enforces the driver to use direct callbacks rather than OSAL events. + */ +#if !defined(CAN_ENFORCE_USE_CALLBACKS) || defined(__DOXYGEN__) +#define CAN_ENFORCE_USE_CALLBACKS FALSE +#endif + +/*===========================================================================*/ +/* CRY driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Enables the SW fall-back of the cryptographic driver. + * @details When enabled, this option, activates a fall-back software + * implementation for algorithms not supported by the underlying + * hardware. + * @note Fall-back implementations may not be present for all algorithms. + */ +#if !defined(HAL_CRY_USE_FALLBACK) || defined(__DOXYGEN__) +#define HAL_CRY_USE_FALLBACK FALSE +#endif + +/** + * @brief Makes the driver forcibly use the fall-back implementations. + */ +#if !defined(HAL_CRY_ENFORCE_FALLBACK) || defined(__DOXYGEN__) +#define HAL_CRY_ENFORCE_FALLBACK FALSE +#endif + +/*===========================================================================*/ +/* DAC driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Enables synchronous APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(DAC_USE_WAIT) || defined(__DOXYGEN__) +#define DAC_USE_WAIT TRUE +#endif + +/** + * @brief Enables the @p dacAcquireBus() and @p dacReleaseBus() APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(DAC_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) +#define DAC_USE_MUTUAL_EXCLUSION TRUE +#endif + /*===========================================================================*/ /* I2C driver related settings. */ /*===========================================================================*/ @@ -267,6 +361,20 @@ #define SDC_NICE_WAITING TRUE #endif +/** + * @brief OCR initialization constant for V20 cards. + */ +#if !defined(SDC_INIT_OCR_V20) || defined(__DOXYGEN__) +#define SDC_INIT_OCR_V20 0x50FF8000U +#endif + +/** + * @brief OCR initialization constant for non-V20 cards. + */ +#if !defined(SDC_INIT_OCR) || defined(__DOXYGEN__) +#define SDC_INIT_OCR 0x80100000U +#endif + /*===========================================================================*/ /* SERIAL driver related settings. */ /*===========================================================================*/ @@ -326,6 +434,14 @@ #define SPI_USE_WAIT TRUE #endif +/** + * @brief Enables circular transfers APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(SPI_USE_CIRCULAR) || defined(__DOXYGEN__) +#define SPI_USE_CIRCULAR FALSE +#endif + /** * @brief Enables the @p spiAcquireBus() and @p spiReleaseBus() APIs. * @note Disabling this option saves both code and data space. @@ -334,6 +450,14 @@ #define SPI_USE_MUTUAL_EXCLUSION TRUE #endif +/** + * @brief Handling method for SPI CS line. + * @note Disabling this option saves both code and data space. + */ +#if !defined(SPI_SELECT_MODE) || defined(__DOXYGEN__) +#define SPI_SELECT_MODE SPI_SELECT_MODE_PAD +#endif + /*===========================================================================*/ /* UART driver related settings. */ /*===========================================================================*/ @@ -366,6 +490,27 @@ #define USB_USE_WAIT FALSE #endif +/*===========================================================================*/ +/* WSPI driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Enables synchronous APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(WSPI_USE_WAIT) || defined(__DOXYGEN__) +#define WSPI_USE_WAIT TRUE +#endif + +/** + * @brief Enables the @p wspiAcquireBus() and @p wspiReleaseBus() APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(WSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) +#define WSPI_USE_MUTUAL_EXCLUSION TRUE +#endif + + // header for nanoFramework overlay #include "halconf_nf.h" diff --git a/targets/CMSIS-OS/ChibiOS/ST_STM32F429I_DISCOVERY/nanoCLR/chconf.h b/targets/CMSIS-OS/ChibiOS/ST_STM32F429I_DISCOVERY/nanoCLR/chconf.h index ff58411886..be688b6ce3 100644 --- a/targets/CMSIS-OS/ChibiOS/ST_STM32F429I_DISCOVERY/nanoCLR/chconf.h +++ b/targets/CMSIS-OS/ChibiOS/ST_STM32F429I_DISCOVERY/nanoCLR/chconf.h @@ -5,7 +5,7 @@ // /** - * @file templates/chconf.h + * @file rt/templates/chconf.h * @brief Configuration file template. * @details A copy of this file must be placed in each project directory, it * contains the application specific kernel settings. @@ -19,7 +19,7 @@ #define CHCONF_H #define _CHIBIOS_RT_CONF_ -#define _CHIBIOS_RT_CONF_VER_5_1_ +#define _CHIBIOS_RT_CONF_VER_6_0_ /*===========================================================================*/ /** @@ -298,7 +298,7 @@ #define CH_CFG_USE_MEMPOOLS TRUE /** - * @brief Objects FIFOs APIs. + * @brief Objects FIFOs APIs. * @details If enabled then the objects FIFOs APIs are included * in the kernel. * @@ -306,6 +306,17 @@ */ #define CH_CFG_USE_OBJ_FIFOS TRUE +/** + * @brief Pipes APIs. + * @details If enabled then the pipes APIs are included + * in the kernel. + * + * @note The default is @p TRUE. + */ +#if !defined(CH_CFG_USE_PIPES) +#define CH_CFG_USE_PIPES FALSE /* temporary */ +#endif + /** * @brief Dynamic Threads APIs. * @details If enabled then the dynamic threads creation APIs are included @@ -367,6 +378,13 @@ */ #define CH_CFG_FACTORY_OBJ_FIFOS TRUE +/** + * @brief Enables factory for Pipes. + */ +#if !defined(CH_CFG_FACTORY_PIPES) || defined(__DOXYGEN__) +#define CH_CFG_FACTORY_PIPES TRUE +#endif + /** @} */ /*===========================================================================*/ diff --git a/targets/CMSIS-OS/ChibiOS/ST_STM32F429I_DISCOVERY/nanoCLR/halconf.h b/targets/CMSIS-OS/ChibiOS/ST_STM32F429I_DISCOVERY/nanoCLR/halconf.h index 0a47dfcf59..d777827d0f 100644 --- a/targets/CMSIS-OS/ChibiOS/ST_STM32F429I_DISCOVERY/nanoCLR/halconf.h +++ b/targets/CMSIS-OS/ChibiOS/ST_STM32F429I_DISCOVERY/nanoCLR/halconf.h @@ -19,7 +19,7 @@ #define HALCONF_H #define _CHIBIOS_HAL_CONF_ -#define _CHIBIOS_HAL_CONF_VER_6_0_ +#define _CHIBIOS_HAL_CONF_VER_7_0_ #include #include "mcuconf.h" @@ -61,14 +61,6 @@ #define HAL_USE_DAC FALSE #endif -/** - * @brief Enables the EXT subsystem. - */ -// this option is set at target_platform.h (from config file) -// #if !defined(HAL_USE_EXT) || defined(__DOXYGEN__) -// #define HAL_USE_EXT FALSE -// #endif - /** * @brief Enables the GPT subsystem. */ @@ -121,13 +113,6 @@ // #define HAL_USE_PWM FALSE // #endif -/** - * @brief Enables the QSPI subsystem. - */ -#if !defined(HAL_USE_QSPI) || defined(__DOXYGEN__) -#define HAL_USE_QSPI FALSE -#endif - /** * @brief Enables the RTC subsystem. */ @@ -158,6 +143,14 @@ #define HAL_USE_SERIAL_USB TRUE #endif +/** + * @brief Enables the SIO subsystem. + */ +#if !defined(HAL_USE_SIO) || defined(__DOXYGEN__) +#define HAL_USE_SIO FALSE +#endif + + /** * @brief Enables the SPI subsystem. */ @@ -166,6 +159,13 @@ // #define HAL_USE_SPI FALSE // #endif +/** + * @brief Enables the TRNG subsystem. + */ +#if !defined(HAL_USE_TRNG) || defined(__DOXYGEN__) +#define HAL_USE_TRNG FALSE +#endif + /** * @brief Enables the UART subsystem. */ @@ -335,26 +335,6 @@ #define MMC_NICE_WAITING TRUE #endif -/*===========================================================================*/ -/* QSPI driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(QSPI_USE_WAIT) || defined(__DOXYGEN__) -#define QSPI_USE_WAIT TRUE -#endif - -/** - * @brief Enables the @p qspiAcquireBus() and @p qspiReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(QSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define QSPI_USE_MUTUAL_EXCLUSION TRUE -#endif - /*===========================================================================*/ /* SDC driver related settings. */ /*===========================================================================*/ @@ -532,6 +512,27 @@ #define USB_USE_WAIT FALSE #endif +/*===========================================================================*/ +/* WSPI driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Enables synchronous APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(WSPI_USE_WAIT) || defined(__DOXYGEN__) +#define WSPI_USE_WAIT TRUE +#endif + +/** + * @brief Enables the @p wspiAcquireBus() and @p wspiReleaseBus() APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(WSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) +#define WSPI_USE_MUTUAL_EXCLUSION TRUE +#endif + + // header for nanoFramework overlay #include "halconf_nf.h" diff --git a/targets/CMSIS-OS/ChibiOS/ST_STM32F429I_DISCOVERY/nanoCLR/mcuconf.h b/targets/CMSIS-OS/ChibiOS/ST_STM32F429I_DISCOVERY/nanoCLR/mcuconf.h index 73a2424474..9fb819e5c9 100644 --- a/targets/CMSIS-OS/ChibiOS/ST_STM32F429I_DISCOVERY/nanoCLR/mcuconf.h +++ b/targets/CMSIS-OS/ChibiOS/ST_STM32F429I_DISCOVERY/nanoCLR/mcuconf.h @@ -22,6 +22,7 @@ */ #define STM32F4xx_MCUCONF +#define STM32F429_MCUCONF /* * HAL driver system settings. diff --git a/targets/CMSIS-OS/ChibiOS/ST_STM32F769I_DISCOVERY/nanoBooter/chconf.h b/targets/CMSIS-OS/ChibiOS/ST_STM32F769I_DISCOVERY/nanoBooter/chconf.h index c67a141652..353eaa9ce0 100644 --- a/targets/CMSIS-OS/ChibiOS/ST_STM32F769I_DISCOVERY/nanoBooter/chconf.h +++ b/targets/CMSIS-OS/ChibiOS/ST_STM32F769I_DISCOVERY/nanoBooter/chconf.h @@ -5,7 +5,7 @@ // /** - * @file templates/chconf.h + * @file rt/templates/chconf.h * @brief Configuration file template. * @details A copy of this file must be placed in each project directory, it * contains the application specific kernel settings. @@ -19,7 +19,7 @@ #define CHCONF_H #define _CHIBIOS_RT_CONF_ -#define _CHIBIOS_RT_CONF_VER_5_1_ +#define _CHIBIOS_RT_CONF_VER_6_0_ /*===========================================================================*/ /** @@ -298,7 +298,7 @@ #define CH_CFG_USE_MEMPOOLS TRUE /** - * @brief Objects FIFOs APIs. + * @brief Objects FIFOs APIs. * @details If enabled then the objects FIFOs APIs are included * in the kernel. * @@ -306,6 +306,9 @@ */ #define CH_CFG_USE_OBJ_FIFOS TRUE +#define CH_CFG_USE_PIPES FALSE /* temporary */ + + /** * @brief Dynamic Threads APIs. * @details If enabled then the dynamic threads creation APIs are included @@ -367,6 +370,11 @@ */ #define CH_CFG_FACTORY_OBJ_FIFOS TRUE +/** + * @brief Enables factory for Pipes. + */ +#define CH_CFG_FACTORY_PIPES TRUE + /** @} */ /*===========================================================================*/ diff --git a/targets/CMSIS-OS/ChibiOS/ST_STM32F769I_DISCOVERY/nanoBooter/halconf.h b/targets/CMSIS-OS/ChibiOS/ST_STM32F769I_DISCOVERY/nanoBooter/halconf.h index d0c8dc6c71..9b80ecff37 100644 --- a/targets/CMSIS-OS/ChibiOS/ST_STM32F769I_DISCOVERY/nanoBooter/halconf.h +++ b/targets/CMSIS-OS/ChibiOS/ST_STM32F769I_DISCOVERY/nanoBooter/halconf.h @@ -19,7 +19,7 @@ #define HALCONF_H #define _CHIBIOS_HAL_CONF_ -#define _CHIBIOS_HAL_CONF_VER_6_0_ +#define _CHIBIOS_HAL_CONF_VER_7_0_ #include "mcuconf.h" @@ -58,13 +58,6 @@ #define HAL_USE_DAC FALSE #endif -/** - * @brief Enables the EXT subsystem. - */ -#if !defined(HAL_USE_EXT) || defined(__DOXYGEN__) -#define HAL_USE_EXT FALSE -#endif - /** * @brief Enables the GPT subsystem. */ @@ -114,13 +107,6 @@ #define HAL_USE_PWM FALSE #endif -/** - * @brief Enables the QSPI subsystem. - */ -#if !defined(HAL_USE_QSPI) || defined(__DOXYGEN__) -#define HAL_USE_QSPI FALSE -#endif - /** * @brief Enables the RTC subsystem. */ @@ -149,6 +135,13 @@ #define HAL_USE_SERIAL_USB FALSE #endif +/** + * @brief Enables the SIO subsystem. + */ +#if !defined(HAL_USE_SIO) || defined(__DOXYGEN__) +#define HAL_USE_SIO FALSE +#endif + /** * @brief Enables the SPI subsystem. */ @@ -156,6 +149,13 @@ #define HAL_USE_SPI FALSE #endif +/** + * @brief Enables the TRNG subsystem. + */ +#if !defined(HAL_USE_TRNG) || defined(__DOXYGEN__) +#define HAL_USE_TRNG FALSE +#endif + /** * @brief Enables the UART subsystem. */ @@ -176,6 +176,14 @@ #if !defined(HAL_USE_WDG) || defined(__DOXYGEN__) #define HAL_USE_WDG FALSE #endif + +/** + * @brief Enables the WSPI subsystem. + */ +#if !defined(HAL_USE_WSPI) || defined(__DOXYGEN__) +#define HAL_USE_WSPI FALSE +#endif + /*===========================================================================*/ /* PAL driver related settings. */ /*===========================================================================*/ @@ -321,26 +329,6 @@ #define MMC_NICE_WAITING TRUE #endif -/*===========================================================================*/ -/* QSPI driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(QSPI_USE_WAIT) || defined(__DOXYGEN__) -#define QSPI_USE_WAIT TRUE -#endif - -/** - * @brief Enables the @p qspiAcquireBus() and @p qspiReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(QSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define QSPI_USE_MUTUAL_EXCLUSION TRUE -#endif - /*===========================================================================*/ /* SDC driver related settings. */ /*===========================================================================*/ @@ -502,8 +490,29 @@ #define USB_USE_WAIT FALSE #endif +/*===========================================================================*/ +/* WSPI driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Enables synchronous APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(WSPI_USE_WAIT) || defined(__DOXYGEN__) +#define WSPI_USE_WAIT TRUE +#endif + +/** + * @brief Enables the @p wspiAcquireBus() and @p wspiReleaseBus() APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(WSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) +#define WSPI_USE_MUTUAL_EXCLUSION TRUE +#endif + + // header for nanoFramework overlay #include "halconf_nf.h" #endif /* HALCONF_H */ -/** @} */ \ No newline at end of file +/** @} */ diff --git a/targets/CMSIS-OS/ChibiOS/ST_STM32F769I_DISCOVERY/nanoBooter/mcuconf.h b/targets/CMSIS-OS/ChibiOS/ST_STM32F769I_DISCOVERY/nanoBooter/mcuconf.h index 644ff8168d..be56ce4438 100644 --- a/targets/CMSIS-OS/ChibiOS/ST_STM32F769I_DISCOVERY/nanoBooter/mcuconf.h +++ b/targets/CMSIS-OS/ChibiOS/ST_STM32F769I_DISCOVERY/nanoBooter/mcuconf.h @@ -22,6 +22,11 @@ */ #define STM32F7xx_MCUCONF +//#define STM32F765_MCUCONF +//#define STM32F767_MCUCONF +//#define STM32F777_MCUCONF +#define STM32F769_MCUCONF +//#define STM32F779_MCUCONF /* * HAL driver system settings. @@ -351,6 +356,8 @@ #define STM32_UART_UART4_IRQ_PRIORITY 12 #define STM32_UART_UART5_IRQ_PRIORITY 12 #define STM32_UART_USART6_IRQ_PRIORITY 12 +#define STM32_UART_UART7_IRQ_PRIORITY 12 +#define STM32_UART_UART8_IRQ_PRIORITY 12 #define STM32_UART_USART1_DMA_PRIORITY 0 #define STM32_UART_USART2_DMA_PRIORITY 0 #define STM32_UART_USART3_DMA_PRIORITY 0 @@ -379,4 +386,10 @@ */ #define STM32_WDG_USE_IWDG FALSE +/* + * WSPI driver system settings. + */ +#define STM32_WSPI_USE_QUADSPI1 FALSE +#define STM32_WSPI_QUADSPI1_DMA_STREAM STM32_DMA_STREAM_ID(2, 7) + #endif /* MCUCONF_H */ \ No newline at end of file diff --git a/targets/CMSIS-OS/ChibiOS/ST_STM32F769I_DISCOVERY/nanoCLR/chconf.h b/targets/CMSIS-OS/ChibiOS/ST_STM32F769I_DISCOVERY/nanoCLR/chconf.h index f133d53be3..412955c836 100644 --- a/targets/CMSIS-OS/ChibiOS/ST_STM32F769I_DISCOVERY/nanoCLR/chconf.h +++ b/targets/CMSIS-OS/ChibiOS/ST_STM32F769I_DISCOVERY/nanoCLR/chconf.h @@ -4,7 +4,7 @@ // See LICENSE file in the project root for full license information. // /** - * @file templates/chconf.h + * @file rt/templates/chconf.h * @brief Configuration file template. * @details A copy of this file must be placed in each project directory, it * contains the application specific kernel settings. @@ -18,7 +18,7 @@ #define CHCONF_H #define _CHIBIOS_RT_CONF_ -#define _CHIBIOS_RT_CONF_VER_5_1_ +#define _CHIBIOS_RT_CONF_VER_6_0_ /*===========================================================================*/ /** @@ -349,7 +349,7 @@ #endif /** - * @brief Objects FIFOs APIs. + * @brief Objects FIFOs APIs. * @details If enabled then the objects FIFOs APIs are included * in the kernel. * @@ -359,6 +359,17 @@ #define CH_CFG_USE_OBJ_FIFOS TRUE #endif +/** + * @brief Pipes APIs. + * @details If enabled then the pipes APIs are included + * in the kernel. + * + * @note The default is @p TRUE. + */ +#if !defined(CH_CFG_USE_PIPES) +#define CH_CFG_USE_PIPES FALSE /* temporary */ +#endif + /** * @brief Dynamic Threads APIs. * @details If enabled then the dynamic threads creation APIs are included @@ -436,6 +447,13 @@ #define CH_CFG_FACTORY_OBJ_FIFOS TRUE #endif +/** + * @brief Enables factory for Pipes. + */ +#if !defined(CH_CFG_FACTORY_PIPES) || defined(__DOXYGEN__) +#define CH_CFG_FACTORY_PIPES TRUE +#endif + /** @} */ /*===========================================================================*/ diff --git a/targets/CMSIS-OS/ChibiOS/ST_STM32F769I_DISCOVERY/nanoCLR/halconf.h b/targets/CMSIS-OS/ChibiOS/ST_STM32F769I_DISCOVERY/nanoCLR/halconf.h index b7c839726b..44a0e4ad56 100644 --- a/targets/CMSIS-OS/ChibiOS/ST_STM32F769I_DISCOVERY/nanoCLR/halconf.h +++ b/targets/CMSIS-OS/ChibiOS/ST_STM32F769I_DISCOVERY/nanoCLR/halconf.h @@ -19,7 +19,7 @@ #define HALCONF_H #define _CHIBIOS_HAL_CONF_ -#define _CHIBIOS_HAL_CONF_VER_6_0_ +#define _CHIBIOS_HAL_CONF_VER_7_0_ #include #include "mcuconf.h" @@ -68,14 +68,6 @@ #define HAL_USE_DAC FALSE #endif -/** - * @brief Enables the EXT subsystem. - */ -// this option is set at target_platform.h (from config file) -// #if !defined(HAL_USE_EXT) || defined(__DOXYGEN__) -// #define HAL_USE_EXT FALSE -// #endif - /** * @brief Enables the GPT subsystem. */ @@ -128,13 +120,6 @@ // #define HAL_USE_PWM FALSE // #endif -/** - * @brief Enables the QSPI subsystem. - */ -#if !defined(HAL_USE_QSPI) || defined(__DOXYGEN__) -#define HAL_USE_QSPI FALSE -#endif - /** * @brief Enables the RTC subsystem. */ @@ -165,6 +150,13 @@ #define HAL_USE_SERIAL_USB FALSE #endif +/** + * @brief Enables the SIO subsystem. + */ +#if !defined(HAL_USE_SIO) || defined(__DOXYGEN__) +#define HAL_USE_SIO FALSE +#endif + /** * @brief Enables the SPI subsystem. */ @@ -173,6 +165,13 @@ // #define HAL_USE_SPI FALSE // #endif +/** + * @brief Enables the TRNG subsystem. + */ +#if !defined(HAL_USE_TRNG) || defined(__DOXYGEN__) +#define HAL_USE_TRNG FALSE +#endif + /** * @brief Enables the UART subsystem. */ @@ -196,6 +195,13 @@ // #define HAL_USE_WDG FALSE // #endif +/** + * @brief Enables the WSPI subsystem. + */ +#if !defined(HAL_USE_WSPI) || defined(__DOXYGEN__) +#define HAL_USE_WSPI FALSE +#endif + /*===========================================================================*/ /* PAL driver related settings. */ /*===========================================================================*/ @@ -341,26 +347,6 @@ #define MMC_NICE_WAITING TRUE #endif -/*===========================================================================*/ -/* QSPI driver related settings. */ -/*===========================================================================*/ - -/** - * @brief Enables synchronous APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(QSPI_USE_WAIT) || defined(__DOXYGEN__) -#define QSPI_USE_WAIT TRUE -#endif - -/** - * @brief Enables the @p qspiAcquireBus() and @p qspiReleaseBus() APIs. - * @note Disabling this option saves both code and data space. - */ -#if !defined(QSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) -#define QSPI_USE_MUTUAL_EXCLUSION TRUE -#endif - /*===========================================================================*/ /* SDC driver related settings. */ /*===========================================================================*/ @@ -522,6 +508,26 @@ #define USB_USE_WAIT FALSE #endif +/*===========================================================================*/ +/* WSPI driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Enables synchronous APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(WSPI_USE_WAIT) || defined(__DOXYGEN__) +#define WSPI_USE_WAIT TRUE +#endif + +/** + * @brief Enables the @p wspiAcquireBus() and @p wspiReleaseBus() APIs. + * @note Disabling this option saves both code and data space. + */ +#if !defined(WSPI_USE_MUTUAL_EXCLUSION) || defined(__DOXYGEN__) +#define WSPI_USE_MUTUAL_EXCLUSION TRUE +#endif + // header for nanoFramework overlay #include "halconf_nf.h" #endif /* HALCONF_H */ diff --git a/targets/CMSIS-OS/ChibiOS/ST_STM32F769I_DISCOVERY/nanoCLR/mcuconf.h b/targets/CMSIS-OS/ChibiOS/ST_STM32F769I_DISCOVERY/nanoCLR/mcuconf.h index 54ad486614..89919b5902 100644 --- a/targets/CMSIS-OS/ChibiOS/ST_STM32F769I_DISCOVERY/nanoCLR/mcuconf.h +++ b/targets/CMSIS-OS/ChibiOS/ST_STM32F769I_DISCOVERY/nanoCLR/mcuconf.h @@ -22,6 +22,11 @@ */ #define STM32F7xx_MCUCONF +//#define STM32F765_MCUCONF +//#define STM32F767_MCUCONF +//#define STM32F777_MCUCONF +#define STM32F769_MCUCONF +//#define STM32F779_MCUCONF /* * HAL driver system settings. @@ -356,6 +361,8 @@ #define STM32_UART_UART4_IRQ_PRIORITY 12 #define STM32_UART_UART5_IRQ_PRIORITY 12 #define STM32_UART_USART6_IRQ_PRIORITY 12 +#define STM32_UART_UART7_IRQ_PRIORITY 12 +#define STM32_UART_UART8_IRQ_PRIORITY 12 #define STM32_UART_USART1_DMA_PRIORITY 0 #define STM32_UART_USART2_DMA_PRIORITY 0 #define STM32_UART_USART3_DMA_PRIORITY 0 @@ -384,6 +391,12 @@ */ #define STM32_WDG_USE_IWDG TRUE +/* + * WSPI driver system settings. + */ +#define STM32_WSPI_USE_QUADSPI1 FALSE +#define STM32_WSPI_QUADSPI1_DMA_STREAM STM32_DMA_STREAM_ID(2, 7) + // header for nanoFramework overlay drivers #include "mcuconf_nf.h" diff --git a/targets/CMSIS-OS/ChibiOS/nanoCLR/target_platform.h.in b/targets/CMSIS-OS/ChibiOS/nanoCLR/target_platform.h.in index 3ce2fbb837..af208cb30f 100644 --- a/targets/CMSIS-OS/ChibiOS/nanoCLR/target_platform.h.in +++ b/targets/CMSIS-OS/ChibiOS/nanoCLR/target_platform.h.in @@ -31,10 +31,6 @@ // enable UART subsystem #define HAL_USE_UART @HAL_USE_UART_OPTION@ -//DISABLED AS NOT REQUIRED FOR STM32 IN CHIBIOS 18.2 -// enable EXT subsystem because it's required for interrupt handling when GPIO is enable -//#define HAL_USE_EXT @HAL_USE_GPIO_OPTION@ - // set when networking is enabled #define HAL_USE_MAC @HAL_USE_MAC_OPTION@