From fb10ceb8a71f0c6d2bc3866562f946c04bcd1211 Mon Sep 17 00:00:00 2001 From: Furquan Shaikh Date: Sun, 5 Aug 2018 20:59:25 -0700 Subject: mb/google/poppy: Add variant callback for romstage GPIO configuration This change adds variant callback to get GPIO configuration table in romstage and configures these GPIOs before memory training is performed. BUG=b:111860510 BRANCH=poppy Change-Id: I1eb51356fb3f4c0f4ff29b22dbcde6dbece303ad Signed-off-by: Furquan Shaikh Reviewed-on: https://review.coreboot.org/27863 Tested-by: build bot (Jenkins) Reviewed-by: Aaron Durbin --- src/mainboard/google/poppy/variants/baseboard/Makefile.inc | 1 + src/mainboard/google/poppy/variants/baseboard/gpio.c | 6 ++++++ .../google/poppy/variants/baseboard/include/baseboard/variants.h | 6 ++++++ 3 files changed, 13 insertions(+) (limited to 'src/mainboard/google/poppy/variants') diff --git a/src/mainboard/google/poppy/variants/baseboard/Makefile.inc b/src/mainboard/google/poppy/variants/baseboard/Makefile.inc index 1d25510dff..41669f2114 100644 --- a/src/mainboard/google/poppy/variants/baseboard/Makefile.inc +++ b/src/mainboard/google/poppy/variants/baseboard/Makefile.inc @@ -1,6 +1,7 @@ bootblock-y += gpio.c romstage-y += memory.c +romstage-y += gpio.c ramstage-y += gpio.c ramstage-y += nhlt.c diff --git a/src/mainboard/google/poppy/variants/baseboard/gpio.c b/src/mainboard/google/poppy/variants/baseboard/gpio.c index 25202e6139..c1b8e4ce55 100644 --- a/src/mainboard/google/poppy/variants/baseboard/gpio.c +++ b/src/mainboard/google/poppy/variants/baseboard/gpio.c @@ -403,3 +403,9 @@ const struct cros_gpio * __weak variant_cros_gpios(size_t *num) *num = ARRAY_SIZE(cros_gpios); return cros_gpios; } + +const struct pad_config * __weak variant_romstage_gpio_table(size_t *num) +{ + *num = 0; + return NULL; +} diff --git a/src/mainboard/google/poppy/variants/baseboard/include/baseboard/variants.h b/src/mainboard/google/poppy/variants/baseboard/include/baseboard/variants.h index 7e850b6e78..391f809c16 100644 --- a/src/mainboard/google/poppy/variants/baseboard/include/baseboard/variants.h +++ b/src/mainboard/google/poppy/variants/baseboard/include/baseboard/variants.h @@ -27,6 +27,12 @@ const struct pad_config *variant_gpio_table(size_t *num); const struct pad_config *variant_early_gpio_table(size_t *num); +/* + * Callback to get GPIOs to configure in romstage before memory training is + * performed. + */ +const struct pad_config *variant_romstage_gpio_table(size_t *num); + const struct cros_gpio *variant_cros_gpios(size_t *num); /* Config gpio by different sku id */ const struct pad_config *variant_sku_gpio_table(size_t *num); -- cgit v1.2.3