11 #ifdef CD2401_RECORD_DEBUG_INFO 14 #define CD2401_RECORD_WRITE 15 #define CD2401_RECORD_TX_ISR 16 #define CD2401_RECORD_RX_ISR 17 #define CD2401_RECORD_RE_ISR 18 #define CD2401_RECORD_MODEM_ISR 19 #define CD2401_RECORD_SET_ATTRIBUTE 20 #define CD2401_RECORD_FIRST_OPEN 21 #define CD2401_RECORD_LAST_CLOSE 22 #define CD2401_RECORD_START_REMOTE_TX 23 #define CD2401_RECORD_STOP_REMOTE_TX 24 #define CD2401_RECORD_DRAIN_OUTPUT 25 #define CD2401_RECORD_DELAY 28 #ifdef CD2401_RECORD_WRITE 29 #define CD2401_RECORD_WRITE_INFO( args ) cd2401_record_write_info args 31 #define CD2401_RECORD_WRITE_INFO( args ) 34 #ifdef CD2401_RECORD_TX_ISR 35 #define CD2401_RECORD_TX_ISR_INFO( args ) cd2401_record_tx_isr_info args 36 #define CD2401_RECORD_TX_ISR_SPURIOUS_INFO( args ) cd2401_record_tx_isr_spurious_info args 37 #define CD2401_RECORD_TX_ISR_BUSERR_INFO( args ) cd2401_record_tx_isr_buserr_info args 39 #define CD2401_RECORD_TX_ISR_INFO( args ) 40 #define CD2401_RECORD_TX_ISR_SPURIOUS_INFO( args ) 41 #define CD2401_RECORD_TX_ISR_BUSERR_INFO( args ) 44 #ifdef CD2401_RECORD_RX_ISR 45 #define CD2401_RECORD_RX_ISR_INFO( args ) cd2401_record_rx_isr_info args 46 #define CD2401_RECORD_RX_ISR_SPURIOUS_INFO( args ) cd2401_record_rx_isr_spurious_info args 48 #define CD2401_RECORD_RX_ISR_INFO( args ) 49 #define CD2401_RECORD_RX_ISR_SPURIOUS_INFO( args ) 52 #ifdef CD2401_RECORD_RE_ISR 53 #define CD2401_RECORD_RE_ISR_SPURIOUS_INFO( args ) cd2401_record_re_isr_spurious_info args 55 #define CD2401_RECORD_RE_ISR_SPURIOUS_INFO( args ) 58 #ifdef CD2401_RECORD_MODEM_ISR 59 #define CD2401_RECORD_MODEM_ISR_SPURIOUS_INFO( args ) cd2401_record_modem_isr_spurious_info args 61 #define CD2401_RECORD_MODEM_ISR_SPURIOUS_INFO( args ) 64 #ifdef CD2401_RECORD_SET_ATTRIBUTES 65 #define CD2401_RECORD_SET_ATTRIBUTES_INFO( args ) cd2401_record_set_attributes_info args 67 #define CD2401_RECORD_SET_ATTRIBUTES_INFO( args ) 70 #ifdef CD2401_RECORD_FIRST_OPEN 71 #define CD2401_RECORD_FIRST_OPEN_INFO( args ) cd2401_record_first_open_info args 73 #define CD2401_RECORD_FIRST_OPEN_INFO( args ) 76 #ifdef CD2401_RECORD_LAST_CLOSE 77 #define CD2401_RECORD_LAST_CLOSE_INFO( args ) cd2401_record_last_close_info args 79 #define CD2401_RECORD_LAST_CLOSE_INFO( args ) 82 #ifdef CD2401_RECORD_START_REMOTE_TX 83 #define CD2401_RECORD_START_REMOTE_TX_INFO( args ) cd2401_record_start_remote_tx_info args 85 #define CD2401_RECORD_START_REMOTE_TX_INFO( args ) 88 #ifdef CD2401_RECORD_STOP_REMOTE_TX 89 #define CD2401_RECORD_STOP_REMOTE_TX_INFO( args ) cd2401_record_stop_remote_tx_info args 91 #define CD2401_RECORD_STOP_REMOTE_TX_INFO( args ) 94 #ifdef CD2401_RECORD_DRAIN_OUTPUT 95 #define CD2401_RECORD_DRAIN_OUTPUT_INFO( args ) cd2401_record_drain_output_info args 97 #define CD2401_RECORD_DRAIN_OUTPUT_INFO( args ) 100 #ifdef CD2401_RECORD_DELAY 101 #define CD2401_RECORD_DELAY_INFO( args ) cd2401_record_delay_info args 103 #define CD2401_RECORD_DELAY_INFO( args ) 107 #define CD2401_DEBUG_BUFFER_SIZE 256 108 #define CD2401_DEBUG_CHAR_BUFSIZE 64 109 #define CD2401_WRITE_INFO 1 110 #define CD2401_TX_ISR_INFO 2 111 #define CD2401_TX_ISR_SPURIOUS_INFO 3 112 #define CD2401_TX_ISR_BUSERR_INFO 4 113 #define CD2401_RX_ISR_INFO 5 114 #define CD2401_RX_ISR_SPURIOUS_INFO 6 115 #define CD2401_RE_ISR_SPURIOUS_INFO 7 116 #define CD2401_MODEM_ISR_SPURIOUS_INFO 8 117 #define CD2401_FIRST_OPEN_INFO 9 118 #define CD2401_LAST_CLOSE_INFO 10 119 #define CD2401_START_REMOTE_TX_INFO 11 120 #define CD2401_STOP_REMOTE_TX_INFO 12 121 #define CD2401_SET_ATTRIBUTE_INFO 13 122 #define CD2401_DRAIN_OUTPUT_INFO 14 123 #define CD2401_DELAY_INFO 15 125 struct cd2401_debug_info {
129 struct cd2401_write_info {
131 char buffer[CD2401_DEBUG_CHAR_BUFSIZE];
134 struct cd2401_tx_isr_info {
135 unsigned char channel;
136 unsigned char status;
137 unsigned char initial_ier;
138 unsigned char final_ier;
141 struct cd2401_tx_isr_spurious_info {
142 unsigned char channel;
143 unsigned char status;
144 unsigned char initial_ier;
145 unsigned char final_ier;
146 unsigned long spurdev;
147 unsigned long spurcount;
148 } tx_isr_spurious_info;
149 struct cd2401_tx_isr_buserr_info {
150 unsigned char channel;
151 unsigned char status;
152 unsigned char initial_ier;
153 unsigned char buserr;
156 } tx_isr_buserr_info;
157 struct cd2401_rx_isr_info {
158 unsigned char channel;
160 char buffer[CD2401_DEBUG_CHAR_BUFSIZE];
162 struct cd2401_rx_isr_spurious_info {
163 unsigned char channel;
164 unsigned char status;
165 unsigned long spurdev;
166 unsigned long spurcount;
167 } rx_isr_spurious_info;
168 struct cd2401_re_isr_spurious_info {
169 unsigned char channel;
170 unsigned long spurdev;
171 unsigned long spurcount;
172 } re_isr_spurious_info;
173 struct cd2401_modem_isr_spurious_info {
174 unsigned char channel;
175 unsigned long spurdev;
176 unsigned long spurcount;
177 } modem_isr_spurious_info;
178 struct cd2401_first_open_info {
179 unsigned char channel;
182 struct cd2401_last_close_info {
183 unsigned char channel;
186 struct cd2401_start_remote_tx_info {
187 unsigned char channel;
188 } start_remote_tx_info;
189 struct cd2401_stop_remote_tx_info {
190 unsigned char channel;
191 } stop_remote_tx_info;
192 struct cd2401_set_attribute_info {
204 uint8_t extra_flow_ctl;
216 } set_attribute_info;
217 struct cd2401_drain_output_info {
222 struct cd2401_delay_info {
226 unsigned long loop_count;
231 struct cd2401_debug_info cd2401_debug_buffer[CD2401_DEBUG_BUFFER_SIZE];
232 int cd2401_debug_index = 0;
236 int cd2401_get_record_size(
244 void cd2401_record_write_info(
252 max_length = (len < CD2401_DEBUG_CHAR_BUFSIZE ) ? len : CD2401_DEBUG_CHAR_BUFSIZE;
254 memset( &(cd2401_debug_buffer[cd2401_debug_index]),
'\0',
sizeof(
struct cd2401_debug_info ) );
255 cd2401_debug_buffer[cd2401_debug_index].discriminant = CD2401_WRITE_INFO;
256 cd2401_debug_buffer[cd2401_debug_index].record_size =
257 cd2401_get_record_size(
sizeof(
struct cd2401_write_info ) );
258 cd2401_debug_buffer[cd2401_debug_index].u.write_info.length = len;
259 memcpy ( &(cd2401_debug_buffer[cd2401_debug_index].u.write_info.buffer), buf, max_length );
260 cd2401_debug_buffer[cd2401_debug_index].u.write_info.dmabuf = dmabuf;
262 cd2401_debug_index = (cd2401_debug_index + 1 ) % CD2401_DEBUG_BUFFER_SIZE;
265 void cd2401_record_tx_isr_info(
267 unsigned char status,
268 unsigned char initial_ier,
269 unsigned char final_ier,
273 memset( &(cd2401_debug_buffer[cd2401_debug_index]),
'\0',
sizeof(
struct cd2401_debug_info ) );
274 cd2401_debug_buffer[cd2401_debug_index].discriminant = CD2401_TX_ISR_INFO;
275 cd2401_debug_buffer[cd2401_debug_index].record_size =
276 cd2401_get_record_size(
sizeof(
struct cd2401_tx_isr_info ) );
277 cd2401_debug_buffer[cd2401_debug_index].u.tx_isr_info.channel = ch;
278 cd2401_debug_buffer[cd2401_debug_index].u.tx_isr_info.status = status;
279 cd2401_debug_buffer[cd2401_debug_index].u.tx_isr_info.initial_ier = initial_ier;
280 cd2401_debug_buffer[cd2401_debug_index].u.tx_isr_info.final_ier = final_ier;
281 cd2401_debug_buffer[cd2401_debug_index].u.tx_isr_info.txEmpty = txEmpty;
283 cd2401_debug_index = (cd2401_debug_index + 1 ) % CD2401_DEBUG_BUFFER_SIZE;
286 void cd2401_record_tx_isr_spurious_info(
288 unsigned char status,
289 unsigned char initial_ier,
290 unsigned char final_ier,
291 unsigned char spur_dev,
292 unsigned char spur_cnt
295 memset( &(cd2401_debug_buffer[cd2401_debug_index]),
'\0',
sizeof(
struct cd2401_debug_info ) );
296 cd2401_debug_buffer[cd2401_debug_index].discriminant = CD2401_TX_ISR_SPURIOUS_INFO;
297 cd2401_debug_buffer[cd2401_debug_index].record_size =
298 cd2401_get_record_size(
sizeof(
struct cd2401_tx_isr_spurious_info ) );
299 cd2401_debug_buffer[cd2401_debug_index].u.tx_isr_spurious_info.channel = ch;
300 cd2401_debug_buffer[cd2401_debug_index].u.tx_isr_spurious_info.status = status;
301 cd2401_debug_buffer[cd2401_debug_index].u.tx_isr_spurious_info.initial_ier = initial_ier;
302 cd2401_debug_buffer[cd2401_debug_index].u.tx_isr_spurious_info.final_ier = final_ier;
303 cd2401_debug_buffer[cd2401_debug_index].u.tx_isr_spurious_info.spurdev = spur_dev;
304 cd2401_debug_buffer[cd2401_debug_index].u.tx_isr_spurious_info.spurcount = spur_cnt;
306 cd2401_debug_index = (cd2401_debug_index + 1 ) % CD2401_DEBUG_BUFFER_SIZE;
309 void cd2401_record_tx_isr_buserr_info(
311 unsigned char status,
312 unsigned char initial_ier,
313 unsigned char buserr,
314 unsigned long buserr_type,
315 unsigned long buserr_addr
318 memset( &(cd2401_debug_buffer[cd2401_debug_index]),
'\0',
sizeof(
struct cd2401_debug_info ) );
319 cd2401_debug_buffer[cd2401_debug_index].discriminant = CD2401_TX_ISR_BUSERR_INFO;
320 cd2401_debug_buffer[cd2401_debug_index].record_size =
321 cd2401_get_record_size(
sizeof(
struct cd2401_tx_isr_buserr_info ) );
322 cd2401_debug_buffer[cd2401_debug_index].u.tx_isr_buserr_info.channel = ch;
323 cd2401_debug_buffer[cd2401_debug_index].u.tx_isr_buserr_info.status = status;
324 cd2401_debug_buffer[cd2401_debug_index].u.tx_isr_buserr_info.initial_ier = initial_ier;
325 cd2401_debug_buffer[cd2401_debug_index].u.tx_isr_buserr_info.buserr = buserr;
326 cd2401_debug_buffer[cd2401_debug_index].u.tx_isr_buserr_info.type = buserr_type;
327 cd2401_debug_buffer[cd2401_debug_index].u.tx_isr_buserr_info.addr = buserr_addr;
329 cd2401_debug_index = (cd2401_debug_index + 1 ) % CD2401_DEBUG_BUFFER_SIZE;
332 void cd2401_record_rx_isr_info(
340 max_length = (total < CD2401_DEBUG_CHAR_BUFSIZE ) ? total : CD2401_DEBUG_CHAR_BUFSIZE;
342 memset( &(cd2401_debug_buffer[cd2401_debug_index]),
'\0',
sizeof(
struct cd2401_debug_info ) );
343 cd2401_debug_buffer[cd2401_debug_index].discriminant = CD2401_RX_ISR_INFO;
344 cd2401_debug_buffer[cd2401_debug_index].record_size =
345 cd2401_get_record_size(
sizeof(
struct cd2401_rx_isr_info ) );
346 cd2401_debug_buffer[cd2401_debug_index].u.rx_isr_info.length = max_length;
347 memcpy ( &(cd2401_debug_buffer[cd2401_debug_index].u.rx_isr_info.buffer), buffer, max_length );
349 cd2401_debug_index = (cd2401_debug_index + 1 ) % CD2401_DEBUG_BUFFER_SIZE;
352 void cd2401_record_rx_isr_spurious_info(
354 unsigned char status,
359 memset( &(cd2401_debug_buffer[cd2401_debug_index]),
'\0',
sizeof(
struct cd2401_debug_info ) );
360 cd2401_debug_buffer[cd2401_debug_index].discriminant = CD2401_RX_ISR_SPURIOUS_INFO;
361 cd2401_debug_buffer[cd2401_debug_index].record_size =
362 cd2401_get_record_size(
sizeof(
struct cd2401_rx_isr_spurious_info ) );
363 cd2401_debug_buffer[cd2401_debug_index].u.rx_isr_spurious_info.channel = ch;
364 cd2401_debug_buffer[cd2401_debug_index].u.rx_isr_spurious_info.status = status;
365 cd2401_debug_buffer[cd2401_debug_index].u.rx_isr_spurious_info.spurdev = spur_dev;
366 cd2401_debug_buffer[cd2401_debug_index].u.rx_isr_spurious_info.spurcount = spur_cnt;
368 cd2401_debug_index = (cd2401_debug_index + 1 ) % CD2401_DEBUG_BUFFER_SIZE;
371 void cd2401_record_re_isr_spurious_info(
377 memset( &(cd2401_debug_buffer[cd2401_debug_index]),
'\0',
sizeof(
struct cd2401_debug_info ) );
378 cd2401_debug_buffer[cd2401_debug_index].discriminant = CD2401_RE_ISR_SPURIOUS_INFO;
379 cd2401_debug_buffer[cd2401_debug_index].record_size =
380 cd2401_get_record_size(
sizeof(
struct cd2401_re_isr_spurious_info ) );
381 cd2401_debug_buffer[cd2401_debug_index].u.re_isr_spurious_info.channel = ch;
382 cd2401_debug_buffer[cd2401_debug_index].u.re_isr_spurious_info.spurdev = spur_dev;
383 cd2401_debug_buffer[cd2401_debug_index].u.re_isr_spurious_info.spurcount = spur_cnt;
385 cd2401_debug_index = (cd2401_debug_index + 1 ) % CD2401_DEBUG_BUFFER_SIZE;
388 void cd2401_record_modem_isr_spurious_info(
394 memset( &(cd2401_debug_buffer[cd2401_debug_index]),
'\0',
sizeof(
struct cd2401_debug_info ) );
395 cd2401_debug_buffer[cd2401_debug_index].discriminant = CD2401_MODEM_ISR_SPURIOUS_INFO;
396 cd2401_debug_buffer[cd2401_debug_index].record_size =
397 cd2401_get_record_size(
sizeof(
struct cd2401_modem_isr_spurious_info ) );
398 cd2401_debug_buffer[cd2401_debug_index].u.modem_isr_spurious_info.channel = ch;
399 cd2401_debug_buffer[cd2401_debug_index].u.modem_isr_spurious_info.spurdev = spur_dev;
400 cd2401_debug_buffer[cd2401_debug_index].u.modem_isr_spurious_info.spurcount = spur_cnt;
402 cd2401_debug_index = (cd2401_debug_index + 1 ) % CD2401_DEBUG_BUFFER_SIZE;
405 void cd2401_record_first_open_info(
410 memset( &(cd2401_debug_buffer[cd2401_debug_index]),
'\0',
sizeof(
struct cd2401_debug_info ) );
411 cd2401_debug_buffer[cd2401_debug_index].discriminant = CD2401_FIRST_OPEN_INFO;
412 cd2401_debug_buffer[cd2401_debug_index].record_size =
413 cd2401_get_record_size(
sizeof(
struct cd2401_first_open_info ) );
414 cd2401_debug_buffer[cd2401_debug_index].u.first_open_info.channel = ch;
415 cd2401_debug_buffer[cd2401_debug_index].u.first_open_info.init_count = init_count;
417 cd2401_debug_index = (cd2401_debug_index + 1 ) % CD2401_DEBUG_BUFFER_SIZE;
420 void cd2401_record_last_close_info(
425 memset( &(cd2401_debug_buffer[cd2401_debug_index]),
'\0',
sizeof(
struct cd2401_debug_info ) );
426 cd2401_debug_buffer[cd2401_debug_index].discriminant = CD2401_LAST_CLOSE_INFO;
427 cd2401_debug_buffer[cd2401_debug_index].record_size =
428 cd2401_get_record_size(
sizeof(
struct cd2401_last_close_info ) );
429 cd2401_debug_buffer[cd2401_debug_index].u.last_close_info.channel = ch;
430 cd2401_debug_buffer[cd2401_debug_index].u.last_close_info.init_count = init_count;
432 cd2401_debug_index = (cd2401_debug_index + 1 ) % CD2401_DEBUG_BUFFER_SIZE;
435 void cd2401_record_start_remote_tx_info(
439 memset( &(cd2401_debug_buffer[cd2401_debug_index]),
'\0',
sizeof(
struct cd2401_debug_info ) );
440 cd2401_debug_buffer[cd2401_debug_index].discriminant = CD2401_START_REMOTE_TX_INFO;
441 cd2401_debug_buffer[cd2401_debug_index].record_size =
442 cd2401_get_record_size(
sizeof(
struct cd2401_start_remote_tx_info ) );
443 cd2401_debug_buffer[cd2401_debug_index].u.start_remote_tx_info.channel = ch;
445 cd2401_debug_index = (cd2401_debug_index + 1 ) % CD2401_DEBUG_BUFFER_SIZE;
448 void cd2401_record_stop_remote_tx_info(
452 memset( &(cd2401_debug_buffer[cd2401_debug_index]),
'\0',
sizeof(
struct cd2401_debug_info ) );
453 cd2401_debug_buffer[cd2401_debug_index].discriminant = CD2401_STOP_REMOTE_TX_INFO;
454 cd2401_debug_buffer[cd2401_debug_index].record_size =
455 cd2401_get_record_size(
sizeof(
struct cd2401_stop_remote_tx_info ) );
456 cd2401_debug_buffer[cd2401_debug_index].u.stop_remote_tx_info.channel = ch;
458 cd2401_debug_index = (cd2401_debug_index + 1 ) % CD2401_DEBUG_BUFFER_SIZE;
461 void cd2401_record_set_attributes_info(
472 uint8_t extra_flow_ctl,
486 memset( &(cd2401_debug_buffer[cd2401_debug_index]),
'\0',
sizeof(
struct cd2401_debug_info ) );
487 cd2401_debug_buffer[cd2401_debug_index].discriminant = CD2401_SET_ATTRIBUTE_INFO;
488 cd2401_debug_buffer[cd2401_debug_index].record_size =
489 cd2401_get_record_size(
sizeof(
struct cd2401_set_attribute_info ) );
490 cd2401_debug_buffer[cd2401_debug_index].u.set_attribute_info.minor = minor;
491 cd2401_debug_buffer[cd2401_debug_index].u.set_attribute_info.need_reinit = need_reinit;
492 cd2401_debug_buffer[cd2401_debug_index].u.set_attribute_info.txEmpty = CD2401_Channel_Info[minor].txEmpty;
493 cd2401_debug_buffer[cd2401_debug_index].u.set_attribute_info.csize = csize;
494 cd2401_debug_buffer[cd2401_debug_index].u.set_attribute_info.cstopb = cstopb;
495 cd2401_debug_buffer[cd2401_debug_index].u.set_attribute_info.parodd = parodd;
496 cd2401_debug_buffer[cd2401_debug_index].u.set_attribute_info.parenb = parenb;
497 cd2401_debug_buffer[cd2401_debug_index].u.set_attribute_info.ignpar = ignpar;
498 cd2401_debug_buffer[cd2401_debug_index].u.set_attribute_info.inpck = inpck;
499 cd2401_debug_buffer[cd2401_debug_index].u.set_attribute_info.hw_flow_ctl = hw_flow_ctl;
500 cd2401_debug_buffer[cd2401_debug_index].u.set_attribute_info.sw_flow_ctl = sw_flow_ctl;
501 cd2401_debug_buffer[cd2401_debug_index].u.set_attribute_info.extra_flow_ctl = extra_flow_ctl;
502 cd2401_debug_buffer[cd2401_debug_index].u.set_attribute_info.icrnl = icrnl;
503 cd2401_debug_buffer[cd2401_debug_index].u.set_attribute_info.igncr = igncr;
504 cd2401_debug_buffer[cd2401_debug_index].u.set_attribute_info.inlcr = inlcr;
505 cd2401_debug_buffer[cd2401_debug_index].u.set_attribute_info.brkint = brkint;
506 cd2401_debug_buffer[cd2401_debug_index].u.set_attribute_info.ignbrk = ignbrk;
507 cd2401_debug_buffer[cd2401_debug_index].u.set_attribute_info.parmrk = parmrk;
508 cd2401_debug_buffer[cd2401_debug_index].u.set_attribute_info.istrip = istrip;
509 cd2401_debug_buffer[cd2401_debug_index].u.set_attribute_info.tx_period = tx_period;
510 cd2401_debug_buffer[cd2401_debug_index].u.set_attribute_info.rx_period = rx_period;
511 cd2401_debug_buffer[cd2401_debug_index].u.set_attribute_info.out_baud = out_baud;
512 cd2401_debug_buffer[cd2401_debug_index].u.set_attribute_info.in_baud = in_baud;
514 cd2401_debug_index = (cd2401_debug_index + 1 ) % CD2401_DEBUG_BUFFER_SIZE;
517 void cd2401_record_drain_output_info(
523 memset( &(cd2401_debug_buffer[cd2401_debug_index]),
'\0',
sizeof(
struct cd2401_debug_info ) );
524 cd2401_debug_buffer[cd2401_debug_index].discriminant = CD2401_DRAIN_OUTPUT_INFO;
525 cd2401_debug_buffer[cd2401_debug_index].record_size =
526 cd2401_get_record_size(
sizeof(
struct cd2401_drain_output_info ) );
527 cd2401_debug_buffer[cd2401_debug_index].u.drain_output_info.txEmpty = txEmpty;
528 cd2401_debug_buffer[cd2401_debug_index].u.drain_output_info.own_buf_A = own_buf_A;
529 cd2401_debug_buffer[cd2401_debug_index].u.drain_output_info.own_buf_B = own_buf_B;
531 cd2401_debug_index = (cd2401_debug_index + 1 ) % CD2401_DEBUG_BUFFER_SIZE;
534 void cd2401_record_delay_info(
538 unsigned long loop_count
541 memset( &(cd2401_debug_buffer[cd2401_debug_index]),
'\0',
sizeof(
struct cd2401_debug_info ) );
542 cd2401_debug_buffer[cd2401_debug_index].discriminant = CD2401_DELAY_INFO;
543 cd2401_debug_buffer[cd2401_debug_index].record_size =
544 cd2401_get_record_size(
sizeof(
struct cd2401_delay_info ) );
545 cd2401_debug_buffer[cd2401_debug_index].u.delay_info.start = start;
546 cd2401_debug_buffer[cd2401_debug_index].u.delay_info.end = end;
547 cd2401_debug_buffer[cd2401_debug_index].u.delay_info.current = current;
548 cd2401_debug_buffer[cd2401_debug_index].u.delay_info.loop_count = loop_count;
550 cd2401_debug_index = (cd2401_debug_index + 1 ) % CD2401_DEBUG_BUFFER_SIZE;
556 #define CD2401_RECORD_WRITE_INFO( args ) 557 #define CD2401_RECORD_TX_ISR_INFO( args ) 558 #define CD2401_RECORD_TX_ISR_SPURIOUS_INFO( args ) 559 #define CD2401_RECORD_TX_ISR_BUSERR_INFO( args ) 560 #define CD2401_RECORD_RX_ISR_INFO( args ) 561 #define CD2401_RECORD_RX_ISR_SPURIOUS_INFO( args ) 562 #define CD2401_RECORD_RE_ISR_SPURIOUS_INFO( args ) 563 #define CD2401_RECORD_MODEM_ISR_SPURIOUS_INFO( args ) 564 #define CD2401_RECORD_FIRST_OPEN_INFO( args ) 565 #define CD2401_RECORD_LAST_CLOSE_INFO( args ) 566 #define CD2401_RECORD_START_REMOTE_TX_INFO( args ) 567 #define CD2401_RECORD_STOP_REMOTE_TX_INFO( args ) 568 #define CD2401_RECORD_SET_ATTRIBUTES_INFO( args ) 569 #define CD2401_RECORD_DRAIN_OUTPUT_INFO( args ) 570 #define CD2401_RECORD_DELAY_INFO( args ) Watchdog_Interval rtems_interval
Used to manage and manipulate intervals specified by clock ticks.
Definition: types.h:127
unsigned size
Definition: tte.h:74