1 /*********************************** 2 * $Id: quicc_simple.h,v 1.1 2002/03/02 15:01:10 gerg Exp $ 3 *********************************** 4 * 5 *************************************** 6 * Simple drivers common header 7 *************************************** 8 */ 9 10 #ifndef __SIMPLE_H 11 #define __SIMPLE_H 12 13 /* #include "quicc.h" */ 14 15 #define GLB_SCC_0 0 16 #define GLB_SCC_1 1 17 #define GLB_SCC_2 2 18 #define GLB_SCC_3 3 19 20 typedef void (int_routine)(unsigned short interrupt_event); 21 typedef int_routine *int_routine_ptr; 22 typedef void *(alloc_routine)(int length); 23 typedef void (free_routine)(int scc_num, int channel_num, void *buf); 24 typedef void (store_rx_buffer_routine)(int scc_num, int channel_num, void *buff, int length); 25 typedef int (handle_tx_error_routine)(int scc_num, int channel_num, QUICC_BD *tbd); 26 typedef void (handle_rx_error_routine)(int scc_num, int channel_num, QUICC_BD *rbd); 27 typedef void (handle_lost_error_routine)(int scc_num, int channel_num); 28 29 /* user defined functions for global errors */ 30 typedef void (handle_glob_overrun_routine)(int scc_number); 31 typedef void (handle_glob_underrun_routine)(int scc_number); 32 typedef void (glob_intr_q_overflow_routine)(int scc_number); 33 34 /* 35 * General initialization and command routines 36 */ 37 void quicc_issue_cmd (unsigned short cmd, int scc_num); 38 void quicc_init(void); 39 void quicc_scc_init(int scc_number, int number_of_rx_buf, int number_of_tx_buf); 40 void quicc_smc_init(int smc_number, int number_of_rx_buf, int number_of_tx_buf); 41 void quicc_scc_start(int scc_num); 42 void quicc_scc_loopback(int scc_num); 43 44 /* Interrupt enable/disable routines for critical pieces of code*/ 45 unsigned short IntrDis(void); 46 void IntrEna(unsigned short old_sr); 47 48 /* For debugging */ 49 void print_rbd(int scc_num); 50 void print_tbd(int scc_num); 51 52 #endif 53