37#if defined(XWCDCFG_ds_PM) && (1 == XWCDCFG_ds_PM)
50#if defined(XWCDCFG_ds_PM) && (1 == XWCDCFG_ds_PM)
97 goto err_xfer_mtx_init;
101 goto err_abort_mtx_init;
105 goto err_dev_vop_probe;
130 goto err_dev_vop_remove;
169#if defined(XWCDCFG_ds_PM) && (1 == XWCDCFG_ds_PM)
219 if ((drv) && (drv->
xfer)) {
220 rc = drv->
xfer(i2cm, msg, to);
258 if ((drv) && (drv->
abort)) {
259 rc = drv->
abort(i2cm, address, addrmode, to);
static xwer_t xwds_device_grab(struct xwds_device *dev)
XWDS API:增加对象的引用计数
xwer_t xwds_device_vop_start(struct xwds_device *dev)
设备基本操作函数:启动设备
void xwds_device_construct(struct xwds_device *dev)
XWDS API:设备的构造函数
void xwds_device_destruct(struct xwds_device *dev)
XWDS API:设备的析构函数
static xwer_t xwds_device_put(struct xwds_device *dev)
XWDS API:减少对象的引用计数
xwer_t xwds_device_vop_stop(struct xwds_device *dev)
设备基本操作函数:停止设备
xwer_t xwds_device_vop_remove(struct xwds_device *dev)
设备基本操作函数:删除设备
xwer_t xwds_device_vop_resume(struct xwds_device *dev)
设备基本操作函数:继续设备
xwer_t xwds_device_vop_probe(struct xwds_device *dev)
设备基本操作函数:探测设备
xwer_t xwds_device_vop_suspend(struct xwds_device *dev)
设备基本操作函数:暂停设备
void xwds_i2cm_construct(struct xwds_i2cm *i2cm)
XWDS API:I2C主机控制器的构造函数
xwer_t xwds_i2cm_xfer(struct xwds_i2cm *i2cm, struct xwds_i2c_msg *msg, xwtm_t to)
XWDS API:传输I2C消息
xwer_t xwds_i2cm_put(struct xwds_i2cm *i2cm)
XWDS API:减少对象的引用计数
void xwds_i2cm_destruct(struct xwds_i2cm *i2cm)
XWDS API:I2C主机控制器对象的析构函数
xwer_t xwds_i2cm_abort(struct xwds_i2cm *i2cm, xwu16_t address, xwu16_t addrmode, xwtm_t to)
XWDS API:中止I2C总线传输
xwer_t xwds_i2cm_grab(struct xwds_i2cm *i2cm)
XWDS API:增加对象的引用计数
#define xwds_cast(type, dev)
#define XWDS_VALIDATE(exp, errstr,...)
#define EINVAL
Invalid argument
#define EFAULT
Bad address
#define ENOSYS
Function not implemented
xws64_t xwtm_t
XWOS系统时间 (有符号)
static xwer_t xwos_mtx_init(struct xwos_mtx *mtx, xwpr_t sprio)
XWOS API:静态方式初始化互斥锁
static xwer_t xwos_mtx_lock_to(struct xwos_mtx *mtx, xwtm_t to)
XWOS API:限时等待上锁互斥锁
static xwer_t xwos_mtx_fini(struct xwos_mtx *mtx)
XWOS API:销毁静态方式初始化的互斥锁
static xwer_t xwos_mtx_unlock(struct xwos_mtx *mtx)
XWOS API:解锁互斥锁
#define XWOS_SKD_PRIORITY_RT_MIN
XWOS API:最小实时优先级
static xwer_t xwds_i2cm_vop_resume(struct xwds_i2cm *i2cm)
XWDS VOP:继续I2C主机控制器
static xwer_t xwds_i2cm_vop_stop(struct xwds_i2cm *i2cm)
XWDS VOP:停止I2C主机控制器
static xwer_t xwds_i2cm_vop_remove(struct xwds_i2cm *i2cm)
XWDS VOP:移除I2C主机控制器
static xwer_t xwds_i2cm_vop_probe(struct xwds_i2cm *i2cm)
XWDS VOP:探测I2C主机控制器
static xwer_t xwds_i2cm_vop_start(struct xwds_i2cm *i2cm)
XWDS VOP:启动I2C主机控制器
const struct xwds_virtual_operation xwds_i2cm_vop
static xwer_t xwds_i2cm_vop_suspend(struct xwds_i2cm *i2cm)
XWDS VOP:暂停I2C主机控制器
const struct xwds_driver * drv
const struct xwds_virtual_operation * vop
xwer_t(* xfer)(struct xwds_i2cm *, struct xwds_i2c_msg *, xwtm_t)
xwer_t(* abort)(struct xwds_i2cm *, xwu16_t, xwu16_t, xwtm_t)
struct xwds_i2cm::@17 xfer
struct xwds_i2cm::@18 abort
xwer_t(* stop)(struct xwds_device *)
xwer_t(* remove)(struct xwds_device *)
xwer_t(* probe)(struct xwds_device *)
xwer_t(* resume)(struct xwds_device *)