RTEMS 6.3
Loading...
Searching...
No Matches
libi2c.h File Reference

Legacy I2C Library. More...

#include <rtems.h>
#include <rtems/io.h>

Go to the source code of this file.

Data Structures

struct  rtems_libi2c_bus_t_
struct  rtems_libi2c_bus_ops_
struct  rtems_libi2c_drv_t_
struct  rtems_libi2c_read_write_t
struct  rtems_libi2c_tfr_mode_t
struct  rtems_libi2c_tfm_read_write_t
struct  rtems_libi2c_read_write_async_t
 IO command data for asynchronous read and write. More...

Macros

#define RTEMS_LIBI2C_DRIVER_TABLE_ENTRY
#define RTEMS_LIBI2C_MAKE_MINOR(busno, i2caddr)
#define RTEMS_LIBI2C_IOCTL_READ_WRITE   1
#define RTEMS_LIBI2C_IOCTL_START_TFM_READ_WRITE   2
#define RTEMS_LIBI2C_IOCTL_SET_TFRMODE   3
#define RTEMS_LIBI2C_IOCTL_GET_DRV_T   4
#define RTEMS_LIBI2C_IOCTL_READ_WRITE_ASYNC   5
 IO control command for asynchronous read and write.

Typedefs

typedef struct rtems_libi2c_bus_t_ rtems_libi2c_bus_t
typedef struct rtems_libi2c_bus_ops_ rtems_libi2c_bus_ops_t
typedef struct rtems_libi2c_drv_t_ rtems_libi2c_drv_t
typedef void(*) rtems_libi2c_read_write_done_t(int, int, void *)
 Notification function type for asynchronous read and write.

Functions

int rtems_libi2c_initialize (void)
rtems_status_code rtems_i2c_init (rtems_device_major_number major, rtems_device_minor_number minor, void *arg)
rtems_status_code rtems_i2c_open (rtems_device_major_number major, rtems_device_minor_number minor, void *arg)
rtems_status_code rtems_i2c_close (rtems_device_major_number major, rtems_device_minor_number minor, void *arg)
rtems_status_code rtems_i2c_read (rtems_device_major_number major, rtems_device_minor_number minor, void *arg)
rtems_status_code rtems_i2c_write (rtems_device_major_number major, rtems_device_minor_number minor, void *arg)
rtems_status_code rtems_i2c_ioctl (rtems_device_major_number major, rtems_device_minor_number minor, void *arg)
int rtems_libi2c_register_bus (const char *name, rtems_libi2c_bus_t *bus)
int rtems_libi2c_register_drv (const char *name, rtems_libi2c_drv_t *drvtbl, unsigned bus, unsigned i2caddr)
rtems_status_code rtems_libi2c_send_start (rtems_device_minor_number minor)
rtems_status_code rtems_libi2c_send_stop (rtems_device_minor_number minor)
rtems_status_code rtems_libi2c_send_addr (rtems_device_minor_number minor, int rw)
int rtems_libi2c_read_bytes (rtems_device_minor_number minor, unsigned char *bytes, int nbytes)
int rtems_libi2c_write_bytes (rtems_device_minor_number minor, const unsigned char *bytes, int nbytes)
int rtems_libi2c_start_read_bytes (rtems_device_minor_number minor, unsigned char *bytes, int nbytes)
int rtems_libi2c_start_write_bytes (rtems_device_minor_number minor, const unsigned char *bytes, int nbytes)
int rtems_libi2c_ioctl (rtems_device_minor_number minor, int cmd,...)

Variables

const rtems_driver_address_table rtems_libi2c_io_ops
bool rtems_libi2c_is_initialized
rtems_device_major_number rtems_libi2c_major

Detailed Description

Legacy I2C Library.