Commit Graph

1367 Commits

Author SHA1 Message Date
Joel Sherrill
30a3f76b29 Switched from polling to interrupts and in the process added a conditional
compilation section which used CONSOLE_USE_INTERRUPTS to switch all
ports between interrupt and polled mode.
1998-07-15 14:04:31 +00:00
Joel Sherrill
437b5a7dcc Added scv64 subdirectory. 1998-07-15 14:00:23 +00:00
Joel Sherrill
090a351181 New files. 1998-07-15 14:00:09 +00:00
Joel Sherrill
be8cbbf54a Switched deviceOutputUsesInterrupts to TRUE so output would be interrupt
driven.

Redid "mate determination" code to check that the chip base address was
the same but the port address was different.

Moved mc68681_process and mc68681_build_imr to the bottom of the file
so they would not be inlined.

Removed the code which forced mc68681_build_imr to always return 0 which
resulted in interrupts never being enabled from the chip.

Corrected spacing in prototype of mc68681_write_support_int.
1998-07-15 13:58:23 +00:00
Joel Sherrill
e283140cac Switched to "deviceOutput = TRUE" which made device output use interrupts. 1998-07-15 13:53:58 +00:00
Joel Sherrill
5b8c1b7041 Yet another EXEEXT patch. This one is from Ralf Corsepius
<corsepiu@faw.uni-ulm.de> and his comments are below:

  Joel, obviously you did apply my previous patch to
  gcc-target-default.cfg -- This should have been gcc.cfg
  (gcc-target-default.cfg should NOT contain any EXEEXT).
1998-07-11 14:23:53 +00:00
Joel Sherrill
3a447c3b36 changed version to 980710 1998-07-10 19:05:20 +00:00
Joel Sherrill
dbfa314823 Patch from Quality Quorum <qqi@world.std.com>. Comments:
c/src/lib/libbsp/i386/pc386/console/console.c
        __assert() modified so it prints on selected console instead of
        PC console

    c/src/lib/libbsp/i386/pc386/console/inch.c
        inch_sleep() modified, so it does not depend upon tmacros.h

    c/src/lib/libbsp/i386/pc386/pc386dev/GDB.HOWTO
        description updated

    c/src/lib/libbsp/i386/pc386/startup/exit.c
        last output before call to exit() will be printed properly on
        serial console

    c/src/lib/libbsp/i386/pc386/startup/irq.c
        re-submitted bug fix for problem in irqs over 7.
1998-07-10 15:43:18 +00:00
Joel Sherrill
cc8a388aac Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>. Comments:
> It seems that rules for %{EXEEXT} don't exist in gcc-target-default.cfg

    No, gcc-target-default.cfg is used to compile executables for the target
    only, not for the host.

    EXEEXT may only be used for programs to be run on the host.

    > What should I add please?

    This was a bug in my initial configuration patch to rtems-980616. A
    correction to this patch I had sent to Joel at 26.06.98 doesn't seem to
    have made it into the snapshot.

    Please find attached the patch I had sent to Joel, hopefully this patch
    fixes this problem.
1998-07-10 14:13:59 +00:00
Joel Sherrill
fb32356ba6 Added set attributes routine but did not hook it in to the table.
Switched to shared default probe.
1998-07-09 23:32:07 +00:00
Joel Sherrill
abd8c82b9e Added new files. 1998-07-09 23:31:48 +00:00
Joel Sherrill
31cad72c86 Renamed so we could have one file per routine. 1998-07-09 23:31:26 +00:00
Joel Sherrill
064b9be457 Switched to shared default probe routine. 1998-07-09 23:30:32 +00:00
Joel Sherrill
693b5b8850 Switched to default probe routine. 1998-07-09 23:30:02 +00:00
Joel Sherrill
61ff7ac825 Added new baud rate to number function and default serial probe routine.
Renamed sersupp.c so we could have one routine per file to decrease
the baggage pulled into an application by default.
1998-07-09 23:29:33 +00:00
Joel Sherrill
11c6a92d77 Commented out the system call invocation since we don't know what works
with this ROM monitor.
1998-07-09 22:59:32 +00:00
Joel Sherrill
a6e36dfffe Removed call back to exit() since that has already been called. 1998-07-09 22:59:13 +00:00
Joel Sherrill
e78c474b0d Added proper handling of extended baud rate table selection at boot time.
Still need to address default terminal settings.
1998-07-09 22:21:54 +00:00
Joel Sherrill
2c5ea019fa Properly handle extended baud rate set commands.
Temporarily "if 0" of code which enables interrupts.

Moved setting of command registers at open but the current implementation
is questionable.

Added reset of RX errors while polling TX.

Read polled character as unsigned.

Baud rate mask must be in upper and lower nibble.
1998-07-09 22:16:27 +00:00
Joel Sherrill
e3c59ddb35 Corrected definition of MC68681_RX_BUFFER. 1998-07-09 22:11:49 +00:00
Joel Sherrill
2ba0a0c2a8 Corrected z85c30 address and clock constants. 1998-07-09 18:50:13 +00:00
Joel Sherrill
459c1d2350 Added board specific baud rate table and set driver function table
to polled.
1998-07-09 18:49:49 +00:00
Joel Sherrill
2d8e51aade Changed static to MC68681_STATIC to make all data and routines
globally visiable to ease debugging.

Added support for mc68681 "2 column" style baud rate table as
well as the Exar 88681 "4 column" style baud rate table.

Added support for user override of the default baud rate table.
1998-07-09 18:45:28 +00:00
Joel Sherrill
b2ec38c852 Removed commented out line. 1998-07-09 18:44:10 +00:00
Joel Sherrill
8f6f641efa Added sersupp.c. 1998-07-09 18:41:49 +00:00
Joel Sherrill
d94d47b336 New files to contain generally needed serial driver support routines. 1998-07-09 18:41:33 +00:00
Joel Sherrill
37e8259727 Changed static to MC68681_STATIC to make all routines and data global
to ease debugging.
1998-07-09 18:40:27 +00:00
Joel Sherrill
8b2492f9cb Added support for the Extended Baud Rate set control found in the
Exar 88681 but not in the base 68681.

Added support for user provided baud rate tables.  This is needed
when the board does not use the standard baud rate clock.
1998-07-09 18:39:50 +00:00
Joel Sherrill
27045a82af Changed static to NS16550_STATIC to make all routines and data global
to ease debugging.
1998-07-09 18:38:18 +00:00
Joel Sherrill
677a503916 Changed static to Z85C30_STATIC so all data and routines could be global
for debugging purposes.
1998-07-09 18:37:47 +00:00
Joel Sherrill
80b1c2f87f Added information to README.mc68681.
Created the basic README and the README.z85c30.
1998-07-09 18:36:19 +00:00
Joel Sherrill
0d1184ffec changed version to 980707 1998-07-07 19:05:55 +00:00
Joel Sherrill
d859b5fb22 changed version to 9800707 1998-07-07 19:00:26 +00:00
Joel Sherrill
030ff41790 Conditionals for CONSOLE_USE_INTERRUPTS should have been "if" not
"if defined".
1998-07-07 16:38:18 +00:00
Joel Sherrill
270d58fe4c New file to satisfy readdir() family. 1998-07-06 19:00:33 +00:00
Joel Sherrill
a90b9905c9 Missed this file in the initial merge. 1998-07-06 18:44:32 +00:00
Joel Sherrill
b5bb3d6f59 Update from Geoffroy Montel (g_montel@yahoo.com) to get in sync with termios
and eliminate warnings.
1998-07-06 14:52:30 +00:00
Joel Sherrill
1d22b037e3 Added Geoffroy Montel (g_montel@yahoo.com) for the gen68340 BSP. 1998-07-06 14:51:39 +00:00
Joel Sherrill
5ae415b394 Added include of termios.h.
Also added a block of comments above the console_tbl structure to explain
each entry.
1998-07-05 11:04:31 +00:00
Joel Sherrill
bc2ebb46e2 Added some address constants for the SCC and DUART to make it easier
to fill in the configuration table.
1998-07-05 11:01:21 +00:00
Joel Sherrill
e7ff2b2798 New file added in the process of converting the console driver to
libchip/serial.
1998-07-05 11:00:57 +00:00
Joel Sherrill
92a6454654 Converted the console driver to use libchip/serial and added support
for the z85c30 found on the DMV177.  This effort started with the
console driver from the Radstone PPC2.  But some simplifications were
made in the hope that console.c can be made a shared file at some point
in the near future.

Split the debugio from console.  This was done so at some point in the
future printk support as is found in the pc386 BSP can be shared
across all BSPs.
1998-07-05 11:00:00 +00:00
Joel Sherrill
0e8c200051 Renamed old_start340.s to startfor340only.s 1998-07-02 18:07:09 +00:00
Joel Sherrill
132f19405b Initial submission of gen68340 BSP (should run on a 68349) from
Geoffroy Montel <g_montel@yahoo.com>.
1998-07-01 22:03:20 +00:00
Joel Sherrill
a05de51283 Added _stat_r and changed spacing. 1998-07-01 21:33:38 +00:00
Joel Sherrill
dd6dddcf1e Fixed typo. 1998-07-01 21:33:11 +00:00
Joel Sherrill
dc95ee8dce Changed prototype for console_write_support to eliminate a warning. 1998-06-29 17:51:50 +00:00
Joel Sherrill
cf65c40819 Bare BSP patch from Chris Johns <cjohns@plessey.com.au>. He also
sent an example bare bsp but we have not decided how to integrate it yet.
1998-06-27 20:01:28 +00:00
Joel Sherrill
5d18fb057a PC386 BSP enhancements from Aleksey Romanov (Quality Quorum
<qqi@world.std.com>).   Unfortunately after merging these,
the pc386 will not boot using grub for for.  It still does not
work using netboot for me.  Here is his summary of changes:


  rtems/c/src/lib/libbsp/i386/pc386/Makefile.in
  	Added support for new sub-directory

  rtems/c/src/lib/libbsp/i386/pc386/bsp_specs
  	Made possible to build COFF image

  rtems/c/src/lib/libbsp/i386/pc386/console/console.c
  	Added support for serial consoles, selectable by patching
  	binary image, added __assert(), use _IBMPC_inch_sleep()
  	instaed of _IMBPC_inch()

  rtems/c/src/lib/libbsp/i386/pc386/console/inch.c
  	Added _IMBPC_inch_sleep()

  rtems/c/src/lib/libbsp/i386/pc386/console/outch.c
  	Oops - just formatting

  rtems/c/src/lib/libbsp/i386/pc386/include/Makefile.in
  	Added support for new files

  rtems/c/src/lib/libbsp/i386/pc386/include/bsp.h
  	Added support for new features

  rtems/c/src/lib/libbsp/i386/pc386/include/pc386uart.h
  	New file: definitions for serial ports

  rtems/c/src/lib/libbsp/i386/pc386/include/pcibios.h
  	New file: definitions for PCI BIOS

  rtems/c/src/lib/libbsp/i386/pc386/pc386dev/Makefile.in
  	New file: makefile in new directory

  rtems/c/src/lib/libbsp/i386/pc386/pc386dev/i386-stub-glue.c
  	New file: i386-stub interface

  rtems/c/src/lib/libbsp/i386/pc386/pc386dev/i386-stub.c
  	New file: i386-stub itself

  rtems/c/src/lib/libbsp/i386/pc386/pc386dev/pc386uart.c
  	New file: serial ports

  rtems/c/src/lib/libbsp/i386/pc386/pc386dev/pcibios.c
  	New file: PCI BIOS support

  rtems/c/src/lib/libbsp/i386/pc386/start/start.s
  	Commented out DEBUG_EARLY stuff, everything is working fine

  rtems/c/src/lib/libbsp/i386/pc386/start/start16.s
  	Cleaned up

  rtems/c/src/lib/libbsp/i386/pc386/startup/bspstart.c
  	Added call to console_resereve_resources

  rtems/c/src/lib/libbsp/i386/pc386/startup/exit.c
  	Added support for serial console

  rtems/c/src/lib/libbsp/i386/pc386/startup/ldsegs.s
  	Fixed typo in comments

  rtems/c/src/lib/libbsp/i386/pc386/tools/Makefile.in
  	Changed to reflect cnages in code

  rtems/c/src/lib/libbsp/i386/pc386/tools/bin2boot.c
  	Trivialized, problem - I do not know how to make patch
  	remove obsolete files - there are a lot of them there

  rtems/c/src/lib/libbsp/i386/pc386/tools/binpatch.c
  	New file: utility to do binary patches

  rtems/c/src/lib/libbsp/i386/pc386/wrapup/Makefile.in
  	Added support for new directory

  rtems/make/custom/pc386.cfg
  	Add COFF image building
1998-06-27 18:51:49 +00:00
Joel Sherrill
98100d275f Monstrous patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>. I have
made no attempt to divide the comments up and place them with just
the appropriate files.  Here is an excerpt from Ralf's email:

Changes including comments on changes I made after cycling through
all the targets:

  * Added ranlib support. Now all targets use "ranlib" instead of "ar -s"
    to build an index for a library. If ranlib isn't detected during
    configuration, check if ar -s is working and try "ar -s" instead of

  * Removed $(XXX_FOR_TARGET) from make/target.cfg.in, use $(XXX) instead now.

  * gcc-target-default.cfg: LINK_XXXX-defines reworked to solve the -l
    problem under posix (cf gcc-target-default.cfg)

  * rtems-glom replaced by Makefile-rules inside of the wrapup/Makefile.in
    that has been using rtems-glom until now.

  * Removed CCC and friends in gcc-target-default.cfg, as they have been
    breaking CXX support.

  * Removed CONFIG.$(TARGET_ARCH).CC lines from several custom/*.cfg
    files, because this is now set in custom/default.cfg.

  * Added aclocal/ar-s.m4, check whether "ar -s" is working

  * Added aclocal/cygwin.m4 and aclocal/exeext.m4.

  * Reworked aclocal/canonicalize-tools.m4: Added ar -s check; fixes for
    problems when  XXX_FOR_TARGET is given via environment variables (didn't
    work for gcc until now), adding cygwin check, improved autoconf-cache
    handling.

  * Removed -l from make rule dependencies. LINK_LIBS is now allowed to
    contain -L and -l. LINK_OBJS and LINK_FILES must not contain -L or -l.
    gcc28 make-exe rules now link using $(LINK_OBJS) $(LINK_LIBS) => Almost
    all custom/*.cfg are modified. This is very likely to break something
    because of typos or having missed to edit a file.

  Open problems, known bugs, things I didn't do:

  * custom/p4000.cfg seems to be out of date and requires to be reviewed.

    (JRS NOTE: It is subordinate p4650 and p4600 -- both of which build ok
               after minor changes.)

  * custom/psim.cfg needs to be reviewed, I added some changes to it, I am
    insecure about.

    (JRS NOTE: psim had a minor problem endif/endef swapped but runs fine.)

  * rtems-glom.in can now be removed.

  * gcc*.cfg files "make depend" rules don't honor language specific flags
    (e.g CXXFLAGS is ignored for *.cc) - Nothing to worry about now, but may
    cause problems for hosts/targets not using gcc or rtems-add-ons that use
    external packages.

  * AFAIS, the no_bsp BSP can't be build anymore, i.e. configure refused
    to configure for it whatever I tried.

  * The toplevel and toplevel+1 README files are quite out-dated

  * cygwin.m4 isn't of much use for rtems. In most cases (cf.
    aclocal/*.m4) it is worked around by directly using $host_os. I think
    I'll remove it soon after the next snapshot

  * Before release the cygwin patch needs to be tested under cygwin. I may
    have broken/missed something (esp. the sed-pattern to convert \\ into /
    may be broken).

  * You should try to build/run the posix-BSP under solaris - I don't
    expect problems, but I am not 100% sure, esp. with regard to ranlib/ar -s.

  * You should consider to convert all make/compilers/*.cfg files into
    make/compilers/*.cfg.in files and let autoconf generate the *.cfg. This
    may help getting rid of some if/then/else statements and help
    hard-coding some defines into those files in future and shouldn't
    disturb now.

  * Not having installed libc.a/libm.a on a host may still break building
    rtems, esp. when using -disable-gcc28 as the gcc27-configuration scheme
    directly accesses libc.a and libm.a. The problem should not appear when
    using gcc28 because it references libc/libm only through -lc and -lm
    which may be static or dynamic (I didn't test this).

  * shgen is not yet included (I didn't yet have enough time to integrate it).

  * I know about a few more configure-probs (esp. cross-checking
    --enable-* flags).
     + warn/refuse to configure when --enable-libcdir and
       --enable-gcc28 are given.
     + force --enable-libcdir when --disable-gcc28 is given

  * Replaced KSHELL with @KSH@ in some shell scripts generated by configure.in.

  * Added a dependency to aclocal/*.m4 in the toplevel Makefile => configure
    and aclocal.m4 will now be rebuild when any aclocal/*.m4 file is changed

  * Some changes to aclocal/gcc-pipe.m4 and aclocal/gcc-specs.m4

  * Replaced i[[3456]]86-unknown-freebsd2.[[12]] with i[[3456]]86-*freebsd2.*
    in configure.in, as I suppose there might exist a variety of valid vendors
    (2nd field of the name-tripple)

  * Disabled override MAKEFLAGS in toplevel Makefile.in - Potential
    side-effects are not really clear to me.

  * In mvme162.cfg, $(LINK_LIBS) is missing in the CC line in gcc28's make-exe
    rule (yet another one I missed to edit). Just append $(LINK_LIBS) to
    the "CC" line, like I hopefully did to ALL other custom/*.cfg files.

  * the problem with mvme162lx.cfg is a follow-up problem of the
    mvme162.cfg-bug.

  * mvme162/console and idp/console had variables named Buffer which
    conflicted with similarly named variables in some tests.
1998-06-27 17:09:47 +00:00