From 6d47488c86fbb528ac52498fc0380170d7445238 Mon Sep 17 00:00:00 2001 From: Ken Van Hoeylandt Date: Sun, 15 Feb 2026 16:20:16 +0100 Subject: [PATCH] Add kernel readme --- TactilityKernel/README.md | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 TactilityKernel/README.md diff --git a/TactilityKernel/README.md b/TactilityKernel/README.md new file mode 100644 index 00000000..d4b747df --- /dev/null +++ b/TactilityKernel/README.md @@ -0,0 +1,21 @@ +# TactilityKernel + +TactilityKernel is the core component of the Tactility project, providing a hardware abstraction layer (HAL) and essential kernel services for embedded systems. + +## Features + +- **Device and Driver Model**: A flexible system for managing hardware devices and their corresponding drivers. +- **Peripheral Support**: Standard interfaces for common peripherals: + - GPIO (General Purpose Input/Output) + - I2C (Inter-Integrated Circuit) + - I2S (Inter-IC Sound) + - SPI (Serial Peripheral Interface) + - UART (Universal Asynchronous Receiver-Transmitter) +- **Concurrency Primitives**: Built-in support for multi-threaded environments, including: + - Threads and Dispatchers + - Mutexes and Recursive Mutexes + - Event Groups + - Timers +- **Module System**: Support for loadable modules that can export symbols and provide runtime-extensible functionality. +- **Device Tree Integration**: Utilizes a devicetree-like system for hardware configuration and initialization. +- **Cross-Platform**: Designed to run on both embedded platforms (such as ESP32) and desktop environments (Linux) for simulation and testing.