From fa59dd317aaf9c05c6d89a40c27bd98316d8c2df Mon Sep 17 00:00:00 2001 From: Anup Patel Date: Wed, 15 Sep 2021 13:50:40 +0530 Subject: [PATCH] lib: utils/reset: use sbi_timer_mdelay() in gpio reset driver We should use sbi_timer_mdelay() instead of custom gpio_mdelay() in the gpio reset driver. Signed-off-by: Anup Patel Reviewed-by: Bin Meng Reviewed-by: Xiang W --- lib/utils/reset/fdt_reset_gpio.c | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) diff --git a/lib/utils/reset/fdt_reset_gpio.c b/lib/utils/reset/fdt_reset_gpio.c index 77e308a..30127f5 100644 --- a/lib/utils/reset/fdt_reset_gpio.c +++ b/lib/utils/reset/fdt_reset_gpio.c @@ -14,6 +14,7 @@ #include #include #include +#include #include #include #include @@ -34,14 +35,6 @@ static struct gpio_reset restart = { .inactive_delay = 100 }; -/* Custom mdelay function until we have a generic mdelay() API */ -static void gpio_mdelay(unsigned long msecs) -{ - volatile int i; - while (msecs--) - for (i = 0; i < 100000; i++) ; -} - static int gpio_system_reset_check(u32 type, u32 reason) { switch (type) { @@ -76,11 +69,11 @@ static void gpio_system_reset(u32 type, u32 reason) /* drive it active, also inactive->active edge */ gpio_direction_output(&reset->pin, 1); - gpio_mdelay(reset->active_delay); + sbi_timer_mdelay(reset->active_delay); /* drive inactive, also active->inactive edge */ gpio_set(&reset->pin, 0); - gpio_mdelay(reset->inactive_delay); + sbi_timer_mdelay(reset->inactive_delay); /* drive it active, also inactive->active edge */ gpio_set(&reset->pin, 1); -- 2.7.4