diff --git a/components/esp_hal_gpio/esp32s31/include/hal/gpio_ll.h b/components/esp_hal_gpio/esp32s31/include/hal/gpio_ll.h index 6b36735d03..801094b70d 100644 --- a/components/esp_hal_gpio/esp32s31/include/hal/gpio_ll.h +++ b/components/esp_hal_gpio/esp32s31/include/hal/gpio_ll.h @@ -569,7 +569,7 @@ static inline void gpio_ll_set_input_signal_from(gpio_dev_t *hw, uint32_t signal */ static inline void gpio_ll_set_input_signal_matrix_source(gpio_dev_t *hw, uint32_t signal_idx, uint32_t gpio_num, bool in_inv) { - hw->func_in_sel_cfg[signal_idx].in_sel = gpio_num; + HAL_FORCE_MODIFY_U32_REG_FIELD(hw->func_in_sel_cfg[signal_idx], in_sel, gpio_num); hw->func_in_sel_cfg[signal_idx].in_inv_sel = in_inv; gpio_ll_set_input_signal_from(hw, signal_idx, true); }