From ca1187faa2a8a0deb7040c05e358442880c027be Mon Sep 17 00:00:00 2001 From: Furquan Shaikh Date: Wed, 23 Oct 2019 11:15:57 -0700 Subject: mb/google/{glados,dragonegg}: Configure GPIOs in mainboard chip->init() mainboard_silicon_init_params() is supposed to be used for only overriding any FSP params as per mainboard configuration. GPIOs should be configured by mainboard as part of its chip init(). This ensures proper ordering w.r.t. any common operations that the SoC code might want to perform e.g. snapshot ITSS polarities. This change moves the configuration of GPIOs from mainboard_silicon_init_params() to mainboard chip->init(). Change-Id: I5d10c01c5b9d5f8ed02274d51dcf9c2a17269685 Signed-off-by: Furquan Shaikh Reviewed-on: https://review.coreboot.org/c/coreboot/+/36270 Reviewed-by: Aaron Durbin Tested-by: build bot (Jenkins) --- src/mainboard/google/glados/mainboard.c | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/mainboard/google/glados/mainboard.c') diff --git a/src/mainboard/google/glados/mainboard.c b/src/mainboard/google/glados/mainboard.c index 8b04a65c8d..ebc50f41e2 100644 --- a/src/mainboard/google/glados/mainboard.c +++ b/src/mainboard/google/glados/mainboard.c @@ -115,6 +115,14 @@ static void mainboard_enable(struct device *dev) dev->ops->acpi_inject_dsdt_generator = chromeos_dsdt_generator; } +static void mainboard_chip_init(void *chip_info) +{ + /* Configure pads prior to SiliconInit() in case there's any + * dependencies during hardware initialization. */ + gpio_configure_pads(gpio_table, ARRAY_SIZE(gpio_table)); +} + struct chip_operations mainboard_ops = { + .init = mainboard_chip_init, .enable_dev = mainboard_enable, }; -- cgit v1.2.3