diff options
author | John Klug <john.klug@multitech.com> | 2018-04-18 18:58:30 -0500 |
---|---|---|
committer | John Klug <john.klug@multitech.com> | 2018-04-18 18:58:30 -0500 |
commit | 90d4811e95b58f5bb0124cd793e7045dc1ff6b3d (patch) | |
tree | ad35c622c298d5703647fa2faf5801cd4d00057a /util | |
parent | fe977b4b2f96ca0de27441a0eed8198110817e88 (diff) | |
parent | 5239aa1a5133ff48fc3003bf9ffb119d1659f748 (diff) | |
download | mts-io-90d4811e95b58f5bb0124cd793e7045dc1ff6b3d.tar.gz mts-io-90d4811e95b58f5bb0124cd793e7045dc1ff6b3d.tar.bz2 mts-io-90d4811e95b58f5bb0124cd793e7045dc1ff6b3d.zip |
Merge branch 'mtcdt-2.1'
Diffstat (limited to 'util')
-rw-r--r-- | util/Makefile.am | 2 | ||||
-rw-r--r-- | util/configure.in | 20 | ||||
-rw-r--r-- | util/mts_util_lora2_reset.c | 17 |
3 files changed, 28 insertions, 11 deletions
diff --git a/util/Makefile.am b/util/Makefile.am index e34596a..a3355d6 100644 --- a/util/Makefile.am +++ b/util/Makefile.am @@ -1,6 +1,6 @@ ## Process this file with automake to produce Makefile.in AUTOMAKE_OPTIONS = gnu AM_CFLAGS = -Wall - +mts_util_lora2_reset_SOURCES = mts_util_lora2_reset.c sbin_PROGRAMS = mts-util-lora2-reset diff --git a/util/configure.in b/util/configure.in new file mode 100644 index 0000000..32a4e7f --- /dev/null +++ b/util/configure.in @@ -0,0 +1,20 @@ +AC_INIT([mts_util_lora2_reset.c]) +AM_INIT_AUTOMAKE([mts-util-lora2-reset], [0.3.0]) +AM_CONFIG_HEADER([config.h]) + +AC_PROG_CC +AC_PROG_CXX +AC_PROG_INSTALL +AC_PROG_MAKE_SET + +AC_HEADER_STDC + +AC_CHECK_HEADERS([ \ + errno.h fcntl.h getopt.h stdint.h stdio.h stdlib.h string.h unistd.h sys/ioctl.h sys/types.h sys/ioctl.h linux/i2c.h linux/i2c-dev.h +], [],AC_MSG_ERROR([ +required header missing])) + +AC_DEFINE([DEBUG], 0, [set to 1 to enable debug]) + +AC_OUTPUT([Makefile]) + diff --git a/util/mts_util_lora2_reset.c b/util/mts_util_lora2_reset.c index 9ec1607..6cd6593 100644 --- a/util/mts_util_lora2_reset.c +++ b/util/mts_util_lora2_reset.c @@ -41,9 +41,6 @@ #define MAX_FPGA_LOADING_TIMER 10 -i/* Initial value of the port expander - I/O states (read or read/write). */ -int port_expander_val0 = -1; int global_i2c_fd = -1; int i2c_open( uint8_t i21c_addr ) @@ -88,7 +85,7 @@ void i2c_read( uint8_t i21c_addr, uint8_t reg_addr, uint8_t *bval ) if( ioctl(global_i2c_fd, I2C_RDWR, &b) < 0 ) { - fprintf(stderr,"ERROR: Read from I2C Device failed (%d, 0x%02x, 0x%02x) - %s", global_i2c_fd, i21c_addr, reg_addr, strerror(errno) ); + fprintf(stderr,"ERROR: Read from I2C Device failed (%d, 0x%02x, 0x%02x) - %s\n", global_i2c_fd, i21c_addr, reg_addr, strerror(errno) ); } } @@ -111,7 +108,7 @@ void i2c_write( uint8_t i21c_addr, uint8_t reg_addr, uint8_t bval ) if( ioctl(global_i2c_fd, I2C_RDWR, &b) < 0 ) { - fprintf(stderr,"ERROR: Write to I2C Device failed (%d, 0x%02x, 0x%02x) - %s", global_i2c_fd, i21c_addr, reg_addr, strerror(errno) ); + fprintf(stderr,"ERROR: Write to I2C Device failed (%d, 0x%02x, 0x%02x) - %s\n", global_i2c_fd, i21c_addr, reg_addr, strerror(errno) ); return; } @@ -174,7 +171,7 @@ int main( int argc, char ** argv ) } if (!(opt_reset_fpga || opt_gps_reset)) { - fprintf(stderr,"Nothing to do!"); + fprintf(stderr,"Nothing to do!\n"); exit(0); } @@ -205,9 +202,8 @@ int main( int argc, char ** argv ) } /* Configuration of the I2C port expander */ - i2c_read( I2CADDR_PORTEXPANDER, PORTEXPANDER_CONFIG_PORT0_REG, (uint8_t *)&port_expander_val0 ); + i2c_read( I2CADDR_PORTEXPANDER, PORTEXPANDER_CONFIG_PORT0_REG, (uint8_t *)&val ); fprintf(stderr, "I2C expander Port 0 config initial state: register: 0x%02x\n", val ); - val = port_expander_val0; if (opt_reset_fpga) { val &= ~(1 << FPGA_nCE_PORT); /* CE_PORT as output */ val &= ~(1 << FPGA_nCONFIG_PORT); /* CONFIG_PORT as output */ @@ -355,8 +351,9 @@ int main( int argc, char ** argv ) fprintf(stderr, "ERRROR: failed to open I2C device (err=%i)\n", err ); return EXIT_FAILURE; } - fprintf(stderr, "I2C expander Port 0 config register: 0x%02x\n", port_expander_val0 ); - i2c_write( I2CADDR_PORTEXPANDER, PORTEXPANDER_CONFIG_PORT0_REG, port_expander_val0 ); + val = 0xff; + fprintf(stderr, "Completed reset(s). Disabling I2C expander Port 0 config register: 0x%02x\n", val ); + i2c_write( I2CADDR_PORTEXPANDER, PORTEXPANDER_CONFIG_PORT0_REG, val ); i2c_close(); return 0; |