33#ifndef GMSL_REG_ACCESS_H
34#define GMSL_REG_ACCESS_H
39#define RETURN_ON_ERR(x) if(x != 0) return (x)
41#define REG_WRITE_RETURN_ON_ERR(ret, i2c_desc, reg, writeval) {\
42 ret = gmsl_reg_write(i2c_desc, reg, writeval); \
47#define REG_READ_RETURN_ON_ERR(ret, i2c_desc, reg, mask, readval) {\
48 ret = gmsl_reg_read(i2c_desc, reg, mask, readval); \
53#define REG_UPDATE_RETURN_ON_ERR(ret, i2c_desc, reg, val, mask) {\
54 ret = gmsl_reg_update(i2c_desc, reg, val, mask); \
59#define BREAK_ON_ERR(x)\
65#define REG_WRITE_BREAK_ON_ERR(ret, i2c_desc, reg, writeval)\
67 ret = gmsl_reg_write(i2c_desc, reg, writeval);\
71#define REG_READ_BREAK_ON_ERR(ret, i2c_desc, reg, mask, readval)\
73 ret = gmsl_reg_read(i2c_desc, reg, mask, readval);\
77#define REG_UPDATE_BREAK_ON_ERR(ret, i2c_desc, reg, val, mask)\
79 ret = gmsl_reg_update(i2c_desc, reg, val, mask);\
85 uint16_t reg, uint8_t mask, uint8_t *readval);
int32_t gmsl_reg_update(struct no_os_i2c_desc *i2c_desc, uint16_t reg, uint8_t val, uint8_t mask)
Update a value in a GMSL register.
Definition gmsl_reg_access.c:119
int32_t gmsl_reg_write(struct no_os_i2c_desc *i2c_desc, uint16_t reg, uint8_t writeval)
Write a value to a GMSL register.
Definition gmsl_reg_access.c:90
int32_t gmsl_reg_read(struct no_os_i2c_desc *i2c_desc, uint16_t reg, uint8_t mask, uint8_t *readval)
Read a value from a GMSL register.
Definition gmsl_reg_access.c:51
Header file of I2C Interface.
Structure holding I2C address descriptor.
Definition no_os_i2c.h:89