47 #ifndef LIBBSP_I386_PC386_BSP_H 48 #define LIBBSP_I386_PC386_BSP_H 62 #include <rtems/score/cpu.h> 71 #define BSP_HAS_FRAME_BUFFER 1 76 struct rtems_bsdnet_ifconfig;
84 BSP_runtime_console_select(
int *pPrintkPort,
int *pConsolePort);
86 extern int rtems_ne_driver_attach(
struct rtems_bsdnet_ifconfig *,
int);
87 #define BSP_NE2000_NETWORK_DRIVER_NAME "ne1" 88 #define BSP_NE2000_NETWORK_DRIVER_ATTACH rtems_ne_driver_attach 90 extern int rtems_wd_driver_attach(
struct rtems_bsdnet_ifconfig *,
int);
91 #define BSP_WD8003_NETWORK_DRIVER_NAME "wd1" 92 #define BSP_WD8003_NETWORK_DRIVER_ATTACH rtems_wd_driver_attach 94 extern int rtems_dec21140_driver_attach(
struct rtems_bsdnet_ifconfig *,
int);
95 #define BSP_DEC21140_NETWORK_DRIVER_NAME "dc1" 96 #define BSP_DEC21140_NETWORK_DRIVER_ATTACH rtems_dec21140_driver_attach 98 extern int rtems_3c509_driver_attach(
struct rtems_bsdnet_ifconfig *
config);
99 #define BSP_3C509_NETWORK_DRIVER_NAME "3c1" 100 #define BSP_3C509_NETWORK_DRIVER_ATTACH rtems_3c509_driver_attach 102 #ifndef RTEMS_BSP_NETWORK_DRIVER_NAME 103 #define RTEMS_BSP_NETWORK_DRIVER_NAME BSP_DEC21140_NETWORK_DRIVER_NAME 106 #ifndef RTEMS_BSP_NETWORK_DRIVER_ATTACH 107 #define RTEMS_BSP_NETWORK_DRIVER_ATTACH BSP_DEC21140_NETWORK_DRIVER_ATTACH 117 #define IO_TIMER1 0x40 119 #define TIMER_CNTR0 (IO_TIMER1 + 0) 120 #define TIMER_CNTR1 (IO_TIMER1 + 1) 121 #define TIMER_CNTR2 (IO_TIMER1 + 2) 122 #define TIMER_MODE (IO_TIMER1 + 3) 123 #define TIMER_SEL0 0x00 124 #define TIMER_SEL1 0x40 125 #define TIMER_SEL2 0x80 126 #define TIMER_INTTC 0x00 127 #define TIMER_ONESHOT 0x02 128 #define TIMER_RATEGEN 0x04 129 #define TIMER_SQWAVE 0x06 130 #define TIMER_SWSTROBE 0x08 131 #define TIMER_HWSTROBE 0x0a 132 #define TIMER_LATCH 0x00 133 #define TIMER_LSB 0x10 134 #define TIMER_MSB 0x20 135 #define TIMER_16BIT 0x30 136 #define TIMER_BCD 0x01 137 #define TIMER_RD_BACK 0xc0 139 #define RB_NOT_COUNT 0x40 140 #define RB_NOT_STATUS 0x20 141 #define RB_COUNT_0 0x02 142 #define RB_COUNT_1 0x04 143 #define RB_COUNT_2 0x08 144 #define RB_OUTPUT 0x80 146 #define TIMER_TICK 1193182 148 #if defined( RTEMS_SMP ) 158 #define BSP_CONSOLE_VGA 0 159 #define BSP_CONSOLE_COM1 1 160 #define BSP_CONSOLE_COM2 2 165 #define US_TO_TICK(us) (((us)*105+44)/88) 166 #define TICK_TO_US(tk) (((tk)*88+52)/105) 172 extern segment_descriptors _Global_descriptor_table [GDT_SIZE];
177 void _IBMPC_initVideo(
void);
178 void _IBMPC_outch (
char);
179 char _IBMPC_inch (
void);
180 char _IBMPC_inch_sleep (
void);
181 int BSP_wait_polled_input(
void);
182 int rtems_kbpoll(
void );
184 void add_to_queue(
unsigned short b );
186 void Wait_X_ms(
unsigned int timeToWait);
187 void Calibrate_loop_1ms(
void);
189 void rtems_irq_mngt_init(
void);
191 void Clock_driver_install_handler(
void);
192 void Clock_driver_support_initialize_hardware(
void);
195 #define BSP_IDLE_TASK_BODY bsp_idle_thread 197 void kbd_reset_setup(
char *str,
int *ints);
198 size_t read_aux(
char * buffer,
size_t count);
213 #define BSP_CONSOLE_PORT_CONSOLE (-1) 214 #define BSP_CONSOLE_PORT_COM1 (BSP_UART_COM1) 215 #define BSP_CONSOLE_PORT_COM2 (BSP_UART_COM2) 220 const char* bsp_cmdline(
void);
221 const char* bsp_cmdline_arg(
const char* arg);
227 void bsp_ide_cmdline_init(
void);
232 #define RTEMS_BSP_HAS_IDE_DRIVER 236 void init_remote_gdb(
void );
237 void i386_stub_glue_init(
int uart);
238 void i386_stub_glue_init_breakin(
void);
239 int i386_stub_glue_uart(
void);
240 void breakpoint(
void);
242 #define BSP_MAXIMUM_DEVICES 6 248 uint32_t BSP_irq_count_dump(FILE *f);
254 void raw_idt_notify(
void);
255 void C_dispatch_isr(
int vector);
Definition: deflate.c:115
DEFAULT_INITIAL_EXTENSION Support.
ISR lock control.
Definition: isrlock.h:56
Sizes of Global and Interrupt descriptor tables.
bool bsp_get_serial_mouse_device(const char **name, const char **type)
Obtain serial mouse configuration information.
Definition: serial_mouse_config.c:29
Interface to Kernel Print Methods.
void * bsp_idle_thread(uintptr_t ignored)
Optimized idle task.
Definition: bspidle.c:26