From 1015d4332fc9c8b0e3417eafab8154603b14b758 Mon Sep 17 00:00:00 2001 From: Subrata Banik Date: Fri, 25 Apr 2025 12:11:11 +0530 Subject: [PATCH] mainboard/google/bluey: Add fingerprint sensor GPIO entries This commit introduces Kconfig options and GPIO definitions to support onboard fingerprint sensors for the Bluey mainboard. Source: Bluey schematics (dated 04/15). BUG=b:404985109 TEST=Successfully built google/bluey with the Qualcomm x1p42100 SoC. Change-Id: Ia8f1a7b2dab3bef1a9332d8c0020489c06bd4f99 Signed-off-by: Subrata Banik Reviewed-on: https://review.coreboot.org/c/coreboot/+/87448 Tested-by: build bot (Jenkins) Reviewed-by: Jayvik Desai --- src/mainboard/google/bluey/Kconfig | 22 ++++++++++++++++++++++ src/mainboard/google/bluey/board.h | 14 ++++++++++++++ 2 files changed, 36 insertions(+) diff --git a/src/mainboard/google/bluey/Kconfig b/src/mainboard/google/bluey/Kconfig index 5c74c81ac4..2de1c01649 100644 --- a/src/mainboard/google/bluey/Kconfig +++ b/src/mainboard/google/bluey/Kconfig @@ -25,12 +25,34 @@ config BOARD_GOOGLE_BASEBOARD_BLUEY config BOARD_GOOGLE_BLUEY select BOARD_GOOGLE_BASEBOARD_BLUEY + select MAINBOARD_HAS_FINGERPRINT_VIA_USB if BOARD_GOOGLE_BLUEY_COMMON config MAINBOARD_DIR default "google/bluey" +config MAINBOARD_HAS_FINGERPRINT_VIA_SPI + bool + default n + help + Enable this option if your mainboard's fingerprint reader + is connected via the SPI interface. + +config MAINBOARD_HAS_FINGERPRINT_VIA_USB + bool + default n + help + Enable this option if your mainboard's fingerprint reader + is connected via the USB interface. + +config MAINBOARD_HAS_FINGERPRINT + bool + default y if MAINBOARD_HAS_FINGERPRINT_VIA_SPI || MAINBOARD_HAS_FINGERPRINT_VIA_USB + help + Enable this option if your mainboard is equipped with an onboard + fingerprint reader. This could be connected via SPI or USB. + config MAINBOARD_VENDOR string default "Google" diff --git a/src/mainboard/google/bluey/board.h b/src/mainboard/google/bluey/board.h index 618eadce2a..c47b164127 100644 --- a/src/mainboard/google/bluey/board.h +++ b/src/mainboard/google/bluey/board.h @@ -10,6 +10,20 @@ #define GSC_AP_INT(x) GPIO(x) #define GPIO_GSC_AP_INT GSC_AP_INT(CONFIG_MAINBOARD_GPIO_PIN_FOR_GSC_AP_INTERRUPT) +/* Fingerprint-specific GPIOs. Only for fingerprint-enabled devices. */ +#if CONFIG(MAINBOARD_HAS_FINGERPRINT) +#define GPIO_FP_RST_L GPIO(25) +#if CONFIG(MAINBOARD_HAS_FINGERPRINT_VIA_SPI) +#define GPIO_FPMCU_BOOT0 GPIO(24) +#define GPIO_FPMCU_INT GPIO(23) +#define GPIO_EN_FP_RAILS GPIO(22) +#else +#define GPIO_FPMCU_BOOT0 dead_code_t(gpio_t) +#define GPIO_FPMCU_INT dead_code_t(gpio_t) +#define GPIO_EN_FP_RAILS dead_code_t(gpio_t) +#endif +#endif + void setup_chromeos_gpios(void); #endif /* MAINBOARD_GOOGLE_BLUEY_BOARD_H */