equal
deleted
inserted
replaced
27 * |
27 * |
28 * vim: expandtab |
28 * vim: expandtab |
29 * |
29 * |
30 *****************************************************************************/ |
30 *****************************************************************************/ |
31 |
31 |
32 /** |
32 /** \file |
33 \file |
33 * EtherCAT CoE emergency ring buffer methods. |
34 EtherCAT CoE emergency ring buffer methods. |
34 */ |
35 */ |
|
36 |
35 |
37 /*****************************************************************************/ |
36 /*****************************************************************************/ |
38 |
37 |
39 #include <linux/slab.h> |
38 #include <linux/slab.h> |
40 |
39 |
71 } |
70 } |
72 |
71 |
73 /*****************************************************************************/ |
72 /*****************************************************************************/ |
74 |
73 |
75 /** Set the ring size. |
74 /** Set the ring size. |
|
75 * |
|
76 * \return Zero on success, otherwise a negative error code. |
76 */ |
77 */ |
77 int ec_coe_emerg_ring_size( |
78 int ec_coe_emerg_ring_size( |
78 ec_coe_emerg_ring_t *ring, /**< Emergency ring. */ |
79 ec_coe_emerg_ring_t *ring, /**< Emergency ring. */ |
79 size_t size /**< Maximum number of messages in the ring. */ |
80 size_t size /**< Maximum number of messages in the ring. */ |
80 ) |
81 ) |
126 } |
127 } |
127 |
128 |
128 /*****************************************************************************/ |
129 /*****************************************************************************/ |
129 |
130 |
130 /** Remove an emergency message from the ring. |
131 /** Remove an emergency message from the ring. |
|
132 * |
|
133 * \return Zero on success, otherwise a negative error code. |
131 */ |
134 */ |
132 int ec_coe_emerg_ring_pop( |
135 int ec_coe_emerg_ring_pop( |
133 ec_coe_emerg_ring_t *ring, /**< Emergency ring. */ |
136 ec_coe_emerg_ring_t *ring, /**< Emergency ring. */ |
134 u8 *msg /**< Memory to store the emergency message. */ |
137 u8 *msg /**< Memory to store the emergency message. */ |
135 ) |
138 ) |
144 } |
147 } |
145 |
148 |
146 /*****************************************************************************/ |
149 /*****************************************************************************/ |
147 |
150 |
148 /** Clear the ring. |
151 /** Clear the ring. |
|
152 * |
|
153 * \return Zero on success, otherwise a negative error code. |
149 */ |
154 */ |
150 int ec_coe_emerg_ring_clear_ring( |
155 int ec_coe_emerg_ring_clear_ring( |
151 ec_coe_emerg_ring_t *ring /**< Emergency ring. */ |
156 ec_coe_emerg_ring_t *ring /**< Emergency ring. */ |
152 ) |
157 ) |
153 { |
158 { |
157 } |
162 } |
158 |
163 |
159 /*****************************************************************************/ |
164 /*****************************************************************************/ |
160 |
165 |
161 /** Read the number of overruns. |
166 /** Read the number of overruns. |
|
167 * |
|
168 * \return Number of overruns. |
162 */ |
169 */ |
163 int ec_coe_emerg_ring_overruns( |
170 int ec_coe_emerg_ring_overruns( |
164 ec_coe_emerg_ring_t *ring /**< Emergency ring. */ |
171 ec_coe_emerg_ring_t *ring /**< Emergency ring. */ |
165 ) |
172 ) |
166 { |
173 { |