diff options
author | Anton Staaf <robotboy@chromium.org> | 2014-07-14 15:33:29 -0700 |
---|---|---|
committer | chrome-internal-fetch <chrome-internal-fetch@google.com> | 2014-07-17 00:39:52 +0000 |
commit | 7746b32e17571b0e0cbdcbd101787b742d35c825 (patch) | |
tree | 5b4374d93630dda800996687239aac5cec681dc7 /include/gpio_list.h | |
parent | 1e73a1ba06b7879de3b03c7cefec9135bf73fcf5 (diff) | |
download | chrome-ec-7746b32e17571b0e0cbdcbd101787b742d35c825.tar.gz |
GPIO: Move definition of alternate functions to gpio.inc
This is a straightforward conversion of existing tables
into X-Macro style definitions for the GPIO alternate
functions. This change in itself, is not particularly
powerful, but having all GPIO settings in a single file
makes a board easier to understand.
Signed-off-by: Anton Staaf <robotboy@chromium.org>
BRANCH=none
TEST=make buildall -j
Followed by manual testing of interrupt on change and UART
functionality on STM32F0 based discovery board.
Change-Id: Ib7f1f014f4bd289d7c0ac3100470ba2dc71ca579
Reviewed-on: https://chromium-review.googlesource.com/207987
Reviewed-by: Randall Spangler <rspangler@chromium.org>
Tested-by: Anton Staaf <robotboy@chromium.org>
Commit-Queue: Anton Staaf <robotboy@chromium.org>
Diffstat (limited to 'include/gpio_list.h')
-rw-r--r-- | include/gpio_list.h | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/include/gpio_list.h b/include/gpio_list.h index 6d41fb9115..9077c17fd2 100644 --- a/include/gpio_list.h +++ b/include/gpio_list.h @@ -15,3 +15,16 @@ const struct gpio_info gpio_list[] = { }; BUILD_ASSERT(ARRAY_SIZE(gpio_list) == GPIO_COUNT); + +/* + * Construct the gpio_alt_funcs array. This array is used by gpio_config_module + * to enable and disable GPIO alternate functions on a module by module basis. + */ +#define ALTERNATE(port, mask, function, module, flags) \ + {GPIO_##port, mask, function, module, flags}, + +const struct gpio_alt_func gpio_alt_funcs[] = { + #include "gpio.wrap" +}; + +const int gpio_alt_funcs_count = ARRAY_SIZE(gpio_alt_funcs); |