From 15e026ec34752bc9216a1d536c1f89399647af7f Mon Sep 17 00:00:00 2001 From: Harald Welte Date: Tue, 11 Oct 2016 17:46:09 +0200 Subject: [PATCH] qmod: Set PIN_PRTPWR_OVERRIDE to output/low --- firmware/include_board/qmod/board.h | 2 ++ firmware/src_simtrace/main.c | 5 +++++ 2 files changed, 7 insertions(+) diff --git a/firmware/include_board/qmod/board.h b/firmware/include_board/qmod/board.h index 28d064ff..c8af22c9 100644 --- a/firmware/include_board/qmod/board.h +++ b/firmware/include_board/qmod/board.h @@ -41,6 +41,8 @@ #define PINS_CARDSIM { PIN_SET_USIM1_PRES, PIN_SET_USIM2_PRES } +#define PIN_PRTPWR_OVERRIDE {PIO_PA8, PIOA, ID_PIOA, PIO_OUTPUT_0, PIO_DEFAULT} + #define SIMTRACE_VENDOR_ID 0x1d50 #define SIMTRACE_PRODUCT_ID 0x60e3 /* FIXME */ #define USB_VENDOR_ID SIMTRACE_VENDOR_ID diff --git a/firmware/src_simtrace/main.c b/firmware/src_simtrace/main.c index 3cdc34f8..1637a7cb 100644 --- a/firmware/src_simtrace/main.c +++ b/firmware/src_simtrace/main.c @@ -164,6 +164,11 @@ static const unsigned int __eeprom_bin_len = 256; PIO_Configure(&pin_hub_rst, 1); i2c_pin_init(); + /* set PIN_PRTPWR_OVERRIDE to output-low to avoid the internal + * pull-up on the input to keep SIMTRACE12 alive */ + static const Pin pin_hubpwr_override = PIN_PRTPWR_OVERRIDE; + PIO_Configure(&pin_hubpwr_override, 1); + /* wait */ volatile int v; /* 440ns per cycle here */