diff options
| -rw-r--r-- | demos/STM32/RT-STM32F429-DISCOVERY-DMA2D/Makefile | 8 | ||||
| -rw-r--r-- | demos/STM32/RT-STM32F429-DISCOVERY-DMA2D/chconf.h | 95 | ||||
| -rw-r--r-- | demos/STM32/RT-STM32F429-DISCOVERY-DMA2D/halconf.h | 38 | ||||
| -rw-r--r-- | demos/STM32/RT-STM32F429-DISCOVERY-DMA2D/main.c | 1 | ||||
| -rw-r--r-- | demos/STM32/RT-STM32F429-DISCOVERY-DMA2D/mcuconf.h | 42 | ||||
| -rw-r--r-- | demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/Makefile | 8 | ||||
| -rw-r--r-- | demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/chconf.h | 95 | ||||
| -rw-r--r-- | demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/halconf.h | 38 | ||||
| -rw-r--r-- | demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/main.c | 6 | ||||
| -rw-r--r-- | demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/mcuconf.h | 42 | ||||
| -rw-r--r-- | demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/usbcfg.c | 38 | ||||
| -rw-r--r-- | demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/usbcfg.h | 9 | 
12 files changed, 353 insertions, 67 deletions
| diff --git a/demos/STM32/RT-STM32F429-DISCOVERY-DMA2D/Makefile b/demos/STM32/RT-STM32F429-DISCOVERY-DMA2D/Makefile index f399710..6cf025a 100644 --- a/demos/STM32/RT-STM32F429-DISCOVERY-DMA2D/Makefile +++ b/demos/STM32/RT-STM32F429-DISCOVERY-DMA2D/Makefile @@ -5,7 +5,7 @@  # Compiler options here.
  ifeq ($(USE_OPT),)
 -  USE_OPT = -O0 -ggdb -fomit-frame-pointer -falign-functions=16
 +  USE_OPT = -O2 -ggdb -fomit-frame-pointer -falign-functions=16
  endif
  # C specific options here (added to USE_OPT).
 @@ -30,7 +30,7 @@ endif  # Enable this if you want link time optimizations (LTO)
  ifeq ($(USE_LTO),)
 -  USE_LTO = no
 +  USE_LTO = yes
  endif
  # If enabled, this option allows to compile the application in THUMB mode.
 @@ -99,7 +99,9 @@ include $(CHIBIOS)/os/hal/osal/rt/osal.mk  include $(CHIBIOS)/os/rt/rt.mk
  include $(CHIBIOS)/os/common/ports/ARMCMx/compilers/GCC/mk/port_v7m.mk
  # Other files (optional).
 -include $(CHIBIOS)/test/rt/test.mk
 +include $(CHIBIOS)/test/lib/test.mk
 +include $(CHIBIOS)/test/rt/rt_test.mk
 +include $(CHIBIOS)/test/oslib/oslib_test.mk
  include $(CHIBIOS)/os/hal/lib/streams/streams.mk
  include $(CHIBIOS)/os/various/shell/shell.mk
 diff --git a/demos/STM32/RT-STM32F429-DISCOVERY-DMA2D/chconf.h b/demos/STM32/RT-STM32F429-DISCOVERY-DMA2D/chconf.h index 17f8197..0a0db68 100644 --- a/demos/STM32/RT-STM32F429-DISCOVERY-DMA2D/chconf.h +++ b/demos/STM32/RT-STM32F429-DISCOVERY-DMA2D/chconf.h @@ -1,5 +1,5 @@  /*
 -    ChibiOS - Copyright (C) 2006..2016 Giovanni Di Sirio
 +    ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
      Licensed under the Apache License, Version 2.0 (the "License");
      you may not use this file except in compliance with the License.
 @@ -49,7 +49,19 @@   * @details Frequency of the system timer that drives the system ticks. This
   *          setting also defines the system tick time unit.
   */
 -#define CH_CFG_ST_FREQUENCY                 1000
 +#define CH_CFG_ST_FREQUENCY                 10000
 +
 +/**
 + * @brief   Time intervals data size.
 + * @note    Allowed values are 16, 32 or 64 bits.
 + */
 +#define CH_CFG_INTERVALS_SIZE               32
 +
 +/**
 + * @brief   Time types data size.
 + * @note    Allowed values are 16 or 32 bits.
 + */
 +#define CH_CFG_TIME_TYPES_SIZE              32
  /**
   * @brief   Time delta constant for the tick-less mode.
 @@ -296,6 +308,15 @@  #define CH_CFG_USE_MEMPOOLS                 TRUE
  /**
 + * @brief  Objects FIFOs APIs.
 + * @details If enabled then the objects FIFOs APIs are included
 + *          in the kernel.
 + *
 + * @note    The default is @p TRUE.
 + */
 +#define CH_CFG_USE_OBJ_FIFOS                TRUE
 +
 +/**
   * @brief   Dynamic Threads APIs.
   * @details If enabled then the dynamic threads creation APIs are included
   *          in the kernel.
 @@ -310,6 +331,56 @@  /*===========================================================================*/
  /**
 + * @name Objects factory options
 + * @{
 + */
 +/*===========================================================================*/
 +
 +/**
 + * @brief   Objects Factory APIs.
 + * @details If enabled then the objects factory APIs are included in the
 + *          kernel.
 + *
 + * @note    The default is @p FALSE.
 + */
 +#define CH_CFG_USE_FACTORY                  FALSE
 +
 +/**
 + * @brief   Maximum length for object names.
 + * @details If the specified length is zero then the name is stored by
 + *          pointer but this could have unintended side effects.
 + */
 +#define CH_CFG_FACTORY_MAX_NAMES_LENGTH     8
 +
 +/**
 + * @brief   Enables the registry of generic objects.
 + */
 +#define CH_CFG_FACTORY_OBJECTS_REGISTRY     TRUE
 +
 +/**
 + * @brief   Enables factory for generic buffers.
 + */
 +#define CH_CFG_FACTORY_GENERIC_BUFFERS      TRUE
 +
 +/**
 + * @brief   Enables factory for semaphores.
 + */
 +#define CH_CFG_FACTORY_SEMAPHORES           TRUE
 +
 +/**
 + * @brief   Enables factory for mailboxes.
 + */
 +#define CH_CFG_FACTORY_MAILBOXES            TRUE
 +
 +/**
 + * @brief   Enables factory for objects FIFOs.
 + */
 +#define CH_CFG_FACTORY_OBJ_FIFOS            TRUE
 +
 +/** @} */
 +
 +/*===========================================================================*/
 +/**
   * @name Debug options
   * @{
   */
 @@ -408,6 +479,22 @@  /*===========================================================================*/
  /**
 + * @brief   System structure extension.
 + * @details User fields added to the end of the @p ch_system_t structure.
 + */
 +#define CH_CFG_SYSTEM_EXTRA_FIELDS                                          \
 +  /* Add threads custom fields here.*/
 +
 +/**
 + * @brief   System initialization hook.
 + * @details User initialization code added to the @p chSysInit() function
 + *          just before interrupts are enabled globally.
 + */
 +#define CH_CFG_SYSTEM_INIT_HOOK(tp) {                                       \
 +  /* Add threads initialization code here.*/                                \
 +}
 +
 +/**
   * @brief   Threads descriptor structure extension.
   * @details User fields added to the end of the @p thread_t structure.
   */
 @@ -416,9 +503,9 @@  /**
   * @brief   Threads initialization hook.
 - * @details User initialization code added to the @p chThdInit() API.
 + * @details User initialization code added to the @p _thread_init() function.
   *
 - * @note    It is invoked from within @p chThdInit() and implicitly from all
 + * @note    It is invoked from within @p _thread_init() and implicitly from all
   *          the threads creation APIs.
   */
  #define CH_CFG_THREAD_INIT_HOOK(tp) {                                       \
 diff --git a/demos/STM32/RT-STM32F429-DISCOVERY-DMA2D/halconf.h b/demos/STM32/RT-STM32F429-DISCOVERY-DMA2D/halconf.h index 545e595..d02aa6b 100644 --- a/demos/STM32/RT-STM32F429-DISCOVERY-DMA2D/halconf.h +++ b/demos/STM32/RT-STM32F429-DISCOVERY-DMA2D/halconf.h @@ -1,5 +1,5 @@  /*
 -    ChibiOS - Copyright (C) 2006..2016 Giovanni Di Sirio
 +    ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
      Licensed under the Apache License, Version 2.0 (the "License");
      you may not use this file except in compliance with the License.
 @@ -52,6 +52,13 @@  #endif
  /**
 + * @brief   Enables the cryptographic subsystem.
 + */
 +#if !defined(HAL_USE_CRY) || defined(__DOXYGEN__)
 +#define HAL_USE_CRY                 FALSE
 +#endif
 +
 +/**
   * @brief   Enables the DAC subsystem.
   */
  #if !defined(HAL_USE_DAC) || defined(__DOXYGEN__)
 @@ -115,6 +122,13 @@  #endif
  /**
 + * @brief   Enables the QSPI subsystem.
 + */
 +#if !defined(HAL_USE_QSPI) || defined(__DOXYGEN__)
 +#define HAL_USE_QSPI                FALSE
 +#endif
 +
 +/**
   * @brief   Enables the RTC subsystem.
   */
  #if !defined(HAL_USE_RTC) || defined(__DOXYGEN__)
 @@ -202,6 +216,28 @@  #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
 +
 +/*===========================================================================*/
  /* I2C driver related settings.                                              */
  /*===========================================================================*/
 diff --git a/demos/STM32/RT-STM32F429-DISCOVERY-DMA2D/main.c b/demos/STM32/RT-STM32F429-DISCOVERY-DMA2D/main.c index 2d8d356..25f42ab 100644 --- a/demos/STM32/RT-STM32F429-DISCOVERY-DMA2D/main.c +++ b/demos/STM32/RT-STM32F429-DISCOVERY-DMA2D/main.c @@ -284,6 +284,7 @@ static const LTDCConfig ltdc_cfg = {  extern LTDCDriver LTDCD1;
  const SPIConfig spi_cfg5 = {
 +  false,
    NULL,
    GPIOC,
    GPIOC_SPI5_LCD_CS,
 diff --git a/demos/STM32/RT-STM32F429-DISCOVERY-DMA2D/mcuconf.h b/demos/STM32/RT-STM32F429-DISCOVERY-DMA2D/mcuconf.h index ba13652..883307e 100644 --- a/demos/STM32/RT-STM32F429-DISCOVERY-DMA2D/mcuconf.h +++ b/demos/STM32/RT-STM32F429-DISCOVERY-DMA2D/mcuconf.h @@ -1,5 +1,5 @@  /*
 -    ChibiOS - Copyright (C) 2006..2016 Giovanni Di Sirio
 +    ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
      Licensed under the Apache License, Version 2.0 (the "License");
      you may not use this file except in compliance with the License.
 @@ -70,6 +70,24 @@  #define STM32_PLLSAIR_POST                  STM32_SAIR_DIV4
  /*
 + * IRQ system settings.
 + */
 +#define STM32_IRQ_EXTI0_PRIORITY            6
 +#define STM32_IRQ_EXTI1_PRIORITY            6
 +#define STM32_IRQ_EXTI2_PRIORITY            6
 +#define STM32_IRQ_EXTI3_PRIORITY            6
 +#define STM32_IRQ_EXTI4_PRIORITY            6
 +#define STM32_IRQ_EXTI5_9_PRIORITY          6
 +#define STM32_IRQ_EXTI10_15_PRIORITY        6
 +#define STM32_IRQ_EXTI16_PRIORITY           6
 +#define STM32_IRQ_EXTI17_PRIORITY           15
 +#define STM32_IRQ_EXTI18_PRIORITY           6
 +#define STM32_IRQ_EXTI19_PRIORITY           6
 +#define STM32_IRQ_EXTI20_PRIORITY           6
 +#define STM32_IRQ_EXTI21_PRIORITY           15
 +#define STM32_IRQ_EXTI22_PRIORITY           15
 +
 +/*
   * ADC driver system settings.
   */
  #define STM32_ADC_ADCPRE                    ADC_CCR_ADCPRE_DIV4
 @@ -109,24 +127,6 @@  #define STM32_DAC_DAC1_CH2_DMA_STREAM       STM32_DMA_STREAM_ID(1, 6)
  /*
 - * EXT driver system settings.
 - */
 -#define STM32_EXT_EXTI0_IRQ_PRIORITY        6
 -#define STM32_EXT_EXTI1_IRQ_PRIORITY        6
 -#define STM32_EXT_EXTI2_IRQ_PRIORITY        6
 -#define STM32_EXT_EXTI3_IRQ_PRIORITY        6
 -#define STM32_EXT_EXTI4_IRQ_PRIORITY        6
 -#define STM32_EXT_EXTI5_9_IRQ_PRIORITY      6
 -#define STM32_EXT_EXTI10_15_IRQ_PRIORITY    6
 -#define STM32_EXT_EXTI16_IRQ_PRIORITY       6
 -#define STM32_EXT_EXTI17_IRQ_PRIORITY       15
 -#define STM32_EXT_EXTI18_IRQ_PRIORITY       6
 -#define STM32_EXT_EXTI19_IRQ_PRIORITY       6
 -#define STM32_EXT_EXTI20_IRQ_PRIORITY       6
 -#define STM32_EXT_EXTI21_IRQ_PRIORITY       15
 -#define STM32_EXT_EXTI22_IRQ_PRIORITY       15
 -
 -/*
   * GPT driver system settings.
   */
  #define STM32_GPT_USE_TIM1                  FALSE
 @@ -258,12 +258,16 @@  #define STM32_SERIAL_USE_UART4              FALSE
  #define STM32_SERIAL_USE_UART5              FALSE
  #define STM32_SERIAL_USE_USART6             FALSE
 +#define STM32_SERIAL_USE_UART7              FALSE
 +#define STM32_SERIAL_USE_UART8              FALSE
  #define STM32_SERIAL_USART1_PRIORITY        12
  #define STM32_SERIAL_USART2_PRIORITY        12
  #define STM32_SERIAL_USART3_PRIORITY        12
  #define STM32_SERIAL_UART4_PRIORITY         12
  #define STM32_SERIAL_UART5_PRIORITY         12
  #define STM32_SERIAL_USART6_PRIORITY        12
 +#define STM32_SERIAL_UART7_PRIORITY         12
 +#define STM32_SERIAL_UART8_PRIORITY         12
  /*
   * SPI driver system settings.
 diff --git a/demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/Makefile b/demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/Makefile index 68fe855..1203a72 100644 --- a/demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/Makefile +++ b/demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/Makefile @@ -5,7 +5,7 @@  # Compiler options here.
  ifeq ($(USE_OPT),)
 -  USE_OPT = -O0 -ggdb -fomit-frame-pointer -falign-functions=16
 +  USE_OPT = -O2 -ggdb -fomit-frame-pointer -falign-functions=16
  endif
  # C specific options here (added to USE_OPT).
 @@ -30,7 +30,7 @@ endif  # Enable this if you want link time optimizations (LTO)
  ifeq ($(USE_LTO),)
 -  USE_LTO = no
 +  USE_LTO = yes
  endif
  # If enabled, this option allows to compile the application in THUMB mode.
 @@ -99,7 +99,9 @@ include $(CHIBIOS)/os/hal/osal/rt/osal.mk  include $(CHIBIOS)/os/rt/rt.mk
  include $(CHIBIOS)/os/common/ports/ARMCMx/compilers/GCC/mk/port_v7m.mk
  # Other files (optional).
 -include $(CHIBIOS)/test/rt/test.mk
 +include $(CHIBIOS)/test/lib/test.mk
 +include $(CHIBIOS)/test/rt/rt_test.mk
 +include $(CHIBIOS)/test/oslib/oslib_test.mk
  include $(CHIBIOS)/os/hal/lib/streams/streams.mk
  include $(CHIBIOS)/os/various/shell/shell.mk
 diff --git a/demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/chconf.h b/demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/chconf.h index 81ccb47..33ff292 100644 --- a/demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/chconf.h +++ b/demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/chconf.h @@ -1,5 +1,5 @@  /*
 -    ChibiOS - Copyright (C) 2006..2016 Giovanni Di Sirio
 +    ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
      Licensed under the Apache License, Version 2.0 (the "License");
      you may not use this file except in compliance with the License.
 @@ -49,7 +49,19 @@   * @details Frequency of the system timer that drives the system ticks. This
   *          setting also defines the system tick time unit.
   */
 -#define CH_CFG_ST_FREQUENCY                 1000
 +#define CH_CFG_ST_FREQUENCY                 10000
 +
 +/**
 + * @brief   Time intervals data size.
 + * @note    Allowed values are 16, 32 or 64 bits.
 + */
 +#define CH_CFG_INTERVALS_SIZE               32
 +
 +/**
 + * @brief   Time types data size.
 + * @note    Allowed values are 16 or 32 bits.
 + */
 +#define CH_CFG_TIME_TYPES_SIZE              32
  /**
   * @brief   Time delta constant for the tick-less mode.
 @@ -296,6 +308,15 @@  #define CH_CFG_USE_MEMPOOLS                 FALSE
  /**
 + * @brief  Objects FIFOs APIs.
 + * @details If enabled then the objects FIFOs APIs are included
 + *          in the kernel.
 + *
 + * @note    The default is @p TRUE.
 + */
 +#define CH_CFG_USE_OBJ_FIFOS                FALSE
 +
 +/**
   * @brief   Dynamic Threads APIs.
   * @details If enabled then the dynamic threads creation APIs are included
   *          in the kernel.
 @@ -310,6 +331,56 @@  /*===========================================================================*/
  /**
 + * @name Objects factory options
 + * @{
 + */
 +/*===========================================================================*/
 +
 +/**
 + * @brief   Objects Factory APIs.
 + * @details If enabled then the objects factory APIs are included in the
 + *          kernel.
 + *
 + * @note    The default is @p FALSE.
 + */
 +#define CH_CFG_USE_FACTORY                  FALSE
 +
 +/**
 + * @brief   Maximum length for object names.
 + * @details If the specified length is zero then the name is stored by
 + *          pointer but this could have unintended side effects.
 + */
 +#define CH_CFG_FACTORY_MAX_NAMES_LENGTH     8
 +
 +/**
 + * @brief   Enables the registry of generic objects.
 + */
 +#define CH_CFG_FACTORY_OBJECTS_REGISTRY     TRUE
 +
 +/**
 + * @brief   Enables factory for generic buffers.
 + */
 +#define CH_CFG_FACTORY_GENERIC_BUFFERS      TRUE
 +
 +/**
 + * @brief   Enables factory for semaphores.
 + */
 +#define CH_CFG_FACTORY_SEMAPHORES           TRUE
 +
 +/**
 + * @brief   Enables factory for mailboxes.
 + */
 +#define CH_CFG_FACTORY_MAILBOXES            TRUE
 +
 +/**
 + * @brief   Enables factory for objects FIFOs.
 + */
 +#define CH_CFG_FACTORY_OBJ_FIFOS            TRUE
 +
 +/** @} */
 +
 +/*===========================================================================*/
 +/**
   * @name Debug options
   * @{
   */
 @@ -408,6 +479,22 @@  /*===========================================================================*/
  /**
 + * @brief   System structure extension.
 + * @details User fields added to the end of the @p ch_system_t structure.
 + */
 +#define CH_CFG_SYSTEM_EXTRA_FIELDS                                          \
 +  /* Add threads custom fields here.*/
 +
 +/**
 + * @brief   System initialization hook.
 + * @details User initialization code added to the @p chSysInit() function
 + *          just before interrupts are enabled globally.
 + */
 +#define CH_CFG_SYSTEM_INIT_HOOK(tp) {                                       \
 +  /* Add threads initialization code here.*/                                \
 +}
 +
 +/**
   * @brief   Threads descriptor structure extension.
   * @details User fields added to the end of the @p thread_t structure.
   */
 @@ -416,9 +503,9 @@  /**
   * @brief   Threads initialization hook.
 - * @details User initialization code added to the @p chThdInit() API.
 + * @details User initialization code added to the @p _thread_init() function.
   *
 - * @note    It is invoked from within @p chThdInit() and implicitly from all
 + * @note    It is invoked from within @p _thread_init() and implicitly from all
   *          the threads creation APIs.
   */
  #define CH_CFG_THREAD_INIT_HOOK(tp) {                                       \
 diff --git a/demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/halconf.h b/demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/halconf.h index ebe3af9..2959863 100644 --- a/demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/halconf.h +++ b/demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/halconf.h @@ -1,5 +1,5 @@  /*
 -    ChibiOS - Copyright (C) 2006..2016 Giovanni Di Sirio
 +    ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
      Licensed under the Apache License, Version 2.0 (the "License");
      you may not use this file except in compliance with the License.
 @@ -52,6 +52,13 @@  #endif
  /**
 + * @brief   Enables the cryptographic subsystem.
 + */
 +#if !defined(HAL_USE_CRY) || defined(__DOXYGEN__)
 +#define HAL_USE_CRY                 FALSE
 +#endif
 +
 +/**
   * @brief   Enables the DAC subsystem.
   */
  #if !defined(HAL_USE_DAC) || defined(__DOXYGEN__)
 @@ -115,6 +122,13 @@  #endif
  /**
 + * @brief   Enables the QSPI subsystem.
 + */
 +#if !defined(HAL_USE_QSPI) || defined(__DOXYGEN__)
 +#define HAL_USE_QSPI                FALSE
 +#endif
 +
 +/**
   * @brief   Enables the RTC subsystem.
   */
  #if !defined(HAL_USE_RTC) || defined(__DOXYGEN__)
 @@ -202,6 +216,28 @@  #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
 +
 +/*===========================================================================*/
  /* I2C driver related settings.                                              */
  /*===========================================================================*/
 diff --git a/demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/main.c b/demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/main.c index a7a33f6..5cf49ad 100644 --- a/demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/main.c +++ b/demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/main.c @@ -28,8 +28,6 @@  #include <stdlib.h>
  #if (HAL_USE_SERIAL_USB == TRUE)
 -/* Virtual serial port over USB.*/
 -SerialUSBDriver SDU1;
  static BaseSequentialStream *const chout = (BaseSequentialStream *)&SDU1;
  #else
  static BaseSequentialStream *const chout = (BaseSequentialStream *)&SD1;
 @@ -141,7 +139,7 @@ static THD_FUNCTION(reader_thread, arg) {        osalThreadSuspendS(&thread_ref);
        reader_suspend = false;
      } else {
 -      osalThreadSleepS(MS2ST(reader_delay));
 +      osalThreadSleepS(TIME_MS2I(reader_delay));
      }
      old_priority = chThdGetPriorityX();
      osalSysUnlock();
 @@ -180,7 +178,7 @@ static THD_FUNCTION(writer_thread, arg) {          osalThreadSuspendS(&thread_ref);
          writer_suspend = false;
        } else {
 -        osalThreadSleepS(MS2ST(writer_delay));
 +        osalThreadSleepS(TIME_MS2I(writer_delay));
        }
        osalSysUnlock();
      }
 diff --git a/demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/mcuconf.h b/demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/mcuconf.h index ec65ff7..380efb0 100644 --- a/demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/mcuconf.h +++ b/demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/mcuconf.h @@ -1,5 +1,5 @@  /*
 -    ChibiOS - Copyright (C) 2006..2016 Giovanni Di Sirio
 +    ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
      Licensed under the Apache License, Version 2.0 (the "License");
      you may not use this file except in compliance with the License.
 @@ -70,6 +70,24 @@  #define STM32_PLLSAIR_POST                  STM32_SAIR_DIV4
  /*
 + * IRQ system settings.
 + */
 +#define STM32_IRQ_EXTI0_PRIORITY            6
 +#define STM32_IRQ_EXTI1_PRIORITY            6
 +#define STM32_IRQ_EXTI2_PRIORITY            6
 +#define STM32_IRQ_EXTI3_PRIORITY            6
 +#define STM32_IRQ_EXTI4_PRIORITY            6
 +#define STM32_IRQ_EXTI5_9_PRIORITY          6
 +#define STM32_IRQ_EXTI10_15_PRIORITY        6
 +#define STM32_IRQ_EXTI16_PRIORITY           6
 +#define STM32_IRQ_EXTI17_PRIORITY           15
 +#define STM32_IRQ_EXTI18_PRIORITY           6
 +#define STM32_IRQ_EXTI19_PRIORITY           6
 +#define STM32_IRQ_EXTI20_PRIORITY           6
 +#define STM32_IRQ_EXTI21_PRIORITY           15
 +#define STM32_IRQ_EXTI22_PRIORITY           15
 +
 +/*
   * ADC driver system settings.
   */
  #define STM32_ADC_ADCPRE                    ADC_CCR_ADCPRE_DIV4
 @@ -109,24 +127,6 @@  #define STM32_DAC_DAC1_CH2_DMA_STREAM       STM32_DMA_STREAM_ID(1, 6)
  /*
 - * EXT driver system settings.
 - */
 -#define STM32_EXT_EXTI0_IRQ_PRIORITY        6
 -#define STM32_EXT_EXTI1_IRQ_PRIORITY        6
 -#define STM32_EXT_EXTI2_IRQ_PRIORITY        6
 -#define STM32_EXT_EXTI3_IRQ_PRIORITY        6
 -#define STM32_EXT_EXTI4_IRQ_PRIORITY        6
 -#define STM32_EXT_EXTI5_9_IRQ_PRIORITY      6
 -#define STM32_EXT_EXTI10_15_IRQ_PRIORITY    6
 -#define STM32_EXT_EXTI16_IRQ_PRIORITY       6
 -#define STM32_EXT_EXTI17_IRQ_PRIORITY       15
 -#define STM32_EXT_EXTI18_IRQ_PRIORITY       6
 -#define STM32_EXT_EXTI19_IRQ_PRIORITY       6
 -#define STM32_EXT_EXTI20_IRQ_PRIORITY       6
 -#define STM32_EXT_EXTI21_IRQ_PRIORITY       15
 -#define STM32_EXT_EXTI22_IRQ_PRIORITY       15
 -
 -/*
   * GPT driver system settings.
   */
  #define STM32_GPT_USE_TIM1                  FALSE
 @@ -258,12 +258,16 @@  #define STM32_SERIAL_USE_UART4              FALSE
  #define STM32_SERIAL_USE_UART5              FALSE
  #define STM32_SERIAL_USE_USART6             FALSE
 +#define STM32_SERIAL_USE_UART7              FALSE
 +#define STM32_SERIAL_USE_UART8              FALSE
  #define STM32_SERIAL_USART1_PRIORITY        12
  #define STM32_SERIAL_USART2_PRIORITY        12
  #define STM32_SERIAL_USART3_PRIORITY        12
  #define STM32_SERIAL_UART4_PRIORITY         12
  #define STM32_SERIAL_UART5_PRIORITY         12
  #define STM32_SERIAL_USART6_PRIORITY        12
 +#define STM32_SERIAL_UART7_PRIORITY         12
 +#define STM32_SERIAL_UART8_PRIORITY         12
  /*
   * SPI driver system settings.
 diff --git a/demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/usbcfg.c b/demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/usbcfg.c index 9f95a2a..906bf88 100644 --- a/demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/usbcfg.c +++ b/demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/usbcfg.c @@ -1,5 +1,5 @@  /*
 -    ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio
 +    ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
      Licensed under the Apache License, Version 2.0 (the "License");
      you may not use this file except in compliance with the License.
 @@ -14,9 +14,11 @@      limitations under the License.
  */
 -#include "ch.h"
  #include "hal.h"
 +/* Virtual serial port over USB.*/
 +SerialUSBDriver SDU1;
 +
  /*
   * Endpoints to be used for USBD2.
   */
 @@ -265,8 +267,6 @@ static void usb_event(USBDriver *usbp, usbevent_t event) {    extern SerialUSBDriver SDU1;
    switch (event) {
 -  case USB_EVENT_RESET:
 -    return;
    case USB_EVENT_ADDRESS:
      return;
    case USB_EVENT_CONFIGURED:
 @@ -283,9 +283,25 @@ static void usb_event(USBDriver *usbp, usbevent_t event) {      chSysUnlockFromISR();
      return;
 +  case USB_EVENT_RESET:
 +    /* Falls into.*/
 +  case USB_EVENT_UNCONFIGURED:
 +    /* Falls into.*/
    case USB_EVENT_SUSPEND:
 +    chSysLockFromISR();
 +
 +    /* Disconnection event on suspend.*/
 +    sduSuspendHookI(&SDU1);
 +
 +    chSysUnlockFromISR();
      return;
    case USB_EVENT_WAKEUP:
 +    chSysLockFromISR();
 +
 +    /* Disconnection event on suspend.*/
 +    sduWakeupHookI(&SDU1);
 +
 +    chSysUnlockFromISR();
      return;
    case USB_EVENT_STALLED:
      return;
 @@ -294,13 +310,25 @@ static void usb_event(USBDriver *usbp, usbevent_t event) {  }
  /*
 + * Handles the USB driver global events.
 + */
 +static void sof_handler(USBDriver *usbp) {
 +
 +  (void)usbp;
 +
 +  osalSysLockFromISR();
 +  sduSOFHookI(&SDU1);
 +  osalSysUnlockFromISR();
 +}
 +
 +/*
   * USB driver configuration.
   */
  const USBConfig usbcfg = {
    usb_event,
    get_descriptor,
    sduRequestsHook,
 -  NULL
 +  sof_handler
  };
  /*
 diff --git a/demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/usbcfg.h b/demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/usbcfg.h index 2ffaa17..886cd02 100644 --- a/demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/usbcfg.h +++ b/demos/STM32/RT-STM32F429-DISCOVERY-TRIBUF/usbcfg.h @@ -1,5 +1,5 @@  /*
 -    ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio
 +    ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
      Licensed under the Apache License, Version 2.0 (the "License");
      you may not use this file except in compliance with the License.
 @@ -14,12 +14,13 @@      limitations under the License.
  */
 -#ifndef _USBCFG_H_
 -#define _USBCFG_H_
 +#ifndef USBCFG_H
 +#define USBCFG_H
  extern const USBConfig usbcfg;
  extern SerialUSBConfig serusbcfg;
 +extern SerialUSBDriver SDU1;
 -#endif  /* _USBCFG_H_ */
 +#endif  /* USBCFG_H */
  /** @} */
 | 
