mb/google/bluey: Introduce config to specify absence of USB-A port
This commit introduces the MAINBOARD_NO_USB_A_PORT Kconfig option to allow boards derived from the 'bluey' base to specify when they do not include a physical USB Type-A receptacle. For boards like 'Quartz' which are Type-C only, this configuration prevents attempts to initialize the USB-A retimer (which connects via QUPV3_0_SE1 I2C bus) during the mainboard initialization sequence. Skipping this unnecessary initialization avoids potential bus errors on Type-C-only devices. Key changes: - Define new Kconfig option MAINBOARD_NO_USB_A_PORT. - Select MAINBOARD_NO_USB_A_PORT for BOARD_GOOGLE_QUARTZ. - In mainboard.c, conditionally execute the USB-A retimer initialization based on the new configuration option. BUG=b:445441291 TEST=Build and boot to Google/Quenbi. Change-Id: Ia02092100c4e8c46106aff30db21461781d66419 Signed-off-by: Kapil Porwal <kapilporwal@google.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/90075 Reviewed-by: Subrata Banik <subratabanik@google.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
parent
872e06d60c
commit
abc87d533d
2 changed files with 9 additions and 1 deletions
|
|
@ -54,6 +54,7 @@ config BOARD_GOOGLE_QUENBIH
|
|||
config BOARD_GOOGLE_QUARTZ
|
||||
select BOARD_GOOGLE_MODEL_QUARTZ
|
||||
select SOC_QUALCOMM_HAMOA
|
||||
select MAINBOARD_NO_USB_A_PORT
|
||||
|
||||
if BOARD_GOOGLE_BLUEY_COMMON
|
||||
|
||||
|
|
@ -87,6 +88,12 @@ config MAINBOARD_HAS_SD_CONTROLLER
|
|||
help
|
||||
Enable this option if your mainboard is equipped with SD card controller.
|
||||
|
||||
config MAINBOARD_NO_USB_A_PORT
|
||||
bool
|
||||
default n
|
||||
help
|
||||
Enable this option if your mainboard is not equipped with USB-A port.
|
||||
|
||||
config MAINBOARD_HAS_GOOGLE_TPM
|
||||
bool
|
||||
default n
|
||||
|
|
|
|||
|
|
@ -100,7 +100,8 @@ static void mainboard_init(struct device *dev)
|
|||
qupv3_se_fw_load_and_init(QUPV3_1_SE0, SE_PROTOCOL_I2C, MIXED); /* Touch I2C */
|
||||
qupv3_se_fw_load_and_init(QUPV3_1_SE6, SE_PROTOCOL_UART, FIFO); /* BT UART */
|
||||
qupv3_se_fw_load_and_init(QUPV3_0_SE0, SE_PROTOCOL_I2C, MIXED); /* Trackpad I2C */
|
||||
qupv3_se_fw_load_and_init(QUPV3_0_SE1, SE_PROTOCOL_I2C, MIXED); /* USB-A retimer */
|
||||
if (!CONFIG(MAINBOARD_NO_USB_A_PORT))
|
||||
qupv3_se_fw_load_and_init(QUPV3_0_SE1, SE_PROTOCOL_I2C, MIXED); /* USB-A retimer */
|
||||
if (CONFIG(MAINBOARD_HAS_FINGERPRINT_VIA_SPI))
|
||||
qupv3_se_fw_load_and_init(QUPV3_2_SE2, SE_PROTOCOL_SPI, MIXED); /* Fingerprint SPI */
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue