ChibiOS
Mirror of the ChibiOS SVN repository
Install / Use
/learn @qmk/ChibiOSREADME
*** 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 missing con text switch hook in ARMv7-M-ALT port.
- NEW: FDCANv1 and FDCANv2 filter enabled.
- NEW: Recursive locks in RT and NIL made optional, only enabled if the underlying port supports the capability.
- NEW: Added STM32 FDCANv2 for STM32H7xx
- NEW: Improved DAC driver, updated STM32 DACv1.
- NEW: Removed oscillator stabilization delay on STM32 LSE and HSE when bypass mode is enabled.
- NEW: STM32 TIM1 and TIM8 support added to SYSTICKv1 driver.
- NEW: STM32 RTCv2 and RTCv3 modified to not use shadow registers.
- NEW: Enhanced STM32F7xx MPU configuration in mcuconf.h.
- NEW: I2C slave support in HAL high level driver.
- 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 ADCv4 common registers reset at start (bug 1296).
- FIX: Fixed DMA2 not firing on STM32G431 (bug 1295).
- FIX: Fixed wrong STM32 ADCv2 stop method (bug 1294).
- FIX: Fixed STM32 OTGv1 driver does not re-enables endpoints on wakeup (bug 1293).
- FIX: Fixed missing assertion in OSLIB factory module (bug 1292).
- FIX: Fixed problem in FDCANv1 driver for G4 (bug #1291).
- FIX: Fixed problem in recursive locks functions (bug #1288).
- FIX: Fixed ARMv8-M-ML port compile fail when FPU is enabled (bug #1281).
- FIX: Fixed interrupts not enabled for STM32H735 TIM15, TIM16 and TIM17 (bug #1280).
- FIX: Fixed wrong STM32 LSI activation check (bug #1279).
- FIX: Fixed STM32 HAL UART ISR flaw (bug #1278).
- FIX: Fixed race condition caused by chGuardedPoolAllocI() (bug #1277).
- FIX: Fixed avoid shadowing with build-in pow10 function in chprintf.c (bug #1274).
- FIX: Fixed enabling PWM on TIM1, 3, 4 causes compile errors in RT-STM32G0B1RE-NUCLEO64 (bug #1273).
- FIX: Fixed unnecessary code in SNOR device drivers (bug #1265).
- FIX: Fixed RP2040 HAL GPIO failed to compile (bug #1264).
- FIX: Fixed channel 0 corruption on STM32 BDMAv1 (bug #1263).
- FIX: Fixed wrong statistics in RT7 (bug #1262).
- FIX: Fixed missing cache management during Cortex-M RAM initializations (bug #1261).
- FIX: Fixed RTC & TAMP interrupts not functional (bug #1260).
- 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.
Related Skills
node-connect
333.3kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
frontend-design
82.0kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
openai-whisper-api
333.3kTranscribe audio via OpenAI Audio Transcriptions API (Whisper).
commit-push-pr
82.0kCommit, push, and open a PR
