i2ccmds: abstract i2c dev from bus implementation
Added wrapper around sw/hw bus API, pins.py code will ensure that pins will not mix between HW/SW buses. Signed-off-by: Timofey Titovets <nefelim4ag@gmail.com>
This commit is contained in:
committed by
KevinOConnor
parent
39f08aeda1
commit
08a85ba869
@@ -5,12 +5,17 @@
|
||||
#include "board/gpio.h" // i2c_config
|
||||
|
||||
struct i2cdev_s {
|
||||
struct i2c_config i2c_config;
|
||||
struct i2c_software *i2c_software;
|
||||
union {
|
||||
struct i2c_config i2c_hw;
|
||||
struct i2c_software *i2c_sw;
|
||||
};
|
||||
uint8_t flags;
|
||||
};
|
||||
|
||||
struct i2cdev_s *i2cdev_oid_lookup(uint8_t oid);
|
||||
void i2cdev_set_software_bus(struct i2cdev_s *i2c, struct i2c_software *is);
|
||||
void i2c_dev_read(struct i2cdev_s *i2c, uint8_t reg_len, uint8_t *reg
|
||||
, uint8_t read_len, uint8_t *read);
|
||||
void i2c_dev_write(struct i2cdev_s *i2c, uint8_t write_len, uint8_t *data);
|
||||
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user