29 #ifndef LIBBSP_M68K_MVME162_BSP_H 30 #define LIBBSP_M68K_MVME162_BSP_H 55 typedef volatile struct {
58 unsigned char chipREV;
59 unsigned char gen_control;
60 unsigned char vector_base;
62 unsigned long timer_cmp_1;
63 unsigned long timer_cnt_1;
64 unsigned long timer_cmp_2;
65 unsigned long timer_cnt_2;
67 unsigned char LSB_prescaler_count;
68 unsigned char prescaler_clock_adjust;
69 unsigned char time_ctl_2;
70 unsigned char time_ctl_1;
72 unsigned char time_int_ctl_4;
73 unsigned char time_int_ctl_3;
74 unsigned char time_int_ctl_2;
75 unsigned char time_int_ctl_1;
77 unsigned char dram_err_int_ctl;
78 unsigned char SCC_int_ctl;
79 unsigned char time_ctl_4;
80 unsigned char time_ctl_3;
82 unsigned short DRAM_space_base;
83 unsigned short SRAM_space_base;
85 unsigned char DRAM_size;
86 unsigned char DRAM_SRAM_opt;
87 unsigned char SRAM_size;
88 unsigned char reserved;
90 unsigned char LANC_error;
91 unsigned char reserved1;
92 unsigned char LANC_int_ctl;
93 unsigned char LANC_berr_ctl;
95 unsigned char SCSI_error;
96 unsigned char general_inputs;
97 unsigned char MVME_162_version;
98 unsigned char SCSI_int_ctl;
100 unsigned long timer_cmp_3;
101 unsigned long timer_cnt_3;
102 unsigned long timer_cmp_4;
103 unsigned long timer_cnt_4;
105 unsigned char bus_clk;
106 unsigned char PROM_acc_time_ctl;
107 unsigned char FLASH_acc_time_ctl;
108 unsigned char ABORT_int_ctl;
110 unsigned char RESET_ctl;
111 unsigned char watchdog_timer_ctl;
112 unsigned char acc_watchdog_time_base_sel;
113 unsigned char reserved2;
115 unsigned char DRAM_ctl;
116 unsigned char reserved4;
117 unsigned char MPU_status;
118 unsigned char reserved3;
120 unsigned long prescaler_count;
124 #define mcchip ((mcchip_regs * const) 0xFFF42000) 145 extern bool char_ready(
int port,
char *ch);
146 extern char char_wait(
int port);
147 extern void char_put(
int port,
char ch);
149 #define TX_BUFFER_EMPTY 0x04 150 #define RX_DATA_AVAILABLE 0x01 151 #define SCC_VECTOR 0x40 153 typedef volatile struct {
155 volatile unsigned char csr;
157 volatile unsigned char buf;
160 #define scc ((scc_regs * const) 0xFFF45000) 162 #define ZWRITE0(port, v) (scc[port].csr = (unsigned char)(v)) 163 #define ZREAD0(port) (scc[port].csr) 165 #define ZREAD(port, n) (ZWRITE0(port, n), (scc[port].csr)) 166 #define ZREADD(port) (scc[port].csr=0x08, scc[port].csr ) 168 #define ZWRITE(port, n, v) (ZWRITE0(port, n), ZWRITE0(port, v)) 169 #define ZWRITED(port, v) (scc[port].csr = 0x08, \ 170 scc[port].csr = (unsigned char)(v)) 178 #define EXTERN extern 200 #define MOT_162BUG_VEC_ADDRESS 0x00000000 202 extern rtems_isr_entry M68Kvec[];
207 rtems_isr_entry handler,
215 bool char_ready(
int port,
char *ch);
rtems_isr_entry set_vector(rtems_isr_entry handler, rtems_vector_number vector, int type)
Install an interrupt handler.
Definition: setvec.c:28
DEFAULT_INITIAL_EXTENSION Support.
ISR_Vector_number rtems_vector_number
Control block type used to manage the vectors.
Definition: intr.h:47