12 #include <sys/types.h>
37 int open_x( uint16_t _busn);
41 Ci2c(
void) { this->busn = this->addr = this->f_rw = -1; }
42 Ci2c(
Ci2c &_o) { this->busn = _o.busn; this->addr = this->f_rw = -1; }
43 virtual ~
Ci2c(
void) {
44 if ( this->f_rw >= 0) close( this->f_rw);
51 int set_bus( uint16_t _busn);
52 int set_bus(
const char *_buss,
i2cmap_t *_map = NULL);
53 int cur_bus(
void) {
return( this->busn); }
63 virtual int R1b( uint16_t _addr, uint8_t _reg, uint8_t &_b) = 0;
64 virtual int W1b( uint16_t _addr, uint8_t _reg, uint8_t _b) = 0;
65 virtual int R2b( uint16_t _addr, uint8_t _reg, uint16_t &_b) = 0;
66 virtual int W2b( uint16_t _addr, uint8_t _reg, uint16_t _b) = 0;
68 virtual int Rbb( uint16_t _addr, uint8_t _reg, uint8_t *_b, uint8_t _blen) = 0;
69 virtual int Wbb( uint16_t _addr, uint8_t _reg, uint8_t *_b, uint8_t _blen) = 0;
71 virtual int Rqb( uint16_t _addr, uint8_t _reg, uint8_t *_b, uint8_t _blen) = 0;
72 virtual int Wqb( uint16_t _addr, uint8_t _reg, uint8_t *_b, uint8_t _blen) = 0;
89 static int find_bus(
const char *_sock);
Base Virtual I2C I/O class.
Definition: Ci2c.h:27
const char * name
Bus name, "-tps" or "-s05" for example.
Definition: Ci2c.h:20
static int find_bus(const char *_sock)
I2C bus name to # mapping structure.
Definition: Ci2c.h:18
int set_slave(uint16_t _addr)
Set slave device to work with. No need to call it obviously. Call it only for test if device exists...
uint8_t id
Real bus ID, 1 for example.
Definition: Ci2c.h:22