Merge branch 'fix/i2c_disable_od_in_delete_v5.5' into 'release/v5.5'

fix(i2c): disable open drain mode on deinit (v5.5)

See merge request espressif/esp-idf!42724
This commit is contained in:
morris
2025-10-21 14:44:42 +08:00
+4 -2
View File
@@ -446,10 +446,12 @@ esp_err_t i2c_common_deinit_pins(i2c_bus_handle_t handle)
esp_gpio_revoke(BIT64(handle->scl_num));
if (handle->is_lp_i2c == false) {
ESP_RETURN_ON_ERROR(gpio_output_disable(handle->sda_num), TAG, "disable i2c pins failed");
gpio_od_disable(handle->sda_num);
gpio_output_disable(handle->sda_num);
esp_rom_gpio_connect_in_signal(GPIO_MATRIX_CONST_ZERO_INPUT, i2c_periph_signal[port_id].sda_in_sig, 0);
ESP_RETURN_ON_ERROR(gpio_output_disable(handle->scl_num), TAG, "disable i2c pins failed");
gpio_od_disable(handle->scl_num);
gpio_output_disable(handle->scl_num);
esp_rom_gpio_connect_in_signal(GPIO_MATRIX_CONST_ZERO_INPUT, i2c_periph_signal[port_id].scl_in_sig, 0);
}
#if SOC_LP_I2C_SUPPORTED