Read only mirror of SVN ChibiOS repository at https://sourceforge.net/projects/chibios/ http://www.chibios.org
  • C 95.5%
  • Fluent 1.3%
  • Makefile 1.2%
  • C++ 1.2%
  • Assembly 0.5%
  • Other 0.2%
Find a file
Giovanni Di Sirio fd2e59c348 Fixed bug #1309.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@18264 27425a3e-05d8-49a3-a47f-9c15f0e5edd8
2026-05-31 07:18:45 +00:00
demos Remove obsolete STM32 clock limits headers 2026-05-26 19:02:24 +00:00
doc Template fixes for the new schema. Removed some experimental work. 2026-05-11 07:48:22 +00:00
ext Remove Pico SDK and Pico SDK Bindings 2026-01-08 17:27:41 +00:00
os Fixed bug #1309. 2026-05-31 07:18:45 +00:00
test git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@18089 27425a3e-05d8-49a3-a47f-9c15f0e5edd8 2026-04-22 18:22:35 +00:00
testex halconf.h mass update. 2026-04-07 11:36:17 +00:00
testhal Update STM32U3 clock tree definitions 2026-05-23 08:38:09 +00:00
testrt Update STM32U3 clock tree definitions 2026-05-23 08:38:09 +00:00
testsb git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@18173 27425a3e-05d8-49a3-a47f-9c15f0e5edd8 2026-04-30 15:19:10 +00:00
testxhal • Handle short writes in XHAL write commands 2026-04-30 10:05:43 +00:00
tools Fix clocktree generator range checks 2026-05-27 06:17:25 +00:00
.project Fixed VRQ entry name. 2022-05-17 12:39:16 +00:00
AGENTS.md git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@18157 27425a3e-05d8-49a3-a47f-9c15f0e5edd8 2026-04-27 14:27:34 +00:00
documentation.html Updated documentation link. 2016-01-06 13:41:02 +00:00
license.txt git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@7860 35acf78f-673a-0410-8e92-d51de3d6d3f4 2015-04-06 09:46:37 +00:00
readme.txt Fixed bugs #1306, #1307. 2026-05-26 08:25:46 +00:00
release_note_next.txt Performance improvements thanks to code paths tuning using likely/unlikely macros. 2021-06-11 10:04:12 +00:00

*****************************************************************************
*** 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.
  |  +--common/                 - Documentation common build resources.
  |  +--hal/                    - Builders for HAL.
  |  +--nil/                    - Builders for NIL.
  |  +--rt/                     - Builders for RT.
  +--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.
  |  |  +--oop/                 - Object-oriented framework.
  |  |  +--ports/               - RTOS ports usable by both RT and NIL.
  |  |  +--startup/             - Startup support.
  |  |  +--utils/               - Generic and portable C modules.
  |  +--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 legacy SNOR stack.
  |  |  |  |  +--xsnor/         - HAL improved SNOR stack.
  |  |  |  +--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                                               ***
*****************************************************************************

*** Next ***
- FIX: RT: Fixed lign aheap-created thread working area size (bug #1307)
  (backportted to 21.11.6).
- FIX; NIL: Fixed wrong alignment check in chThdCreateI() (bug #1306)
  (backportted to 21.11.6).
- FIX: DACv1 trigger mask sized for 3 or 4 bit trigger source identifier
- NEW: Thread mode for EP0 handling in USB HAL driver.
- NEW: ADC driver in XHAL.
- NEW: RTC driver in XHAL.
- NEW: Added EFL driver for simulator and a simulator MFS test application.
- NEW: Added simulator support for x84-64 on Posix/Linux.
- NEW: Added XSHELL_EXIT_HOOK to xshell.
- NEW: Memory areas functions in OSLIB addressed for portability.
- NEW: Implemented better chThdSleepUntil() in NIL using the same logic used
       in the RT implementation.
- NEW: Function chSftIntegrityCheckI() rewritten to be much more efficient in
       performing lists integrity checks.
- NEW: Added to RT a dedicated functional safety module, the function
       chSysIntegrityCheckI() has been moved in this module and renamed to
       chSftIntegrityCheckI().
- NEW: Added multicore memory classes modifiers to RT in order to support
       NUMA architectures and non-coherent cache architectures.
- NEW: Added MPU initialization settings in ARMv7-M, ARv7-M-ALT, ARMv8-ML-ALT
       ports. Settings allow to statically initialize any region.
- NEW: Improved interrupts processing in ARMv7-M-ALT and ARMv8-M-ML-ALT
       ports. Specifically, saved few cycles on the context switch code path.
- NEW: Added missing context switch hook in ARMv7-M-ALT and ARMv8-M-ML-ALT
       ports.
- NEW: Added integration demos for VFS+LittleFS/FatFS+XSHELL, now also
       available on STM32U0 Nucleo-64.
- NEW: Added faster context switch modes to ARMv7-M and ARMv8-M ports. The
       new modes allow to avoid saving FP context for threads that do not
       use the FPU.
- NEW: Added new ARMv8-M port aligned with features of then ARMv7-M port for
       sandboxing.
- NEW: Added XShell support for change prompt, multi-command per line, line 
       editing, user definable extra fields, init and execution hooks.
- NEW: Improved LFS support, now it is possible to make an LFS file system
       at arbitrary positions in flash.
- NEW: New XShell specific for the new RT, it leverages the new thread
       dispose feature.
- NEW: New RT threads spawning API decoupling the thread stack from the
       thread_t structure as required in NUMA multicore devices. Old
       "create" API is still present and supported, long term it could be
       removed.
- NEW: Added capability to associate a "dispose" functions to threads,
       dynamic API modified to use this mechanism.
- NEW: Recursive locks in RT and NIL made optional, only enabled if the
       underlying port supports the capability.
- NEW: Now RT virtual timers can recalculate the value of CH_CFG_ST_TIMEDELTA
       at runtime and continue using the recalculated value. This has two
       consequences: 1) The value is recalculated once 2) it is possible
       to use the new API chVTGetCurrentDelta() and update the static
       setting in order to avoid recalculation.
- NEW: OSLIB release methods now return the value of the reference counter.
- NEW: Added a "waend" field to the thread structure in RT for debug
       convenience.
- NEW: Added a para-virtualized XHAL port for use in sandboxes.
- NEW: Added a VIO subsystem to sandboxes supporting drivers
       para-virtualization, PAL and SIO supported so far.
- NEW: Added and RT port for use in virtualized sandboxes.
- NEW: Added full virtualization support to sandboxes with a virtual IRQ
       mechanism.
- NEW: Added __CH_OWNEROF() macro to RT.
- NEW: Added a Posix-favored shell named "msh" (Mini Shell). The shell is able
       to run sub-apps inside the same sandbox. The shell can either be placed
       statically in flash or loaded dynamically in RAM.
- NEW: Added runnable "apps" capability to SBs, apps available so far: msh, ls.
- NEW: Added ability to load ELF files to SBs.
- NEW: Enhanced Posix API for SBs leveraging the VFS integration.
- NEW: SBs and VFS integration. Each SB can see its own VFS instance.
- NEW: Added a new MEM_IS_VALID_FUNCTION() macro to RT and NIL.
- NEW: Changed SB configuration options names to be prefixed with SB_CFG_.
- NEW: Added a new CH_CFG_HARDENING_LEVEL option to RT.
- NEW: Added a chXXXDispose() function to all objects in NIL.
- NEW: Added a chXXXDispose() function to all objects in RT.
- NEW: Added MEM_NATURAL_ALIGN macro to RT and NIL.
- NEW: Added static initializer for virtual timers in RT.
- NEW: Added new function chHeapIntegrityCheck().
- NEW: Function chCoreGetStatusX() changed to return a memory region object
       instead of a simple size.
- NEW: RT and NIL upgraded to support the enhanced OSLIB.
- NEW: Memory areas/pointers checker functions added to OSLIB.