Implemented TactilityKernel and DevicetreeCompiler, updated licenses & copyrights (#452)

**New features**

- Created a devicetree DTS and YAML parser in Python
- Created new modules:
  - TactilityKernel (LGPL v3.0 license)
  - Platforms/PlatformEsp32 (LGPL v3.0 license) 
  - Platforms/PlatformPosix (LGPL v3.0 license)
  - Tests/TactilityKernelTests

Most boards have a placeholder DTS file, while T-Lora Pager has a few devices attached.

**Licenses**

Clarified licenses and copyrights better.

- Add explanation about the intent behind them.
- Added explanation about licenses for past and future subprojects
- Added more details explanations with regards to the logo usage
- Copied licenses to subprojects to make it more explicit
This commit is contained in:
Ken Van Hoeylandt
2026-01-24 15:47:11 +01:00
committed by GitHub
parent 0d16eb606f
commit 4b6ed871a9
194 changed files with 7807 additions and 741 deletions
@@ -0,0 +1,14 @@
#pragma once
#include <Tactility/bindings/bindings.h>
#include <Tactility/drivers/Esp32Gpio.h>
#ifdef __cplusplus
extern "C" {
#endif
DEFINE_DEVICETREE(esp32_gpio, struct Esp32GpioConfig)
#ifdef __cplusplus
}
#endif
@@ -0,0 +1,14 @@
#pragma once
#include <Tactility/bindings/bindings.h>
#include <Tactility/drivers/Esp32I2c.h>
#ifdef __cplusplus
extern "C" {
#endif
DEFINE_DEVICETREE(esp32_i2c, struct Esp32I2cConfig)
#ifdef __cplusplus
}
#endif
@@ -0,0 +1,15 @@
#pragma once
#ifdef __cplusplus
extern "C" {
#endif
#include <stdint.h>
struct Esp32GpioConfig {
uint8_t gpio_count;
};
#ifdef __cplusplus
}
#endif
@@ -0,0 +1,19 @@
#pragma once
#include <Tactility/drivers/Gpio.h>
#include <hal/i2c_types.h>
#ifdef __cplusplus
extern "C" {
#endif
struct Esp32I2cConfig {
uint32_t clock_frequency;
struct GpioPinConfig pin_sda;
struct GpioPinConfig pin_scl;
const i2c_port_t port;
};
#ifdef __cplusplus
}
#endif