From ec6669945dc38d053e139587e3346d80f1f0d6c8 Mon Sep 17 00:00:00 2001 From: Zick Wei Date: Tue, 11 Aug 2020 19:10:32 +0800 Subject: morphius: add ppc_id for ppc option This pathc use external gpio as ppc id for different ppc: 1:nx20p3483 0:aoz1380 BUG=b:150278507 BRANCH=none TEST=make BOARD=morphius Signed-off-by: Zick Wei Change-Id: I32c26f86a35bd18bd23689a53ab2c44174a01e34 Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2348739 Reviewed-by: Edward Hill Reviewed-by: Denis Brockus Commit-Queue: Edward Hill --- board/morphius/board.c | 6 +++++- board/morphius/gpio.inc | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/board/morphius/board.c b/board/morphius/board.c index ab47596e0f..fade286178 100644 --- a/board/morphius/board.c +++ b/board/morphius/board.c @@ -299,6 +299,8 @@ enum gpio_signal board_usbc_port_to_hpd_gpio(int port) static void board_remap_gpio(void) { + int ppc_id = 0; + if (board_ver >= 3) { int rv; @@ -328,7 +330,9 @@ static void board_remap_gpio(void) ioex_enable_interrupt(IOEX_HDMI_CONN_HPD_3V3_DB); } - support_aoz_ppc = (board_ver == 3); + ioex_get_level(IOEX_PPC_ID, &ppc_id); + + support_aoz_ppc = (board_ver == 3) || ((board_ver >= 4) && !ppc_id); if (support_aoz_ppc) { ccprintf("DB USBC PPC aoz1380\n"); ppc_chips[USBC_PORT_C1].drv = &aoz1380_drv; diff --git a/board/morphius/gpio.inc b/board/morphius/gpio.inc index 1d099c1140..a40064d5ec 100644 --- a/board/morphius/gpio.inc +++ b/board/morphius/gpio.inc @@ -78,7 +78,7 @@ IOEX(EN_USB_A0_5V, EXPIN(USBC_PORT_C0, 1, 5), GPIO_OUT_LOW) /* A0 5V Source Ena IOEX(USB_A0_CHARGE_EN_L, EXPIN(USBC_PORT_C0, 1, 6), GPIO_OUT_HIGH) /* A0 5V High Current Enable */ IOEX(USB_A1_RETIMER_EN, EXPIN(USBC_PORT_C1, 0, 0), GPIO_OUT_LOW) /* A1 Retimer Enable */ -IOEX(PPC_ID, EXPIN(USBC_PORT_C1, 0, 1), GPIO_INPUT | GPIO_PULL_DOWN) /* PPC ID */ +IOEX(PPC_ID, EXPIN(USBC_PORT_C1, 0, 1), GPIO_INPUT) /* PPC ID */ IOEX(USB_C1_HPD_IN_DB, EXPIN(USBC_PORT_C1, 0, 2), GPIO_OUT_LOW) /* C1 HPD */ /* -- cgit v1.2.1