Commit | Line | Data |
---|---|---|
b2441318 | 1 | /* SPDX-License-Identifier: GPL-2.0 */ |
1da177e4 LT |
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 | ||
11 | #ifndef __SIMPLE_H | |
12 | #define __SIMPLE_H | |
13 | ||
14 | /* #include "quicc.h" */ | |
15 | ||
16 | #define GLB_SCC_0 0 | |
17 | #define GLB_SCC_1 1 | |
18 | #define GLB_SCC_2 2 | |
19 | #define GLB_SCC_3 3 | |
20 | ||
21 | typedef void (int_routine)(unsigned short interrupt_event); | |
22 | typedef int_routine *int_routine_ptr; | |
23 | typedef void *(alloc_routine)(int length); | |
24 | typedef void (free_routine)(int scc_num, int channel_num, void *buf); | |
25 | typedef void (store_rx_buffer_routine)(int scc_num, int channel_num, void *buff, int length); | |
26 | typedef int (handle_tx_error_routine)(int scc_num, int channel_num, QUICC_BD *tbd); | |
27 | typedef void (handle_rx_error_routine)(int scc_num, int channel_num, QUICC_BD *rbd); | |
28 | typedef void (handle_lost_error_routine)(int scc_num, int channel_num); | |
29 | ||
30 | /* user defined functions for global errors */ | |
31 | typedef void (handle_glob_overrun_routine)(int scc_number); | |
32 | typedef void (handle_glob_underrun_routine)(int scc_number); | |
33 | typedef void (glob_intr_q_overflow_routine)(int scc_number); | |
34 | ||
35 | /* | |
36 | * General initialization and command routines | |
37 | */ | |
38 | void quicc_issue_cmd (unsigned short cmd, int scc_num); | |
39 | void quicc_init(void); | |
40 | void quicc_scc_init(int scc_number, int number_of_rx_buf, int number_of_tx_buf); | |
41 | void quicc_smc_init(int smc_number, int number_of_rx_buf, int number_of_tx_buf); | |
42 | void quicc_scc_start(int scc_num); | |
43 | void quicc_scc_loopback(int scc_num); | |
44 | ||
45 | /* Interrupt enable/disable routines for critical pieces of code*/ | |
46 | unsigned short IntrDis(void); | |
47 | void IntrEna(unsigned short old_sr); | |
48 | ||
49 | /* For debugging */ | |
50 | void print_rbd(int scc_num); | |
51 | void print_tbd(int scc_num); | |
52 | ||
53 | #endif |