diff options
author | Josh Blum <josh@joshknows.com> | 2010-04-28 11:33:10 -0700 |
---|---|---|
committer | Josh Blum <josh@joshknows.com> | 2010-04-28 11:33:10 -0700 |
commit | 1c4e9bd614dc8b7a17dc2bd95c322bbea940ca35 (patch) | |
tree | a591b0ccaa4d9f9f6634c9fd1285d4d5a60ac116 /host/lib/usrp/usrp_e/dboard_iface.cpp | |
parent | 1b924876d7d7216504e604137ed0ade36460169f (diff) | |
download | uhd-1c4e9bd614dc8b7a17dc2bd95c322bbea940ca35.tar.gz uhd-1c4e9bd614dc8b7a17dc2bd95c322bbea940ca35.tar.bz2 uhd-1c4e9bd614dc8b7a17dc2bd95c322bbea940ca35.zip |
moved i2c into usrp-e interface, used by dboard interface and eeprom
Diffstat (limited to 'host/lib/usrp/usrp_e/dboard_iface.cpp')
-rw-r--r-- | host/lib/usrp/usrp_e/dboard_iface.cpp | 35 |
1 files changed, 3 insertions, 32 deletions
diff --git a/host/lib/usrp/usrp_e/dboard_iface.cpp b/host/lib/usrp/usrp_e/dboard_iface.cpp index c4784d29c..f69cdd2b4 100644 --- a/host/lib/usrp/usrp_e/dboard_iface.cpp +++ b/host/lib/usrp/usrp_e/dboard_iface.cpp @@ -170,41 +170,12 @@ boost::uint32_t usrp_e_dboard_iface::read_write_spi( /*********************************************************************** * I2C **********************************************************************/ -static const size_t max_i2c_data_bytes = 10; - -void usrp_e_dboard_iface::write_i2c(boost::uint8_t addr, const byte_vector_t &buf){ - //allocate some memory for this transaction - UHD_ASSERT_THROW(buf.size() <= max_i2c_data_bytes); - boost::uint8_t mem[sizeof(usrp_e_i2c) + max_i2c_data_bytes]; - - //load the data struct - usrp_e_i2c &data = reinterpret_cast<usrp_e_i2c&>(mem); - data.addr = addr; - data.len = buf.size(); - std::copy(buf.begin(), buf.end(), data.data); - - //call the spi ioctl - _iface->ioctl(USRP_E_I2C_WRITE, &data); +void usrp_e_dboard_iface::write_i2c(boost::uint8_t addr, const byte_vector_t &bytes){ + return _iface->write_i2c(addr, bytes); } byte_vector_t usrp_e_dboard_iface::read_i2c(boost::uint8_t addr, size_t num_bytes){ - //allocate some memory for this transaction - UHD_ASSERT_THROW(num_bytes <= max_i2c_data_bytes); - boost::uint8_t mem[sizeof(usrp_e_i2c) + max_i2c_data_bytes]; - - //load the data struct - usrp_e_i2c &data = reinterpret_cast<usrp_e_i2c&>(mem); - data.addr = addr; - data.len = num_bytes; - - //call the spi ioctl - _iface->ioctl(USRP_E_I2C_READ, &data); - - //unload the data - byte_vector_t ret(data.len); - UHD_ASSERT_THROW(ret.size() == num_bytes); - std::copy(data.data, data.data+ret.size(), ret.begin()); - return ret; + return _iface->read_i2c(addr, num_bytes); } /*********************************************************************** |