RTEMS  5.1
bsp.h
Go to the documentation of this file.
1 
7 /*
8  * By Yang Xi <hiyangxi@gmail.com>.
9  *
10  * The license and distribution terms for this file may be
11  * found in the file LICENSE in this distribution or at
12  * http://www.rtems.org/license/LICENSE.
13  */
14 
15 #ifndef LIBBSP_ARM_GUMSTIX_BSP_H
16 #define LIBBSP_ARM_GUMSTIX_BSP_H
17 
28 #include <bspopts.h>
30 
31 #include <rtems.h>
32 
33 #ifdef __cplusplus
34 extern "C" {
35 #endif
36 
37 #define BSP_FEATURE_IRQ_EXTENSION
38 
39 #define BSP_HAS_FRAME_BUFFER 1
40 
42 #define BSP_MAIN_FREQ 3686400 /* 3.6864 MHz */
43 #define BSP_SLCK_FREQ 32768 /* 32.768 KHz */
44 
46 #define BSP_MAX_INT AT91RM9200_MAX_INT
47 
48 /*
49  * forward reference the type to avoid conflicts between libchip serial
50  * and libchip rtc get and set register types.
51  */
52 typedef struct _console_tbl console_tbl;
53 console_tbl *BSP_get_uart_from_minor(int minor);
54 
55 static inline int32_t BSP_get_baud(void) {return 115200;}
56 
57 #define ST_PIMR_PIV 33 /* 33 ticks of the 32.768Khz clock ~= 1msec */
58 
59 #define outport_byte(port,val) *((unsigned char volatile*)(port)) = (val)
60 #define inport_byte(port,val) (val) = *((unsigned char volatile*)(port))
61 #define outport_word(port,val) *((unsigned short volatile*)(port)) = (val)
62 #define inport_word(port,val) (val) = *((unsigned short volatile*)(port))
63 
64 struct rtems_bsdnet_ifconfig;
65 extern int rtems_ne_driver_attach(struct rtems_bsdnet_ifconfig *, int);
66 #define BSP_NE2000_NETWORK_DRIVER_NAME "ne1"
67 #define BSP_NE2000_NETWORK_DRIVER_ATTACH rtems_ne_driver_attach
68 
69 #ifndef RTEMS_BSP_NETWORK_DRIVER_NAME
70 #define RTEMS_BSP_NETWORK_DRIVER_NAME BSP_NE2000_NETWORK_DRIVER_NAME
71 #endif
72 
73 #ifndef RTEMS_BSP_NETWORK_DRIVER_ATTACH
74 #define RTEMS_BSP_NETWORK_DRIVER_ATTACH BSP_NE2000_NETWORK_DRIVER_ATTACH
75 #endif
76 
77 #ifdef __cplusplus
78 }
79 #endif
80 
83 #endif /* _BSP_H */
84 
DEFAULT_INITIAL_EXTENSION Support.
Definition: serial.h:117