RTEMS  5.0.0
bsp.h
Go to the documentation of this file.
1 
9 /* bsp.h
10  *
11  * This include file contains all board IO definitions for bf537Stamp.
12  *
13  * Copyright (c) 2006 by Atos Automacao Industrial Ltda.
14  * written by Alain Schaefer <alain.schaefer@easc.ch>
15  * and Antonio Giovanini <antonio@atos.com.br>
16  *
17  * The license and distribution terms for this file may be
18  * found in the file LICENSE in this distribution or at
19  * http://www.rtems.org/license/LICENSE.
20  */
21 
22 
23 #ifndef LIBBSP_BFIN_BF537STAMP_BSP_H
24 #define LIBBSP_BFIN_BF537STAMP_BSP_H
25 
36 #ifndef ASM
37 
38 #include <bspopts.h>
40 
41 #include <rtems.h>
42 
43 #include <libcpu/bf537.h>
44 #include <libcpu/memoryRegs.h>
45 
46 #ifdef __cplusplus
47 extern "C" {
48 #endif
49 
50 /* configure data cache to use 16K of each SRAM bank when enabled */
51 #define BSP_DATA_CACHE_CONFIG (3 << DMEM_CONTROL_DMC_SHIFT)
52 
53 
54 /*
55  * PLL and clock setup values:
56  */
57 
58 /*
59  * PLL configuration for bf533Stamp
60  *
61  * XTL = 27 MHz
62  * CLKIN = 13 MHz
63  * VCO = 391 MHz
64  * CCLK = 391 MHz
65  * SCLK = 130 MHz
66  */
67 
68 #define PLL_CSEL 0x0000 /* CCLK = VCO */
69 #define PLL_SSEL 0x0003 /* SCLK = CCLK/3 */
70 #define PLL_MSEL 0x3A00 /* VCO = 29xCLKIN */
71 #define PLL_DF 0x0001 /* CLKIN = XTL/2 */
72 
73 #define CCLK 500000000 /* CORE CLOCK */
74 #define SCLK 100000000 /* SYSTEM CLOCK */
75 
76 #define CONSOLE_FORCE_BAUD 57600
77 
78 /*
79  * Blackfin environment memory map
80  */
81 #define L1_DATA_SRAM_A 0xff800000L
82 
83 #define FIFOLENGTH 0x100
84 
85 /*
86  * Simple spin delay in microsecond units for device drivers.
87  * This is very dependent on the clock speed of the target.
88  */
89 
90 #define rtems_bsp_delay( microseconds ) \
91  { \
92  }
93 
94 /* Constants */
95 
96 #define RAM_START 0
97 #define RAM_END 0x4000000
98 
99 /* functions */
100 
101 /*
102  * Helper Function to use the EzKits LEDS.
103  * Can be used by the Application.
104  */
105 void setLED(uint8_t value);
106 
107 /*
108  * Helper Function to use the EzKits LEDS
109  */
110 uint8_t getLEDs(void);
111 void setLEDs(uint8_t value);
112 uint8_t getButtons(void);
113 
114 rtems_isr_entry set_vector( /* returns old vector */
115  rtems_isr_entry handler, /* isr routine */
116  rtems_vector_number vector, /* vector number */
117  int type /* RTEMS or RAW intr */
118 );
119 
120 /*
121  * Internal BSP methods that are used across file boundaries
122  */
123 void Init_RTC(void);
124 
125 /*
126  * Network driver configuration
127  */
128 struct rtems_bsdnet_ifconfig;
129 extern int bf537Stamp_network_driver_attach(struct rtems_bsdnet_ifconfig *, int);
130 
131 #define RTEMS_BSP_NETWORK_DRIVER_NAME "eth1"
132 #define RTEMS_BSP_NETWORK_DRIVER_ATTACH bf537Stamp_network_driver_attach
133 
134 #ifdef __cplusplus
135 }
136 #endif
137 
138 #endif /* !ASM */
139 
140 /* @} */
141 
142 #endif
rtems_isr_entry set_vector(rtems_isr_entry handler, rtems_vector_number vector, int type)
Install an interrupt handler.
Definition: setvec.c:28
void setLED(uint8_t value)
Helper Function to use the EzKits LEDS. Can be used by the Application.
Definition: bspstart.c:145
DEFAULT_INITIAL_EXTENSION Support.
ISR_Vector_number rtems_vector_number
Control block type used to manage the vectors.
Definition: intr.h:47