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)
28 lines
700 B
C++
28 lines
700 B
C++
// SPDX-License-Identifier: Apache-2.0
|
|
#include <tactility/device.h>
|
|
#include <tactility/driver.h>
|
|
#include <tactility/drivers/esp32_sdcard.h>
|
|
#include <tactility/drivers/esp32_sdspi.h>
|
|
|
|
#include <soc/soc_caps.h>
|
|
#if SOC_SDMMC_HOST_SUPPORTED
|
|
#include <tactility/drivers/esp32_sdmmc.h>
|
|
#endif
|
|
|
|
extern "C" {
|
|
|
|
sdmmc_card_t* esp32_sdcard_get_card(Device* device) {
|
|
auto* driver = device_get_driver(device);
|
|
if (driver_is_compatible(driver, "espressif,esp32-sdspi")) {
|
|
return esp32_sdspi_get_card(device);
|
|
}
|
|
#if SOC_SDMMC_HOST_SUPPORTED
|
|
if (driver_is_compatible(driver, "espressif,esp32-sdmmc")) {
|
|
return esp32_sdmmc_get_card(device);
|
|
}
|
|
#endif
|
|
return nullptr;
|
|
}
|
|
|
|
}
|