quicc_simple.h 1.8 KB

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