Ignore:
Timestamp:
Jun 12, 2000, 3:00:15 PM (20 years ago)
Author:
Joel Sherrill <joel.sherrill@…>
Branches:
4.10, 4.11, 4.8, 4.9, 5, master
Children:
edeed26
Parents:
0ab65474
Message:

Merged from 4.5.0-beta3a

File:
1 edited

Legend:

Unmodified
Added
Removed
  • c/src/lib/libbsp/m68k/mvme167/README

    r0ab65474 rdf49c60  
    33#
    44
    5 This is a README file for the MVME167 port of RTEMS 4.0.0.
     5This is a README file for the MVME167 port of RTEMS 4.5.0.
    66
    77Please send any comments, improvements, or bug reports to:
    88
    99Charles-Antoine Gauthier
     10charles.gauthier@nrc.ca
     11or
     12
     13Darlene Stewart
     14Darlene.Stewart@nrc.ca
     15
    1016Software Engineering Group
    1117Institute for Information Technology
     
    1420Canada
    1521
    16 charles.gauthier@iit.nrc.ca
     22
     23WARNING:
     24--------
     25
     26The network driver is currently being worked on. It is somewhat functional,
     27but it does run out of buffers under certain conditions. The code is
     28also undergoing a substantial reorganization. Before making any changes,
     29you should check with us for the availability of updates.
     30
     31Note from Joel:  The ttcp performance reported is very nice even if the
     32driver is still early in its life. :)
     33
    1734 
    1835
     
    4461m68k targets. You will need to edit linkcmds to put in the start address
    4562of your board. We do TFTP transfers to our target. The mvme167.cfg file
    46 builds only the coff images, which we download to the target, skipping over
    47 the first 0xA8 bytes; Motorola S-records are not generated. Edit this file
    48 if you want S-records.
     63builds only the ELF images, which we download to the target, skipping
     64over the first 0x54 bytes; Motorola S-records are not generated. Edit
     65this file if you want S-records.
    4966
    5067
     
    5269Console driver
    5370
    54 ----------------
     71---------------
    5572
    5673This BSP includes an termios-capable console driver that supports all
     
    6178
    6279The console is initialized with whatever parameters are set up in termios
    63 before it calls the firtOpen driver callback, EXCEPT THAT HARDWARE HANDSHAKING
    64 IS TURNED OFF, i.e. CLOCAL is set in the struct termios c_cflag field. We use
    65 3-wire cables for I/O, and find hardware handshaking a pain. If you enable
    66 hardware handshaking, you must drive CTS* low on the CD2401 for output to
    67 occur. If the port is in the DTE configuration, you must drive the RS-232 CTS
    68 line to space; if the port is in the DCE configuration, you must drive the
    69 RS-232 RTS line to space.
    70 
    71 Limited support is provided for polled terminal I/O. This is used when running
    72 the timing tests. Set the CD2401_POLLED_IO manifest constant to 1 in
    73 rtems/c/src/lib/libbsp/m68k/mvme167/console/console.c to enable polled I/O.
    74 In this case, I/O is done through 167Bug, usually to the Serial Port 1/Console
     80before it calls the firtOpen driver callback, EXCEPT THAT HARDWARE
     81HANDSHAKING IS TURNED OFF, i.e. CLOCAL is set in the struct termios
     82c_cflag field. We use 3-wire cables for I/O, and find hardware handshaking
     83a pain. If you enable hardware handshaking, you must drive CTS* low on the
     84CD2401 for output to occur. If the port is in the DTE configuration, you
     85must drive the RS-232 CTS line to space; if the port is in the DCE
     86configuration, you must drive the RS-232 RTS line to space.
     87
     88Limited support is provided for polled terminal I/O. This is used when
     89running the timing tests. Set the CD2401_POLLED_IO manifest constant to 1
     90in rtems/c/src/lib/libbsp/m68k/mvme167/console/console.c to enable polled
     91I/O. In this case, I/O is done through 167Bug, usually to the Serial Port
     921/Console port. Interrupt-driven and polled I/O cannot be mixed in the
     93MVME167.
     94
    7595
    7696Floating-point
    7797
    7898The MC68040 has a built-in FPU. This FPU does not implement all the
    79 instruction of the MC68881/MC68882 floating-point coprocessors in hardware.
    80 The -m68040 compilation options instructs gcc to not generate the missing
    81 instructions. All of the RTEMS code is built this way. Some of the missing
    82 functionality must be supplied by external libraries. The required functions
    83 are part of libgcc.a.
     99instruction of the MC68881/MC68882 floating-point coprocessors in
     100hardware. The -m68040 compilation options instructs gcc to not generate
     101the missing instructions. All of the RTEMS code is built this way. Some
     102of the missing functionality must be supplied by external libraries. The
     103required functions are part of libgcc.a.
    84104
    85105The issue gets complicated because libc, libm and libgcc do not come as
     
    128148
    129149
     150Cache Control and Memory Mapping
     151
     152If Jumper J1-7 is installed, the data cache will be turned on. If Jumper
     153J1-6 is installed, the instruction cache will be turned on. Removing the
     154jumper causes the corresponding cache to be left disabled.
     155
     156If Jumper J1-5 is installed, the data cache will be placed in copyback
     157mode. If it is removed, it will be placed in writethrough mode.
     158
     159Currently, block address translation is set up to map the virtual
     1600x00000000--0x7FFFFFFF to the physical range 0x00000000--0x7FFFFFFF. The
     161port relies on the hardware to raise exceptions when addressing
     162non-existent memory. Caching is not controllable on a finer grain.
     163
     164
    130165Miscellaneous
    131 
    132 port. Interrupt-driven and polled I/O cannot be mixed in the MVME167.
    133166
    134167The timer and clock drivers were patterned after the MVME162 and MVME152
     
    137170At this time, we do not have an MPCI layer for the MVME167. We are planning
    138171to write one.
    139 
    140 The port does not have a network driver.
    141172
    142173This port supplies its own fatal_error_handler, which attempts to print some
     
    154185    - GNU binutils 2.9.1 configured for a powerpc-ibm-aix4.2.0.0 host and
    155186      m68k-rtems target;
     187
    156188It was also tested on a Pentium II-based PC running Windows NT Workstation 4.0
    157 and the Cygnus Cygwin32 release b20.1 environment, witht he following tools:
     189and the Cygnus Cygwin32 release b20.1 environment, with the following tools:
    158190
    159191    - EGCS 1.1.1 configured for a i586-cygwin32 host and m68k-rtems target;
    160192    - GNU binutils 2.9.4 configured for a i586-cygwin32 host and m68k-rtems
    161193      target;
    162     - Cygnus newlib 1.8.0 with RTEMS 4.0.0 patches.
    163194
    164195With the latter environment, be patient; builds take a very looong time...
    165196
    166     - Cygnus newlib 1.8.0 with RTEMS 4.0.0 patches.
     197Current development is done on a Pentium III PC running RedHat Linux 6.1.
     198At the time this README was composed, the latest working compiler that was
     199used successfully was gcc version 2.96 20000213 (experimental). Both the C
     200and C++ compilers were working. Binutils 2.9.1 are used.
    167201
    168202
     
    203237than propagating the error).
    204238
     239In the stackchk test, an access fault exception is raised after the stack is
     240blown. This is one case were overwritting the first or last 16 bytes of the
     241stack does cause problems (but hey, an exception occurred, which is better
     242than propagating the error).
     243
    205244When using interrupt-driven I/O, psx08 produces all the expected output, but
    206245it does not return control to 167Bug. Is this test supposed to work with
     
    210249What's new
    211250----------
     251
     252Support for Java is being actively worked on.
    212253
    213254
     
    461502
    462503
    463 Network tests:
    464        Network driver is not implemented.
    465 
    466 
    467 
Note: See TracChangeset for help on using the changeset viewer.