diff options
author | Angel Pons <th3fanbus@gmail.com> | 2020-11-24 15:26:10 +0100 |
---|---|---|
committer | Patrick Georgi <pgeorgi@google.com> | 2020-11-30 08:02:09 +0000 |
commit | fe17a8cd6a2e734bd1bb8be45a41b3e1d46ab904 (patch) | |
tree | a9f0b0b8504328490e61fad4100ac0654bab4e0f /src/mainboard/prodrive/hermes/variants | |
parent | 329ebb340b157bc64065473a960a97eae0e30914 (diff) |
mb/prodrive/hermes: Encapsulate GPIO setup
Having variants' gpio.c call the `gpio_configure_pads` function results
in an API that does not need to pass data around, which is much simpler.
Change-Id: I1064dc6258561bcf83f0e249d65b823368cf0d31
Signed-off-by: Angel Pons <th3fanbus@gmail.com>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/47958
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Singer <felixsinger@posteo.net>
Diffstat (limited to 'src/mainboard/prodrive/hermes/variants')
-rw-r--r-- | src/mainboard/prodrive/hermes/variants/baseboard/gpio.c | 12 | ||||
-rw-r--r-- | src/mainboard/prodrive/hermes/variants/baseboard/include/variant/gpio.h | 7 |
2 files changed, 8 insertions, 11 deletions
diff --git a/src/mainboard/prodrive/hermes/variants/baseboard/gpio.c b/src/mainboard/prodrive/hermes/variants/baseboard/gpio.c index 8735a9ef4b..096dc35785 100644 --- a/src/mainboard/prodrive/hermes/variants/baseboard/gpio.c +++ b/src/mainboard/prodrive/hermes/variants/baseboard/gpio.c @@ -2,6 +2,8 @@ #include "include/variant/gpio.h" #include <commonlib/helpers.h> +#include <soc/gpio.h> +#include <intelblocks/gpio_defs.h> /* Pad configuration in ramstage */ static const struct pad_config gpio_table[] = { @@ -389,14 +391,12 @@ const struct pad_config early_gpio_table[] = { PAD_CFG_GPO(GPP_H5, 0, DEEP), /* PCH_HBLED_n */ }; -const struct pad_config *get_gpio_table(size_t *num) +void program_gpio_pads(void) { - *num = ARRAY_SIZE(gpio_table); - return gpio_table; + gpio_configure_pads(gpio_table, ARRAY_SIZE(gpio_table)); } -const struct pad_config *get_early_gpio_table(size_t *num) +void program_early_gpio_pads(void) { - *num = ARRAY_SIZE(early_gpio_table); - return early_gpio_table; + gpio_configure_pads(early_gpio_table, ARRAY_SIZE(early_gpio_table)); } diff --git a/src/mainboard/prodrive/hermes/variants/baseboard/include/variant/gpio.h b/src/mainboard/prodrive/hermes/variants/baseboard/include/variant/gpio.h index 50d18018f0..8fce3c8b39 100644 --- a/src/mainboard/prodrive/hermes/variants/baseboard/include/variant/gpio.h +++ b/src/mainboard/prodrive/hermes/variants/baseboard/include/variant/gpio.h @@ -3,10 +3,7 @@ #ifndef PCH_GPIO_H #define PCH_GPIO_H -#include <soc/gpio.h> -#include <intelblocks/gpio_defs.h> - -const struct pad_config *get_gpio_table(size_t *num); -const struct pad_config *get_early_gpio_table(size_t *num); +void program_gpio_pads(void); +void program_early_gpio_pads(void); #endif /* PCH_GPIO_H */ |