diff --git a/TactilityKernel/CMakeLists.txt b/TactilityKernel/CMakeLists.txt index 5644a317..780a9782 100644 --- a/TactilityKernel/CMakeLists.txt +++ b/TactilityKernel/CMakeLists.txt @@ -7,6 +7,8 @@ if (DEFINED ENV{ESP_IDF_VERSION}) idf_component_register( SRCS ${SOURCES} INCLUDE_DIRS "Include/" + # TODO move the related logic for esp_time in Tactility/time.h into the Platform/ subproject + REQUIRES esp_timer ) else () diff --git a/TactilityKernel/Source/concurrent/timer.c b/TactilityKernel/Source/concurrent/timer.c index f0badbb3..6360ab2a 100644 --- a/TactilityKernel/Source/concurrent/timer.c +++ b/TactilityKernel/Source/concurrent/timer.c @@ -1,5 +1,4 @@ // SPDX-License-Identifier: Apache-2.0 - #include #include #include diff --git a/TactilityKernel/Source/drivers/i2c_controller.cpp b/TactilityKernel/Source/drivers/i2c_controller.cpp index 11bb8006..50012df0 100644 --- a/TactilityKernel/Source/drivers/i2c_controller.cpp +++ b/TactilityKernel/Source/drivers/i2c_controller.cpp @@ -36,12 +36,11 @@ error_t i2c_controller_write_register(Device* device, uint8_t address, uint8_t r error_t i2c_controller_write_register_array(Device* device, uint8_t address, const uint8_t* data, uint16_t dataSize, TickType_t timeout) { const auto* driver = device_get_driver(device); assert(dataSize % 2 == 0); - error_t error; for (int i = 0; i < dataSize; i += 2) { - error = I2C_DRIVER_API(driver)->write_register(device, address, data[i], &data[i + 1], 1, timeout); - if (error != ERROR_NONE) break; + error_t error = I2C_DRIVER_API(driver)->write_register(device, address, data[i], &data[i + 1], 1, timeout); + if (error != ERROR_NONE) return error; } - return error; + return ERROR_NONE; } error_t i2c_controller_has_device_at_address(Device* device, uint8_t address, TickType_t timeout) {