summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNick Sanders <nsanders@chromium.org>2017-12-06 16:04:00 -0800
committerChromeOS Commit Bot <chromeos-commit-bot@chromium.org>2017-12-07 22:28:34 +0000
commit4a47178dd9f5b4d1d3469ef68a3f0a95a1c609fc (patch)
treea1e7eadf77e8ed0dba8d5ab950da58ec1873ebaa
parent60bccd3851cffd78e605feeb6598761b80e827e7 (diff)
downloadchrome-ec-4a47178dd9f5b4d1d3469ef68a3f0a95a1c609fc.tar.gz
servo_micro: default to UART3 enabled
This sets power on defaults for UART3 to be routed to the glados style uart-on-jtag pinout. This is pretty standardized going forward. BUG=None BRANCH=servo-9040.b TEST=miniterm.py /dev/google/Servo_Micro-2-1.2/serial/Servo_UART3 Change-Id: I397df8fc09da681eba28cae489e2f6eaef8a87d0 Signed-off-by: Nick Sanders <nsanders@chromium.org> Reviewed-on: https://chromium-review.googlesource.com/813180 Reviewed-by: Aseda Aboagye <aaboagye@chromium.org> (cherry picked from commit ee3cb8c898268edcc869288a3dd318c0fefcd636) Reviewed-on: https://chromium-review.googlesource.com/815186
-rw-r--r--board/servo_micro/board.c17
-rw-r--r--board/servo_micro/gpio.inc12
2 files changed, 23 insertions, 6 deletions
diff --git a/board/servo_micro/board.c b/board/servo_micro/board.c
index 76ec1bd833..0e17692dfb 100644
--- a/board/servo_micro/board.c
+++ b/board/servo_micro/board.c
@@ -290,5 +290,22 @@ static void board_init(void)
/* Structured enpoints */
usb_spi_enable(&usb_spi, 1);
+
+ /* Enable UARTs by default. */
+ gpio_set_level(GPIO_UART1_EN_L, 0);
+ gpio_set_level(GPIO_UART2_EN_L, 0);
+ /* Disable power output. */
+ gpio_set_level(GPIO_SPI1_VREF_18, 0);
+ gpio_set_level(GPIO_SPI1_VREF_33, 0);
+ gpio_set_level(GPIO_SPI2_VREF_18, 0);
+ gpio_set_level(GPIO_SPI2_VREF_33, 0);
+ /* Enable UART3 routing. */
+ gpio_set_level(GPIO_SPI1_MUX_SEL, 1);
+ gpio_set_level(GPIO_SPI1_BUF_EN_L, 1);
+ gpio_set_level(GPIO_JTAG_BUFIN_EN_L, 0);
+ gpio_set_level(GPIO_SERVO_JTAG_TDO_BUFFER_EN, 1);
+ gpio_set_level(GPIO_SERVO_JTAG_TDO_SEL, 1);
+ gpio_set_flags(GPIO_UART3_RX_JTAG_BUFFER_TO_SERVO_TDO, GPIO_ALTERNATE);
+ gpio_set_flags(GPIO_UART3_TX_SERVO_JTAG_TCK, GPIO_ALTERNATE);
}
DECLARE_HOOK(HOOK_INIT, board_init, HOOK_PRIO_DEFAULT);
diff --git a/board/servo_micro/gpio.inc b/board/servo_micro/gpio.inc
index 598a462421..2118487860 100644
--- a/board/servo_micro/gpio.inc
+++ b/board/servo_micro/gpio.inc
@@ -20,17 +20,17 @@ GPIO(SERVO_JTAG_TRST_DIR, PIN(B, 6), GPIO_OUT_HIGH)
GPIO(SERVO_JTAG_TDI_DIR, PIN(B, 7), GPIO_OUT_HIGH)
GPIO(TCA6416_RESET_L, PIN(C, 13), GPIO_OUT_LOW)
-GPIO(SPI1_MUX_SEL, PIN(A, 5), GPIO_OUT_LOW)
+GPIO(SPI1_MUX_SEL, PIN(A, 5), GPIO_OUT_HIGH)
GPIO(SERVO_JTAG_TMS_DIR, PIN(C, 14), GPIO_OUT_LOW)
-GPIO(SERVO_JTAG_TDO_SEL, PIN(C, 15), GPIO_OUT_LOW)
+GPIO(SERVO_JTAG_TDO_SEL, PIN(C, 15), GPIO_OUT_HIGH)
GPIO(JTAG_BUFOUT_EN_L, PIN(F, 0), GPIO_OUT_HIGH)
-GPIO(JTAG_BUFIN_EN_L, PIN(F, 1), GPIO_OUT_HIGH)
+GPIO(JTAG_BUFIN_EN_L, PIN(F, 1), GPIO_OUT_LOW)
/* Inputs */
GPIO(SERVO_JTAG_TMS, PIN(A, 4), GPIO_INPUT)
-GPIO(UART3_TX_SERVO_JTAG_TCK, PIN(A, 0), GPIO_INPUT)
-GPIO(UART3_RX_JTAG_BUFFER_TO_SERVO_TDO, PIN(A, 1), GPIO_INPUT)
-GPIO(SERVO_JTAG_TDO_BUFFER_EN, PIN(A, 6), GPIO_INPUT)
+GPIO(UART3_TX_SERVO_JTAG_TCK, PIN(A, 0), GPIO_ALTERNATE)
+GPIO(UART3_RX_JTAG_BUFFER_TO_SERVO_TDO, PIN(A, 1), GPIO_ALTERNATE)
+GPIO(SERVO_JTAG_TDO_BUFFER_EN, PIN(A, 6), GPIO_OUT_HIGH)
GPIO(SERVO_JTAG_TDI, PIN(A, 7), GPIO_INPUT)
GPIO(SERVO_JTAG_RTCK, PIN(B, 1), GPIO_INPUT)