mirror of
https://github.com/Telecominfraproject/OpenCellular.git
synced 2026-01-03 21:49:32 +00:00
GPIO: Use gpio_reset in a few more places
The new gpio_reset function simplifies the pattern used in this code, that of returning a GPIO to its original configured state. It also removes a few instances of using port/mask pairs. Signed-off-by: Anton Staaf <robotboy@chromium.org> BRANCH=None BUG=None TEST=make buildall -j Change-Id: I6e411aaf2f0fbc18aca0ed8742c400a0efe5690d Reviewed-on: https://chromium-review.googlesource.com/324059 Commit-Ready: Anton Staaf <robotboy@chromium.org> Tested-by: Anton Staaf <robotboy@chromium.org> Reviewed-by: Shawn N <shawnn@chromium.org>
This commit is contained in:
@@ -270,13 +270,10 @@ void system_hibernate(uint32_t seconds, uint32_t microseconds)
|
||||
|
||||
if (hibernate_wake_pins_used > 0) {
|
||||
for (i = 0; i < hibernate_wake_pins_used; ++i) {
|
||||
const enum gpio_signal *pin = &hibernate_wake_pins[i];
|
||||
gpio_set_flags_by_mask(gpio_list[*pin].port,
|
||||
gpio_list[*pin].mask,
|
||||
gpio_list[*pin].flags);
|
||||
gpio_set_alternate_function(gpio_list[*pin].port,
|
||||
gpio_list[*pin].mask, -1);
|
||||
gpio_enable_interrupt(*pin);
|
||||
const enum gpio_signal pin = hibernate_wake_pins[i];
|
||||
|
||||
gpio_reset(pin);
|
||||
gpio_enable_interrupt(pin);
|
||||
}
|
||||
|
||||
interrupt_enable();
|
||||
|
||||
@@ -324,18 +324,8 @@ void system_set_gpios_and_wakeup_inputs_hibernate(void)
|
||||
gpio_set_flags_by_mask(0x0, 0xF0, GPIO_INPUT | GPIO_PULL_UP);
|
||||
|
||||
/* Enable wake-up inputs of hibernate_wake_pins array */
|
||||
if (hibernate_wake_pins_used > 0) {
|
||||
for (i = 0; i < hibernate_wake_pins_used; i++) {
|
||||
const enum gpio_signal *pin = &hibernate_wake_pins[i];
|
||||
/* Make sure switch to GPIOs */
|
||||
gpio_set_alternate_function(gpio_list[*pin].port,
|
||||
gpio_list[*pin].mask, -1);
|
||||
/* Set wake-up settings for GPIOs */
|
||||
gpio_set_flags_by_mask(gpio_list[*pin].port,
|
||||
gpio_list[*pin].mask,
|
||||
gpio_list[*pin].flags);
|
||||
}
|
||||
}
|
||||
for (i = 0; i < hibernate_wake_pins_used; i++)
|
||||
gpio_reset(hibernate_wake_pins[i]);
|
||||
|
||||
#ifdef CONFIG_USB_PD_PORT_COUNT
|
||||
/*
|
||||
@@ -354,7 +344,7 @@ void system_set_gpios_and_wakeup_inputs_hibernate(void)
|
||||
|
||||
/* board-level function to set GPIOs state in hibernate */
|
||||
if (board_set_gpio_hibernate_state)
|
||||
return board_set_gpio_hibernate_state();
|
||||
board_set_gpio_hibernate_state();
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
Reference in New Issue
Block a user