New kernel drivers and device migrations (#563)

This commit is contained in:
Ken Van Hoeylandt
2026-07-14 20:26:57 +02:00
committed by GitHub
parent 955416dac8
commit 8af6204ba1
215 changed files with 6359 additions and 3633 deletions
@@ -0,0 +1,21 @@
// SPDX-License-Identifier: Apache-2.0
#pragma once
#include <tactility/bindings/bindings.h>
#include <drivers/tca95xx.h>
#ifdef __cplusplus
extern "C" {
#endif
// One DEFINE_DEVICETREE per compatible string -- the devicetree compiler derives the
// expected config typedef name from the compatible string's suffix (e.g. "ti,tca9535"
// -> tca9535_config_dt), not from a name we choose, so each supported chip needs its own
// typedef even though they share the same underlying config layout (see dummy-i2s-amp-module's
// bindings header for the same pattern).
DEFINE_DEVICETREE(tca9535, struct Tca95xxConfig)
DEFINE_DEVICETREE(tca9539, struct Tca95xxConfig)
#ifdef __cplusplus
}
#endif
@@ -0,0 +1,17 @@
// SPDX-License-Identifier: Apache-2.0
#pragma once
#include <stdint.h>
#ifdef __cplusplus
extern "C" {
#endif
struct Tca95xxConfig {
/** Address on bus */
uint8_t address;
};
#ifdef __cplusplus
}
#endif
@@ -0,0 +1,16 @@
// SPDX-License-Identifier: Apache-2.0
#pragma once
#include <tactility/module.h>
#ifdef __cplusplus
extern "C" {
#endif
// The devicetree compiler derives the expected module symbol name from this component's
// folder name ("tca95xx-16bit-module" -> tca95xx_16bit_module), not from a name we choose.
extern struct Module tca95xx_16bit_module;
#ifdef __cplusplus
}
#endif