1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192 |
- #ifndef ZEPHYR_INCLUDE_DRIVERS_I2C_I2C_EMUL_H_
- #define ZEPHYR_INCLUDE_DRIVERS_I2C_I2C_EMUL_H_
- #include <zephyr/types.h>
- #include <device.h>
- #ifdef __cplusplus
- extern "C" {
- #endif
- struct i2c_msg;
- struct i2c_emul_api;
- struct i2c_emul {
- sys_snode_t node;
-
- const struct i2c_emul_api *api;
-
- uint16_t addr;
- };
- typedef int (*i2c_emul_transfer_t)(struct i2c_emul *emul, struct i2c_msg *msgs,
- int num_msgs, int addr);
- int i2c_emul_register(const struct device *dev, const char *name,
- struct i2c_emul *emul);
- struct i2c_emul_api {
- i2c_emul_transfer_t transfer;
- };
- uint32_t i2c_emul_get_config(const struct device *dev);
- #ifdef __cplusplus
- }
- #endif
- #endif
|