26 #ifndef HW_DEVICEIO_CAPACITY 27 #define HW_DEVICEIO_CAPACITY 8 36 #ifndef HW_DEVICEIO_CONTEXT_SIZE 37 #define HW_DEVICEIO_CONTEXT_SIZE 32 120 uint32_t timeout_ms);
134 size_t len, uint32_t timeout_ms);
148 const void *data,
size_t len, uint32_t timeout_ms);
struct hw_deviceio_t hw_deviceio_t
Opaque device I/O handle.
hw_deviceio_bus_t hw_deviceio_bus(const hw_deviceio_t *device)
Get which bus backs a device I/O handle.
size_t hw_deviceio_read_reg(hw_deviceio_t *device, uint8_t reg, void *data, size_t len, uint32_t timeout_ms)
Read bytes from a register on a device.
size_t hw_deviceio_xfr(hw_deviceio_t *device, void *data, size_t tx, size_t rx, uint32_t timeout_ms)
Perform a raw, bidirectional transfer.
void hw_deviceio_deinit(hw_deviceio_t *device)
Release a device I/O handle.
size_t hw_deviceio_write_reg(hw_deviceio_t *device, uint8_t reg, const void *data, size_t len, uint32_t timeout_ms)
Write bytes to a register on a device.
hw_deviceio_bus_t
Which bus backs a device I/O handle.