summaryrefslogtreecommitdiffstats
path: root/rtemsbsd/include/rtems/bsd/local/iicbus_if.h
blob: 7fafbb602f9c5e2d3130194da01d77ea0f654c54 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
/*
 * This file is produced automatically.
 * Do not modify anything in here by hand.
 *
 * Created from source file
 *   freebsd-org/sys/dev/iicbus/iicbus_if.m
 * with
 *   makeobjops.awk
 *
 * See the source file for legal information
 */


#ifndef _iicbus_if_h_
#define _iicbus_if_h_

/** @brief Unique descriptor for the IICBUS_INTR() method */
extern struct kobjop_desc iicbus_intr_desc;
/** @brief A function implementing the IICBUS_INTR() method */
typedef int iicbus_intr_t(device_t dev, int event, char *buf);

static __inline int IICBUS_INTR(device_t dev, int event, char *buf)
{
	kobjop_t _m;
	int rc;
	KOBJOPLOOKUP(((kobj_t)dev)->ops,iicbus_intr);
	rc = ((iicbus_intr_t *) _m)(dev, event, buf);
	return (rc);
}

/** @brief Unique descriptor for the IICBUS_CALLBACK() method */
extern struct kobjop_desc iicbus_callback_desc;
/** @brief A function implementing the IICBUS_CALLBACK() method */
typedef int iicbus_callback_t(device_t dev, int index, caddr_t data);

static __inline int IICBUS_CALLBACK(device_t dev, int index, caddr_t data)
{
	kobjop_t _m;
	int rc;
	KOBJOPLOOKUP(((kobj_t)dev)->ops,iicbus_callback);
	rc = ((iicbus_callback_t *) _m)(dev, index, data);
	return (rc);
}

/** @brief Unique descriptor for the IICBUS_REPEATED_START() method */
extern struct kobjop_desc iicbus_repeated_start_desc;
/** @brief A function implementing the IICBUS_REPEATED_START() method */
typedef int iicbus_repeated_start_t(device_t dev, u_char slave, int timeout);

static __inline int IICBUS_REPEATED_START(device_t dev, u_char slave,
                                          int timeout)
{
	kobjop_t _m;
	int rc;
	KOBJOPLOOKUP(((kobj_t)dev)->ops,iicbus_repeated_start);
	rc = ((iicbus_repeated_start_t *) _m)(dev, slave, timeout);
	return (rc);
}

/** @brief Unique descriptor for the IICBUS_START() method */
extern struct kobjop_desc iicbus_start_desc;
/** @brief A function implementing the IICBUS_START() method */
typedef int iicbus_start_t(device_t dev, u_char slave, int timeout);

static __inline int IICBUS_START(device_t dev, u_char slave, int timeout)
{
	kobjop_t _m;
	int rc;
	KOBJOPLOOKUP(((kobj_t)dev)->ops,iicbus_start);
	rc = ((iicbus_start_t *) _m)(dev, slave, timeout);
	return (rc);
}

/** @brief Unique descriptor for the IICBUS_STOP() method */
extern struct kobjop_desc iicbus_stop_desc;
/** @brief A function implementing the IICBUS_STOP() method */
typedef int iicbus_stop_t(device_t dev);

static __inline int IICBUS_STOP(device_t dev)
{
	kobjop_t _m;
	int rc;
	KOBJOPLOOKUP(((kobj_t)dev)->ops,iicbus_stop);
	rc = ((iicbus_stop_t *) _m)(dev);
	return (rc);
}

/** @brief Unique descriptor for the IICBUS_READ() method */
extern struct kobjop_desc iicbus_read_desc;
/** @brief A function implementing the IICBUS_READ() method */
typedef int iicbus_read_t(device_t dev, char *buf, int len, int *bytes,
                          int last, int delay);

static __inline int IICBUS_READ(device_t dev, char *buf, int len, int *bytes,
                                int last, int delay)
{
	kobjop_t _m;
	int rc;
	KOBJOPLOOKUP(((kobj_t)dev)->ops,iicbus_read);
	rc = ((iicbus_read_t *) _m)(dev, buf, len, bytes, last, delay);
	return (rc);
}

/** @brief Unique descriptor for the IICBUS_WRITE() method */
extern struct kobjop_desc iicbus_write_desc;
/** @brief A function implementing the IICBUS_WRITE() method */
typedef int iicbus_write_t(device_t dev, const char *buf, int len, int *bytes,
                           int timeout);

static __inline int IICBUS_WRITE(device_t dev, const char *buf, int len,
                                 int *bytes, int timeout)
{
	kobjop_t _m;
	int rc;
	KOBJOPLOOKUP(((kobj_t)dev)->ops,iicbus_write);
	rc = ((iicbus_write_t *) _m)(dev, buf, len, bytes, timeout);
	return (rc);
}

/** @brief Unique descriptor for the IICBUS_RESET() method */
extern struct kobjop_desc iicbus_reset_desc;
/** @brief A function implementing the IICBUS_RESET() method */
typedef int iicbus_reset_t(device_t dev, u_char speed, u_char addr,
                           u_char *oldaddr);

static __inline int IICBUS_RESET(device_t dev, u_char speed, u_char addr,
                                 u_char *oldaddr)
{
	kobjop_t _m;
	int rc;
	KOBJOPLOOKUP(((kobj_t)dev)->ops,iicbus_reset);
	rc = ((iicbus_reset_t *) _m)(dev, speed, addr, oldaddr);
	return (rc);
}

/** @brief Unique descriptor for the IICBUS_TRANSFER() method */
extern struct kobjop_desc iicbus_transfer_desc;
/** @brief A function implementing the IICBUS_TRANSFER() method */
typedef int iicbus_transfer_t(device_t dev, struct iic_msg *msgs,
                              uint32_t nmsgs);

static __inline int IICBUS_TRANSFER(device_t dev, struct iic_msg *msgs,
                                    uint32_t nmsgs)
{
	kobjop_t _m;
	int rc;
	KOBJOPLOOKUP(((kobj_t)dev)->ops,iicbus_transfer);
	rc = ((iicbus_transfer_t *) _m)(dev, msgs, nmsgs);
	return (rc);
}

/** @brief Unique descriptor for the IICBUS_GET_FREQUENCY() method */
extern struct kobjop_desc iicbus_get_frequency_desc;
/** @brief A function implementing the IICBUS_GET_FREQUENCY() method */
typedef u_int iicbus_get_frequency_t(device_t dev, u_char speed);

static __inline u_int IICBUS_GET_FREQUENCY(device_t dev, u_char speed)
{
	kobjop_t _m;
	u_int rc;
	KOBJOPLOOKUP(((kobj_t)dev)->ops,iicbus_get_frequency);
	rc = ((iicbus_get_frequency_t *) _m)(dev, speed);
	return (rc);
}

#endif /* _iicbus_if_h_ */