SkillAgentSearch skills...

ChibiOS

Fork of ChibiOS for ArduPilot

Install / Use

/learn @ArduPilot/ChibiOS
About this skill

Quality Score

0/100

Supported Platforms

Universal

README


*** Files Organization ***


--{root} - ChibiOS directory. +--readme.txt - This file. +--documentation.html - Shortcut to the web documentation page. +--license.txt - GPL license text. +--demos/ - Demo projects, one directory per platform. +--docs/ - Documentation. | +--build/ - Documentation builders. | +--manual/ - Manuals directory. | +--quality/ - Reports and metrics. | +--various/ - Various support files. +--ext/ - External libraries, not part of ChibiOS. +--os/ - ChibiOS components. | +--common/ - Shared OS modules. | | +--abstractions/ - API emulator wrappers. | | | +--cmsis_os/ - CMSIS OS emulation layer for RT. | | | +--nasa_osal/ - NASA Operating System Abstraction Layer. | | +--ext/ - Vendor files used by the OS. | | +--ports/ - RTOS ports usable by both RT and NIL. | | +--startup/ - Startup support. | +--ex/ - EX component. | | +--dox/ - EX documentation resources. | | +--include/ - EX header files. | | +--devices / - EX complex drivers. | +--hal/ - HAL component. | | +--boards/ - HAL board support files. | | +--dox/ - HAL documentation resources. | | +--include/ - HAL high level headers. | | +--lib/ - HAL libraries. | | | +--complex/ - HAL collection of complex drivers. | | | | +--mfs/ - HAL managed flash storage driver. | | | | +--serial_nor/ - HAL managed flash storage driver. | | | +--fallback/ - HAL fall back software drivers. | | | +--peripherals/ - HAL peripherals interfaces. | | | +--streams/ - HAL streams. | | +--osal/ - HAL OSAL implementations. | | | +--lib/ - HAL OSAL common modules. | | +--src/ - HAL high level source. | | +--ports/ - HAL ports. | | +--templates/ - HAL driver template files. | | +--osal/ - HAL OSAL templates. | +--oslib/ - RTOS modules usable by both RT and NIL. | | +--include/ - OSLIB high level headers. | | +--src/ - OSLIB high level source. | | +--templates/ - OSLIB configuration template files. | +--nil/ - NIL RTOS component. | | +--dox/ - NIL documentation resources. | | +--include/ - NIL high level headers. | | +--src/ - NIL high level source. | | +--templates/ - NIL configuration template files. | +--rt/ - RT RTOS component. | | +--dox/ - RT documentation resources. | | +--include/ - RT high level headers. | | +--src/ - RT high level source. | | +--templates/ - RT configuration template files. | +--various/ - Various portable support files. +--test/ - Kernel test suite source code. | +--lib/ - Portable test engine. | +--hal/ - HAL test suites. | | +--testbuild/ - HAL build test and MISRA check. | +--nil/ - NIL test suites. | | +--testbuild/ - NIL build test and MISRA check. | +--rt/ - RT test suites. | | +--testbuild/ - RT build test and MISRA check. | | +--coverage/ - RT code coverage project. +--testex/ - EX integration test demos. +--testhal/ - HAL integration test demos.


*** Releases and Change Log ***


*** 21.11.4 ***

  • NEW: Added settings for STM32 OCTOSPIv1 and OCTOSPIv2 TCR bits SSHIFT and DHQC.
  • NEW: Reworked STM32 SDMMCv1 and SDMMCv2 drivers, better timeout and clock handling, improved speed for aligned buffers.
  • FIX: Fixed missing cache management during Cortex-M RAM initializations (bug #1261).
  • FIX: Fixed syntax errors in STM32H7xx/hal_lld_type2.h (bug #1259).
  • FIX: Fixed unwanted reset of cache on STM32H7xx (bug #1258).
  • FIX: Fixed invalid HSIDIV in STM32Ggxx clocks initialization (bug #1257).
  • FIX: Fixed incorrect RTC initialization on STM32G4/L4/L4+ (bug #1256).
  • FIX: Fixed syntax error in RP2040 GPIO driver (bug #1255).
  • FIX: Fixed undefined STM32_SDMMC_MAXCLK value for STM32H7 type 1 and 2 (bug #1254).
  • FIX: Fixed invalid checks on PLLP/R/Q dividers on STM32H7 (bug #1253).
  • FIX: Fixed remote wakeup failure in STM32 OTGv1 driver (bug #1252).
  • FIX: Fixed wrong use of hooks in RT/NIL (bug #1251).
  • FIX: Fixed SPI_MMC driver broken in 21.11.3 (bug #1249).

*** 21.11.3 ***

  • NEW: STM32 DMA drivers now export an STM32_DMA_MAX_TRANSFER definition.
  • NEW: PAL events for RP2040 added.
  • NEW: Removed obsolete sandbox code from ARMv7-M port. Now ARMv7-M-ALT is the official port for use with sandboxes.
  • NEW: Reworked HAL MAC driver, now with callback support.
  • NEW: Fixed setting of SYSCLK when derived from divided HSI16
  • NEW: Mass change: Source code convention changed from CRLF to just CR (Unix).
  • NEW: Fixed some corner cases in ADC5, added ADC reset on start().
  • NEW: Added a "BufferedSIODriver" class that implements the behavior of the legacy Serial driver on top of a SIO implementation (buffering, events and all).
  • NEW; Now hal.h includes cc_portab.h by default making it mandatory.
  • NEW: Moved HAL serial error flags into asynchronous channels interface definitions.
  • NEW: Reworked HAL SIO driver.
  • NEW: Non-proprietary LLVM build support.
  • NEW: Added integration of LittleFS on top of our flash infrastructure.
  • NEW: Added a centralized errors handler under /os/common/utils. It will replace those in HAL and SB and will be shared among multiple subsystems.
  • NEW: Added a new OOP model under /os/common/utils. It will replace the one in HAL and will be shared among multiple subsystems.
  • NEW: Added EFL driver support for STM32F401/411.
  • FIX: Fixed broken support for STM32 UART9 and USART10 (bug #1248).
  • FIX: Fixed wrong initialization in STM32L1xx ADC driver (bug #1247).
  • FIX: Fixed wrong HSI48 support on STM32L0xx (bug #1246).
  • FIX: Fixed wrong DMA definitions for STM32L0xx I2C3 peripheral (bug #1245).
  • FIX: Fixed wrong path in STM32L053 ADC demo makefile (bug #1244).
  • FIX: Fixed missing semicolon in STM32 OTGv1 driver (bug #1243).
  • FIX: Fixed HSI48 not enabled for STM32L496/​4A6 (bug #1242).
  • FIX: Fixed problem in STM32 gpt_lld_polled_delay() implementation (bug #1241).
  • FIX: Fixed invalid delay loop in STM32G0/WL ADCv5 driver (bug #1240).
  • FIX: Fixed STM32_MCOSEL setting problem (bug #1239).
  • FIX: Fixed problems with cache in STM32 SDMMC drivers (bug #1238).
  • FIX: Fixed missing clock enables for some GPIOS on some STM32L4s (bug #1237).
  • FIX: Fixed old bugs in serial driver header (bug #1236).
  • FIX: Fixed virtual timers lockup under rare conditions (bug #1235).
  • FIX: Fixed STM32 RTCv2 locks for a second (bug #1234).

*** 21.11.2 ***

  • NEW: Added dubby cycles support for SNOR using the normal SPI driver.
  • NEW: Disabled priority check on STM32 EXTI interrupts when the default ISR is disabled. This allows for fast interrupts.
  • NEW: Added support for UART9 and USART10 on STM32H7.
  • NEW: Improved MFS to use explicitly non-cacheable buffers for potentially DMA-accessible I/O areas.
  • NEW: FatFS now functional on STM32H7xx, added a target to the VFS demo.
  • NEW: Improved cache settings in STM32H7xx mcuconf.h.
  • NEW: Modified SDMMCv2 to allow for uncached buffers, tested on STM32H7xx.
  • NEW: Added OCTOSPIv2 driver using MDMA for STM32H7xx.
  • NEW: Added demos for STM32H723ZG Nucleo144 and STM32H735ZI Discovery boards.
  • NEW: Added support for STM32H723/25/33/35/A3/B3/A3Q/B3Q.
  • NEW: Updated ST Cube headers for STM32H7xx.
  • NEW: Improved HAL flash interface with mutual exclusion methods, improved EFL and SNOR drivers to use it.
  • NEW: Added EFL driver implementation for STM32G4xx.
  • NEW: STM32G0B1 USBv2 driver.
  • NEW: USBv1 driver optimization and removal of a potential race condition (not demonstrated).
  • NEW: Added elfAcquireBus()/eflReleaseBus() functions to EFL driver.
  • NEW: Added option to copy vectors in RAM on GCC startup for ARMv6-M, ARMv7-M and ARMv8-M-ML.
  • NEW: On STM32WBxx added a check on STM32_LSI_ENABLE required by IWDG.
  • NEW: Added SPIv2 support also to STM32WB and STM32WL.
  • FIX: Re-opened and fixed bug #1100.
  • FIX: Fixed wrong buffers toggling in STM32 USBv1 isochronous mode (bug #1232).
  • FIX: Fixed STM32 RTCv2 registers synchronization errata (bug #1231).
  • FIX: Fixed STM32 ADCv1 and ADCv5 do not allow prescaler divide value of 1 (bug #1230).
  • FIX: Fixed missing check on STM32 SPIv2 DMA settings for SPI1 (bug #1229).
  • FIX: Fixed ARMv6-M port Keil compiler fail (bug #1228).
  • FIX: Fixed invalid handling of lwIP NETIF_FLAG_LINK_UP flag (bug #1227).
  • FIX: Fixed missing TIM16/17 errata handling for STM32G0xx (bug #1226).
  • FIX: Fixed missing ADC errata handling for STM32G0x

Related Skills

View on GitHub
GitHub Stars81
CategoryDevelopment
Updated3mo ago
Forks137

Languages

C

Security Score

92/100

Audited on Dec 5, 2025

No findings