i2c: use I2C_FUNCS to store funcs map
Signed-off-by: Brendan Le Foll <brendan.le.foll@intel.com>
This commit is contained in:
@@ -59,6 +59,7 @@ struct _i2c {
|
|||||||
int busnum; /**< the bus number of the /dev/i2c-* device */
|
int busnum; /**< the bus number of the /dev/i2c-* device */
|
||||||
int fh; /**< the file handle to the /dev/i2c-* device */
|
int fh; /**< the file handle to the /dev/i2c-* device */
|
||||||
int addr; /**< the address of the i2c slave */
|
int addr; /**< the address of the i2c slave */
|
||||||
|
unsigned long funcs;
|
||||||
/*@}*/
|
/*@}*/
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|||||||
@@ -127,6 +127,11 @@ mraa_i2c_init_raw(unsigned int bus)
|
|||||||
syslog(LOG_ERR, "i2c: Failed to open requested i2c port %s", filepath);
|
syslog(LOG_ERR, "i2c: Failed to open requested i2c port %s", filepath);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (ioctl(dev->fh, I2C_FUNCS, &dev->funcs) < 0) {
|
||||||
|
syslog(LOG_CRIT, "i2c: Failed to get I2C_FUNC map from device");
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
if (advance_func->i2c_init_post != NULL) {
|
if (advance_func->i2c_init_post != NULL) {
|
||||||
mraa_result_t ret = advance_func->i2c_init_post(dev);
|
mraa_result_t ret = advance_func->i2c_init_post(dev);
|
||||||
if (ret != MRAA_SUCCESS) {
|
if (ret != MRAA_SUCCESS) {
|
||||||
|
|||||||
Reference in New Issue
Block a user