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

Subversion Repositories openrisc

[/] [openrisc/] [trunk/] [rtos/] [rtems/] [c/] [src/] [lib/] [libbsp/] [m68k/] [mvme162/] [README] - Blame information for rev 562

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 30 unneback
--
2
--  EISCAT Scientific Association. M.Savitski
3
--
4
--  This material is a part of the MVME162 Board Support Package
5
--  for the RTEMS executive. Its licensing policies are those of the
6
--  RTEMS distribution.
7
--
8
--  Updated by Joel Sherrill (jsherril@redstone.army.mil) after
9
--  inclusion in the standard release.
10
--
11
--  $Id: README,v 1.2 2001-09-27 12:00:18 chris Exp $
12
--
13
 
14
MVME162 Models
15
--------------
16
 
17
MVME162 model uses 68040.
18
 
19
MVME162FX model uses XXX.
20
 
21
MVME162LX model uses 68LC040.
22
 
23
Do all models have 2 ZCC chips for a total of 4 serial ports?
24
 
25
Extended Console Driver
26
-----------------------
27
This BSP includes an extended console driver which supports all 4 serial
28
ports on the MVME162LX model.  It was submitted by Katsutoshi Shibuya
29
.
30
 
31
The application can choose this driver by using "CONSOLEX_DRIVER_TABLE_ENTRY"
32
in the driver table definition, in place of "CONSOLE_DRIVER_TABLE_ENTRY".
33
See consolex/cTest.c for an example and consolex/README for more information.
34
 
35
This driver is only built for the mvme162lx bsp model.
36
 
37
MVME162FX and DMA on the IP bus
38
-------------------------------
39
 
40
From Eric Vaitl :
41
 
42
If you have any customers that will be using the 162FX, tell them to
43
be careful. The main difference between the 162 and the 162FX is DMA
44
on the IP bus. I spent over a month trying to write a DMA HDLC driver
45
for GreenSprings IP-MP and couldn't get it to work. I talked to some
46
people at GreenSprings, and they agreed that there really is no way to
47
get DMA to work unless you know the size of the packets in advance.
48
Once the IP2 chip DMA controller is given the character count and
49
enabled, it doesn't accept further commands until all of the
50
characters have arrived. The only way to terminate a DMA transfer
51
prematurely is by raising DMAEND* during the last read. None of the IP
52
modules that I know of are currently able to do that. GreenSprings is
53
working on the problem, but nothing is going to available for a few
54
months.
55
 
56
Installation
57
------------
58
Nothing unique to the MVME162.  It has been incorporated into the
59
standard release.
60
 
61
Port Description
62
----------------
63
This section describes the initial port effort.  There have been
64
additions and modifications to the bsp since this was done.
65
Interestingly, this was the first bsp submitted to the RTEMS project
66
and the submission offer came out of the blue with no prior
67
communication with the author. :)
68
 
69
The port was done using already existing ports to the M68020 boards,
70
DMV152 and MVME136.
71
 
72
The initial host development system was SUN/Solaris 2.3, and
73
the cross-development environment consisted of Free Software
74
Foundation (FSF)'s GNU C compiler (version 2.6), GNU Assembler
75
(version 2.3) and GNU binary utilities binutils version 2.5.2,
76
built with m68k as a target. The recent/latest versions of other
77
GNU programs (flex, make, etc) were also used at the build stage.
78
 
79
In all subdirectories of the RTEMS distribution tree, the directories
80
mvme136 were duplicated as mvme162.
81
 
82
Essential modifications are detailed below:
83
 
84
- the MVME162-specific hardware registers were described in bsp.h
85
 
86
- timer and clock routines were made to use the MVME162's Tick Timers 1
87
and 2, respectively
88
 
89
- shared memory support was replaced by stubs for the time being
90
 
91
- console IO was lifted entirely from the DMV152 support code, thanks
92
to the fact that Z8530 SCC used in DMV152 is upwards compatible with
93
the Z85230 SCC of the MVME162. (Only the memory mapping of the SCC
94
registers had to be changed.)
95
 
96
- symbols in several *.s files were prepended with underscores to
97
comply with the xgcc configuration used (it prepends underscores to all
98
symbols defined in c code)
99
 
100
- linkcmds file was modified to place the linked code into the memory
101
configured for the board in use
102
 
103
- bspstart.c was modified as follows:
104
 
105
         monitors_vector_table = (m68k_isr *)0xFFE00000;
106
 
107
was made to point to the power-up location of MVME162 interrupt vector
108
table.
109
 
110
- The shutdown is a temporary solution. To exit cleanly, it has to disable
111
all enabled interrupts and restore the board to its power-up status.
112
Presently this is not done satisfactorily, as a result, the board needs
113
a hardware reset from the external VMEbus master or from the front
114
panel to ensure correct operation for subsequent downloads.
115
 
116
Host System
117
-----------
118
The VMEbus master used to externally control and download the MVME162
119
is a FORCE CPU-2CE board running Solaris 2.3. A simple program to load
120
s-records and start/reset the MVME162 was written. The code is in the
121
file tools/sload.c
122
 
123
This code depends on the external VMEbus master's vme driver and is
124
provided as an example, without the Makefile. The bulk of the program
125
which parses the s-records is courtesy of Kym Newbery,
126
(8918927y@lux.levels.unisa.edu.au).
127
 
128
In general, apart from x-gcc, the tools most often used while building
129
RTEMS for MVME162 were: find, grep, diff, and, of course
130
 
131
MVME162 Embedded Controller Programmer's Reference Guide,
132
Motorola, MVME162PG/D1.
133
 
134
Thanks
135
------
136
- to On-Line Applications Research Corporation (OAR) for developing
137
RTEMS and making it available on a Technology Transfer basis;
138
- to Joel Sherril, the leader of the RTEMS development group for
139
stimulating and helpful discussions;
140
- to Kym Newbery (8918927y@lux.levels.unisa.edu.au) for his s-record
141
parser;
142
- to Gerd Truschinski (gt@first.gmd.de) for creating and running the
143
crossgcc mailing list
144
- to FSF and Cygnus Support for great free software;
145
 
146
What's new
147
----------
148
  - 28.07.95 BSP adjusted to rtems-3.2.0.
149
  - Now console driver uses interrupts on receive (ring buffer
150
    code lifted with thanks from the IDP BSP next door (../idp))
151
  - both front-panel serial interfaces are supported
152
  - serious bug in timer interrupts fixed
153
  - interrupt test tm27 now supported
154
 
155
+----------------------------------+-------------------------------+
156
|  Dr. Mikhail (Misha) Savitski    |  Voice : +46-980-79162        |
157
|  Software Systems Engineer       |  Fax   : +46-980-79161        |
158
|  EISCAT Svalbard Radar Project   |  E-mail: mms@eiscathq.irf.se  |
159
|  EISCAT Scientific Association   |-----------  /\_/\  -----------|
160
|  Box 812 S-98128 Kiruna, Sweden  |  EIS       { o o }       CAT  |
161
+----------------------------------+-------oQQQ--(>I<)--QQQo-------+
162
 
163
 

powered by: WebSVN 2.1.0

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