599fa46766
- New drivers: - SD SPI - spi_peripheral - touch_placeholder - display_placeholder - Devicetree compiler: - Implement phandle-arrays - Implement device addresses - Add placeholder drivers to all devices with a SPI display - SPI driver: add `cs-pins` and set them to high on driver start - FileSystem: add `file_system_set_owner()` and `file_system_get_owner()` - File locking is now checking if the related `FileSystem` is part of a shared SPI bus - Add `device_get_child_count()` - SDMMC driver: Remove default of `slot` value - Fix for Crowpanel Basic 3.5" display (add delay to booting) - Fix for LilyGO T-HMI SD card mounting (delayed mounting by disabling it initially in the dts)
39 lines
1003 B
C++
39 lines
1003 B
C++
#include "devices/Display.h"
|
|
#include "devices/TpagerEncoder.h"
|
|
#include "devices/TpagerKeyboard.h"
|
|
#include "devices/TpagerPower.h"
|
|
#include <tactility/device.h>
|
|
|
|
#include <Tactility/hal/Configuration.h>
|
|
#include <Bq25896.h>
|
|
#include <Drv2605.h>
|
|
|
|
bool tpagerInit();
|
|
|
|
using namespace tt::hal;
|
|
|
|
static DeviceVector createDevices() {
|
|
auto* i2c = device_find_by_name("i2c0");
|
|
auto bq27220 = std::make_shared<Bq27220>(i2c);
|
|
auto power = std::make_shared<TpagerPower>(bq27220);
|
|
|
|
auto tca8418 = std::make_shared<Tca8418>(i2c);
|
|
auto keyboard = std::make_shared<TpagerKeyboard>(tca8418);
|
|
|
|
return std::vector<std::shared_ptr<tt::hal::Device>> {
|
|
tca8418,
|
|
std::make_shared<Bq25896>(i2c),
|
|
bq27220,
|
|
std::make_shared<Drv2605>(i2c),
|
|
power,
|
|
createDisplay(),
|
|
keyboard,
|
|
std::make_shared<TpagerEncoder>()
|
|
};
|
|
}
|
|
|
|
extern const Configuration hardwareConfiguration = {
|
|
.initBoot = tpagerInit,
|
|
.createDevices = createDevices
|
|
};
|