diff options
author | Anton Staaf <robotboy@chromium.org> | 2016-01-13 11:14:23 -0800 |
---|---|---|
committer | chrome-bot <chrome-bot@chromium.org> | 2016-01-19 14:24:40 -0800 |
commit | 6e4e1ccc8217ac8b318b885dae78b3c1996ca71e (patch) | |
tree | 02740e3467d89dce03726f6c6ed78d149b56335d /common | |
parent | e933d0b7b6984bc8abf40b3364695d9955a9a426 (diff) | |
download | chrome-ec-6e4e1ccc8217ac8b318b885dae78b3c1996ca71e.tar.gz |
GPIO: Add gpio_reset function
The gpio_reset function returns a GPIO to its initialy configured state.
Using it removes a few more uses of gpio_list.
Signed-off-by: Anton Staaf <robotboy@chromium.org>
BRANCH=None
BUG=None
TEST=make buildall -j
Change-Id: Ie24e8e8a96d0ff50f521a918e80ed2b379f8c1a9
Reviewed-on: https://chromium-review.googlesource.com/321951
Commit-Ready: Anton Staaf <robotboy@chromium.org>
Tested-by: Anton Staaf <robotboy@chromium.org>
Reviewed-by: Randall Spangler <rspangler@chromium.org>
Diffstat (limited to 'common')
-rw-r--r-- | common/gpio.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/common/gpio.c b/common/gpio.c index 44b77c337e..0fd34d4a79 100644 --- a/common/gpio.c +++ b/common/gpio.c @@ -114,6 +114,14 @@ void gpio_set_flags(enum gpio_signal signal, int flags) gpio_set_flags_by_mask(g->port, g->mask, flags); } +void gpio_reset(enum gpio_signal signal) +{ + const struct gpio_info *g = gpio_list + signal; + + gpio_set_flags_by_mask(g->port, g->mask, g->flags); + gpio_set_alternate_function(g->port, g->mask, -1); +} + const char *gpio_get_name(enum gpio_signal signal) { return gpio_list[signal].name; |