From 80b833c926a9899aad9db65272c327ba559b9867 Mon Sep 17 00:00:00 2001 From: Lucas Saavedra Vaz <32426024+lucasssvaz@users.noreply.github.com> Date: Wed, 23 Apr 2025 08:57:23 -0300 Subject: [PATCH] fix(i2c): Use new init API --- cores/esp32/esp32-hal-i2c-slave.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/cores/esp32/esp32-hal-i2c-slave.c b/cores/esp32/esp32-hal-i2c-slave.c index 0e01259da61..00cf5cfda2e 100644 --- a/cores/esp32/esp32-hal-i2c-slave.c +++ b/cores/esp32/esp32-hal-i2c-slave.c @@ -43,6 +43,7 @@ #include "soc/i2c_struct.h" #include "soc/periph_defs.h" #include "hal/i2c_ll.h" +#include "hal/i2c_types.h" #ifndef CONFIG_IDF_TARGET_ESP32C5 #include "hal/clk_gate_ll.h" #endif @@ -337,7 +338,13 @@ esp_err_t i2cSlaveInit(uint8_t num, int sda, int scl, uint16_t slaveID, uint32_t } #endif // !defined(CONFIG_IDF_TARGET_ESP32P4) +#if ESP_IDF_VERSION >= ESP_IDF_VERSION_VAL(5, 5, 0) + i2c_ll_set_mode(i2c->dev, I2C_BUS_MODE_SLAVE); + i2c_ll_enable_pins_open_drain(i2c->dev, false); +#else i2c_ll_slave_init(i2c->dev); +#endif + #if ESP_IDF_VERSION >= ESP_IDF_VERSION_VAL(5, 4, 0) i2c_ll_enable_fifo_mode(i2c->dev, true); #else