Felix Held has submitted this change. ( https://review.coreboot.org/c/coreboot/+/73211 )
Change subject: mb/google/poppy: Add support for variant SKU romstage GPIO configs ......................................................................
mb/google/poppy: Add support for variant SKU romstage GPIO configs
Add functionality that allows a variant SKU to have a specific set of GPIO configs in romstage (modeled after the existing one in ramstage)
BUG=b:245954151 TEST=builds
Change-Id: I593a23951306908fadc00e6bc8d9d310f09c5e4b Signed-off-by: Tarun Tuli taruntuli@google.com Reviewed-on: https://review.coreboot.org/c/coreboot/+/73211 Tested-by: build bot (Jenkins) no-reply@coreboot.org Reviewed-by: Subrata Banik subratabanik@google.com Reviewed-by: Shelley Chen shchen@google.com Reviewed-by: Eric Lai eric_lai@quanta.corp-partner.google.com --- M src/mainboard/google/poppy/romstage.c M src/mainboard/google/poppy/variants/baseboard/gpio.c M src/mainboard/google/poppy/variants/baseboard/include/baseboard/variants.h 3 files changed, 33 insertions(+), 0 deletions(-)
Approvals: build bot (Jenkins): Verified Shelley Chen: Looks good to me, approved Subrata Banik: Looks good to me, approved Eric Lai: Looks good to me, approved
diff --git a/src/mainboard/google/poppy/romstage.c b/src/mainboard/google/poppy/romstage.c index 7fd4409..f73ca5f9 100644 --- a/src/mainboard/google/poppy/romstage.c +++ b/src/mainboard/google/poppy/romstage.c @@ -140,6 +140,8 @@
pads = variant_romstage_gpio_table(&num); gpio_configure_pads(pads, num); + pads = variant_romstage_sku_gpio_table(&num); + gpio_configure_pads(pads, num);
memset(&p, 0, sizeof(p)); variant_memory_params(&p); diff --git a/src/mainboard/google/poppy/variants/baseboard/gpio.c b/src/mainboard/google/poppy/variants/baseboard/gpio.c index 9048e29..ee2b1dc 100644 --- a/src/mainboard/google/poppy/variants/baseboard/gpio.c +++ b/src/mainboard/google/poppy/variants/baseboard/gpio.c @@ -383,6 +383,13 @@ return NULL; }
+const struct pad_config * __weak + variant_romstage_sku_gpio_table(size_t *num) +{ + *num = 0; + return NULL; +} + static const struct cros_gpio cros_gpios[] = { CROS_GPIO_REC_AL(CROS_GPIO_VIRTUAL, CROS_GPIO_DEVICE_NAME), CROS_GPIO_WP_AH(GPIO_PCH_WP, CROS_GPIO_DEVICE_NAME), 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 9e4bfc5..603a2ba 100644 --- a/src/mainboard/google/poppy/variants/baseboard/include/baseboard/variants.h +++ b/src/mainboard/google/poppy/variants/baseboard/include/baseboard/variants.h @@ -21,6 +21,7 @@
/* Config gpio by different sku id */ const struct pad_config *variant_sku_gpio_table(size_t *num); +const struct pad_config *variant_romstage_sku_gpio_table(size_t *num);
enum memory_type { MEMORY_LPDDR3,