New kernel drivers and device implementation updates (#561)

- Added modular device support and devicetree bindings for ILI9341, ILI9488, CST816S, XPT2046, and GPIO button input, updating several board configurations for display/touch/backlight/keyboard/battery.
- Added a setting to control deprecated HAL usage (device property + Kconfig).
This commit is contained in:
Ken Van Hoeylandt
2026-07-12 23:54:55 +02:00
committed by GitHub
parent 50c0a14a93
commit fa4a6e255c
148 changed files with 5837 additions and 2145 deletions
@@ -0,0 +1,7 @@
// SPDX-License-Identifier: Apache-2.0
#pragma once
#include <tactility/bindings/bindings.h>
#include <drivers/cardputer_adv_keyboard.h>
DEFINE_DEVICETREE(cardputer_adv_keyboard, struct M5stackCardputerAdvKeyboardConfig)
@@ -0,0 +1,7 @@
// SPDX-License-Identifier: Apache-2.0
#pragma once
#include <tactility/bindings/bindings.h>
#include <drivers/cardputer_keyboard.h>
DEFINE_DEVICETREE(cardputer_keyboard, struct M5stackCardputerKeyboardConfig)
@@ -0,0 +1,19 @@
// SPDX-License-Identifier: Apache-2.0
#pragma once
#ifdef __cplusplus
extern "C" {
#endif
#include <stdint.h>
struct M5stackCardputerAdvKeyboardConfig {
// Devicetree address hint. The TCA8418 has a fixed I2C address (0x34), but the field is
// still populated from the standard i2c-device "reg" property for consistency with other
// I2C child device bindings.
uint8_t address;
};
#ifdef __cplusplus
}
#endif
@@ -0,0 +1,21 @@
// SPDX-License-Identifier: Apache-2.0
#pragma once
#ifdef __cplusplus
extern "C" {
#endif
#include <stdint.h>
#include <tactility/drivers/gpio.h>
struct M5stackCardputerKeyboardConfig {
struct GpioPinSpec* pins_output;
uint8_t pins_output_count;
struct GpioPinSpec* pins_input;
uint8_t pins_input_count;
};
#ifdef __cplusplus
}
#endif
@@ -0,0 +1,14 @@
// SPDX-License-Identifier: Apache-2.0
#pragma once
#include <tactility/module.h>
#ifdef __cplusplus
extern "C" {
#endif
extern struct Module m5stack_module;
#ifdef __cplusplus
}
#endif