Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Commit da76910

Browse files
committed
Merge branch 'bugfix/gpio_set_pull_mode_error' into 'master'
bugfix(gpio_set_pull_mode_error):fix cant set gpio pull mode See merge request sdk/ESP8266_RTOS_SDK!1285
2 parents ba83b0d + b4b9763 commit da76910

File tree

1 file changed

+16
-4
lines changed
  • components/esp8266/driver

1 file changed

+16
-4
lines changed

components/esp8266/driver/gpio.c

Lines changed: 16 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -86,7 +86,10 @@ static gpio_isr_func_t *gpio_isr_func = NULL;
8686
esp_err_t gpio_pullup_en(gpio_num_t gpio_num)
8787
{
8888
GPIO_CHECK(GPIO_IS_VALID_GPIO(gpio_num), "GPIO number error", ESP_ERR_INVALID_ARG);
89-
GPIO_CHECK(!RTC_GPIO_IS_VALID_GPIO(gpio_num), "The RTC GPIO of esp8266 can not be pulled up.", ESP_ERR_INVALID_ARG);
89+
90+
if (RTC_GPIO_IS_VALID_GPIO(gpio_num)) {
91+
return ESP_OK;
92+
}
9093

9194
gpio_pin_reg_t pin_reg;
9295
pin_reg.val = READ_PERI_REG(GPIO_PIN_REG(gpio_num));
@@ -98,7 +101,10 @@ esp_err_t gpio_pullup_en(gpio_num_t gpio_num)
98101
esp_err_t gpio_pullup_dis(gpio_num_t gpio_num)
99102
{
100103
GPIO_CHECK(GPIO_IS_VALID_GPIO(gpio_num), "GPIO number error", ESP_ERR_INVALID_ARG);
101-
GPIO_CHECK(!RTC_GPIO_IS_VALID_GPIO(gpio_num), "The RTC GPIO of esp8266 can not be pulled up.", ESP_ERR_INVALID_ARG);
104+
105+
if (RTC_GPIO_IS_VALID_GPIO(gpio_num)) {
106+
return ESP_OK;
107+
}
102108

103109
gpio_pin_reg_t pin_reg;
104110
pin_reg.val = READ_PERI_REG(GPIO_PIN_REG(gpio_num));
@@ -110,7 +116,10 @@ esp_err_t gpio_pullup_dis(gpio_num_t gpio_num)
110116
esp_err_t gpio_pulldown_en(gpio_num_t gpio_num)
111117
{
112118
GPIO_CHECK(GPIO_IS_VALID_GPIO(gpio_num), "GPIO number error", ESP_ERR_INVALID_ARG);
113-
GPIO_CHECK(RTC_GPIO_IS_VALID_GPIO(gpio_num), "The GPIO of esp8266 can not be pulled down except RTC GPIO.", ESP_ERR_INVALID_ARG);
119+
120+
if (!RTC_GPIO_IS_VALID_GPIO(gpio_num)) {
121+
return ESP_OK;
122+
}
114123

115124
gpio_pin_reg_t pin_reg;
116125
pin_reg.val = READ_PERI_REG(GPIO_PIN_REG(gpio_num));
@@ -122,7 +131,10 @@ esp_err_t gpio_pulldown_en(gpio_num_t gpio_num)
122131
esp_err_t gpio_pulldown_dis(gpio_num_t gpio_num)
123132
{
124133
GPIO_CHECK(GPIO_IS_VALID_GPIO(gpio_num), "GPIO number error", ESP_ERR_INVALID_ARG);
125-
GPIO_CHECK(RTC_GPIO_IS_VALID_GPIO(gpio_num), "The GPIO of esp8266 can not be pulled down except RTC GPIO.", ESP_ERR_INVALID_ARG);
134+
135+
if (!RTC_GPIO_IS_VALID_GPIO(gpio_num)) {
136+
return ESP_OK;
137+
}
126138

127139
gpio_pin_reg_t pin_reg;
128140
pin_reg.val = READ_PERI_REG(GPIO_PIN_REG(gpio_num));

0 commit comments

Comments
 (0)