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);
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);
This header file evaluates configuration options related to the BSP configuration.
#define I2C_TIMEOUT
Sets the transfer timeout in 10ms units.
Definition: i2c-dev.h:66
uint32_t rtems_device_major_number
This integer type represents the major number of devices.
Definition: io.h:103
uint32_t rtems_device_minor_number
This integer type represents the minor number of devices.
Definition: io.h:115
rtems_status_code
This enumeration provides status codes for directives of the Classic API.
Definition: status.h:85
This header file defines the RTEMS Classic API.
Definition: b1553brm.c:94