mirror of
https://github.com/ByteWelder/Tactility.git
synced 2026-02-18 10:53:17 +00:00
* **New Features** * Added a HAL device module providing device enumeration, type queries and a HAL↔kernel bridge. * **Improvements** * Integrated HAL module into startup; standardized module names, includes and lifecycle logging; safer file append behavior; broader build support. * **API Changes** * Driver lifecycle now uses explicit add/remove semantics; C and HAL device type/lookup APIs clarified. * **Chores** * Added module README and Apache‑2.0 license; updated build configuration to include the new module. * **Fixes** * Updated tests and object file handling to behave correctly.
35 lines
876 B
C
35 lines
876 B
C
#pragma once
|
|
|
|
#include <stdint.h>
|
|
#include <stdbool.h>
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
typedef enum {
|
|
DEVICE_TYPE_I2C,
|
|
DEVICE_TYPE_DISPLAY,
|
|
DEVICE_TYPE_TOUCH,
|
|
DEVICE_TYPE_SDCARD,
|
|
DEVICE_TYPE_KEYBOARD,
|
|
DEVICE_TYPE_POWER,
|
|
DEVICE_TYPE_GPS
|
|
} TtDeviceType;
|
|
|
|
typedef uint32_t DeviceId;
|
|
|
|
/**
|
|
* Find one or more devices of a certain type.
|
|
* @param[in] type the type to look for
|
|
* @param[inout] deviceIds the output ids, which should fit at least maxCount amount of devices
|
|
* @param[out] count the resulting number of device ids that were returned
|
|
* @param[in] maxCount the maximum number of items that the "deviceIds" output can contain (minimum value is 1)
|
|
* @return true if one or more devices were found
|
|
*/
|
|
bool tt_hal_device_find(TtDeviceType type, DeviceId* deviceIds, uint16_t* count, uint16_t maxCount);
|
|
|
|
#ifdef __cplusplus
|
|
}
|
|
#endif
|