blob: c21f1dcbd599ee31a8790945bcbc9687b7d9671c [file] [log] [blame]
Andreas Färber2bf7b452013-01-16 01:57:54 +01001/*
2 * I2C libqos
3 *
4 * Copyright (c) 2012 Andreas Färber
5 *
6 * This work is licensed under the terms of the GNU GPL, version 2 or later.
7 * See the COPYING file in the top-level directory.
8 */
9#ifndef LIBQOS_I2C_H
10#define LIBQOS_I2C_H
11
12#include <stdint.h>
13
14typedef struct I2CAdapter I2CAdapter;
15struct I2CAdapter {
16 void (*send)(I2CAdapter *adapter, uint8_t addr,
17 const uint8_t *buf, uint16_t len);
18 void (*recv)(I2CAdapter *adapter, uint8_t addr,
19 uint8_t *buf, uint16_t len);
20};
21
22void i2c_send(I2CAdapter *i2c, uint8_t addr,
23 const uint8_t *buf, uint16_t len);
24void i2c_recv(I2CAdapter *i2c, uint8_t addr,
25 uint8_t *buf, uint16_t len);
26
27/* libi2c-omap.c */
28I2CAdapter *omap_i2c_create(uint64_t addr);
29
Jean-Christophe Dubois7f398622015-09-07 10:39:31 +010030/* libi2c-imx.c */
31I2CAdapter *imx_i2c_create(uint64_t addr);
32
Andreas Färber2bf7b452013-01-16 01:57:54 +010033#endif