13#ifndef __RTEMS__I2C_H__
14#define __RTEMS__I2C_H__
36typedef uint32_t i2c_bus_number;
39typedef uint16_t i2c_address;
42typedef enum i2c_message_status {
49 I2C_RESOURCE_NOT_AVAILABLE
56 i2c_message_status status;
62#define I2C_MSG_ADDR_10 (0x01)
63#define I2C_MSG_WR (0x02)
65#define I2C_MSG_ERRSKIP (0x04)
68typedef void (*i2c_transfer_done) (
void *arg);
85i2c_initialize(rtems_device_major_number major,
86 rtems_device_minor_number minor,
105i2c_select_clock_rate(i2c_bus_number bus,
int bps);
125 i2c_transfer_done done,
void * done_arg_ptr);
157i2c_poll(i2c_bus_number bus);
173i2c_write(i2c_bus_number bus, i2c_address addr,
void *buf,
int size);
188i2c_wrbyte(i2c_bus_number bus, i2c_address addr, uint8_t cmd);
204i2c_read(i2c_bus_number bus, i2c_address addr,
void *buf,
int size);
222i2c_wrrd(i2c_bus_number bus, i2c_address addr,
void *bufw,
int sizew,
223 void *bufr,
int sizer);
240i2c_wbrd(i2c_bus_number bus, i2c_address addr, uint8_t cmd,
241 void *bufr,
int sizer);
Evaluate BSP Related Configuration Options.
rtems_status_code
Classic API Status.
Definition: status.h:43
#define I2C_TIMEOUT
Sets the transfer timeout in 10ms units.
Definition: i2c-dev.h:53
Definition: b1553brm.c:75
unsigned size
Definition: tte.h:1