uhd/host/lib/utils/eeprom_utils.cpp
Martin Braun 83dde40090 uhd: Changed mboard_eeprom_t interface, refactored MB EEPROM code
- uhd::usrp::mboard_eeprom_t is now simply a map. Its commit() method
  has no utility being a public API call, because the user never gets
  access to the appropriate I2C object (Minor API breakage)
- The central mboard_eeprom.cpp file was broken up and put into many
  smaller compilation units in every device's implementation folder.
- Renamed some of the constants (e.g. B000_* -> USRP1_*, N100_* ->
  N200_*)
- Removed the N000_* EEPROM code, because, well, you know, there's no
  such device
2017-09-29 10:50:56 -07:00

22 lines
656 B
C++

//
// Copyright 2017 Ettus Research (National Instruments Corp.)
//
// SPDX-License-Identifier: GPL-3.0
//
#include "eeprom_utils.hpp"
#include <boost/lexical_cast.hpp>
uhd::byte_vector_t string_to_uint16_bytes(const std::string &num_str){
const uint16_t num = boost::lexical_cast<uint16_t>(num_str);
const std::vector<uint8_t> lsb_msb = {
uint8_t(num >> 0),
uint8_t(num >> 8)
};
return lsb_msb;
}
std::string uint16_bytes_to_string(const uhd::byte_vector_t &bytes){
const uint16_t num = (uint16_t(bytes.at(0)) << 0) | (uint16_t(bytes.at(1)) << 8);
return (num == 0 or num == 0xffff)? "" : std::to_string(num);
}