summaryrefslogtreecommitdiff
path: root/board/morphius/board.c
diff options
context:
space:
mode:
authorZick Wei <zick.wei@quanta.corp-partner.google.com>2020-06-20 18:32:12 +0800
committerCommit Bot <commit-bot@chromium.org>2020-06-25 20:32:42 +0000
commit2976123d483824bf49c21198f26447df95db712d (patch)
treed422214ff1c703295154ef107e9800cf83219332 /board/morphius/board.c
parent797c10f87b7adc4adabc0624c253d9b32d0956c8 (diff)
downloadchrome-ec-2976123d483824bf49c21198f26447df95db712d.tar.gz
morphius: support aoz and nxp ppc by gpio
BUG=b:156552519 BRANCH=none TEST=make buildall Signed-off-by: Zick Wei <zick.wei@quanta.corp-partner.google.com> Change-Id: I524684c6885cabe39d821081652ac8d016f0515c Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2255828 Reviewed-by: Denis Brockus <dbrockus@chromium.org> Commit-Queue: Edward Hill <ecgh@chromium.org> Tested-by: Edward Hill <ecgh@chromium.org>
Diffstat (limited to 'board/morphius/board.c')
-rw-r--r--board/morphius/board.c18
1 files changed, 11 insertions, 7 deletions
diff --git a/board/morphius/board.c b/board/morphius/board.c
index ac370086d9..fac4f5b795 100644
--- a/board/morphius/board.c
+++ b/board/morphius/board.c
@@ -41,7 +41,7 @@
#include "gpio_list.h"
-
+static bool support_aoz_ppc;
#ifdef HAS_TASK_MOTIONSENSE
@@ -277,6 +277,7 @@ enum gpio_signal gpio_ec_ps2_reset = GPIO_EC_PS2_RESET_V1;
static void board_remap_gpio(void)
{
uint32_t board_ver = 0;
+ int ppc_id = 0;
cbi_get_board_version(&board_ver);
@@ -287,6 +288,14 @@ static void board_remap_gpio(void)
gpio_ec_ps2_reset = GPIO_EC_PS2_RESET_V0;
ccprintf("GPIO_EC_PS2_RESET_V0\n");
}
+
+ ioex_get_level(IOEX_PPC_ID, &ppc_id);
+
+ support_aoz_ppc = ((board_ver >= 3) && !ppc_id);
+ if (support_aoz_ppc) {
+ ccprintf("DB USBC PPC aoz1380\n");
+ ppc_chips[USBC_PORT_C1].drv = &aoz1380_drv;
+ }
}
void setup_fw_config(void)
@@ -301,11 +310,6 @@ void setup_fw_config(void)
setup_mux();
- if (ec_config_has_db_ppc_aoz1380()) {
- ccprintf("DB USBC PPC aoz1380");
- ppc_chips[USBC_PORT_C1].drv = &aoz1380_drv;
- }
-
board_remap_gpio();
}
DECLARE_HOOK(HOOK_INIT, setup_fw_config, HOOK_PRIO_INIT_I2C + 2);
@@ -526,7 +530,7 @@ __override void ppc_interrupt(enum gpio_signal signal)
break;
case GPIO_USB_C1_PPC_INT_ODL:
- if (ec_config_has_db_ppc_aoz1380())
+ if (support_aoz_ppc)
aoz1380_interrupt(USBC_PORT_C1);
else
nx20p348x_interrupt(USBC_PORT_C1);