mirror of https://github.com/Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
53 lines
1.8 KiB
53 lines
1.8 KiB
/* SPDX-License-Identifier: GPL-2.0 */ |
|
/*********************************** |
|
* $Id: quicc_simple.h,v 1.1 2002/03/02 15:01:10 gerg Exp $ |
|
*********************************** |
|
* |
|
*************************************** |
|
* Simple drivers common header |
|
*************************************** |
|
*/ |
|
|
|
#ifndef __SIMPLE_H |
|
#define __SIMPLE_H |
|
|
|
/* #include "quicc.h" */ |
|
|
|
#define GLB_SCC_0 0 |
|
#define GLB_SCC_1 1 |
|
#define GLB_SCC_2 2 |
|
#define GLB_SCC_3 3 |
|
|
|
typedef void (int_routine)(unsigned short interrupt_event); |
|
typedef int_routine *int_routine_ptr; |
|
typedef void *(alloc_routine)(int length); |
|
typedef void (free_routine)(int scc_num, int channel_num, void *buf); |
|
typedef void (store_rx_buffer_routine)(int scc_num, int channel_num, void *buff, int length); |
|
typedef int (handle_tx_error_routine)(int scc_num, int channel_num, QUICC_BD *tbd); |
|
typedef void (handle_rx_error_routine)(int scc_num, int channel_num, QUICC_BD *rbd); |
|
typedef void (handle_lost_error_routine)(int scc_num, int channel_num); |
|
|
|
/* user defined functions for global errors */ |
|
typedef void (handle_glob_overrun_routine)(int scc_number); |
|
typedef void (handle_glob_underrun_routine)(int scc_number); |
|
typedef void (glob_intr_q_overflow_routine)(int scc_number); |
|
|
|
/* |
|
* General initialization and command routines |
|
*/ |
|
void quicc_issue_cmd (unsigned short cmd, int scc_num); |
|
void quicc_init(void); |
|
void quicc_scc_init(int scc_number, int number_of_rx_buf, int number_of_tx_buf); |
|
void quicc_smc_init(int smc_number, int number_of_rx_buf, int number_of_tx_buf); |
|
void quicc_scc_start(int scc_num); |
|
void quicc_scc_loopback(int scc_num); |
|
|
|
/* Interrupt enable/disable routines for critical pieces of code*/ |
|
unsigned short IntrDis(void); |
|
void IntrEna(unsigned short old_sr); |
|
|
|
/* For debugging */ |
|
void print_rbd(int scc_num); |
|
void print_tbd(int scc_num); |
|
|
|
#endif
|
|
|