From a05cae6e527e2e758e0a14d30f09abfe4ab186f4 Mon Sep 17 00:00:00 2001 From: Jeremy Soller Date: Thu, 18 Jun 2020 16:10:58 -0600 Subject: [PATCH] oryp6: set USB port power --- src/board/system76/oryp6/board.c | 2 ++ src/board/system76/oryp6/gpio.c | 5 +++-- src/board/system76/oryp6/include/board/gpio.h | 1 + 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/board/system76/oryp6/board.c b/src/board/system76/oryp6/board.c index e4182d2..dcbed7d 100644 --- a/src/board/system76/oryp6/board.c +++ b/src/board/system76/oryp6/board.c @@ -21,6 +21,8 @@ void board_init(void) { gpio_set(&BT_EN, true); gpio_set(&WLAN_EN, true); gpio_set(&WLAN_PWR_EN, true); + // Enable USB port power? + gpio_set(&USB_PWR_EN_N, false); // Assert SMI#, SCI#, and SWI# gpio_set(&SCI_N, true); gpio_set(&SMI_N, true); diff --git a/src/board/system76/oryp6/gpio.c b/src/board/system76/oryp6/gpio.c index f018df2..c0a7953 100644 --- a/src/board/system76/oryp6/gpio.c +++ b/src/board/system76/oryp6/gpio.c @@ -27,6 +27,7 @@ struct Gpio __code SMI_N = GPIO(D, 4); struct Gpio __code SUSB_N_PCH = GPIO(H, 6); struct Gpio __code SUSC_N_PCH = GPIO(H, 1); struct Gpio __code SWI_N = GPIO(B, 5); +struct Gpio __code USB_PWR_EN_N = GPIO(E, 3); struct Gpio __code VA_EC_EN = GPIO(J, 4); // renamed to EC_SLP_SUS# struct Gpio __code WLAN_EN = GPIO(G, 1); struct Gpio __code WLAN_PWR_EN = GPIO(A, 3); @@ -50,7 +51,7 @@ void gpio_init() { GPDRG = 0x40; GPDRH = 0x00; GPDRI = 0x20; - GPDRJ = 0x00; + GPDRJ = 0x02; // Set GPIO control // EC_PWM_PIN_24 @@ -200,7 +201,7 @@ void gpio_init() { // LED_BAT_FULL GPCRJ0 = GPIO_OUT | GPIO_UP; // KBC_MUTE# - GPCRJ1 = GPIO_IN; + GPCRJ1 = GPIO_OUT; // NC GPCRJ2 = GPIO_IN | GPIO_UP; // RGBKB-DET# diff --git a/src/board/system76/oryp6/include/board/gpio.h b/src/board/system76/oryp6/include/board/gpio.h index c5893a3..76c43e0 100644 --- a/src/board/system76/oryp6/include/board/gpio.h +++ b/src/board/system76/oryp6/include/board/gpio.h @@ -44,6 +44,7 @@ extern struct Gpio __code SUSC_N_PCH; #define HAVE_SUSWARN_N 0 #define HAVE_SUS_PWR_ACK 0 extern struct Gpio __code SWI_N; +extern struct Gpio __code USB_PWR_EN_N; extern struct Gpio __code VA_EC_EN; extern struct Gpio __code WLAN_EN; extern struct Gpio __code WLAN_PWR_EN;