From b2000a20d0353a67bbb59783626831957fac231a Mon Sep 17 00:00:00 2001 From: Kevin O'Connor Date: Fri, 27 Jun 2014 10:33:40 -0400 Subject: [PATCH] * Fix issue if I2C initialized before DigitalSystem. Change-Id: I97bbbebb60730ddaad337a4a5dd73c9f40556a86 --- hal/lib/Athena/Digital.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/hal/lib/Athena/Digital.cpp b/hal/lib/Athena/Digital.cpp index 7bd533aa59..60125ac96d 100644 --- a/hal/lib/Athena/Digital.cpp +++ b/hal/lib/Athena/Digital.cpp @@ -1554,6 +1554,8 @@ void clearSPIReceivedData(void* spi_pointer, int32_t *status) {} * @param port The port to open, 0 for the on-board, 1 for the MXP. */ void i2CInitialize(uint8_t port, int32_t *status) { + initializeDigital(status); + if(port > 1) { //Set port out of range error here @@ -1570,7 +1572,6 @@ void i2CInitialize(uint8_t port, int32_t *status) { } else if(port == 1) { i2CMXPObjCount++; if (i2CMXPHandle > 0) return; - initializeDigital(status); digitalSystem->writeEnableMXPSpecialFunction(digitalSystem->readEnableMXPSpecialFunction(status)|0xC000, status); i2CMXPHandle = i2clib_open("/dev/i2c-1"); }