OpenCores
URL https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk

Subversion Repositories openrisc_me

[/] [openrisc/] [trunk/] [rtos/] [ecos-2.0/] [packages/] [services/] [gfx/] [mw/] [v2_0/] [src/] [rtems/] [readme.rtems] - Blame information for rev 174

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 27 unneback
RTEMS Setup
2
===========
3
 
4
This file provide instructions on how to configure and build Microwindows
5
for RTEMS.  It is assumed that you are familiar enough with RTEMS and Microwindows,
6
and have a development environment that works with both systems. If you are not,
7
it is encouraged to play around with each one these packages first, separately,
8
before you start mixing them together.
9
 
10
 
11
NOTE: Microwindows code does not compile when ITRON API is enabled  -- need fix
12
 
13
 
14
a) RTEMS --- Patching & Building
15
==========================
16
 
17
 + Download RTEMS source (rtems-4.5.0-beta3.tgz) from Oarcorp.
18
 
19
 + make a build directory
20
       mkdir work
21
 
22
 + untar rtems beta3
23
      cd work
24
      tar xzf rtems-4.5.0-beta3.tgz
25
 
26
 + Download rtems and microwindows patches from Rosimildo's site.
27
  - rtems-4.5.0beta2-microwin-0.88.patch
28
  - microwin-088pre7-rtems.patch
29
 
30
 + Apply rtems-4.5.0beta3-microwin-0.88.patch.
31
   cd rtems-4.5.0-beta3
32
   patch -p1  <../rtems-4.5.0beta3-microwin-0.88.patch
33
 
34
  NOTE:  find . -name "*.rej", t check for rejects.
35
 
36
  # Regenerate some RTEMS build structure.  You may need to update
37
  # autoconf and automake packages on your machine.
38
  ./bootstrap
39
 
40
 
41
  + Mouse driver setup:
42
This needs to be improved later. Right now this is utter complex.
43
It reminds me setting up GRUB. :-).
44
 
45
You need to edit the device driver table in rtemscfg.h, around line 61.
46
There are two "/dev/mouse" drivers on RTEMS. Only one of them can be
47
loaded on the system. Select the one that fits your needs.
48
 
49
    i) for PS/2 mouse:
50
Select to load PAUX_DRIVER_TABLE_ENTRY in the device driver table. You
51
would do this, defining PS2_MOUSE in the file rtemscfg.h before the
52
device driver table.
53
 
54
#define PS2_MOUSE
55
 
56
   ii) Serial Mouse
57
 
58
-- Select the mouse type: "ms", "pc". Most serial mouses are microsoft ( "ms" )
59
compatible. This is the default selection.
60
 
61
 
62
-- Select serial port -- defaul is COM1
63
 
64
Both selections are made in the header file:
65
       $RTEMS_SOURCE)/c/src/lib/libbsp/i386/pc386/console/serial_mouse.h
66
around line 72.
67
 
68
[snip from $RTEMS_SOURCE)/c/src/lib/libbsp/i386/pc386/console/serial_mouse.h ]
69
/* Select the mouse type:  "ms","pc","ps2" */
70
#define  MOUSE_TYPE        "ms"
71
 
72
/* Select the serial port used by the mouse driver */
73
#define  SERIAL_MOUSE_COM1  1
74
/* #define  SERIAL_MOUSE_COM2  1  */
75
 
76
IMPORTANT: Any change on one of these settings, requires recompilation of RTEMS.
77
 
78
 
79
 
80
Configure and install RTEMS.  This assumes RPMs are installed
81
and tools are available as /opt/rtems.  You will need to
82
be able to write into the /opt/rtems directory so you will
83
likely have to be root to do the "make install" step.
84
I am using the c build scripts and you should look
85
at user.cfg to make sure it is OK for you.
86
 
87
  ./bit_rtems i386 pc386
88
  # takes a while and ends up with /opt/rtems/pc386 installed
89
 
90
 
91
b) MicroWindows --- Patching & Building
92
=======================================
93
 
94
 + Downloaded Microwindows source (microwindows-0.88pre7.tar.gz) from censoft.
95
 
96
 + make a build directory
97
       mkdir work
98
 
99
 + untar microwindows
100
      cd work
101
      tar xzf microwindows-0.88pre7.tar.gz
102
 
103
 + Apply microwin-088pre7-rtems.patch.
104
  cd microwin
105
  patch -p1  <../microwin-088pre7-rtems.patch
106
 
107
Found readme.rtems in microwin source:
108
 
109
  bash$ find . -name "readme.rtems"
110
  ./src/rtems/readme.rtems
111
 
112
Per readme.rtems use config.rtems for Microwindows.
113
 
114
  cd microwin
115
  cd src
116
  cp config config.SHIP
117
  cp config.rtems config
118
 
119
 
120
Edit config to localize it.  Make sure these variables are
121
set as shown below:
122
 
123
  RTEMSTOOLSPREFIX         = i386-rtems-
124
  RTEMS_BUILD              = /opt/rtems
125
 
126
Now build microwindows:
127
 
128
  cd src
129
  make
130
 
131
  NOTE:  This does not build the demos.
132
 
133
Now build the demos.
134
 
135
  src/rtems/Makefile.rtems is intended to be used to each of the
136
  demos.  You have a couple of issues...
137
 
138
   + This builds whatever demo is selected by the definition
139
     of MAIN_OBJ around line 52 of Makefile.rtems.
140
 
141
   + This produces rtems.exe for each demo.  It is quite large
142
     so you might want to strip it like this:
143
 
144
bash$ cp rtems.exe rtems_nosym.exe
145
bash$ i386-rtems-strip rtems_nosym.exe
146
 
147
 
148
 
149
c) Microwindows Configuration
150
=============================
151
 
152
NOTE: You can use the default configuration for RTEMS --
153
      copy config.rtems to config
154
 
155
  --> or
156
 
157
1. Select the architecture to be RTEMS. :-)
158
ARCH                     = RTEMS
159
 
160
2. No demos are built for RTEMS. Later, using the Makefile under the
161
rtems directory you can select whatever you need to build. This is because
162
RTEMS requires special configuration tables, and a definition of the
163
"Init" task.
164
 
165
  + A demo is selected by the definition of MAIN_OBJ around line 52
166
of Makefile.rtems.
167
 
168
MICROWINDEMO             = N
169
NANOXDEMO                = N
170
 
171
 
172
3. color scheme  -- ( unless you wrote the super-duper video driver for RTEMS )
173
SCREEN_PIXTYPE           = PF_PALETTE
174
 
175
 
176
4. Nano-X server linked with client as a single executable
177
LINK_APP_INTO_SERVER     = Y
178
 
179
 
180
5.1. Enable the Micro FrameBuffer interface.
181
FRAMEBUFFER              = Y
182
FBVGA                    = Y
183
 
184
  ==> or
185
 
186
5.2. For SVGALIB -- This requires you have the SVGALIB support under RTEMS.
187
Please go to this site for more information:
188
http://members/xoom.com/rosimildo/rtems_svga.html
189
 
190
LIBVGA                   = Y
191
 
192
 
193
 
194
c) KBD & MOUSE Test
195
===================
196
 
197
A test program has been added to help debugging the input devices. It is
198
called rtems/mw_uid_test.cc. Modify the Makefile to build it. It'll help
199
making sure that mouse&kbd works.
200
 
201
 
202
 
203
 
204
Credits
205
=======
206
 
207
I'd like to Thank Joel Sherrill for going over the original notes, and
208
prividing me with his own notes to be merged here.
209
 
210
 
211
 
212
 
213
Good Luck !!!.
214
 
215
Rosimildo.

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.