From 2b4aae2e3a24abad47fa2263e48e013b17523702 Mon Sep 17 00:00:00 2001 From: morris Date: Wed, 14 May 2025 10:14:03 +0800 Subject: [PATCH] refactor(gpio): public some private GPIO functions like enable/disable open drain, enable/disable output capability --- .../esp_driver_gpio/include/driver/gpio.h | 44 +++++++++++++++++++ .../include/esp_private/gpio.h | 44 ------------------- 2 files changed, 44 insertions(+), 44 deletions(-) diff --git a/components/esp_driver_gpio/include/driver/gpio.h b/components/esp_driver_gpio/include/driver/gpio.h index 04dff3e7ab..681f88eaa1 100644 --- a/components/esp_driver_gpio/include/driver/gpio.h +++ b/components/esp_driver_gpio/include/driver/gpio.h @@ -292,6 +292,50 @@ esp_err_t gpio_pulldown_en(gpio_num_t gpio_num); */ esp_err_t gpio_pulldown_dis(gpio_num_t gpio_num); +/** + * @brief Enable output for an IO (as a simple GPIO output) + * + * @param gpio_num GPIO number + * + * @return + * - ESP_OK Success + * - ESP_ERR_INVALID_ARG GPIO number error + */ +esp_err_t gpio_output_enable(gpio_num_t gpio_num); + +/** + * @brief Disable output for an IO + * + * @param gpio_num GPIO number + * + * @return + * - ESP_OK Success + * - ESP_ERR_INVALID_ARG GPIO number error + */ +esp_err_t gpio_output_disable(gpio_num_t gpio_num); + +/** + * @brief Enable open-drain for an IO + * + * @param gpio_num GPIO number + * + * @return + * - ESP_OK Success + * - ESP_ERR_INVALID_ARG GPIO number error + */ +esp_err_t gpio_od_enable(gpio_num_t gpio_num); + +/** + * @brief Disable open-drain for an IO + * + * @param gpio_num GPIO number + * + * @return + * - ESP_OK Success + * - ESP_ERR_INVALID_ARG GPIO number error + */ +esp_err_t gpio_od_disable(gpio_num_t gpio_num); + /** * @brief Install the GPIO driver's ETS_GPIO_INTR_SOURCE ISR handler service, which allows per-pin GPIO interrupt handlers. * diff --git a/components/esp_driver_gpio/include/esp_private/gpio.h b/components/esp_driver_gpio/include/esp_private/gpio.h index 1a089cf6d0..aaecf65840 100644 --- a/components/esp_driver_gpio/include/esp_private/gpio.h +++ b/components/esp_driver_gpio/include/esp_private/gpio.h @@ -52,50 +52,6 @@ esp_err_t gpio_sleep_pupd_config_unapply(gpio_num_t gpio_num); */ esp_err_t gpio_func_sel(gpio_num_t gpio_num, uint32_t func); -/** - * @brief Enable output for an IO (as a simple GPIO output) - * - * @param gpio_num GPIO number - * - * @return - * - ESP_OK Success - * - ESP_ERR_INVALID_ARG GPIO number error - */ -esp_err_t gpio_output_enable(gpio_num_t gpio_num); - -/** - * @brief Disable output for an IO - * - * @param gpio_num GPIO number - * - * @return - * - ESP_OK Success - * - ESP_ERR_INVALID_ARG GPIO number error - */ -esp_err_t gpio_output_disable(gpio_num_t gpio_num); - -/** - * @brief Enable open-drain for an IO - * - * @param gpio_num GPIO number - * - * @return - * - ESP_OK Success - * - ESP_ERR_INVALID_ARG GPIO number error - */ -esp_err_t gpio_od_enable(gpio_num_t gpio_num); - -/** - * @brief Disable open-drain for an IO - * - * @param gpio_num GPIO number - * - * @return - * - ESP_OK Success - * - ESP_ERR_INVALID_ARG GPIO number error - */ -esp_err_t gpio_od_disable(gpio_num_t gpio_num); - /** * @brief Configure the pin to be used for analog purpose (such as ADC, touch, etc.) *