]> rtime.felk.cvut.cz Git - rtems-devel.git/commitdiff
Update of the build and patches to rtems-4.7.1 rtems-4.7.1 origin/rtems-4.7.1
authorPavel Pisa <pisa@cmp.felk.cvut.cz>
Sat, 28 Nov 2009 23:58:16 +0000 (00:58 +0100)
committerPavel Pisa <pisa@cmp.felk.cvut.cz>
Sat, 28 Nov 2009 23:58:16 +0000 (00:58 +0100)
29 files changed:
binutils-patches/2.16.1.0/binutils-2.15-psignal.patch [deleted file]
binutils-patches/2.16.1.0/binutils-bfd-soname-mod.patch [deleted file]
binutils-patches/2.16.1.0/binutils-redefinition-mname.patch [deleted file]
binutils-patches/2.16.1.0/binutils-skip-comments.patch [deleted file]
binutils-patches/2.16.1.0/cross-gprof.patch [deleted file]
binutils-patches/2.16.1.0/series [deleted file]
binutils-patches/2.17/binutils-2.17-rtems4.8-20061021.diff [new file with mode: 0644]
binutils-patches/2.17/series [new file with mode: 0644]
gcc-patches/4.1.2/gcc-core-4.1.2-rtems4.8-20070405.diff [new file with mode: 0644]
gcc-patches/4.1.2/series [new file with mode: 0644]
newlib-patches/1.15.0/newlib-1.15.0-rtems4.8-20070413.diff [new file with mode: 0644]
newlib-patches/1.15.0/series [new file with mode: 0644]
rtems-build/arm-csb336/binutils/binutils-arm9-rtems.cfg [changed mode: 0644->0755]
rtems-build/arm-csb336/binutils/control [new file with mode: 0644]
rtems-build/arm-csb336/gcc/control [new file with mode: 0644]
rtems-build/arm-csb336/gcc/gcc-arm9-rtems.cfg [changed mode: 0644->0755]
rtems-build/arm-csb336/rtems/arm-rtems-sys.cfg [changed mode: 0644->0755]
rtems-build/arm-csb336/rtems/control [new file with mode: 0644]
rtems-build/m68k-m5235bcc/gdb/gdb-m68k-bdm-elf.cfg [changed mode: 0755->0644]
rtems-patches/control [new file with mode: 0644]
rtems-patches/current/rtems-clone-mrm332-to-mo376.patch
rtems-patches/current/rtems-clone-ss555-to-ec555.patch
rtems-patches/current/rtems-mo376-add-to-configs.patch
rtems-patches/current/rtems-mo376-m68376-updates.patch
rtems-patches/current/rtems-readlink-type-fix.patch [new file with mode: 0644]
rtems-patches/current/rtems-update-mrm332-to-mo376.patch
rtems-patches/current/rtems-update-ss555-to-ec555.patch
rtems-patches/current/rtems-usleep-type-fix.patch [new file with mode: 0644]
rtems-patches/current/series

diff --git a/binutils-patches/2.16.1.0/binutils-2.15-psignal.patch b/binutils-patches/2.16.1.0/binutils-2.15-psignal.patch
deleted file mode 100644 (file)
index 98fa600..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-Make psignal prototype in libiberty match that in glibc.
-
-Fixes:
-
-gcc-2.95.3-glibc-2.1.3/binutils-2.15/libiberty/strsignal.c: In function `psignal':
-gcc-2.95.3-glibc-2.1.3/binutils-2.15/libiberty/strsignal.c:563: argument `signo' doesn't match prototype
-/usr/include/signal.h:131: prototype declaration
-gcc-2.95.3-glibc-2.1.3/binutils-2.15/libiberty/strsignal.c:563: argument `message' doesn't match prototype
-/usr/include/signal.h:131: prototype declaration
-gcc-2.95.3-glibc-2.1.3/binutils-2.15/libiberty/strsignal.c:568: warning: comparison between signed and unsigned
-mprotect... make[1]: *** [strsignal.o] Error 1
-make[1]: Leaving directory `/export/hda3/dkegel/queue/jobdir.produser_cpsm17/crosstool-0.32/build/i686-unknown-linux-gnu/gcc-2.95.3-glibc-2.1.3/build-binutils/libiberty'
-make: *** [all-libiberty] Error 2
-
-when building on red hat 7.1
-though it's a bit of a mystery why libiberty's psignal is being compiled at
-all, since red hat 7.1's glibc supports psignal (hence the error message)
-
---- binutils-2.15/libiberty/strsignal.c.old    2005-04-18 13:57:40.000000000 -0700
-+++ binutils-2.15/libiberty/strsignal.c        2005-04-18 13:59:09.000000000 -0700
-@@ -544,7 +544,7 @@
- /*
--@deftypefn Supplemental void psignal (unsigned @var{signo}, char *@var{message})
-+@deftypefn Supplemental void psignal (int @var{signo}, const char *@var{message})
- Print @var{message} to the standard error, followed by a colon,
- followed by the description of the signal specified by @var{signo},
-@@ -557,9 +557,7 @@
- #ifndef HAVE_PSIGNAL
- void
--psignal (signo, message)
--  unsigned signo;
--  char *message;
-+psignal (int signo, const char *message)
- {
-   if (signal_names == NULL)
-     {
diff --git a/binutils-patches/2.16.1.0/binutils-bfd-soname-mod.patch b/binutils-patches/2.16.1.0/binutils-bfd-soname-mod.patch
deleted file mode 100644 (file)
index d3b3e5a..0000000
+++ /dev/null
@@ -1,26 +0,0 @@
-Index: binutils-2.16.1/bfd/configure
-===================================================================
---- binutils-2.16.1.orig/bfd/configure
-+++ binutils-2.16.1/bfd/configure
-@@ -2834,7 +2834,7 @@ fi
- # Define the identity of the package.
-  PACKAGE=bfd
-- VERSION=2.16.1
-+ VERSION=2.16.1.0
- cat >>confdefs.h <<_ACEOF
-Index: binutils-2.16.1/bfd/configure.in
-===================================================================
---- binutils-2.16.1.orig/bfd/configure.in
-+++ binutils-2.16.1/bfd/configure.in
-@@ -8,7 +8,7 @@ AC_CONFIG_SRCDIR([libbfd.c])
- AC_CANONICAL_TARGET
- AC_ISC_POSIX
--AM_INIT_AUTOMAKE(bfd, 2.16.1)
-+AM_INIT_AUTOMAKE(bfd, 2.16.1.0)
- dnl These must be called before AM_PROG_LIBTOOL, because it may want
- dnl to call AC_CHECK_PROG.
diff --git a/binutils-patches/2.16.1.0/binutils-redefinition-mname.patch b/binutils-patches/2.16.1.0/binutils-redefinition-mname.patch
deleted file mode 100644 (file)
index ddef4e6..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: binutils-2.16.1/binutils/dlltool.c
-===================================================================
---- binutils-2.16.1.orig/binutils/dlltool.c
-+++ binutils-2.16.1/binutils/dlltool.c
-@@ -389,7 +389,7 @@ static int verbose;
- static FILE *output_def;
- static FILE *base_file;
--#ifdef DLLTOOL_ARM
-+#if defined(DLLTOOL_ARM) && !defined(DLLTOOL_I386)
- #ifdef DLLTOOL_ARM_EPOC
- static const char *mname = "arm-epoc";
- #else
diff --git a/binutils-patches/2.16.1.0/binutils-skip-comments.patch b/binutils-patches/2.16.1.0/binutils-skip-comments.patch
deleted file mode 100644 (file)
index 0ca9a47..0000000
+++ /dev/null
@@ -1,95 +0,0 @@
-[removed first hunk so it would apply to 2.16.1 - copyright date already updated - dank]
-
-Retrieved from http://sources.redhat.com/ml/binutils/2004-04/msg00646.html
-Fixes
-localealias.s:544: Error: junk at end of line, first unrecognized character is `,' 
-when building glibc-2.3.2 with gcc-3.4.0 and binutils-2.15.90.0.3
-
-Paths adjusted to match crosstool's patcher.
-
-Message-Id: m3n052qw2g.fsf@whitebox.m5r.de
-From: Andreas Schwab <schwab at suse dot de>
-To: Nathan Sidwell <nathan at codesourcery dot com>
-Cc: Ian Lance Taylor <ian at wasabisystems dot com>, binutils at sources dot redhat dot com
-Date: Fri, 23 Apr 2004 22:27:19 +0200
-Subject: Re: demand_empty_rest_of_line and ignore_rest_of_line
-
-Nathan Sidwell <nathan@codesourcery.com> writes:
-
-> Index: read.c
-> ===================================================================
-> RCS file: /cvs/src/src/gas/read.c,v
-> retrieving revision 1.76
-> diff -c -3 -p -r1.76 read.c
-> *** read.c   12 Mar 2004 17:48:12 -0000      1.76
-> --- read.c   18 Mar 2004 09:56:05 -0000
-> *************** read_a_source_file (char *name)
-> *** 1053,1059 ****
->   #endif
->        input_line_pointer--;
->        /* Report unknown char as ignored.  */
-> !      ignore_rest_of_line ();
->      }
->   
->   #ifdef md_after_pass_hook
-> --- 1053,1059 ----
->   #endif
->        input_line_pointer--;
->        /* Report unknown char as ignored.  */
-> !      demand_empty_rest_of_line ();
->      }
->   
->   #ifdef md_after_pass_hook
-
-This means that the unknown character is no longer ignored, despite the
-comment.  As a side effect a line starting with a line comment character
-not followed by APP in NO_APP mode now triggers an error instead of just a
-warning, breaking builds of glibc on m68k-linux.  Earlier in
-read_a_source_file where #APP is handled there is another comment that
-claims that unknown comments are ignored, when in fact they aren't (only
-the initial line comment character is skipped).
-
-Note that the presence of #APP will mess up the line counters, but
-that appears to be difficult to fix.
-
-Andreas.
-
-2004-04-23  Andreas Schwab  <schwab@suse.de>
-
-       * read.c (read_a_source_file): Ignore unknown text after line
-       comment character.  Fix misleading comment.
-
---- binutils/gas/read.c.~1.78.~        2004-04-23 08:58:23.000000000 +0200
-+++ binutils/gas/read.c        2004-04-23 21:49:01.000000000 +0200
-@@ -950,10 +950,14 @@ read_a_source_file (char *name)
-             unsigned int new_length;
-             char *tmp_buf = 0;
--            bump_line_counters ();
-             s = input_line_pointer;
-             if (strncmp (s, "APP\n", 4))
--              continue;       /* We ignore it */
-+              {
-+                /* We ignore it */
-+                ignore_rest_of_line ();
-+                continue;
-+              }
-+            bump_line_counters ();
-             s += 4;
-             sb_new (&sbuf);
-@@ -1052,7 +1056,7 @@ read_a_source_file (char *name)
-           continue;
- #endif
-         input_line_pointer--;
--        /* Report unknown char as ignored.  */
-+        /* Report unknown char as error.  */
-         demand_empty_rest_of_line ();
-       }
-
--- 
-Andreas Schwab, SuSE Labs, schwab@suse.de
-SuSE Linux AG, Maxfeldstra&#xC3;e 5, 90409 N&#xC3;rnberg, Germany
-Key fingerprint = 58CA 54C7 6D53 942B 1756  01D3 44D5 214B 8276 4ED5
-"And now for something completely different."
diff --git a/binutils-patches/2.16.1.0/cross-gprof.patch b/binutils-patches/2.16.1.0/cross-gprof.patch
deleted file mode 100644 (file)
index ea6c18f..0000000
+++ /dev/null
@@ -1,22 +0,0 @@
---- binutils-2.15/configure.old        2004-07-21 21:36:47.000000000 -0700
-+++ binutils-2.15/configure    2004-07-21 21:37:08.000000000 -0700
-@@ -999,7 +999,7 @@
- # Some tools are only suitable for building in a "native" situation.
- # Remove these if host!=target.  
--native_only="autoconf automake libtool fileutils find gawk gettext gzip hello indent m4 rcs recode sed shellutils tar textutils uudecode wdiff gprof target-groff guile perl time ash bash bzip2 prms gnuserv target-gperf"
-+native_only="autoconf automake libtool fileutils find gawk gettext gzip hello indent m4 rcs recode sed shellutils tar textutils uudecode wdiff target-groff guile perl time ash bash bzip2 prms gnuserv target-gperf"
- # Similarly, some are only suitable for cross toolchains.
- # Remove these if host=target.
---- binutils-2.15/configure.in.old     2004-07-21 21:37:19.000000000 -0700
-+++ binutils-2.15/configure.in 2004-07-21 21:37:34.000000000 -0700
-@@ -236,7 +236,7 @@
- # Some tools are only suitable for building in a "native" situation.
- # Remove these if host!=target.  
--native_only="autoconf automake libtool fileutils find gawk gettext gzip hello indent m4 rcs recode sed shellutils tar textutils uudecode wdiff gprof target-groff guile perl time ash bash bzip2 prms gnuserv target-gperf"
-+native_only="autoconf automake libtool fileutils find gawk gettext gzip hello indent m4 rcs recode sed shellutils tar textutils uudecode wdiff target-groff guile perl time ash bash bzip2 prms gnuserv target-gperf"
- # Similarly, some are only suitable for cross toolchains.
- # Remove these if host=target.
diff --git a/binutils-patches/2.16.1.0/series b/binutils-patches/2.16.1.0/series
deleted file mode 100644 (file)
index 33a573f..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-binutils-2.15-psignal.patch
-binutils-skip-comments.patch
-cross-gprof.patch
-binutils-redefinition-mname.patch
-binutils-bfd-soname-mod.patch
diff --git a/binutils-patches/2.17/binutils-2.17-rtems4.8-20061021.diff b/binutils-patches/2.17/binutils-2.17-rtems4.8-20061021.diff
new file mode 100644 (file)
index 0000000..a5b2216
--- /dev/null
@@ -0,0 +1,556 @@
+diff -uNr binutils-2.17.orig/bfd/bfd-in2.h binutils-2.17/bfd/bfd-in2.h
+--- binutils-2.17.orig/bfd/bfd-in2.h   2006-03-26 01:38:42.000000000 +0100
++++ binutils-2.17/bfd/bfd-in2.h        2006-10-21 13:53:23.000000000 +0200
+@@ -643,6 +643,12 @@
+   DYN_NO_NEEDED = 8
+ };
++enum notice_asneeded_action {
++  notice_as_needed,
++  notice_not_needed,
++  notice_needed
++};
++
+ extern bfd_boolean bfd_elf_record_link_assignment
+   (bfd *, struct bfd_link_info *, const char *, bfd_boolean,
+    bfd_boolean);
+diff -uNr binutils-2.17.orig/bfd/bfd-in.h binutils-2.17/bfd/bfd-in.h
+--- binutils-2.17.orig/bfd/bfd-in.h    2006-03-16 13:20:15.000000000 +0100
++++ binutils-2.17/bfd/bfd-in.h 2006-10-21 13:53:23.000000000 +0200
+@@ -636,6 +636,12 @@
+   DYN_NO_NEEDED = 8
+ };
++enum notice_asneeded_action {
++  notice_as_needed,
++  notice_not_needed,
++  notice_needed
++};
++
+ extern bfd_boolean bfd_elf_record_link_assignment
+   (bfd *, struct bfd_link_info *, const char *, bfd_boolean,
+    bfd_boolean);
+diff -uNr binutils-2.17.orig/bfd/ChangeLog binutils-2.17/bfd/ChangeLog
+--- binutils-2.17.orig/bfd/ChangeLog   2006-06-23 20:18:16.000000000 +0200
++++ binutils-2.17/bfd/ChangeLog        2006-10-21 13:53:23.000000000 +0200
+@@ -1,3 +1,25 @@
++2006-08-08  Nick Clifton  <nickc@redhat.com>
++
++      PR binutils/2724
++      * coffcode.h (coff_new_section_hook): Only modify the section
++      symbol of sections which were created by the user.
++
++2006-07-19  Alan Modra  <amodra@bigpond.net.au>
++
++      * bfd-in.h (enum notice_asneeded_action): Define.
++      * bfd-in2.h: Regenerate.
++      * elflink.c (elf_link_add_object_symbols): Call linker "notice"
++      function with NULL name for as-needed handling.
++
++2006-07-12  Matthew R. Dempsky  <mrd@alkemio.org>
++
++      * cpu-m68k.c (bfd_m68k_compatible): Handle CPU32.
++
++2006-06-23  Daniel Jacobowitz  <dan@codesourcery.com>
++
++      * Makefile.am: Clear RELEASE.
++      * Makefile.in: Regenerated.
++
+ 2006-06-23  Daniel Jacobowitz  <dan@codesourcery.com>
+       * configure.in: Update version to 2.17.
+diff -uNr binutils-2.17.orig/bfd/coffcode.h binutils-2.17/bfd/coffcode.h
+--- binutils-2.17.orig/bfd/coffcode.h  2005-10-25 19:40:09.000000000 +0200
++++ binutils-2.17/bfd/coffcode.h       2006-10-21 13:53:24.000000000 +0200
+@@ -1546,9 +1546,6 @@
+ static bfd_boolean
+ coff_new_section_hook (bfd * abfd, asection * section)
+ {
+-  combined_entry_type *native;
+-  bfd_size_type amt;
+-
+   section->alignment_power = COFF_DEFAULT_SECTION_ALIGNMENT_POWER;
+ #ifdef RS6000COFF_C
+@@ -1560,27 +1557,34 @@
+     section->alignment_power = bfd_xcoff_data_align_power (abfd);
+ #endif
+-  /* Allocate aux records for section symbols, to store size and
+-     related info.
+-
+-     @@ The 10 is a guess at a plausible maximum number of aux entries
+-     (but shouldn't be a constant).  */
+-  amt = sizeof (combined_entry_type) * 10;
+-  native = bfd_zalloc (abfd, amt);
+-  if (native == NULL)
+-    return FALSE;
+-
+-  /* We don't need to set up n_name, n_value, or n_scnum in the native
+-     symbol information, since they'll be overridden by the BFD symbol
+-     anyhow.  However, we do need to set the type and storage class,
+-     in case this symbol winds up getting written out.  The value 0
+-     for n_numaux is already correct.  */
+-
+-  native->u.syment.n_type = T_NULL;
+-  native->u.syment.n_sclass = C_STAT;
++  /* PR binutils/2724: Only real sections have a symbol that
++     has the coff_symbol_type structure allocated for it.  */
++  if (! bfd_is_const_section (section))
++    {
++      combined_entry_type *native;
++      bfd_size_type amt;
++
++      /* Allocate aux records for section symbols, to store size and
++       related info.
++
++       @@ The 10 is a guess at a plausible maximum number of aux entries
++       (but shouldn't be a constant).  */
++      amt = sizeof (combined_entry_type) * 10;
++      native = bfd_zalloc (abfd, amt);
++      if (native == NULL)
++      return FALSE;
+-  coffsymbol (section->symbol)->native = native;
++      /* We don't need to set up n_name, n_value, or n_scnum in the native
++       symbol information, since they'll be overridden by the BFD symbol
++       anyhow.  However, we do need to set the type and storage class,
++       in case this symbol winds up getting written out.  The value 0
++       for n_numaux is already correct.  */
++      native->u.syment.n_type = T_NULL;
++      native->u.syment.n_sclass = C_STAT;
++      coffsymbol (section->symbol)->native = native;
++    }
++  
+   coff_set_custom_section_alignment (abfd, section,
+                                    coff_section_alignment_table,
+                                    coff_section_alignment_table_size);
+diff -uNr binutils-2.17.orig/bfd/cpu-m68k.c binutils-2.17/bfd/cpu-m68k.c
+--- binutils-2.17.orig/bfd/cpu-m68k.c  2006-03-25 11:24:27.000000000 +0100
++++ binutils-2.17/bfd/cpu-m68k.c       2006-10-21 13:53:24.000000000 +0200
+@@ -202,6 +202,9 @@
+   if (a->mach <= bfd_mach_m68060 && b->mach <= bfd_mach_m68060)
+     /* Merge m68k machine. */
+     return a->mach > b->mach ? a : b;
++  else if (a->mach == bfd_mach_cpu32 && b->mach == bfd_mach_cpu32)
++    /* CPU32 is compatible with itself. */
++    return a;
+   else if (a->mach >= bfd_mach_mcf_isa_a_nodiv
+          && b->mach >= bfd_mach_mcf_isa_a_nodiv)
+     {
+diff -uNr binutils-2.17.orig/bfd/elflink.c binutils-2.17/bfd/elflink.c
+--- binutils-2.17.orig/bfd/elflink.c   2006-05-22 17:06:36.000000000 +0200
++++ binutils-2.17/bfd/elflink.c        2006-10-21 13:53:24.000000000 +0200
+@@ -3496,6 +3496,13 @@
+       if (alloc_mark == NULL)
+       goto error_free_vers;
++      /* Make a special call to the linker "notice" function to
++       tell it that we are about to handle an as-needed lib.  */
++      if (!(*info->callbacks->notice) (info, NULL, abfd, NULL,
++                                     notice_as_needed))
++      return FALSE;
++
++
+       /* Clone the symbol table and sym hashes.  Remember some
+        pointers into the symbol table, and dynamic symbol count.  */
+       old_hash = (char *) old_tab + tabsize;
+@@ -4169,6 +4176,12 @@
+           }
+       }
++      /* Make a special call to the linker "notice" function to
++       tell it that symbols added for crefs may need to be removed.  */
++      if (!(*info->callbacks->notice) (info, NULL, abfd, NULL,
++                                     notice_not_needed))
++      return FALSE;
++
+       free (old_tab);
+       objalloc_free_block ((struct objalloc *) htab->root.table.memory,
+                          alloc_mark);
+@@ -4179,6 +4192,9 @@
+   if (old_tab != NULL)
+     {
++      if (!(*info->callbacks->notice) (info, NULL, abfd, NULL,
++                                     notice_needed))
++      return FALSE;
+       free (old_tab);
+       old_tab = NULL;
+     }
+diff -uNr binutils-2.17.orig/bfd/version.h binutils-2.17/bfd/version.h
+--- binutils-2.17.orig/bfd/version.h   2006-06-23 20:14:41.000000000 +0200
++++ binutils-2.17/bfd/version.h        2006-10-21 13:53:24.000000000 +0200
+@@ -1,3 +1,3 @@
+-#define BFD_VERSION_DATE 20060623
++#define BFD_VERSION_DATE 20061021
+ #define BFD_VERSION @bfd_version@
+ #define BFD_VERSION_STRING @bfd_version_string@
+diff -uNr binutils-2.17.orig/binutils/ChangeLog binutils-2.17/binutils/ChangeLog
+--- binutils-2.17.orig/binutils/ChangeLog      2006-06-12 15:05:03.000000000 +0200
++++ binutils-2.17/binutils/ChangeLog   2006-10-21 13:53:24.000000000 +0200
+@@ -1,3 +1,8 @@
++2006-08-15  Nick Clifton  <nickc@redhat.com>
++
++      PR binutils/3039
++      * wrstabs.c (stab_tag_type): Initialize 'size'.
++
+ 2006-06-07  Joseph S. Myers  <joseph@codesourcery.com>
+       * po/Make-in (pdf, ps): New dummy targets.
+diff -uNr binutils-2.17.orig/binutils/wrstabs.c binutils-2.17/binutils/wrstabs.c
+--- binutils-2.17.orig/binutils/wrstabs.c      2006-03-16 13:20:16.000000000 +0100
++++ binutils-2.17/binutils/wrstabs.c   2006-10-21 13:53:24.000000000 +0200
+@@ -1869,7 +1869,7 @@
+ {
+   struct stab_write_handle *info = (struct stab_write_handle *) p;
+   long index;
+-  unsigned int size;
++  unsigned int size = 0;
+   index = stab_get_struct_index (info, name, id, kind, &size);
+   if (index < 0)
+diff -uNr binutils-2.17.orig/gas/ChangeLog binutils-2.17/gas/ChangeLog
+--- binutils-2.17.orig/gas/ChangeLog   2006-06-12 15:05:03.000000000 +0200
++++ binutils-2.17/gas/ChangeLog        2006-10-21 13:53:24.000000000 +0200
+@@ -1,3 +1,8 @@
++2006-07-19  Mat Hostetter  <mat@lcs.mit.edu>
++
++      * symbols.c (report_op_error): Fix pasto.  Don't use as_bad_where
++      when file and line unknown.
++
+ 2006-06-07  Joseph S. Myers  <joseph@codesourcery.com>
+       * po/Make-in (pdf, ps): New dummy targets.
+diff -uNr binutils-2.17.orig/gas/symbols.c binutils-2.17/gas/symbols.c
+--- binutils-2.17.orig/gas/symbols.c   2006-01-09 18:14:40.000000000 +0100
++++ binutils-2.17/gas/symbols.c        2006-10-21 13:53:24.000000000 +0200
+@@ -928,13 +928,11 @@
+         && seg_right != undefined_section)
+       {
+         if (right)
+-          as_bad_where (file, line,
+-                        _("invalid sections for operation on `%s' and `%s' setting `%s'"),
+-                        S_GET_NAME (left), S_GET_NAME (right), S_GET_NAME (symp));
++          as_bad (_("invalid sections for operation on `%s' and `%s' setting `%s'"),
++                  S_GET_NAME (left), S_GET_NAME (right), S_GET_NAME (symp));
+         else
+-          as_bad_where (file, line,
+-                        _("invalid section for operation on `%s' setting `%s'"),
+-                        S_GET_NAME (left), S_GET_NAME (symp));
++          as_bad (_("invalid section for operation on `%s' setting `%s'"),
++                  S_GET_NAME (left), S_GET_NAME (symp));
+       }
+     }
+ }
+diff -uNr binutils-2.17.orig/ld/ChangeLog binutils-2.17/ld/ChangeLog
+--- binutils-2.17.orig/ld/ChangeLog    2006-06-12 15:07:28.000000000 +0200
++++ binutils-2.17/ld/ChangeLog 2006-10-21 13:53:24.000000000 +0200
+@@ -1,3 +1,20 @@
++2006-07-19  Alan Modra  <amodra@bigpond.net.au>
++
++      * ld.h (handle_asneeded_cref): Declare.
++      * ldcref.c: Include objalloc.h.
++      (old_table, old_tab, alloc_mark): New variables.
++      (tabsize, entsize, refsize, old_symcount): Likewise.
++      (add_cref): Use bfd_hash_allocate for refs.
++      (handle_asneeded_cref): New function.
++      * ldmain.c (notice): Call handle_asneeded_cref for NULL name.
++
++2006-07-04  Daniel Jacobowitz  <dan@codesourcery.com>
++
++      Backport:
++      2006-05-19  Alan Modra  <amodra@bigpond.net.au>
++      * ldlang.c (lang_size_sections_1): Don't check mem regions for
++      os->ignored sections.
++
+ 2006-06-12  Fred Fish  <fnf@specifix.com>
+       * emulparams/elf32bmip.sh (OTHER_SECTIONS): Keep the
+diff -uNr binutils-2.17.orig/ld/configure.tgt binutils-2.17/ld/configure.tgt
+--- binutils-2.17.orig/ld/configure.tgt        2006-04-05 14:41:57.000000000 +0200
++++ binutils-2.17/ld/configure.tgt     2006-10-21 13:53:24.000000000 +0200
+@@ -83,7 +83,8 @@
+ avr-*-*)              targ_emul=avr2
+                       targ_extra_emuls="avr1 avr3 avr4 avr5"
+                       ;;
+-bfin-*-elf)           targ_emul=elf32bfin; targ_extra_emuls="elf32bfinfd" ;;
++bfin-*-elf | bfin-*-rtems*)
++                      targ_emul=elf32bfin; targ_extra_emuls="elf32bfinfd" ;;
+ bfin-*-uclinux*)      targ_emul=elf32bfin; targ_extra_emuls="elf32bfinfd" ;;
+ cr16c-*-elf*)           targ_emul=elf32cr16c
+                       ;;
+diff -uNr binutils-2.17.orig/ld/emulparams/h8300elf.sh binutils-2.17/ld/emulparams/h8300elf.sh
+--- binutils-2.17.orig/ld/emulparams/h8300elf.sh       2005-12-22 18:43:34.000000000 +0100
++++ binutils-2.17/ld/emulparams/h8300elf.sh    2006-10-21 13:53:24.000000000 +0200
+@@ -17,7 +17,7 @@
+ TINY_DATA_SECTION=".tinydata  0xff8000 :
+   {
+       *(.tinydata)
+-      _tinydata = .;
++      ${RELOCATING+ _tinydata = .; }
+   }"
+ TINY_BSS_SECTION=".tinybss    : AT (_tinydata)
+   {
+diff -uNr binutils-2.17.orig/ld/ldcref.c binutils-2.17/ld/ldcref.c
+--- binutils-2.17.orig/ld/ldcref.c     2006-03-16 13:20:16.000000000 +0100
++++ binutils-2.17/ld/ldcref.c  2006-10-21 13:53:24.000000000 +0200
+@@ -27,6 +27,7 @@
+ #include "sysdep.h"
+ #include "bfdlink.h"
+ #include "libiberty.h"
++#include "objalloc.h"
+ #include "ld.h"
+ #include "ldmain.h"
+@@ -101,6 +102,15 @@
+ static size_t cref_symcount;
++/* Used to take a snapshot of the cref hash table when starting to
++   add syms from an as-needed library.  */
++static struct bfd_hash_entry **old_table;
++static unsigned int old_size;
++static void *old_tab;
++static void *alloc_mark;
++static size_t tabsize, entsize, refsize;
++static size_t old_symcount;
++
+ /* Create an entry in a cref hash table.  */
+ static struct bfd_hash_entry *
+@@ -165,7 +175,9 @@
+   if (r == NULL)
+     {
+-      r = xmalloc (sizeof *r);
++      r = bfd_hash_allocate (&cref_table.root, sizeof *r);
++      if (r == NULL)
++      einfo (_("%X%P: cref alloc failed: %E\n"));
+       r->next = h->refs;
+       h->refs = r;
+       r->abfd = abfd;
+@@ -182,6 +194,123 @@
+     r->def = TRUE;
+ }
++/* Called before loading an as-needed library to take a snapshot of
++   the cref hash table, and after we have loaded or found that the
++   library was not needed.  */
++
++bfd_boolean
++handle_asneeded_cref (bfd *abfd ATTRIBUTE_UNUSED,
++                    enum notice_asneeded_action act)
++{
++  unsigned int i;
++
++  if (!cref_initialized)
++    return TRUE;
++
++  if (act == notice_as_needed)
++    {
++      char *old_ent, *old_ref;
++
++      for (i = 0; i < cref_table.root.size; i++)
++      {
++        struct bfd_hash_entry *p;
++        struct cref_hash_entry *c;
++        struct cref_ref *r;
++
++        for (p = cref_table.root.table[i]; p != NULL; p = p->next)
++          {
++            entsize += cref_table.root.entsize;
++            c = (struct cref_hash_entry *) p;
++            for (r = c->refs; r != NULL; r = r->next)
++              refsize += sizeof (struct cref_hash_entry);
++          }
++      }
++
++      tabsize = cref_table.root.size * sizeof (struct bfd_hash_entry *);
++      old_tab = xmalloc (tabsize + entsize + refsize);
++
++      alloc_mark = bfd_hash_allocate (&cref_table.root, 1);
++      if (alloc_mark == NULL)
++      return FALSE;
++
++      memcpy (old_tab, cref_table.root.table, tabsize);
++      old_ent = (char *) old_tab + tabsize;
++      old_ref = (char *) old_ent + entsize;
++      old_table = cref_table.root.table;
++      old_size = cref_table.root.size;
++      old_symcount = cref_symcount;
++
++      for (i = 0; i < cref_table.root.size; i++)
++      {
++        struct bfd_hash_entry *p;
++        struct cref_hash_entry *c;
++        struct cref_ref *r;
++
++        for (p = cref_table.root.table[i]; p != NULL; p = p->next)
++          {
++            memcpy (old_ent, p, cref_table.root.entsize);
++            old_ent = (char *) old_ent + cref_table.root.entsize;
++            c = (struct cref_hash_entry *) p;
++            for (r = c->refs; r != NULL; r = r->next)
++              {
++                memcpy (old_ref, r, sizeof (struct cref_hash_entry));
++                old_ref = (char *) old_ref + sizeof (struct cref_hash_entry);
++              }
++          }
++      }
++      return TRUE;
++    }
++
++  if (act == notice_not_needed)
++    {
++      char *old_ent, *old_ref;
++
++      if (old_tab == NULL)
++      {
++        /* The only way old_tab can be NULL is if the cref hash table
++           had not been initialised when notice_as_needed.  */
++        bfd_hash_table_free (&cref_table.root);
++        cref_initialized = FALSE;
++        return TRUE;
++      }
++
++      old_ent = (char *) old_tab + tabsize;
++      old_ref = (char *) old_ent + entsize;
++      cref_table.root.table = old_table;
++      cref_table.root.size = old_size;
++      memcpy (cref_table.root.table, old_tab, tabsize);
++      cref_symcount = old_symcount;
++
++      for (i = 0; i < cref_table.root.size; i++)
++      {
++        struct bfd_hash_entry *p;
++        struct cref_hash_entry *c;
++        struct cref_ref *r;
++
++        for (p = cref_table.root.table[i]; p != NULL; p = p->next)
++          {
++            memcpy (p, old_ent, cref_table.root.entsize);
++            old_ent = (char *) old_ent + cref_table.root.entsize;
++            c = (struct cref_hash_entry *) p;
++            for (r = c->refs; r != NULL; r = r->next)
++              {
++                memcpy (r, old_ref, sizeof (struct cref_hash_entry));
++                old_ref = (char *) old_ref + sizeof (struct cref_hash_entry);
++              }
++          }
++      }
++
++      objalloc_free_block ((struct objalloc *) cref_table.root.memory,
++                         alloc_mark);
++    }
++  else if (act != notice_needed)
++    return FALSE;
++
++  free (old_tab);
++  old_tab = NULL;
++  return TRUE;
++}
++
+ /* Copy the addresses of the hash table entries into an array.  This
+    is called via cref_hash_traverse.  We also fill in the demangled
+    name.  */
+diff -uNr binutils-2.17.orig/ld/ld.h binutils-2.17/ld/ld.h
+--- binutils-2.17.orig/ld/ld.h 2005-09-30 13:42:04.000000000 +0200
++++ binutils-2.17/ld/ld.h      2006-10-21 13:53:24.000000000 +0200
+@@ -1,6 +1,6 @@
+ /* ld.h -- general linker header file
+    Copyright 1991, 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
+-   2001, 2002, 2003, 2004, 2005
++   2001, 2002, 2003, 2004, 2005, 2006
+    Free Software Foundation, Inc.
+    This file is part of GLD, the Gnu Linker.
+@@ -282,6 +282,7 @@
+ extern int yyparse (void);
+ extern void add_cref (const char *, bfd *, asection *, bfd_vma);
++extern bfd_boolean handle_asneeded_cref (bfd *, enum notice_asneeded_action);
+ extern void output_cref (FILE *);
+ extern void check_nocrossrefs (void);
+ extern void ld_abort (const char *, int, const char *) ATTRIBUTE_NORETURN;
+diff -uNr binutils-2.17.orig/ld/ldlang.c binutils-2.17/ld/ldlang.c
+--- binutils-2.17.orig/ld/ldlang.c     2006-06-12 15:05:04.000000000 +0200
++++ binutils-2.17/ld/ldlang.c  2006-10-21 13:53:24.000000000 +0200
+@@ -4207,7 +4207,8 @@
+                   /* If a loadable section is using the default memory
+                      region, and some non default memory regions were
+                      defined, issue an error message.  */
+-                  if (!IGNORE_SECTION (os->bfd_section)
++                  if (!os->ignored
++                      && !IGNORE_SECTION (os->bfd_section)
+                       && ! link_info.relocatable
+                       && check_regions
+                       && strcmp (os->region->name,
+diff -uNr binutils-2.17.orig/ld/ldmain.c binutils-2.17/ld/ldmain.c
+--- binutils-2.17.orig/ld/ldmain.c     2006-04-06 20:52:45.000000000 +0200
++++ binutils-2.17/ld/ldmain.c  2006-10-21 13:53:24.000000000 +0200
+@@ -1511,6 +1511,13 @@
+       asection *section,
+       bfd_vma value)
+ {
++  if (name == NULL)
++    {
++      if (command_line.cref || nocrossref_list != NULL)
++      return handle_asneeded_cref (abfd, value);
++      return TRUE;
++    }
++
+   if (! info->notice_all
+       || (info->notice_hash != NULL
+         && bfd_hash_lookup (info->notice_hash, name, FALSE, FALSE) != NULL))
+diff -uNr binutils-2.17.orig/ld/testsuite/ChangeLog binutils-2.17/ld/testsuite/ChangeLog
+--- binutils-2.17.orig/ld/testsuite/ChangeLog  2006-06-12 15:44:33.000000000 +0200
++++ binutils-2.17/ld/testsuite/ChangeLog       2006-10-21 13:53:24.000000000 +0200
+@@ -1,3 +1,17 @@
++2006-07-12  Richard Sandiford  <richard@codesourcery.com>
++
++      * ld-m68k/merge-ok-1c.d: New test.
++      * ld-m68k/m68k.exp: Run it.
++
++2006-07-04  Daniel Jacobowitz  <dan@codesourcery.com>
++
++      Backport:
++      2006-05-19  Alan Modra  <amodra@bigpond.net.au>
++      * ld-scripts/empty-orphan.d: Update again.
++
++      * ld-scripts/empty-orphan.t: Discard .reginfo.
++      * ld-scripts/empty-orphan.d: Update.
++
+ 2006-06-12  Daniel Jacobowitz  <dan@codesourcery.com>
+       Backport:
+diff -uNr binutils-2.17.orig/ld/testsuite/ld-m68k/m68k.exp binutils-2.17/ld/testsuite/ld-m68k/m68k.exp
+--- binutils-2.17.orig/ld/testsuite/ld-m68k/m68k.exp   2006-03-25 11:24:27.000000000 +0100
++++ binutils-2.17/ld/testsuite/ld-m68k/m68k.exp        2006-10-21 13:53:24.000000000 +0200
+@@ -53,3 +53,4 @@
+ run_dump_test "merge-error-1e"
+ run_dump_test "merge-ok-1a"
+ run_dump_test "merge-ok-1b"
++run_dump_test "merge-ok-1c"
+diff -uNr binutils-2.17.orig/ld/testsuite/ld-scripts/empty-orphan.d binutils-2.17/ld/testsuite/ld-scripts/empty-orphan.d
+--- binutils-2.17.orig/ld/testsuite/ld-scripts/empty-orphan.d  2005-03-17 17:20:39.000000000 +0100
++++ binutils-2.17/ld/testsuite/ld-scripts/empty-orphan.d       2006-10-21 13:53:24.000000000 +0200
+@@ -1,3 +1,6 @@
+ #source: empty-orphan.s
+ #ld: -T empty-orphan.t
+-#error: no memory region specified for loadable section
++#readelf: -l --wide
++#...
++ +LOAD +[x0-9a-f]+ [x0]+70000000 [x0]+70000000 [x0]+(2|4|8|10|20|40|80) .*
++#pass
+diff -uNr binutils-2.17.orig/ld/testsuite/ld-scripts/empty-orphan.t binutils-2.17/ld/testsuite/ld-scripts/empty-orphan.t
+--- binutils-2.17.orig/ld/testsuite/ld-scripts/empty-orphan.t  2005-03-17 17:20:39.000000000 +0100
++++ binutils-2.17/ld/testsuite/ld-scripts/empty-orphan.t       2006-10-21 13:53:24.000000000 +0200
+@@ -17,5 +17,6 @@
+    .text : { *(.text) } > text_mem : text_phdr
+    .data : { *(.data) } > data_mem : data_phdr
+    .bss : { *(.bss) } > data_mem : data_phdr
++   /DISCARD/ : { *(.reginfo) }
+    /* .orphan_data is an orphan */
+ }
diff --git a/binutils-patches/2.17/series b/binutils-patches/2.17/series
new file mode 100644 (file)
index 0000000..a3ba899
--- /dev/null
@@ -0,0 +1 @@
+binutils-2.17-rtems4.8-20061021.diff
diff --git a/gcc-patches/4.1.2/gcc-core-4.1.2-rtems4.8-20070405.diff b/gcc-patches/4.1.2/gcc-core-4.1.2-rtems4.8-20070405.diff
new file mode 100644 (file)
index 0000000..f9de16d
--- /dev/null
@@ -0,0 +1,102 @@
+diff -uNr gcc-4.1.2.orig/gcc/config/arm/rtems-elf.h gcc-4.1.2/gcc/config/arm/rtems-elf.h
+--- gcc-4.1.2.orig/gcc/config/arm/rtems-elf.h  2005-11-22 00:28:29.000000000 +0100
++++ gcc-4.1.2/gcc/config/arm/rtems-elf.h       2007-04-05 04:50:02.000000000 +0200
+@@ -27,6 +27,7 @@
+ #define TARGET_OS_CPP_BUILTINS()              \
+     do {                                      \
+       builtin_define ("__rtems__");           \
++      builtin_define ("__USE_INIT_FINI__");   \
+       builtin_assert ("system=rtems");        \
+     } while (0)
+diff -uNr gcc-4.1.2.orig/gcc/config/c4x/rtems.h gcc-4.1.2/gcc/config/c4x/rtems.h
+--- gcc-4.1.2.orig/gcc/config/c4x/rtems.h      2005-06-25 03:22:41.000000000 +0200
++++ gcc-4.1.2/gcc/config/c4x/rtems.h   2007-04-05 04:50:02.000000000 +0200
+@@ -24,6 +24,5 @@
+ #define TARGET_OS_CPP_BUILTINS()              \
+     do {                                      \
+       builtin_define ("__rtems__");           \
+-      builtin_define ("__USE_INIT_FINI__");   \
+       builtin_assert ("system=rtems");        \
+     } while (0)
+diff -uNr gcc-4.1.2.orig/gcc/config/mips/elf.h gcc-4.1.2/gcc/config/mips/elf.h
+--- gcc-4.1.2.orig/gcc/config/mips/elf.h       2005-07-09 10:46:34.000000000 +0200
++++ gcc-4.1.2/gcc/config/mips/elf.h    2007-04-05 04:50:03.000000000 +0200
+@@ -48,5 +48,3 @@
+ #undef  ENDFILE_SPEC
+ #define ENDFILE_SPEC "crtend%O%s crtn%O%s"
+-
+-#define NO_IMPLICIT_EXTERN_C 1
+diff -uNr gcc-4.1.2.orig/gcc/config/mips/mips.h gcc-4.1.2/gcc/config/mips/mips.h
+--- gcc-4.1.2.orig/gcc/config/mips/mips.h      2006-02-17 22:38:59.000000000 +0100
++++ gcc-4.1.2/gcc/config/mips/mips.h   2007-04-05 04:49:10.000000000 +0200
+@@ -450,6 +450,8 @@
+ #endif
+ #endif /* IN_LIBGCC2 */
++#define TARGET_LIBGCC_SDATA_SECTION ".sdata"
++
+ #ifndef MULTILIB_ENDIAN_DEFAULT
+ #if TARGET_ENDIAN_DEFAULT == 0
+ #define MULTILIB_ENDIAN_DEFAULT "EL"
+@@ -2712,7 +2714,6 @@
+ /* Define the strings to put out for each section in the object file.  */
+ #define TEXT_SECTION_ASM_OP   "\t.text"       /* instructions */
+ #define DATA_SECTION_ASM_OP   "\t.data"       /* large data */
+-#define SDATA_SECTION_ASM_OP  "\t.sdata"      /* small data */
+ #undef READONLY_DATA_SECTION_ASM_OP
+ #define READONLY_DATA_SECTION_ASM_OP  "\t.rdata"      /* read-only data */
+diff -uNr gcc-4.1.2.orig/gcc/config.gcc gcc-4.1.2/gcc/config.gcc
+--- gcc-4.1.2.orig/gcc/config.gcc      2006-10-16 01:12:23.000000000 +0200
++++ gcc-4.1.2/gcc/config.gcc   2007-04-05 04:50:03.000000000 +0200
+@@ -761,6 +761,11 @@
+         tmake_file=bfin/t-bfin-elf
+         use_collect2=no
+         ;;
++bfin*-rtems*)
++      tm_file="${tm_file} dbxelf.h elfos.h bfin/elf.h bfin/rtems.h rtems.h"
++        tmake_file=bfin/t-bfin-elf
++        use_collect2=no
++        ;;
+ bfin*-*)
+       tm_file="${tm_file} dbxelf.h elfos.h bfin/elf.h"
+         tmake_file=bfin/t-bfin
+@@ -1560,7 +1565,7 @@
+       tm_defines="MIPS_ISA_DEFAULT=3 MIPS_ABI_DEFAULT=ABI_O64"
+       use_fixproto=yes
+       ;;
+-mips*-*-rtems*)
++mips-*-rtems*)
+       tm_file="elfos.h ${tm_file} mips/elf.h mips/rtems.h rtems.h"
+       tmake_file="mips/t-elf t-rtems mips/t-rtems"
+       ;;
+diff -uNr gcc-4.1.2.orig/gcc/crtstuff.c gcc-4.1.2/gcc/crtstuff.c
+--- gcc-4.1.2.orig/gcc/crtstuff.c      2005-11-15 02:21:29.000000000 +0100
++++ gcc-4.1.2/gcc/crtstuff.c   2007-04-05 04:49:10.000000000 +0200
+@@ -225,6 +225,9 @@
+    in one DSO or the main program is not used in another object.  The
+    dynamic linker takes care of this.  */
++#ifdef TARGET_LIBGCC_SDATA_SECTION
++extern void *__dso_handle __attribute__ ((__section__ (TARGET_LIBGCC_SDATA_SECTION)));
++#endif
+ #ifdef HAVE_GAS_HIDDEN
+ extern void *__dso_handle __attribute__ ((__visibility__ ("hidden")));
+ #endif
+diff -uNr gcc-4.1.2.orig/Makefile.in gcc-4.1.2/Makefile.in
+--- gcc-4.1.2.orig/Makefile.in 2006-04-04 23:03:05.000000000 +0200
++++ gcc-4.1.2/Makefile.in      2007-04-05 04:50:03.000000000 +0200
+@@ -329,9 +329,9 @@
+ # CFLAGS will be just -g.  We want to ensure that TARGET libraries
+ # (which we know are built with gcc) are built with optimizations so
+ # prepend -O2 when setting CFLAGS_FOR_TARGET.
+-CFLAGS_FOR_TARGET = -O2 $(CFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET)
++CFLAGS_FOR_TARGET = $(strip -O2 $(CFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET))
+ SYSROOT_CFLAGS_FOR_TARGET = @SYSROOT_CFLAGS_FOR_TARGET@
+-CXXFLAGS_FOR_TARGET = $(CXXFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET)
++CXXFLAGS_FOR_TARGET = $(strip $(CXXFLAGS) $(SYSROOT_CFLAGS_FOR_TARGET))
+ LIBCFLAGS_FOR_TARGET = $(CFLAGS_FOR_TARGET)
+ LIBCXXFLAGS_FOR_TARGET = $(CXXFLAGS_FOR_TARGET) -fno-implicit-templates
+ LDFLAGS_FOR_TARGET = 
diff --git a/gcc-patches/4.1.2/series b/gcc-patches/4.1.2/series
new file mode 100644 (file)
index 0000000..f54fce9
--- /dev/null
@@ -0,0 +1 @@
+gcc-core-4.1.2-rtems4.8-20070405.diff
diff --git a/newlib-patches/1.15.0/newlib-1.15.0-rtems4.8-20070413.diff b/newlib-patches/1.15.0/newlib-1.15.0-rtems4.8-20070413.diff
new file mode 100644 (file)
index 0000000..853e2b1
--- /dev/null
@@ -0,0 +1,1449 @@
+diff -uNr newlib-1.15.0.orig/newlib/libc/include/inttypes.h newlib-1.15.0/newlib/libc/include/inttypes.h
+--- newlib-1.15.0.orig/newlib/libc/include/inttypes.h  2005-12-16 20:03:12.000000000 +0100
++++ newlib-1.15.0/newlib/libc/include/inttypes.h       2007-04-13 10:41:47.000000000 +0200
+@@ -242,9 +242,12 @@
+ #define SCNxMAX               __SCNMAX(x)
+ /* ptr types */
+-#if __have_longlong64
+-#define __PRIPTR(x) __STRINGIFY(ll##x)
+-#define __SCNPTR(x) __STRINGIFY(ll##x)
++#if __ptrint_t_long_defined
++#define __PRIPTR(x) __STRINGIFY(l##x)
++#define __SCNPTR(x) __STRINGIFY(l##x)
++#elif __ptrint_t_int_defined
++#define __PRIPTR(x) __STRINGIFY(x)
++#define __SCNPTR(x) __STRINGIFY(x)
+ #elif __have_long64
+ #define __PRIPTR(x) __STRINGIFY(l##x)
+ #define __SCNPTR(x) __STRINGIFY(l##x)
+diff -uNr newlib-1.15.0.orig/newlib/libc/include/machine/setjmp.h newlib-1.15.0/newlib/libc/include/machine/setjmp.h
+--- newlib-1.15.0.orig/newlib/libc/include/machine/setjmp.h    2006-12-18 17:48:03.000000000 +0100
++++ newlib-1.15.0/newlib/libc/include/machine/setjmp.h 2007-04-13 10:41:47.000000000 +0200
+@@ -27,7 +27,7 @@
+ /* necv70 was 9 as well. */
+-#ifdef __mc68000__
++#if defined(__m68k__) || defined(__mc68000__)
+ /*
+  * onsstack,sigmask,sp,pc,psl,d2-d7,a2-a6,
+  * fp2-fp7    for 68881.
+diff -uNr newlib-1.15.0.orig/newlib/libc/include/stdint.h newlib-1.15.0/newlib/libc/include/stdint.h
+--- newlib-1.15.0.orig/newlib/libc/include/stdint.h    2006-08-16 23:39:43.000000000 +0200
++++ newlib-1.15.0/newlib/libc/include/stdint.h 2007-04-13 10:41:47.000000000 +0200
+@@ -393,6 +393,9 @@
+ #define UINTMAX_C(x)  x##UL
+ #endif
++#ifdef __rtems__
++#include <machine/stdint.h>
++#endif
+ #ifdef __cplusplus
+ }
+diff -uNr newlib-1.15.0.orig/newlib/libc/include/sys/errno.h newlib-1.15.0/newlib/libc/include/sys/errno.h
+--- newlib-1.15.0.orig/newlib/libc/include/sys/errno.h 2002-09-24 16:10:12.000000000 +0200
++++ newlib-1.15.0/newlib/libc/include/sys/errno.h      2007-04-13 10:41:47.000000000 +0200
+@@ -148,6 +148,7 @@
+ #define ECASECLASH 137  /* Filename exists with different case */
+ #define EILSEQ 138
+ #define EOVERFLOW 139 /* Value too large for defined data type */
++#define ECANCELED 140 /* Operation canceled. */
+ /* From cygwin32.  */
+ #define EWOULDBLOCK EAGAIN    /* Operation would block */
+diff -uNr newlib-1.15.0.orig/newlib/libc/include/sys/features.h newlib-1.15.0/newlib/libc/include/sys/features.h
+--- newlib-1.15.0.orig/newlib/libc/include/sys/features.h      2006-09-14 00:09:27.000000000 +0200
++++ newlib-1.15.0/newlib/libc/include/sys/features.h   2007-04-13 10:41:47.000000000 +0200
+@@ -38,6 +38,7 @@
+ #define _POSIX_MEMLOCK_RANGE          1
+ #define _POSIX_MEMORY_PROTECTION      1
+ #define _POSIX_MESSAGE_PASSING                1
++#define _POSIX_MONOTONIC_CLOCK                200112L
+ #define _POSIX_PRIORITIZED_IO         1
+ #define _POSIX_PRIORITY_SCHEDULING    1
+ #define _POSIX_REALTIME_SIGNALS               1
+@@ -81,17 +82,89 @@
+ #endif
+ #ifdef __CYGWIN__
+-# define _POSIX_JOB_CONTROL                   1
+-# define _POSIX_SAVED_IDS                     0
+-# define _POSIX_VERSION                               199009L
+-# define _POSIX_THREADS                         1
+-# define _POSIX_THREAD_PROCESS_SHARED           1
+-# define _POSIX_THREAD_SAFE_FUNCTIONS           1
+-# define _POSIX_THREAD_PRIORITY_SCHEDULING      1
+-# define _POSIX_THREAD_ATTR_STACKSIZE           1
+-# define _POSIX_SEMAPHORES                      1
+-# define _POSIX_TIMERS                                1
+-# define _POSIX_MEMLOCK_RANGE                 1
++#define _POSIX_VERSION                                200112L
++#define _POSIX2_VERSION                               200112L
++#define _XOPEN_VERSION                                   600
++
++#define _POSIX_ADVISORY_INFO                  200112L
++/* #define _POSIX_ASYNCHRONOUS_IO                 -1 */
++/* #define _POSIX_BARRIERS                        -1 */
++#define _POSIX_CHOWN_RESTRICTED                            1
++/* #define _POSIX_CLOCK_SELECTION                 -1 */
++/* #define _POSIX_CPUTIME                         -1 */
++#define _POSIX_FSYNC                          200112L
++#define _POSIX_IPV6                           200112L
++#define _POSIX_JOB_CONTROL                         1
++#define _POSIX_MAPPED_FILES                   200112L
++/* #define _POSIX_MEMLOCK                         -1 */
++#define _POSIX_MEMLOCK_RANGE                  200112L
++#define _POSIX_MEMORY_PROTECTION              200112L
++/* #define _POSIX_MESSAGE_PASSING                 -1 */
++/* #define _POSIX_MONOTONIC_CLOCK                 -1 */
++#define _POSIX_NO_TRUNC                                    1
++/* #define _POSIX_PRIORITIZED_IO                  -1 */
++#define _POSIX_PRIORITY_SCHEDULING            200112L
++#define _POSIX_RAW_SOCKETS                    200112L
++#define _POSIX_READER_WRITER_LOCKS            200112L
++#define _POSIX_REALTIME_SIGNALS                       200112L
++#define _POSIX_REGEXP                              1
++#define _POSIX_SAVED_IDS                           1
++#define _POSIX_SEMAPHORES                          1
++/* #define _POSIX_SHARED_MEMORY_OBJECTS                   -1 */
++#define _POSIX_SHELL                               1
++/* #define _POSIX_SPAWN                                   -1 */
++/* #define _POSIX_SPIN_LOCKS                      -1 */
++/* #define _POSIX_SPORADIC_SERVER                 -1 */
++#define _POSIX_SYNCHRONIZED_IO                        200112L
++/* #define _POSIX_THREAD_ATTR_STACKADDR                   -1 */
++#define _POSIX_THREAD_ATTR_STACKSIZE  200112L
++/* #define _POSIX_THREAD_CPUTIME                  -1 */
++/* #define _POSIX_THREAD_PRIO_INHERIT             -1 */
++/* #define _POSIX_THREAD_PRIO_PROTECT             -1 */
++#define _POSIX_THREAD_PRIORITY_SCHEDULING     200112L
++#define _POSIX_THREAD_PROCESS_SHARED          200112L
++#define _POSIX_THREAD_SAFE_FUNCTIONS          200112L
++/* #define _POSIX_THREAD_SPORADIC_SERVER          -1 */
++#define _POSIX_THREADS                                200112L
++/* #define _POSIX_TIMEOUTS                        -1 */
++#define _POSIX_TIMERS                              1
++/* #define _POSIX_TRACE                                   -1 */
++/* #define _POSIX_TRACE_EVENT_FILTER              -1 */
++/* #define _POSIX_TRACE_INHERIT                           -1 */
++/* #define _POSIX_TRACE_LOG                       -1 */
++/* #define _POSIX_TYPED_MEMORY_OBJECTS                    -1 */
++#define _POSIX_VDISABLE                                  '\0'
++#define _POSIX2_C_BIND                                200112L
++#define _POSIX2_C_DEV                         200112L
++#define _POSIX2_CHAR_TERM                     200112L
++/* #define _POSIX2_FORT_DEV                       -1 */
++/* #define _POSIX2_FORT_RUN                       -1 */
++/* #define _POSIX2_LOCALEDEF                      -1 */
++/* #define _POSIX2_PBS                                    -1 */
++/* #define _POSIX2_PBS_ACCOUNTING                 -1 */
++/* #define _POSIX2_PBS_CHECKPOINT                 -1 */
++/* #define _POSIX2_PBS_LOCATE                     -1 */
++/* #define _POSIX2_PBS_MESSAGE                            -1 */
++/* #define _POSIX2_PBS_TRACK                      -1 */
++#define _POSIX2_SW_DEV                                200112L
++#define _POSIX2_UPE                           200112L
++/* #define _POSIX_V6_ILP32_OFF32                  -1 */
++#define _XBS5_ILP32_OFF32                     _POSIX_V6_ILP32_OFF32
++#define _POSIX_V6_ILP32_OFFBIG                             1
++#define _XBS5_ILP32_OFFBIG                    _POSIX_V6_ILP32_OFFBIG
++/* #define _POSIX_V6_LP64_OFF64                           -1 */
++#define _XBS5_LP64_OFF64                      _POSIX_V6_LP64_OFF64
++/* #define _POSIX_V6_LPBIG_OFFBIG                 -1 */
++#define _XBS5_LPBIG_OFFBIG                    _POSIX_V6_LPBIG_OFFBIG
++#define _XOPEN_CRYPT                               1
++#define _XOPEN_ENH_I18N                                    1
++/* #define _XOPEN_LEGACY                          -1 */
++/* #define _XOPEN_REALTIME                        -1 */
++/* #define _XOPEN_REALTIME_THREADS                -1 */
++#define _XOPEN_SHM                                 1
++/* #define _XOPEN_STREAMS                         -1 */
++/* #define _XOPEN_UNIX                                    -1 */
++
+ #endif
+ #ifdef __cplusplus
+diff -uNr newlib-1.15.0.orig/newlib/libc/include/sys/_types.h newlib-1.15.0/newlib/libc/include/sys/_types.h
+--- newlib-1.15.0.orig/newlib/libc/include/sys/_types.h        2004-06-11 22:37:09.000000000 +0200
++++ newlib-1.15.0/newlib/libc/include/sys/_types.h     2007-04-13 10:41:47.000000000 +0200
+@@ -39,4 +39,7 @@
+ /* Iconv descriptor type */
+ typedef void *_iconv_t;
++typedef long * __intptr_t;
++typedef unsigned long* __uintptr_t;
++
+ #endif        /* _SYS__TYPES_H */
+diff -uNr newlib-1.15.0.orig/newlib/libc/include/sys/unistd.h newlib-1.15.0/newlib/libc/include/sys/unistd.h
+--- newlib-1.15.0.orig/newlib/libc/include/sys/unistd.h        2006-11-07 16:33:40.000000000 +0100
++++ newlib-1.15.0/newlib/libc/include/sys/unistd.h     2007-04-13 10:41:47.000000000 +0200
+@@ -200,7 +200,7 @@
+ int   _EXFUN(getdtablesize, (void));
+ int   _EXFUN(setdtablesize, (int));
+ useconds_t _EXFUN(ualarm, (useconds_t __useconds, useconds_t __interval));
+-unsigned _EXFUN(usleep, (unsigned int __useconds));
++int _EXFUN(usleep, (useconds_t __useconds));
+ #if !(defined  (_WINSOCK_H) || defined (__USE_W32_SOCKETS))
+ /* winsock[2].h defines as __stdcall, and with int as 2nd arg */
+  int  _EXFUN(gethostname, (char *__name, size_t __len));
+@@ -212,7 +212,7 @@
+ int     _EXFUN(sync, (void));
+ #endif
+ #endif
+-int     _EXFUN(readlink, (const char *__path, char *__buf, int __buflen));
++ssize_t _EXFUN(readlink, (const char *__path, char *__buf, size_t __buflen));
+ int     _EXFUN(symlink, (const char *__name1, const char *__name2));
+ #define       F_OK    0
+@@ -231,63 +231,55 @@
+ #define STDERR_FILENO   2       /* standard error file descriptor */
+ /*
+- *  4.8.1 Get Configurable System Variables, P1003.1b-1993, p. 96
+- *
+- *  NOTE: Table 4-2, Configurable System Variables, p. 96
+- */
+-
+-#define _SC_ARG_MAX                 0
+-#define _SC_CHILD_MAX               1
+-#define _SC_CLK_TCK                 2
+-#define _SC_NGROUPS_MAX             3
+-#define _SC_OPEN_MAX                4
+-  /* no _SC_STREAM_MAX */
+-#define _SC_JOB_CONTROL             5
+-#define _SC_SAVED_IDS               6
+-#define _SC_VERSION                 7
+-#define _SC_PAGESIZE                8
+-/* CYGWIN-specific values .. do not touch */
+-#define _SC_NPROCESSORS_CONF        9
+-#define _SC_NPROCESSORS_ONLN       10
+-#define _SC_PHYS_PAGES             11
+-#define _SC_AVPHYS_PAGES           12
+-/* end of CYGWIN-specific values */
+-#define _SC_MQ_OPEN_MAX            13
+-#define _SC_MQ_PRIO_MAX            14
+-#define _SC_RTSIG_MAX              15
+-#define _SC_SEM_NSEMS_MAX          16
+-#define _SC_SEM_VALUE_MAX          17
+-#define _SC_SIGQUEUE_MAX           18
+-#define _SC_TIMER_MAX              19
+-#define _SC_TZNAME_MAX             20
+-
+-#define _SC_ASYNCHRONOUS_IO        21
+-#define _SC_FSYNC                  22
+-#define _SC_MAPPED_FILES           23
+-#define _SC_MEMLOCK                24
+-#define _SC_MEMLOCK_RANGE          25
+-#define _SC_MEMORY_PROTECTION      26
+-#define _SC_MESSAGE_PASSING        27
+-#define _SC_PRIORITIZED_IO         28
+-#define _SC_REALTIME_SIGNALS       29
+-#define _SC_SEMAPHORES             30
+-#define _SC_SHARED_MEMORY_OBJECTS  31
+-#define _SC_SYNCHRONIZED_IO        32
+-#define _SC_TIMERS                 33
+-#define _SC_AIO_LISTIO_MAX         34
+-#define _SC_AIO_MAX                35
+-#define _SC_AIO_PRIO_DELTA_MAX     36
+-#define _SC_DELAYTIMER_MAX         37
+-
+-/*
+- *  P1003.1c/D10, p. 52 adds the following.
++ *  sysconf values per IEEE Std 1003.1, 2004 Edition
+  */
++#define _SC_ARG_MAX                       0
++#define _SC_CHILD_MAX                     1
++#define _SC_CLK_TCK                       2
++#define _SC_NGROUPS_MAX                   3
++#define _SC_OPEN_MAX                      4
++#define _SC_JOB_CONTROL                   5
++#define _SC_SAVED_IDS                     6
++#define _SC_VERSION                       7
++#define _SC_PAGESIZE                      8
++#define _SC_PAGE_SIZE                     _SC_PAGESIZE
++/* These are non-POSIX values we accidentally introduced in 2000 without
++   guarding them.  Keeping them unguarded for backward compatibility. */
++#define _SC_NPROCESSORS_CONF              9
++#define _SC_NPROCESSORS_ONLN             10
++#define _SC_PHYS_PAGES                   11
++#define _SC_AVPHYS_PAGES                 12
++/* End of non-POSIX values. */
++#define _SC_MQ_OPEN_MAX                  13
++#define _SC_MQ_PRIO_MAX                  14
++#define _SC_RTSIG_MAX                    15
++#define _SC_SEM_NSEMS_MAX                16
++#define _SC_SEM_VALUE_MAX                17
++#define _SC_SIGQUEUE_MAX                 18
++#define _SC_TIMER_MAX                    19
++#define _SC_TZNAME_MAX                   20
++#define _SC_ASYNCHRONOUS_IO              21
++#define _SC_FSYNC                        22
++#define _SC_MAPPED_FILES                 23
++#define _SC_MEMLOCK                      24
++#define _SC_MEMLOCK_RANGE                25
++#define _SC_MEMORY_PROTECTION            26
++#define _SC_MESSAGE_PASSING              27
++#define _SC_PRIORITIZED_IO               28
++#define _SC_REALTIME_SIGNALS             29
++#define _SC_SEMAPHORES                   30
++#define _SC_SHARED_MEMORY_OBJECTS        31
++#define _SC_SYNCHRONIZED_IO              32
++#define _SC_TIMERS                       33
++#define _SC_AIO_LISTIO_MAX               34
++#define _SC_AIO_MAX                      35
++#define _SC_AIO_PRIO_DELTA_MAX           36
++#define _SC_DELAYTIMER_MAX               37
+ #define _SC_THREAD_KEYS_MAX              38
+ #define _SC_THREAD_STACK_MIN             39
+ #define _SC_THREAD_THREADS_MAX           40
+ #define _SC_TTY_NAME_MAX                 41
+-
+ #define _SC_THREADS                      42
+ #define _SC_THREAD_ATTR_STACKADDR        43
+ #define _SC_THREAD_ATTR_STACKSIZE        44
+@@ -302,34 +294,99 @@
+ #define _SC_GETPW_R_SIZE_MAX             51
+ #define _SC_LOGIN_NAME_MAX               52
+ #define _SC_THREAD_DESTRUCTOR_ITERATIONS 53
+-
+-#if !defined(__rtems__)
+-#define _SC_STREAM_MAX                        100
+-#endif
+-#if !defined(__CYGWIN__) && !defined(__rtems__)
+-#define _SC_PRIORITY_SCHEDULING               101
+-#endif
+-  
+-# define      _PC_LINK_MAX            0
+-# define      _PC_MAX_CANON           1
+-# define      _PC_MAX_INPUT           2
+-# define      _PC_NAME_MAX            3
+-# define      _PC_PATH_MAX            4
+-# define      _PC_PIPE_BUF            5
+-# define      _PC_CHOWN_RESTRICTED    6
+-# define      _PC_NO_TRUNC            7
+-# define      _PC_VDISABLE            8
+-# define      _PC_ASYNC_IO            9
+-# define      _PC_PRIO_IO            10
+-# define      _PC_SYNC_IO            11
+-# define      _PC_FILESIZEBITS       12
+-# define      _PC_2_SYMLINKS         13
+-# define      _PC_SYMLINK_MAX        14
++#define _SC_ADVISORY_INFO                54
++#define _SC_ATEXIT_MAX                   55
++#define _SC_BARRIERS                     56
++#define _SC_BC_BASE_MAX                  57
++#define _SC_BC_DIM_MAX                   58
++#define _SC_BC_SCALE_MAX                 59
++#define _SC_BC_STRING_MAX                60
++#define _SC_CLOCK_SELECTION              61
++#define _SC_COLL_WEIGHTS_MAX             62
++#define _SC_CPUTIME                      63
++#define _SC_EXPR_NEST_MAX                64
++#define _SC_HOST_NAME_MAX                65
++#define _SC_IOV_MAX                      66
++#define _SC_IPV6                         67
++#define _SC_LINE_MAX                     68
++#define _SC_MONOTONIC_CLOCK              69
++#define _SC_RAW_SOCKETS                  70
++#define _SC_READER_WRITER_LOCKS          71
++#define _SC_REGEXP                       72
++#define _SC_RE_DUP_MAX                   73
++#define _SC_SHELL                        74
++#define _SC_SPAWN                        75
++#define _SC_SPIN_LOCKS                   76
++#define _SC_SPORADIC_SERVER              77
++#define _SC_SS_REPL_MAX                  78
++#define _SC_SYMLOOP_MAX                  79
++#define _SC_THREAD_CPUTIME               80
++#define _SC_THREAD_SPORADIC_SERVER       81
++#define _SC_TIMEOUTS                     82
++#define _SC_TRACE                        83
++#define _SC_TRACE_EVENT_FILTER           84
++#define _SC_TRACE_EVENT_NAME_MAX         85
++#define _SC_TRACE_INHERIT                86
++#define _SC_TRACE_LOG                    87
++#define _SC_TRACE_NAME_MAX               88
++#define _SC_TRACE_SYS_MAX                89
++#define _SC_TRACE_USER_EVENT_MAX         90
++#define _SC_TYPED_MEMORY_OBJECTS         91
++#define _SC_V6_ILP32_OFF32               92
++#define _SC_XBS5_ILP32_OFF32             _SC_V6_ILP32_OFF32
++#define _SC_V6_ILP32_OFFBIG              93
++#define _SC_XBS5_ILP32_OFFBIG            _SC_V6_ILP32_OFFBIG
++#define _SC_V6_LP64_OFF64                94
++#define _SC_XBS5_LP64_OFF64              _SC_V6_LP64_OFF64
++#define _SC_V6_LPBIG_OFFBIG              95
++#define _SC_XBS5_LPBIG_OFFBIG            _SC_V6_LPBIG_OFFBIG
++#define _SC_XOPEN_CRYPT                  96
++#define _SC_XOPEN_ENH_I18N               97
++#define _SC_XOPEN_LEGACY                 98
++#define _SC_XOPEN_REALTIME               99
++#define _SC_STREAM_MAX                  100
++#define _SC_PRIORITY_SCHEDULING         101
++#define _SC_XOPEN_REALTIME_THREADS      102
++#define _SC_XOPEN_SHM                   103
++#define _SC_XOPEN_STREAMS               104
++#define _SC_XOPEN_UNIX                  105
++#define _SC_XOPEN_VERSION               106
++#define _SC_2_CHAR_TERM                 107
++#define _SC_2_C_BIND                    108
++#define _SC_2_C_DEV                     109
++#define _SC_2_FORT_DEV                  110
++#define _SC_2_FORT_RUN                  111
++#define _SC_2_LOCALEDEF                 112
++#define _SC_2_PBS                       113
++#define _SC_2_PBS_ACCOUNTING            114
++#define _SC_2_PBS_CHECKPOINT            115
++#define _SC_2_PBS_LOCATE                116
++#define _SC_2_PBS_MESSAGE               117
++#define _SC_2_PBS_TRACK                 118
++#define _SC_2_SW_DEV                    119
++#define _SC_2_UPE                       120
++#define _SC_2_VERSION                   121
++
++#define _PC_LINK_MAX                      0
++#define _PC_MAX_CANON                     1
++#define _PC_MAX_INPUT                     2
++#define _PC_NAME_MAX                      3
++#define _PC_PATH_MAX                      4
++#define _PC_PIPE_BUF                      5
++#define _PC_CHOWN_RESTRICTED              6
++#define _PC_NO_TRUNC                      7
++#define _PC_VDISABLE                      8
++#define _PC_ASYNC_IO                      9
++#define _PC_PRIO_IO                      10
++#define _PC_SYNC_IO                      11
++#define _PC_FILESIZEBITS                 12
++#define _PC_2_SYMLINKS                   13
++#define _PC_SYMLINK_MAX                  14
+ #ifdef __CYGWIN__
+ /* Ask for POSIX permission bits support. */
+-# define      _PC_POSIX_PERMISSIONS   90
++#define _PC_POSIX_PERMISSIONS            90
+ /* Ask for full POSIX permission support including uid/gid settings. */
+-# define      _PC_POSIX_SECURITY     91
++#define _PC_POSIX_SECURITY               91
+ #endif
+ /* FIXME: This is temporary until winsup gets sorted out.  */
+diff -uNr newlib-1.15.0.orig/newlib/libc/include/time.h newlib-1.15.0/newlib/libc/include/time.h
+--- newlib-1.15.0.orig/newlib/libc/include/time.h      2005-11-18 16:57:24.000000000 +0100
++++ newlib-1.15.0/newlib/libc/include/time.h   2007-04-13 10:41:47.000000000 +0200
+@@ -226,6 +226,16 @@
+ #endif
++#if defined(_POSIX_MONOTONIC_CLOCK)
++
++/*  The identifier for the system-wide monotonic clock, which is defined
++    as a clock whose value cannot be set via clock_settime() and which 
++    cannot have backward clock jumps. */
++
++#define CLOCK_MONOTONIC (clockid_t)4
++
++#endif
++
+ #if defined(_POSIX_CPUTIME)
+ /* Accessing a Process CPU-time CLock, P1003.4b/D8, p. 55 */
+diff -uNr newlib-1.15.0.orig/newlib/libc/machine/arm/machine/endian.h newlib-1.15.0/newlib/libc/machine/arm/machine/endian.h
+--- newlib-1.15.0.orig/newlib/libc/machine/arm/machine/endian.h        2004-05-07 22:29:24.000000000 +0200
++++ newlib-1.15.0/newlib/libc/machine/arm/machine/endian.h     1970-01-01 01:00:00.000000000 +0100
+@@ -1,12 +0,0 @@
+-/* ARM configuration file */
+-
+-#ifndef _MACHINE_ENDIAN_H
+-# define _MACHINE_ENDIAN_H
+-
+-#ifdef __ARMEB__
+-#define BYTE_ORDER BIG_ENDIAN
+-#else
+-#define BYTE_ORDER LITTLE_ENDIAN
+-#endif
+-
+-#endif
+diff -uNr newlib-1.15.0.orig/newlib/libc/search/db_local.h newlib-1.15.0/newlib/libc/search/db_local.h
+--- newlib-1.15.0.orig/newlib/libc/search/db_local.h   2002-06-25 01:05:08.000000000 +0200
++++ newlib-1.15.0/newlib/libc/search/db_local.h        2007-04-13 10:41:47.000000000 +0200
+@@ -50,7 +50,7 @@
+ #define       MAX_PAGE_NUMBER 0xffffffff      /* >= # of pages in a file */
+ typedef __uint32_t    pgno_t;
+ #define       MAX_PAGE_OFFSET 65535           /* >= # of bytes in a page */
+-typedef __uint16_t    indx_t;
++typedef __uint_least16_t      indx_t;
+ #define       MAX_REC_NUMBER  0xffffffff      /* >= # of records in a tree */
+ typedef __uint32_t    recno_t;
+@@ -191,12 +191,12 @@
+  *    P_16_COPY       swap from one location to another
+  */
+ #define       M_16_SWAP(a) {                                                  \
+-      __uint16_t _tmp = a;                                            \
++      __uint_least16_t _tmp = a;                                              \
+       ((char *)&a)[0] = ((char *)&_tmp)[1];                           \
+       ((char *)&a)[1] = ((char *)&_tmp)[0];                           \
+ }
+ #define       P_16_SWAP(a) {                                                  \
+-      __uint16_t _tmp = *(__uint16_t *)a;                             \
++      __uint_least16_t _tmp = *(__uint_least16_t *)a;                         \
+       ((char *)a)[0] = ((char *)&_tmp)[1];                            \
+       ((char *)a)[1] = ((char *)&_tmp)[0];                            \
+ }
+diff -uNr newlib-1.15.0.orig/newlib/libc/search/extern.h newlib-1.15.0/newlib/libc/search/extern.h
+--- newlib-1.15.0.orig/newlib/libc/search/extern.h     2002-06-20 21:51:31.000000000 +0200
++++ newlib-1.15.0/newlib/libc/search/extern.h  2007-04-13 10:41:47.000000000 +0200
+@@ -48,7 +48,7 @@
+ int    __delpair(HTAB *, BUFHEAD *, int);
+ int    __expand_table(HTAB *);
+ int    __find_bigpair(HTAB *, BUFHEAD *, int, char *, int);
+-__uint16_t     __find_last_page(HTAB *, BUFHEAD **);
++__uint_least16_t       __find_last_page(HTAB *, BUFHEAD **);
+ void   __free_ovflpage(HTAB *, BUFHEAD *);
+ BUFHEAD       *__get_buf(HTAB *, __uint32_t, BUFHEAD *, int);
+ int    __get_page(HTAB *, char *, __uint32_t, int, int, int);
+diff -uNr newlib-1.15.0.orig/newlib/libc/search/hash_bigkey.c newlib-1.15.0/newlib/libc/search/hash_bigkey.c
+--- newlib-1.15.0.orig/newlib/libc/search/hash_bigkey.c        2006-06-07 21:22:59.000000000 +0200
++++ newlib-1.15.0/newlib/libc/search/hash_bigkey.c     2007-04-13 10:41:47.000000000 +0200
+@@ -92,13 +92,13 @@
+       BUFHEAD *bufp;
+       const DBT *key, *val;
+ {
+-      __uint16_t *p;
++      __uint_least16_t *p;
+       int key_size, n, val_size;
+-      __uint16_t space, move_bytes, off;
++      __uint_least16_t space, move_bytes, off;
+       char *cp, *key_data, *val_data;
+       cp = bufp->page;                /* Character pointer of p. */
+-      p = (__uint16_t *)cp;
++      p = (__uint_least16_t *)cp;
+       key_data = (char *)key->data;
+       key_size = key->size;
+@@ -136,7 +136,7 @@
+                               OFFSET(p) = off;
+                       } else
+                               p[n - 2] = FULL_KEY;
+-              p = (__uint16_t *)bufp->page;
++              p = (__uint_least16_t *)bufp->page;
+               cp = bufp->page;
+               bufp->flags |= BUF_MOD;
+       }
+@@ -166,7 +166,7 @@
+                       if (!bufp)
+                               return (-1);
+                       cp = bufp->page;
+-                      p = (__uint16_t *)cp;
++                      p = (__uint_least16_t *)cp;
+               } else
+                       p[n] = FULL_KEY_DATA;
+               bufp->flags |= BUF_MOD;
+@@ -191,12 +191,12 @@
+       BUFHEAD *bufp;
+ {
+       BUFHEAD *last_bfp, *rbufp;
+-      __uint16_t *bp, pageno;
++      __uint_least16_t *bp, pageno;
+       int key_done, n;
+       rbufp = bufp;
+       last_bfp = NULL;
+-      bp = (__uint16_t *)bufp->page;
++      bp = (__uint_least16_t *)bufp->page;
+       pageno = 0;
+       key_done = 0;
+@@ -219,7 +219,7 @@
+               last_bfp = rbufp;
+               if (!rbufp)
+                       return (-1);            /* Error. */
+-              bp = (__uint16_t *)rbufp->page;
++              bp = (__uint_least16_t *)rbufp->page;
+       }
+       /*
+@@ -234,7 +234,7 @@
+       pageno = bp[n - 1];
+       /* Now, bp is the first page of the pair. */
+-      bp = (__uint16_t *)bufp->page;
++      bp = (__uint_least16_t *)bufp->page;
+       if (n > 2) {
+               /* There is an overflow page. */
+               bp[1] = pageno;
+@@ -272,13 +272,13 @@
+       char *key;
+       int size;
+ {
+-      __uint16_t *bp;
++      __uint_least16_t *bp;
+       char *p;
+       int ksize;
+-      __uint16_t bytes;
++      __uint_least16_t bytes;
+       char *kkey;
+-      bp = (__uint16_t *)bufp->page;
++      bp = (__uint_least16_t *)bufp->page;
+       p = bufp->page;
+       ksize = size;
+       kkey = key;
+@@ -294,7 +294,7 @@
+               if (!bufp)
+                       return (-3);
+               p = bufp->page;
+-              bp = (__uint16_t *)p;
++              bp = (__uint_least16_t *)p;
+               ndx = 1;
+       }
+@@ -316,17 +316,17 @@
+  * of the pair; 0 if there isn't any (i.e. big pair is the last key in the
+  * bucket)
+  */
+-extern __uint16_t
++extern __uint_least16_t
+ __find_last_page(hashp, bpp)
+       HTAB *hashp;
+       BUFHEAD **bpp;
+ {
+       BUFHEAD *bufp;
+-      __uint16_t *bp, pageno;
++      __uint_least16_t *bp, pageno;
+       int n;
+       bufp = *bpp;
+-      bp = (__uint16_t *)bufp->page;
++      bp = (__uint_least16_t *)bufp->page;
+       for (;;) {
+               n = bp[0];
+@@ -343,7 +343,7 @@
+               bufp = __get_buf(hashp, pageno, bufp, 0);
+               if (!bufp)
+                       return (0);     /* Need to indicate an error! */
+-              bp = (__uint16_t *)bufp->page;
++              bp = (__uint_least16_t *)bufp->page;
+       }
+       *bpp = bufp;
+@@ -366,15 +366,15 @@
+       int set_current;
+ {
+       BUFHEAD *save_p;
+-      __uint16_t *bp, len, off, save_addr;
++      __uint_least16_t *bp, len, off, save_addr;
+       char *tp;
+-      bp = (__uint16_t *)bufp->page;
++      bp = (__uint_least16_t *)bufp->page;
+       while (bp[ndx + 1] == PARTIAL_KEY) {
+               bufp = __get_buf(hashp, bp[bp[0] - 1], bufp, 0);
+               if (!bufp)
+                       return (-1);
+-              bp = (__uint16_t *)bufp->page;
++              bp = (__uint_least16_t *)bufp->page;
+               ndx = 1;
+       }
+@@ -382,7 +382,7 @@
+               bufp = __get_buf(hashp, bp[bp[0] - 1], bufp, 0);
+               if (!bufp)
+                       return (-1);
+-              bp = (__uint16_t *)bufp->page;
++              bp = (__uint_least16_t *)bufp->page;
+               save_p = bufp;
+               save_addr = save_p->addr;
+               off = bp[1];
+@@ -403,7 +403,7 @@
+                       bufp = __get_buf(hashp, bp[bp[0] - 1], bufp, 0);
+                       if (!bufp)
+                               return (-1);
+-                      bp = (__uint16_t *)bufp->page;
++                      bp = (__uint_least16_t *)bufp->page;
+               } else {
+                       /* The data is all on one page. */
+                       tp = (char *)bp;
+@@ -422,7 +422,7 @@
+                                       if (!hashp->cpage)
+                                               return (-1);
+                                       hashp->cndx = 1;
+-                                      if (!((__uint16_t *)
++                                      if (!((__uint_least16_t *)
+                                           hashp->cpage->page)[0]) {
+                                               hashp->cbucket++;
+                                               hashp->cpage = NULL;
+@@ -454,14 +454,14 @@
+       BUFHEAD *bufp;
+       int len, set;
+ {
+-      __uint16_t *bp;
++      __uint_least16_t *bp;
+       char *p;
+       BUFHEAD *xbp;
+-      __uint16_t save_addr;
++      __uint_least16_t save_addr;
+       int mylen, totlen;
+       p = bufp->page;
+-      bp = (__uint16_t *)p;
++      bp = (__uint_least16_t *)p;
+       mylen = hashp->BSIZE - bp[1];
+       save_addr = bufp->addr;
+@@ -481,7 +481,7 @@
+                                   __get_buf(hashp, bp[bp[0] - 1], bufp, 0);
+                               if (!hashp->cpage)
+                                       return (-1);
+-                              else if (!((__uint16_t *)hashp->cpage->page)[0]) {
++                              else if (!((__uint_least16_t *)hashp->cpage->page)[0]) {
+                                       hashp->cbucket++;
+                                       hashp->cpage = NULL;
+                               }
+@@ -533,10 +533,10 @@
+       BUFHEAD *xbp;
+       char *p;
+       int mylen, totlen;
+-      __uint16_t *bp, save_addr;
++      __uint_least16_t *bp, save_addr;
+       p = bufp->page;
+-      bp = (__uint16_t *)p;
++      bp = (__uint_least16_t *)p;
+       mylen = hashp->BSIZE - bp[1];
+       save_addr = bufp->addr;
+@@ -579,11 +579,11 @@
+       SPLIT_RETURN *ret;
+ {
+       BUFHEAD *tmpp;
+-      __uint16_t *tp;
++      __uint_least16_t *tp;
+       BUFHEAD *bp;
+       DBT key, val;
+       __uint32_t change;
+-      __uint16_t free_space, n, off;
++      __uint_least16_t free_space, n, off;
+       bp = big_keyp;
+@@ -615,14 +615,14 @@
+           (tmpp->ovfl ? tmpp->ovfl->addr : 0), (bp ? bp->addr : 0));
+ #endif
+       tmpp->ovfl = bp;        /* one of op/np point to big_keyp */
+-      tp = (__uint16_t *)tmpp->page;
++      tp = (__uint_least16_t *)tmpp->page;
+ #ifdef DEBUG
+       assert(FREESPACE(tp) >= OVFLSIZE);
+ #endif
+       n = tp[0];
+       off = OFFSET(tp);
+       free_space = FREESPACE(tp);
+-      tp[++n] = (__uint16_t)addr;
++      tp[++n] = (__uint_least16_t)addr;
+       tp[++n] = OVFLPAGE;
+       tp[0] = n;
+       OFFSET(tp) = off;
+@@ -638,7 +638,7 @@
+       ret->newp = np;
+       ret->oldp = op;
+-      tp = (__uint16_t *)big_keyp->page;
++      tp = (__uint_least16_t *)big_keyp->page;
+       big_keyp->flags |= BUF_MOD;
+       if (tp[0] > 2) {
+               /*
+diff -uNr newlib-1.15.0.orig/newlib/libc/search/hash_buf.c newlib-1.15.0/newlib/libc/search/hash_buf.c
+--- newlib-1.15.0.orig/newlib/libc/search/hash_buf.c   2004-05-26 19:57:10.000000000 +0200
++++ newlib-1.15.0/newlib/libc/search/hash_buf.c        2007-04-13 10:41:47.000000000 +0200
+@@ -176,7 +176,7 @@
+       BUFHEAD *next_xbp;
+       SEGMENT segp;
+       int segment_ndx;
+-      __uint16_t oaddr, *shortp;
++      __uint_least16_t oaddr, *shortp;
+       oaddr = 0;
+       bp = LRU;
+@@ -212,7 +212,7 @@
+                        * Set oaddr before __put_page so that you get it
+                        * before bytes are swapped.
+                        */
+-                      shortp = (__uint16_t *)bp->page;
++                      shortp = (__uint_least16_t *)bp->page;
+                       if (shortp[0])
+                               oaddr = shortp[shortp[0] - 1];
+                       if ((bp->flags & BUF_MOD) && __put_page(hashp, bp->page,
+@@ -255,7 +255,7 @@
+                                   (oaddr != xbp->addr))
+                                       break;
+-                              shortp = (__uint16_t *)xbp->page;
++                              shortp = (__uint_least16_t *)xbp->page;
+                               if (shortp[0])
+                                       /* set before __put_page */
+                                       oaddr = shortp[shortp[0] - 1];
+diff -uNr newlib-1.15.0.orig/newlib/libc/search/hash.c newlib-1.15.0/newlib/libc/search/hash.c
+--- newlib-1.15.0.orig/newlib/libc/search/hash.c       2004-05-26 19:57:10.000000000 +0200
++++ newlib-1.15.0/newlib/libc/search/hash.c    2007-04-13 10:41:47.000000000 +0200
+@@ -628,10 +628,10 @@
+ {
+       BUFHEAD *rbufp;
+       BUFHEAD *bufp, *save_bufp;
+-      __uint16_t *bp;
++      __uint_least16_t *bp;
+       int n, ndx, off, size;
+       char *kp;
+-      __uint16_t pageno;
++      __uint_least16_t pageno;
+ #ifdef HASH_STATISTICS
+       hash_accesses++;
+@@ -647,7 +647,7 @@
+       /* Pin the bucket chain */
+       rbufp->flags |= BUF_PIN;
+-      for (bp = (__uint16_t *)rbufp->page, n = *bp++, ndx = 1; ndx < n;)
++      for (bp = (__uint_least16_t *)rbufp->page, n = *bp++, ndx = 1; ndx < n;)
+               if (bp[1] >= REAL_KEY) {
+                       /* Real key/data pair */
+                       if (size == off - *bp &&
+@@ -666,7 +666,7 @@
+                               return (ERROR);
+                       }
+                       /* FOR LOOP INIT */
+-                      bp = (__uint16_t *)rbufp->page;
++                      bp = (__uint_least16_t *)rbufp->page;
+                       n = *bp++;
+                       ndx = 1;
+                       off = hashp->BSIZE;
+@@ -688,7 +688,7 @@
+                                       return (ERROR);
+                               }
+                               /* FOR LOOP INIT */
+-                              bp = (__uint16_t *)rbufp->page;
++                              bp = (__uint_least16_t *)rbufp->page;
+                               n = *bp++;
+                               ndx = 1;
+                               off = hashp->BSIZE;
+@@ -722,7 +722,7 @@
+               save_bufp->flags &= ~BUF_PIN;
+               return (ABNORMAL);
+       case HASH_GET:
+-              bp = (__uint16_t *)rbufp->page;
++              bp = (__uint_least16_t *)rbufp->page;
+               if (bp[ndx + 1] < REAL_KEY) {
+                       if (__big_return(hashp, rbufp, ndx, val, 0))
+                               return (ERROR);
+@@ -758,7 +758,7 @@
+       __uint32_t bucket;
+       BUFHEAD *bufp;
+       HTAB *hashp;
+-      __uint16_t *bp, ndx;
++      __uint_least16_t *bp, ndx;
+       hashp = (HTAB *)dbp->internal;
+       if (flag && flag != R_FIRST && flag != R_NEXT) {
+@@ -783,7 +783,7 @@
+                               if (!bufp)
+                                       return (ERROR);
+                               hashp->cpage = bufp;
+-                              bp = (__uint16_t *)bufp->page;
++                              bp = (__uint_least16_t *)bufp->page;
+                               if (bp[0])
+                                       break;
+                       }
+@@ -793,7 +793,7 @@
+                               return (ABNORMAL);
+                       }
+               } else
+-                      bp = (__uint16_t *)hashp->cpage->page;
++                      bp = (__uint_least16_t *)hashp->cpage->page;
+ #ifdef DEBUG
+               assert(bp);
+@@ -804,7 +804,7 @@
+                           __get_buf(hashp, bp[hashp->cndx], bufp, 0);
+                       if (!bufp)
+                               return (ERROR);
+-                      bp = (__uint16_t *)(bufp->page);
++                      bp = (__uint_least16_t *)(bufp->page);
+                       hashp->cndx = 1;
+               }
+               if (!bp[0]) {
+diff -uNr newlib-1.15.0.orig/newlib/libc/search/hash.h newlib-1.15.0/newlib/libc/search/hash.h
+--- newlib-1.15.0.orig/newlib/libc/search/hash.h       2002-07-02 20:18:58.000000000 +0200
++++ newlib-1.15.0/newlib/libc/search/hash.h    2007-04-13 10:41:47.000000000 +0200
+@@ -102,7 +102,7 @@
+ #define NCACHED       32                      /* number of bit maps and spare 
+                                        * points */
+       int             spares[NCACHED];/* spare pages for overflow */
+-      __uint16_t      bitmaps[NCACHED];       /* address of overflow page 
++      __uint_least16_t        bitmaps[NCACHED];       /* address of overflow page 
+                                                * bitmaps */
+ } HASHHDR;
+diff -uNr newlib-1.15.0.orig/newlib/libc/search/hash_page.c newlib-1.15.0/newlib/libc/search/hash_page.c
+--- newlib-1.15.0.orig/newlib/libc/search/hash_page.c  2002-09-19 23:28:51.000000000 +0200
++++ newlib-1.15.0/newlib/libc/search/hash_page.c       2007-04-13 10:41:47.000000000 +0200
+@@ -77,16 +77,16 @@
+ static __uint32_t     *fetch_bitmap(HTAB *, int);
+ static __uint32_t      first_free(__uint32_t);
+ static int     open_temp(HTAB *);
+-static __uint16_t      overflow_page(HTAB *);
++static __uint_least16_t        overflow_page(HTAB *);
+ static void    putpair(char *, const DBT *, const DBT *);
+-static void    squeeze_key(__uint16_t *, const DBT *, const DBT *);
++static void    squeeze_key(__uint_least16_t *, const DBT *, const DBT *);
+ static int     ugly_split
+ (HTAB *, __uint32_t, BUFHEAD *, BUFHEAD *, int, int);
+ #define       PAGE_INIT(P) { \
+-      ((__uint16_t *)(P))[0] = 0; \
+-      ((__uint16_t *)(P))[1] = hashp->BSIZE - 3 * sizeof(__uint16_t); \
+-      ((__uint16_t *)(P))[2] = hashp->BSIZE; \
++      ((__uint_least16_t *)(P))[0] = 0; \
++      ((__uint_least16_t *)(P))[1] = hashp->BSIZE - 3 * sizeof(__uint_least16_t); \
++      ((__uint_least16_t *)(P))[2] = hashp->BSIZE; \
+ }
+ /*
+@@ -99,9 +99,9 @@
+       char *p;
+       const DBT *key, *val;
+ {
+-      __uint16_t *bp, n, off;
++      __uint_least16_t *bp, n, off;
+-      bp = (__uint16_t *)p;
++      bp = (__uint_least16_t *)p;
+       /* Enter the key first. */
+       n = bp[0];
+@@ -117,7 +117,7 @@
+       /* Adjust page info. */
+       bp[0] = n;
+-      bp[n + 1] = off - ((n + 3) * sizeof(__uint16_t));
++      bp[n + 1] = off - ((n + 3) * sizeof(__uint_least16_t));
+       bp[n + 2] = off;
+ }
+@@ -132,11 +132,11 @@
+       BUFHEAD *bufp;
+       int ndx;
+ {
+-      __uint16_t *bp, newoff;
++      __uint_least16_t *bp, newoff;
+       int n;
+-      __uint16_t pairlen;
++      __uint_least16_t pairlen;
+-      bp = (__uint16_t *)bufp->page;
++      bp = (__uint_least16_t *)bufp->page;
+       n = bp[0];
+       if (bp[ndx + 1] < REAL_KEY)
+@@ -167,7 +167,7 @@
+       }
+       /* Finally adjust the page data */
+       bp[n] = OFFSET(bp) + pairlen;
+-      bp[n - 1] = bp[n + 1] + pairlen + 2 * sizeof(__uint16_t);
++      bp[n - 1] = bp[n + 1] + pairlen + 2 * sizeof(__uint_least16_t);
+       bp[0] = n - 2;
+       hashp->NKEYS--;
+@@ -185,15 +185,15 @@
+       __uint32_t obucket, nbucket;
+ {
+       BUFHEAD *new_bufp, *old_bufp;
+-      __uint16_t *ino;
++      __uint_least16_t *ino;
+       char *np;
+       DBT key, val;
+       int n, ndx, retval;
+-      __uint16_t copyto, diff, off, moved;
++      __uint_least16_t copyto, diff, off, moved;
+       char *op;
+-      copyto = (__uint16_t)hashp->BSIZE;
+-      off = (__uint16_t)hashp->BSIZE;
++      copyto = (__uint_least16_t)hashp->BSIZE;
++      off = (__uint_least16_t)hashp->BSIZE;
+       old_bufp = __get_buf(hashp, obucket, NULL, 0);
+       if (old_bufp == NULL)
+               return (-1);
+@@ -204,7 +204,7 @@
+       old_bufp->flags |= (BUF_MOD | BUF_PIN);
+       new_bufp->flags |= (BUF_MOD | BUF_PIN);
+-      ino = (__uint16_t *)(op = old_bufp->page);
++      ino = (__uint_least16_t *)(op = old_bufp->page);
+       np = new_bufp->page;
+       moved = 0;
+@@ -246,13 +246,13 @@
+       /* Now clean up the page */
+       ino[0] -= moved;
+-      FREESPACE(ino) = copyto - sizeof(__uint16_t) * (ino[0] + 3);
++      FREESPACE(ino) = copyto - sizeof(__uint_least16_t) * (ino[0] + 3);
+       OFFSET(ino) = copyto;
+ #ifdef DEBUG3
+       (void)fprintf(stderr, "split %d/%d\n",
+-          ((__uint16_t *)np)[0] / 2,
+-          ((__uint16_t *)op)[0] / 2);
++          ((__uint_least16_t *)np)[0] / 2,
++          ((__uint_least16_t *)op)[0] / 2);
+ #endif
+       /* unpin both pages */
+       old_bufp->flags &= ~BUF_PIN;
+@@ -284,22 +284,22 @@
+       int moved;              /* Number of pairs moved to new page. */
+ {
+       BUFHEAD *bufp;          /* Buffer header for ino */
+-      __uint16_t *ino;                /* Page keys come off of */
+-      __uint16_t *np;         /* New page */
+-      __uint16_t *op;         /* Page keys go on to if they aren't moving */
++      __uint_least16_t *ino;          /* Page keys come off of */
++      __uint_least16_t *np;           /* New page */
++      __uint_least16_t *op;           /* Page keys go on to if they aren't moving */
+       BUFHEAD *last_bfp;      /* Last buf header OVFL needing to be freed */
+       DBT key, val;
+       SPLIT_RETURN ret;
+-      __uint16_t n, off, ov_addr, scopyto;
++      __uint_least16_t n, off, ov_addr, scopyto;
+       char *cino;             /* Character value of ino */
+       bufp = old_bufp;
+-      ino = (__uint16_t *)old_bufp->page;
+-      np = (__uint16_t *)new_bufp->page;
+-      op = (__uint16_t *)old_bufp->page;
++      ino = (__uint_least16_t *)old_bufp->page;
++      np = (__uint_least16_t *)new_bufp->page;
++      op = (__uint_least16_t *)old_bufp->page;
+       last_bfp = NULL;
+-      scopyto = (__uint16_t)copyto;   /* ANSI */
++      scopyto = (__uint_least16_t)copyto;     /* ANSI */
+       n = ino[0] - 1;
+       while (n < ino[0]) {
+@@ -310,16 +310,16 @@
+                       old_bufp = ret.oldp;
+                       if (!old_bufp)
+                               return (-1);
+-                      op = (__uint16_t *)old_bufp->page;
++                      op = (__uint_least16_t *)old_bufp->page;
+                       new_bufp = ret.newp;
+                       if (!new_bufp)
+                               return (-1);
+-                      np = (__uint16_t *)new_bufp->page;
++                      np = (__uint_least16_t *)new_bufp->page;
+                       bufp = ret.nextp;
+                       if (!bufp)
+                               return (0);
+                       cino = (char *)bufp->page;
+-                      ino = (__uint16_t *)cino;
++                      ino = (__uint_least16_t *)cino;
+                       last_bfp = ret.nextp;
+               } else if (ino[n + 1] == OVFLPAGE) {
+                       ov_addr = ino[n];
+@@ -329,14 +329,14 @@
+                        */
+                       ino[0] -= (moved + 2);
+                       FREESPACE(ino) =
+-                          scopyto - sizeof(__uint16_t) * (ino[0] + 3);
++                          scopyto - sizeof(__uint_least16_t) * (ino[0] + 3);
+                       OFFSET(ino) = scopyto;
+                       bufp = __get_buf(hashp, ov_addr, bufp, 0);
+                       if (!bufp)
+                               return (-1);
+-                      ino = (__uint16_t *)bufp->page;
++                      ino = (__uint_least16_t *)bufp->page;
+                       n = 1;
+                       scopyto = hashp->BSIZE;
+                       moved = 0;
+@@ -364,7 +364,7 @@
+                                           __add_ovflpage(hashp, old_bufp);
+                                       if (!old_bufp)
+                                               return (-1);
+-                                      op = (__uint16_t *)old_bufp->page;
++                                      op = (__uint_least16_t *)old_bufp->page;
+                                       putpair((char *)op, &key, &val);
+                               }
+                               old_bufp->flags |= BUF_MOD;
+@@ -377,7 +377,7 @@
+                                           __add_ovflpage(hashp, new_bufp);
+                                       if (!new_bufp)
+                                               return (-1);
+-                                      np = (__uint16_t *)new_bufp->page;
++                                      np = (__uint_least16_t *)new_bufp->page;
+                                       putpair((char *)np, &key, &val);
+                               }
+                               new_bufp->flags |= BUF_MOD;
+@@ -402,10 +402,10 @@
+       BUFHEAD *bufp;
+       const DBT *key, *val;
+ {
+-      __uint16_t *bp, *sop;
++      __uint_least16_t *bp, *sop;
+       int do_expand;
+-      bp = (__uint16_t *)bufp->page;
++      bp = (__uint_least16_t *)bufp->page;
+       do_expand = 0;
+       while (bp[0] && (bp[2] < REAL_KEY || bp[bp[0]] < REAL_KEY))
+               /* Exception case */
+@@ -417,7 +417,7 @@
+                       bufp = __get_buf(hashp, bp[bp[0] - 1], bufp, 0);
+                       if (!bufp)
+                               return (-1);
+-                      bp = (__uint16_t *)bufp->page;
++                      bp = (__uint_least16_t *)bufp->page;
+               } else
+                       /* Try to squeeze key on this page */
+                       if (FREESPACE(bp) > PAIRSIZE(key, val)) {
+@@ -427,7 +427,7 @@
+                               bufp = __get_buf(hashp, bp[bp[0] - 1], bufp, 0);
+                               if (!bufp)
+                                       return (-1);
+-                              bp = (__uint16_t *)bufp->page;
++                              bp = (__uint_least16_t *)bufp->page;
+                       }
+       if (PAIRFITS(bp, key, val))
+@@ -437,7 +437,7 @@
+               bufp = __add_ovflpage(hashp, bufp);
+               if (!bufp)
+                       return (-1);
+-              sop = (__uint16_t *)bufp->page;
++              sop = (__uint_least16_t *)bufp->page;
+               if (PAIRFITS(sop, key, val))
+                       putpair((char *)sop, key, val);
+@@ -468,12 +468,12 @@
+       HTAB *hashp;
+       BUFHEAD *bufp;
+ {
+-      __uint16_t *sp;
+-      __uint16_t ndx, ovfl_num;
++      __uint_least16_t *sp;
++      __uint_least16_t ndx, ovfl_num;
+ #ifdef DEBUG1
+       int tmp1, tmp2;
+ #endif
+-      sp = (__uint16_t *)bufp->page;
++      sp = (__uint_least16_t *)bufp->page;
+       /* Check if we are dynamically determining the fill factor */
+       if (hashp->FFACTOR == DEF_FFACTOR) {
+@@ -525,7 +525,7 @@
+ {
+       int fd, page, size;
+       int rsize;
+-      __uint16_t *bp;
++      __uint_least16_t *bp;
+       fd = hashp->fp;
+       size = hashp->BSIZE;
+@@ -541,7 +541,7 @@
+       if ((lseek(fd, (off_t)page << hashp->BSHIFT, SEEK_SET) == -1) ||
+           ((rsize = read(fd, p, size)) == -1))
+               return (-1);
+-      bp = (__uint16_t *)p;
++      bp = (__uint_least16_t *)p;
+       if (!rsize)
+               bp[0] = 0;      /* We hit the EOF, so initialize a new page */
+       else
+@@ -600,9 +600,9 @@
+                       for (i = 0; i < max; i++)
+                               M_32_SWAP(((int *)p)[i]);
+               } else {
+-                      max = ((__uint16_t *)p)[0] + 2;
++                      max = ((__uint_least16_t *)p)[0] + 2;
+                       for (i = 0; i <= max; i++)
+-                              M_16_SWAP(((__uint16_t *)p)[i]);
++                              M_16_SWAP(((__uint_least16_t *)p)[i]);
+               }
+       }
+       if (is_bucket)
+@@ -643,7 +643,7 @@
+           hashp->BSIZE - clearbytes);
+       ip[clearints - 1] = ALL_SET << (nbits & BYTE_MASK);
+       SETBIT(ip, 0);
+-      hashp->BITMAPS[ndx] = (__uint16_t)pnum;
++      hashp->BITMAPS[ndx] = (__uint_least16_t)pnum;
+       hashp->mapp[ndx] = ip;
+       return (0);
+ }
+@@ -663,13 +663,13 @@
+       return (i);
+ }
+-static __uint16_t
++static __uint_least16_t
+ overflow_page(hashp)
+       HTAB *hashp;
+ {
+       __uint32_t *freep;
+       int max_free, offset, splitnum;
+-      __uint16_t addr;
++      __uint_least16_t addr;
+       int bit, first_page, free_bit, free_page, i, in_use_bits, j;
+ #ifdef DEBUG2
+       int tmp1, tmp2;
+@@ -816,16 +816,16 @@
+       HTAB *hashp;
+       BUFHEAD *obufp;
+ {
+-      __uint16_t addr;
++      __uint_least16_t addr;
+       __uint32_t *freep;
+       int bit_address, free_page, free_bit;
+-      __uint16_t ndx;
++      __uint_least16_t ndx;
+       addr = obufp->addr;
+ #ifdef DEBUG1
+       (void)fprintf(stderr, "Freeing %d\n", addr);
+ #endif
+-      ndx = (((__uint16_t)addr) >> SPLITSHIFT);
++      ndx = (((__uint_least16_t)addr) >> SPLITSHIFT);
+       bit_address =
+           (ndx ? hashp->SPARES[ndx - 1] : 0) + (addr & SPLITMASK) - 1;
+        if (bit_address < hashp->LAST_FREED)
+@@ -883,11 +883,11 @@
+  */
+ static void
+ squeeze_key(sp, key, val)
+-      __uint16_t *sp;
++      __uint_least16_t *sp;
+       const DBT *key, *val;
+ {
+       char *p;
+-      __uint16_t free_space, n, off, pageno;
++      __uint_least16_t free_space, n, off, pageno;
+       p = (char *)sp;
+       n = sp[0];
+diff -uNr newlib-1.15.0.orig/newlib/libc/search/page.h newlib-1.15.0/newlib/libc/search/page.h
+--- newlib-1.15.0.orig/newlib/libc/search/page.h       2002-06-20 21:51:31.000000000 +0200
++++ newlib-1.15.0/newlib/libc/search/page.h    2007-04-13 10:41:47.000000000 +0200
+@@ -74,20 +74,20 @@
+  * You might as well do this up front.
+  */
+-#define       PAIRSIZE(K,D)   (2*sizeof(__uint16_t) + (K)->size + (D)->size)
+-#define BIGOVERHEAD   (4*sizeof(__uint16_t))
+-#define KEYSIZE(K)    (4*sizeof(__uint16_t) + (K)->size);
+-#define OVFLSIZE      (2*sizeof(__uint16_t))
++#define       PAIRSIZE(K,D)   (2*sizeof(__uint_least16_t) + (K)->size + (D)->size)
++#define BIGOVERHEAD   (4*sizeof(__uint_least16_t))
++#define KEYSIZE(K)    (4*sizeof(__uint_least16_t) + (K)->size);
++#define OVFLSIZE      (2*sizeof(__uint_least16_t))
+ #define FREESPACE(P)  ((P)[(P)[0]+1])
+ #define       OFFSET(P)       ((P)[(P)[0]+2])
+ #define PAIRFITS(P,K,D) \
+       (((P)[2] >= REAL_KEY) && \
+           (PAIRSIZE((K),(D)) + OVFLSIZE) <= FREESPACE((P)))
+-#define PAGE_META(N)  (((N)+3) * sizeof(__uint16_t))
++#define PAGE_META(N)  (((N)+3) * sizeof(__uint_least16_t))
+ typedef struct {
+       BUFHEAD *newp;
+       BUFHEAD *oldp;
+       BUFHEAD *nextp;
+-      __uint16_t next_addr;
++      __uint_least16_t next_addr;
+ }       SPLIT_RETURN;
+diff -uNr newlib-1.15.0.orig/newlib/libc/sys/rtems/machine/stdint.h newlib-1.15.0/newlib/libc/sys/rtems/machine/stdint.h
+--- newlib-1.15.0.orig/newlib/libc/sys/rtems/machine/stdint.h  1970-01-01 01:00:00.000000000 +0100
++++ newlib-1.15.0/newlib/libc/sys/rtems/machine/stdint.h       2007-04-13 10:41:47.000000000 +0200
+@@ -0,0 +1,31 @@
++/*
++ *
++ */
++#ifndef _MACHINE_STDINT_H
++#define _MACHINE_STDINT_H
++
++#ifndef _STDINT_H
++#error machine/stdint.h is an internal file and  must not be directly included
++#endif
++
++#if defined(__sparc__) \
++  || defined(__powerpc__) || defined(__PPC__) \
++  || defined(__mips__) \
++  || defined(__sh__) \
++  || defined(__AVR__) \
++  || defined(_C4x) || defined(_C3x) \
++  || defined(__H8300__)
++/* PTRDIFF_TYPE = int */
++#define __ptrint_t_int_defined 1
++#endif
++
++#if defined(__i386__) \
++  || defined(__m68k__) \
++  || defined(__bfin__) \
++  || defined(__arm__) \
++  || defined(__H8300S__) || defined(__H8300H__)
++/* PTRDIFF_TYPE = long */
++#define __ptrint_t_long_defined 1
++#endif
++
++#endif
+diff -uNr newlib-1.15.0.orig/newlib/libc/sys/rtems/sys/param.h newlib-1.15.0/newlib/libc/sys/rtems/sys/param.h
+--- newlib-1.15.0.orig/newlib/libc/sys/rtems/sys/param.h       2004-05-07 22:29:24.000000000 +0200
++++ newlib-1.15.0/newlib/libc/sys/rtems/sys/param.h    2007-04-13 10:41:47.000000000 +0200
+@@ -93,7 +93,6 @@
+ #include <sys/resource.h>
+ #include <sys/ucred.h>
+ #include <sys/uio.h>
+-#include <sys/rtprio.h>
+ #ifndef FALSE
+ #define       FALSE   0
+diff -uNr newlib-1.15.0.orig/newlib/Makefile.am newlib-1.15.0/newlib/Makefile.am
+--- newlib-1.15.0.orig/newlib/Makefile.am      2006-06-05 19:42:57.000000000 +0200
++++ newlib-1.15.0/newlib/Makefile.am   2007-04-13 10:41:47.000000000 +0200
+@@ -81,7 +81,7 @@
+       libc.a
+ endif
+-noinst_DATA = stmp-targ-include
++BUILT_SOURCES = stmp-targ-include
+ toollib_DATA = $(CRT0) $(CRT1)
+@@ -186,9 +186,6 @@
+ $(CRT1_DIR)$(CRT1): ; @true
+-
+-all-recursive: stmp-targ-include
+-
+ # The targ-include directory just holds the includes files for the
+ # particular system and machine we have been configured for.  It is
+ # used while building.
+diff -uNr newlib-1.15.0.orig/newlib/Makefile.in newlib-1.15.0/newlib/Makefile.in
+--- newlib-1.15.0.orig/newlib/Makefile.in      2006-12-18 21:32:41.000000000 +0100
++++ newlib-1.15.0/newlib/Makefile.in   2007-04-13 10:41:47.000000000 +0200
+@@ -103,7 +103,7 @@
+       pdf-recursive ps-recursive uninstall-info-recursive \
+       uninstall-recursive
+ toollibDATA_INSTALL = $(INSTALL_DATA)
+-DATA = $(noinst_DATA) $(toollib_DATA)
++DATA = $(toollib_DATA)
+ ETAGS = etags
+ CTAGS = ctags
+ DEJATOOL = $(PACKAGE)
+@@ -205,12 +205,7 @@
+ USE_LIBTOOL_FALSE = @USE_LIBTOOL_FALSE@
+ USE_LIBTOOL_TRUE = @USE_LIBTOOL_TRUE@
+ VERSION = @VERSION@
+-ac_ct_AR = @ac_ct_AR@
+-ac_ct_AS = @ac_ct_AS@
+ ac_ct_CC = @ac_ct_CC@
+-ac_ct_RANLIB = @ac_ct_RANLIB@
+-ac_ct_READELF = @ac_ct_READELF@
+-ac_ct_STRIP = @ac_ct_STRIP@
+ aext = @aext@
+ am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
+ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
+@@ -226,12 +221,16 @@
+ build_os = @build_os@
+ build_vendor = @build_vendor@
+ datadir = @datadir@
++datarootdir = @datarootdir@
++docdir = @docdir@
++dvidir = @dvidir@
+ exec_prefix = @exec_prefix@
+ host = @host@
+ host_alias = @host_alias@
+ host_cpu = @host_cpu@
+ host_os = @host_os@
+ host_vendor = @host_vendor@
++htmldir = @htmldir@
+ includedir = @includedir@
+ infodir = @infodir@
+ install_sh = @install_sh@
+@@ -240,6 +239,7 @@
+ libdir = @libdir@
+ libexecdir = @libexecdir@
+ libm_machine_dir = @libm_machine_dir@
++localedir = @localedir@
+ localstatedir = @localstatedir@
+ lpfx = @lpfx@
+ machine_dir = @machine_dir@
+@@ -248,8 +248,10 @@
+ newlib_basedir = @newlib_basedir@
+ oext = @oext@
+ oldincludedir = @oldincludedir@
++pdfdir = @pdfdir@
+ prefix = @prefix@
+ program_transform_name = @program_transform_name@
++psdir = @psdir@
+ sbindir = @sbindir@
+ sharedstatedir = @sharedstatedir@
+ subdirs = @subdirs@
+@@ -323,7 +325,7 @@
+ @USE_LIBTOOL_FALSE@toollib_LIBRARIES = libm.a \
+ @USE_LIBTOOL_FALSE@   libc.a
+-noinst_DATA = stmp-targ-include
++BUILT_SOURCES = stmp-targ-include
+ toollib_DATA = $(CRT0) $(CRT1)
+ # The functions ldexp, frexp and modf are traditionally supplied in
+@@ -382,7 +384,7 @@
+ # dejagnu support
+ RUNTESTFLAGS = 
+-all: newlib.h
++all: $(BUILT_SOURCES) newlib.h
+       $(MAKE) $(AM_MAKEFLAGS) all-recursive
+ .SUFFIXES:
+@@ -687,14 +689,16 @@
+       done
+ check-am:
+       $(MAKE) $(AM_MAKEFLAGS) check-DEJAGNU
+-check: check-recursive
++check: $(BUILT_SOURCES)
++      $(MAKE) $(AM_MAKEFLAGS) check-recursive
+ all-am: Makefile $(LIBRARIES) $(LTLIBRARIES) $(DATA) newlib.h
+ installdirs: installdirs-recursive
+ installdirs-am:
+       for dir in "$(DESTDIR)$(toollibdir)" "$(DESTDIR)$(toollibdir)" "$(DESTDIR)$(toollibdir)"; do \
+         test -z "$$dir" || $(mkdir_p) "$$dir"; \
+       done
+-install: install-recursive
++install: $(BUILT_SOURCES)
++      $(MAKE) $(AM_MAKEFLAGS) install-recursive
+ install-exec: install-exec-recursive
+ install-data: install-data-recursive
+ uninstall: uninstall-recursive
+@@ -719,6 +723,7 @@
+ maintainer-clean-generic:
+       @echo "This command is intended for maintainers to use"
+       @echo "it deletes files that may require special tools to rebuild."
++      -test -z "$(BUILT_SOURCES)" || rm -f $(BUILT_SOURCES)
+ clean: clean-recursive
+ clean-am: clean-generic clean-libtool clean-toollibLIBRARIES \
+@@ -837,8 +842,6 @@
+ $(CRT1_DIR)$(CRT1): ; @true
+-all-recursive: stmp-targ-include
+-
+ # The targ-include directory just holds the includes files for the
+ # particular system and machine we have been configured for.  It is
+ # used while building.
diff --git a/newlib-patches/1.15.0/series b/newlib-patches/1.15.0/series
new file mode 100644 (file)
index 0000000..7079b6a
--- /dev/null
@@ -0,0 +1 @@
+newlib-1.15.0-rtems4.8-20070413.diff
old mode 100644 (file)
new mode 100755 (executable)
index 580d00a..9813dfb
@@ -151,18 +151,9 @@ CFLAGS=-O2 LDFLAGS=-s \
 --host=i586-pc-linux-gnu  \
 --target=arm-rtems \
 --with-gnu-ld --exec-prefix=/usr --prefix=/usr \
 --host=i586-pc-linux-gnu  \
 --target=arm-rtems \
 --with-gnu-ld --exec-prefix=/usr --prefix=/usr \
---enable-shared --enable-commonbfdlib --verbose \
+--verbose \
 --with-mmap --enable-64-bit-bfd \
 --with-mmap --enable-64-bit-bfd \
---enable-targets=i586-pc-linux-gnu,i586-pc-linux-gnulibc1,\
-i386-coff,i586-msdosdjgpp,\
-m68k-linux-elf,m68k-rtems,m68k-coff,m68k-a.out-linux,\
-powerpc-rtems,powerpc-linux,m68hc11-elf,m68hc12-elf,\
-h8300-coff,h8300-elf,sh-coff,sh-rtemself,sh64-linux,\
-or32-elf,openrisc-elf,alpha-linux-gnu,\
-ia64-linux-gnu,x86_64-linux-gnu,\
-arm-rtems,arm-linux,arm-pe,arm-coff,avr-elf,\
-sparc-linux-elf,i586-win-pe,\
-tic30-ti-coff,tic30-ti-aout,tic4x-ti-coff,tic54x-ti-coff,msp430
+--enable-targets=arm-rtems,arm-linux,arm-coff
 #i586-go32,
 #--ieee,
 #srec,symbolsrec,tekhex,binary,ihex,trad-core
 #i586-go32,
 #--ieee,
 #srec,symbolsrec,tekhex,binary,ihex,trad-core
diff --git a/rtems-build/arm-csb336/binutils/control b/rtems-build/arm-csb336/binutils/control
new file mode 100644 (file)
index 0000000..324ee8a
--- /dev/null
@@ -0,0 +1,11 @@
+Package: binutils-arm-rtems
+Version: 2.17-1
+Architecture: amd64
+Source: binutils-2.17
+Section: cross-dev
+Priority: extra
+Maintainer: Pavel Pisa <pisa@cmp.felk.cvut.cz>
+Priority: extra
+Description: Binutils for target arm-rtems
+ .
+ GNU binutils targetting arm-rtems
diff --git a/rtems-build/arm-csb336/gcc/control b/rtems-build/arm-csb336/gcc/control
new file mode 100644 (file)
index 0000000..cc42a7b
--- /dev/null
@@ -0,0 +1,11 @@
+Package: gcc-arm-rtems
+Version: 4.1.2-1
+Architecture: amd64
+Source: gcc-4.1.2
+Section: cross-dev
+Priority: extra
+Maintainer: Pavel Pisa <pisa@cmp.felk.cvut.cz>
+Priority: extra
+Description: GCC for target arm-rtems
+ .
+ GNU binutils targetting arm-rtems
old mode 100644 (file)
new mode 100755 (executable)
index 36f02d7..af51b64
              --verbose \
             --disable-nls \
              --host=i586-pc-linux-gnu \
              --verbose \
             --disable-nls \
              --host=i586-pc-linux-gnu \
-            --with-newlib
+            --with-newlib \
+            --enable-version-specific-runtime-libs
old mode 100644 (file)
new mode 100755 (executable)
diff --git a/rtems-build/arm-csb336/rtems/control b/rtems-build/arm-csb336/rtems/control
new file mode 100644 (file)
index 0000000..129f2f6
--- /dev/null
@@ -0,0 +1,11 @@
+Package: rtems-csb336
+Version: 4.7.1
+Architecture: all
+Source: rtems-4.7.1
+Section: cross-dev
+Priority: extra
+Maintainer: Pavel Pisa <pisa@cmp.felk.cvut.cz>
+Priority: extra
+Description: RTEMS executive for target board CSB336/PiMX1 (arm-rtems)
+ .
+ RTEMS targetting board CSB336/PiMX1 (arm-rtems)
diff --git a/rtems-patches/control b/rtems-patches/control
new file mode 100644 (file)
index 0000000..11f2aea
--- /dev/null
@@ -0,0 +1,11 @@
+Package: rtems-common
+Version: 4.7.1
+Architecture: amd64
+Source: rtems-4.7.1
+Section: cross-dev
+Priority: extra
+Maintainer: Pavel Pisa <pisa@cmp.felk.cvut.cz>
+Priority: extra
+Description: RTEMS executive common files
+ .
+ RTEMS support files common to all target architectures
index 3415411c7b6d1811f3cfb028ef3e83fc605402f1..9453f0cc9c4a702b0dba5d78f71488f4b3ddd5dd 100644 (file)
@@ -1,12 +1,43 @@
+---
+ c/src/lib/libbsp/m68k/mo376/ChangeLog                     |  455 +++
+ c/src/lib/libbsp/m68k/mo376/Makefile.am                   |   68 
+ c/src/lib/libbsp/m68k/mo376/README                        |   24 
+ c/src/lib/libbsp/m68k/mo376/bsp_specs                     |   16 
+ c/src/lib/libbsp/m68k/mo376/clock/ckinit.c                |  128 +
+ c/src/lib/libbsp/m68k/mo376/configure.ac                  |   20 
+ c/src/lib/libbsp/m68k/mo376/console/console.c             |  174 +
+ c/src/lib/libbsp/m68k/mo376/console/sci.c                 | 1596 ++++++++++++++
+ c/src/lib/libbsp/m68k/mo376/console/sci.h                 |  234 ++
+ c/src/lib/libbsp/m68k/mo376/include/bsp.h                 |  139 +
+ c/src/lib/libbsp/m68k/mo376/include/bspopts.h.in          |   16 
+ c/src/lib/libbsp/m68k/mo376/include/mrm332.h              |   70 
+ c/src/lib/libbsp/m68k/mo376/include/tm27.h                |   34 
+ c/src/lib/libbsp/m68k/mo376/misc/dotests                  |   15 
+ c/src/lib/libbsp/m68k/mo376/misc/gdbinit68                |   16 
+ c/src/lib/libbsp/m68k/mo376/misc/interr.c                 |   99 
+ c/src/lib/libbsp/m68k/mo376/preinstall.am                 |   66 
+ c/src/lib/libbsp/m68k/mo376/spurious/spinit.c             |  105 
+ c/src/lib/libbsp/m68k/mo376/start/start.S                 |  150 +
+ c/src/lib/libbsp/m68k/mo376/startup/bspclean.c            |   27 
+ c/src/lib/libbsp/m68k/mo376/startup/bspstart.c            |   82 
+ c/src/lib/libbsp/m68k/mo376/startup/except_vect_332_ROM.S |  293 ++
+ c/src/lib/libbsp/m68k/mo376/startup/linkcmds              |  164 +
+ c/src/lib/libbsp/m68k/mo376/startup/linkcmds_ROM          |  200 +
+ c/src/lib/libbsp/m68k/mo376/startup/start_c.c             |  125 +
+ c/src/lib/libbsp/m68k/mo376/timer/timer.c                 |   81 
+ c/src/lib/libbsp/m68k/mo376/times                         |  195 +
+ make/custom/mo376.cfg                                     |   67 
+ 28 files changed, 4659 insertions(+)
+
 Index: rtems/make/custom/mo376.cfg
 ===================================================================
 Index: rtems/make/custom/mo376.cfg
 ===================================================================
---- /dev/null
-+++ rtems/make/custom/mo376.cfg
-@@ -0,0 +1,68 @@
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/make/custom/mo376.cfg        2007-08-14 17:20:30.000000000 +0200
+@@ -0,0 +1,67 @@
 +#
 +#  Config file for the mrm332 BSP
 +#
 +#
 +#  Config file for the mrm332 BSP
 +#
-+#  $Id: mrm332.cfg,v 1.8 2004/02/04 16:50:30 ralf Exp $
++#  $Id: mrm332.cfg,v 1.9.2.3 2007/01/18 11:27:07 ralf Exp $
 +#
 +
 +include $(RTEMS_ROOT)/make/custom/default.cfg
 +#
 +
 +include $(RTEMS_ROOT)/make/custom/default.cfg
@@ -21,12 +52,11 @@ Index: rtems/make/custom/mo376.cfg
 +#  and (hopefully) optimize for it. 
 +CPU_CFLAGS = -mcpu32
 +
 +#  and (hopefully) optimize for it. 
 +CPU_CFLAGS = -mcpu32
 +
-+# optimize flag: typically -0, could use -O4 or -fast, -O4 is ok for RTEMS
-+CFLAGS_OPTIMIZE_V=-O4 -fomit-frame-pointer
++# optimize flag: typically -O2
++CFLAGS_OPTIMIZE_V = -O2 -g -fomit-frame-pointer
 +
 +# The following are definitions of make-exe which will work using ld as
 +
 +# The following are definitions of make-exe which will work using ld as
-+# is currently required.  It is expected that as of gcc 2.8, the end user
-+# will be able to override parts of the compilers specs and link using gcc.
++# is currently required.
 +
 +ifeq ($(MRM_IN_ROM),yes)
 +# Build a rommable image - move the .data section after the .text section
 +
 +ifeq ($(MRM_IN_ROM),yes)
 +# Build a rommable image - move the .data section after the .text section
@@ -50,8 +80,8 @@ Index: rtems/make/custom/mo376.cfg
 +              /\.text/ { base = $$4 ; size = $$3 };\
 +              END { printf("0x%x", h2d(base) + h2d(size)) }'\
 +             ` $(basename $@).pxe $(basename $@).nxe
 +              /\.text/ { base = $$4 ; size = $$3 };\
 +              END { printf("0x%x", h2d(base) + h2d(size)) }'\
 +             ` $(basename $@).pxe $(basename $@).nxe
-+      $(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).i
-+      sed -e 's/.$$//' -e '/^S0/d' $(basename $@).i | \
++      $(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).srec
++      sed -e 's/.$$//' -e '/^S0/d' $(basename $@).srec | \
 +          $(PACKHEX) > $(basename $@).exe
 +      $(NM) -g -n $(basename $@).pxe > $(basename $@).pnum
 +      $(NM) -g -n $(basename $@).nxe > $(basename $@).num
 +          $(PACKHEX) > $(basename $@).exe
 +      $(NM) -g -n $(basename $@).pxe > $(basename $@).pnum
 +      $(NM) -g -n $(basename $@).nxe > $(basename $@).num
@@ -61,9 +91,9 @@ Index: rtems/make/custom/mo376.cfg
 +define make-exe
 +      $(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $(basename $@).nxe \
 +          $(LINK_OBJS) $(LINK_LIBS)
 +define make-exe
 +      $(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) -o $(basename $@).nxe \
 +          $(LINK_OBJS) $(LINK_LIBS)
-+      $(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).i
++      $(OBJCOPY) -O srec $(basename $@).nxe $(basename $@).srec
 +#     m68k-rtems-objdump -dxC $(basename $@).nxe > $(basename $@).dump
 +#     m68k-rtems-objdump -dxC $(basename $@).nxe > $(basename $@).dump
-+      sed -e 's/.$$//' -e '/^S0/d' $(basename $@).i | \
++      sed -e 's/.$$//' -e '/^S0/d' $(basename $@).srec | \
 +          $(PACKHEX) > $(basename $@).exe
 +      $(NM) -g -n $(basename $@).nxe > $(basename $@).num
 +      $(SIZE) $(basename $@).nxe
 +          $(PACKHEX) > $(basename $@).exe
 +      $(NM) -g -n $(basename $@).nxe > $(basename $@).num
 +      $(SIZE) $(basename $@).nxe
@@ -73,9 +103,9 @@ Index: rtems/make/custom/mo376.cfg
 +# Miscellaneous additions go here
 Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.h
 ===================================================================
 +# Miscellaneous additions go here
 Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.h
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/console/sci.h
-@@ -0,0 +1,231 @@
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/m68k/mo376/console/sci.h    2007-08-14 17:20:30.000000000 +0200
+@@ -0,0 +1,234 @@
 +/****************************************************************************
 +* File:     sci.h
 +*
 +/****************************************************************************
 +* File:     sci.h
 +*
@@ -83,7 +113,7 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.h
 +*
 +* Note:     See bsp.h,confdefs.h,system.h for installing drivers into RTEMS.
 +*
 +*
 +* Note:     See bsp.h,confdefs.h,system.h for installing drivers into RTEMS.
 +*
-+* $Id: sci.h,v 1.4 2004/04/21 16:01:35 ralf Exp $
++* $Id: sci.h,v 1.5 2006/09/11 21:43:55 joel Exp $
 +****************************************************************************/
 +
 +#ifndef _sci_h_
 +****************************************************************************/
 +
 +#ifndef _sci_h_
@@ -94,64 +124,65 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.h
 +  I'm still working on these...
 +*******************************************************************************/
 +
 +  I'm still working on these...
 +*******************************************************************************/
 +
-+#define SCI_IOCTL_PARITY_NONE           0x00    // no parity bit after the data bits
-+#define SCI_IOCTL_PARITY_ODD            0x01    // parity bit added after data bits
-+#define SCI_IOCTL_PARITY_EVEN           0x02    // parity bit added after data bits
-+#define SCI_IOCTL_PARITY_MARK           0x03    // parity bit is lo, -12 volts, logical 1
-+#define SCI_IOCTL_PARITY_SPACE          0x04    // parity bit is hi, +12 volts, logical 0
-+#define SCI_IOCTL_PARITY_FORCED_ON      0x03    // parity bit is forced hi or lo
-+#define SCI_IOCTL_PARITY_FORCED_OFF     0x04    // parity bit is forced hi or lo
++#define SCI_IOCTL_PARITY_NONE           0x00    /* no parity bit after the data bits */
++#define SCI_IOCTL_PARITY_ODD            0x01    /* parity bit added after data bits */
++#define SCI_IOCTL_PARITY_EVEN           0x02    /* parity bit added after data bits */
++#define SCI_IOCTL_PARITY_MARK           0x03    /* parity bit is lo, -12 volts, logical 1 */
++#define SCI_IOCTL_PARITY_SPACE          0x04    /* parity bit is hi, +12 volts, logical 0 */
++#define SCI_IOCTL_PARITY_FORCED_ON      0x03    /* parity bit is forced hi or lo */
++#define SCI_IOCTL_PARITY_FORCED_OFF     0x04    /* parity bit is forced hi or lo */
 +
 +
-+#define SCI_IOCTL_BAUD_RATE             0x20    // set the baud rate, arg is baud
++#define SCI_IOCTL_BAUD_RATE             0x20    /* set the baud rate, arg is baud */
 +
 +
-+#define SCI_IOCTL_DATA_BITS             0x30    // set the data bits, arg is # bits
++#define SCI_IOCTL_DATA_BITS             0x30    /* set the data bits, arg is # bits */
 +
 +
-+#define SCI_IOCTL_STOP_BITS_1           0x40    // 1 stop bit after char frame
-+#define SCI_IOCTL_STOP_BITS_2           0x41    // 2 stop bit after char frame
++#define SCI_IOCTL_STOP_BITS_1           0x40    /* 1 stop bit after char frame */
++#define SCI_IOCTL_STOP_BITS_2           0x41    /* 2 stop bit after char frame */
 +
 +
-+#define SCI_IOCTL_MODE_NORMAL           0x50    // normal operating mode
-+#define SCI_IOCTL_MODE_LOOP             0x51    // internal loopback mode
++#define SCI_IOCTL_MODE_NORMAL           0x50    /* normal operating mode */
++#define SCI_IOCTL_MODE_LOOP             0x51    /* internal loopback mode */
 +
 +
-+#define SCI_IOCTL_FLOW_NONE             0x60    // no flow control
-+#define SCI_IOCTL_FLOW_RTS_CTS          0x61    // hardware flow control
++#define SCI_IOCTL_FLOW_NONE             0x60    /* no flow control */
++#define SCI_IOCTL_FLOW_RTS_CTS          0x61    /* hardware flow control */
 +
 +
-+#define SCI_IOCTL_SEND_BREAK            0x70    // send an rs-232 break
++#define SCI_IOCTL_SEND_BREAK            0x70    /* send an rs-232 break */
 +
 +
-+#define SCI_IOCTL_MODE_1200             0x80    // 1200,n,8,1 download mode
-+#define SCI_IOCTL_MODE_9600             0x81    // 9600,n,8,1 download mode
-+#define SCI_IOCTL_MODE_9_BIT            0x82    // 9600,forced,8,1 command mode
++#define SCI_IOCTL_MODE_1200             0x80    /* 1200,n,8,1 download mode */
++#define SCI_IOCTL_MODE_9600             0x81    /* 9600,n,8,1 download mode */
++#define SCI_IOCTL_MODE_9_BIT            0x82    /* 9600,forced,8,1 command mode */
 +\f
 +
 +/*******************************************************************************
 +  SCI Registers
 +*******************************************************************************/
 +
 +\f
 +
 +/*******************************************************************************
 +  SCI Registers
 +*******************************************************************************/
 +
-+// SCI Control Register 0  (SCCR0)  $FFFC08
-+
-+//  8 4 2 1 - 8 4 2 1 - 8 4 2 1 - 8 4 2 1
-+//  ^ ^ ^ ^   ^ ^ ^ ^   ^ ^ ^ ^   ^ ^ ^ ^
-+//  | | | |   | | | |   | | | |   | | | |
-+//  | | | |   | | | |   | | | |   | | | +-----   0 baud rate divisor
-+//  | | | |   | | | |   | | | |   | | +-------   1 baud rate divisor
-+//  | | | |   | | | |   | | | |   | +---------   2 baud rate divisor
-+//  | | | |   | | | |   | | | |   +-----------   3 baud rate divisor
-+//  | | | |   | | | |   | | | |
-+//  | | | |   | | | |   | | | +---------------   4 baud rate divisor
-+//  | | | |   | | | |   | | +-----------------   5 baud rate divisor
-+//  | | | |   | | | |   | +-------------------   6 baud rate divisor
-+//  | | | |   | | | |   +---------------------   7 baud rate divisor
-+//  | | | |   | | | |
-+//  | | | |   | | | +-------------------------   8 baud rate divisor
-+//  | | | |   | | +---------------------------   9 baud rate divisor
-+//  | | | |   | +-----------------------------  10 baud rate divisor
-+//  | | | |   +-------------------------------  11 baud rate divisor
-+//  | | | |
-+//  | | | +-----------------------------------  12 baud rate divisor
-+//  | | +-------------------------------------  13 unused
-+//  | +---------------------------------------  14 unused
-+//  +-----------------------------------------  15 unused
-+
-+//  0 0 0 0 - 0 0 0 0 - 0 0 0 0 - 0 1 0 0       reset value - (64k baud?)
++/* SCI Control Register 0  (SCCR0)  $FFFC08
++
++    8 4 2 1 - 8 4 2 1 - 8 4 2 1 - 8 4 2 1
++    ^ ^ ^ ^   ^ ^ ^ ^   ^ ^ ^ ^   ^ ^ ^ ^
++    | | | |   | | | |   | | | |   | | | |
++    | | | |   | | | |   | | | |   | | | +-----   0 baud rate divisor
++    | | | |   | | | |   | | | |   | | +-------   1 baud rate divisor
++    | | | |   | | | |   | | | |   | +---------   2 baud rate divisor
++    | | | |   | | | |   | | | |   +-----------   3 baud rate divisor
++    | | | |   | | | |   | | | |
++    | | | |   | | | |   | | | +---------------   4 baud rate divisor
++    | | | |   | | | |   | | +-----------------   5 baud rate divisor
++    | | | |   | | | |   | +-------------------   6 baud rate divisor
++    | | | |   | | | |   +---------------------   7 baud rate divisor
++    | | | |   | | | |
++    | | | |   | | | +-------------------------   8 baud rate divisor
++    | | | |   | | +---------------------------   9 baud rate divisor
++    | | | |   | +-----------------------------  10 baud rate divisor
++    | | | |   +-------------------------------  11 baud rate divisor
++    | | | |
++    | | | +-----------------------------------  12 baud rate divisor
++    | | +-------------------------------------  13 unused
++    | +---------------------------------------  14 unused
++    +-----------------------------------------  15 unused
++
++    0 0 0 0 - 0 0 0 0 - 0 0 0 0 - 0 1 0 0       reset value - (64k baud?)
++ */
 +
 +#define SCI_BAUD_57_6K            9
 +#define SCI_BAUD_38_4K           14
 +
 +#define SCI_BAUD_57_6K            9
 +#define SCI_BAUD_38_4K           14
@@ -162,115 +193,117 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.h
 +#define SCI_BAUD_1200           437
 +\f
 +
 +#define SCI_BAUD_1200           437
 +\f
 +
-+//  SCI Control Register 1  (SCCR1)  $FFFC0A
-+
-+//  8 4 2 1 - 8 4 2 1 - 8 4 2 1 - 8 4 2 1
-+//  ^ ^ ^ ^   ^ ^ ^ ^   ^ ^ ^ ^   ^ ^ ^ ^
-+//  | | | |   | | | |   | | | |   | | | |
-+//  | | | |   | | | |   | | | |   | | | +-----   0 send a break
-+//  | | | |   | | | |   | | | |   | | +-------   1 rcvr wakeup mode
-+//  | | | |   | | | |   | | | |   | +---------   2 rcvr enable
-+//  | | | |   | | | |   | | | |   +-----------   3 xmtr enable
-+//  | | | |   | | | |   | | | |
-+//  | | | |   | | | |   | | | +---------------   4 idle line intr enable
-+//  | | | |   | | | |   | | +-----------------   5 rcvr intr enable
-+//  | | | |   | | | |   | +-------------------   6 xmit complete intr enable
-+//  | | | |   | | | |   +---------------------   7 xmtr intr enable
-+//  | | | |   | | | |
-+//  | | | |   | | | +-------------------------   8 wakeup on address mark
-+//  | | | |   | | +---------------------------   9 mode 1=9 bits, 0=8 bits
-+//  | | | |   | +-----------------------------  10 parity enable 1=on, 0=off
-+//  | | | |   +-------------------------------  11 parity type 1=odd, 0=even
-+//  | | | |
-+//  | | | +-----------------------------------  12 idle line select
-+//  | | +-------------------------------------  13 wired-or mode
-+//  | +---------------------------------------  14 loop mode
-+//  +-----------------------------------------  15 unused
-+
-+//  0 0 0 0 - 0 0 0 0 - 0 0 0 0 - 0 0 0 0       reset value
-+
-+#define SCI_SEND_BREAK          0x0001          // 0000-0000-0000-0001
-+#define SCI_RCVR_WAKEUP         0x0002          // 0000-0000-0000-0010
-+#define SCI_ENABLE_RCVR         0x0004          // 0000-0000-0000-0100
-+#define SCI_ENABLE_XMTR         0x0008          // 0000-0000-0000-1000
-+
-+#define SCI_DISABLE_RCVR        0xFFFB          // 1111-1111-1111-1011
-+#define SCI_DISABLE_XMTR        0xFFF7          // 1111-1111-1111-0111
-+
-+#define SCI_ENABLE_INT_IDLE     0x0010          // 0000-0000-0001-0000
-+#define SCI_ENABLE_INT_RX       0x0020          // 0000-0000-0010-0000
-+#define SCI_ENABLE_INT_TX_DONE  0x0040          // 0000-0000-0100-0000
-+#define SCI_ENABLE_INT_TX       0x0080          // 0000-0000-1000-0000
-+
-+#define SCI_DISABLE_INT_ALL     0xFF00          // 1111-1111-0000-0000 ???
-+
-+#define SCI_DISABLE_INT_RX      0xFFDF          // 1111-1111-1101-1111
-+#define SCI_CLEAR_RX_INT        0xFFBF          // 1111-1111-1011-1111
-+#define SCI_DISABLE_INT_TX      0xFF7F          // 1111-1111-0111-1111
-+#define SCI_CLEAR_TDRE          0xFEFF          // 1111-1110-1111-1111
-+
-+#define SCI_RCVR_WAKE_ON_MARK   0x0100          // 0000-0001-0000-0000
-+#define SCI_9_DATA_BITS         0x0200          // 0000-0010-0000-0000
-+#define SCI_PARITY_ENABLE       0x0400          // 0000-0100-0000-0000
-+#define SCI_PARITY_ODD          0x0800          // 0000-1000-0000-0000
-+
-+#define SCI_RCVR_WAKE_ON_IDLE   0xFEFF          // 1111-1110-1111-1111
-+#define SCI_8_DATA_BITS         0xFDFF          // 1111-1101-1111-1111
-+#define SCI_PARITY_DISABLE      0xFBFF          // 1111-1011-1111-1111
-+#define SCI_PARITY_EVEN         0xF7FF          // 1111-0111-1111-1111
-+
-+#define SCI_PARITY_NONE         0xF3FF          // 1111-0011-1111-1111
-+
-+#define SCI_IDLE_LINE_LONG      0x1000          // 0001-0000-0000-0000
-+#define SCI_TXD_OPEN_DRAIN      0x2000          // 0010-0000-0000-0000
-+#define SCI_LOOPBACK_MODE       0x4000          // 0100-0000-0000-0000
-+#define SCI_SCCR1_UNUSED        0x8000          // 1000-0000-0000-0000
++/*  SCI Control Register 1  (SCCR1)  $FFFC0A
++
++    8 4 2 1 - 8 4 2 1 - 8 4 2 1 - 8 4 2 1
++    ^ ^ ^ ^   ^ ^ ^ ^   ^ ^ ^ ^   ^ ^ ^ ^
++    | | | |   | | | |   | | | |   | | | |
++    | | | |   | | | |   | | | |   | | | +-----   0 send a break
++    | | | |   | | | |   | | | |   | | +-------   1 rcvr wakeup mode
++    | | | |   | | | |   | | | |   | +---------   2 rcvr enable
++    | | | |   | | | |   | | | |   +-----------   3 xmtr enable
++    | | | |   | | | |   | | | |
++    | | | |   | | | |   | | | +---------------   4 idle line intr enable
++    | | | |   | | | |   | | +-----------------   5 rcvr intr enable
++    | | | |   | | | |   | +-------------------   6 xmit complete intr enable
++    | | | |   | | | |   +---------------------   7 xmtr intr enable
++    | | | |   | | | |
++    | | | |   | | | +-------------------------   8 wakeup on address mark
++    | | | |   | | +---------------------------   9 mode 1=9 bits, 0=8 bits
++    | | | |   | +-----------------------------  10 parity enable 1=on, 0=off
++    | | | |   +-------------------------------  11 parity type 1=odd, 0=even
++    | | | |
++    | | | +-----------------------------------  12 idle line select
++    | | +-------------------------------------  13 wired-or mode
++    | +---------------------------------------  14 loop mode
++    +-----------------------------------------  15 unused
++  
++    0 0 0 0 - 0 0 0 0 - 0 0 0 0 - 0 0 0 0       reset value
++*/
++
++#define SCI_SEND_BREAK          0x0001          /* 0000-0000-0000-0001 */
++#define SCI_RCVR_WAKEUP         0x0002          /* 0000-0000-0000-0010 */
++#define SCI_ENABLE_RCVR         0x0004          /* 0000-0000-0000-0100 */
++#define SCI_ENABLE_XMTR         0x0008          /* 0000-0000-0000-1000 */
++
++#define SCI_DISABLE_RCVR        0xFFFB          /* 1111-1111-1111-1011 */
++#define SCI_DISABLE_XMTR        0xFFF7          /* 1111-1111-1111-0111 */
++
++#define SCI_ENABLE_INT_IDLE     0x0010          /* 0000-0000-0001-0000 */
++#define SCI_ENABLE_INT_RX       0x0020          /* 0000-0000-0010-0000 */
++#define SCI_ENABLE_INT_TX_DONE  0x0040          /* 0000-0000-0100-0000 */
++#define SCI_ENABLE_INT_TX       0x0080          /* 0000-0000-1000-0000 */
++
++#define SCI_DISABLE_INT_ALL     0xFF00          /* 1111-1111-0000-0000 ??? */
++
++#define SCI_DISABLE_INT_RX      0xFFDF          /* 1111-1111-1101-1111 */
++#define SCI_CLEAR_RX_INT        0xFFBF          /* 1111-1111-1011-1111 */
++#define SCI_DISABLE_INT_TX      0xFF7F          /* 1111-1111-0111-1111 */
++#define SCI_CLEAR_TDRE          0xFEFF          /* 1111-1110-1111-1111 */
++
++#define SCI_RCVR_WAKE_ON_MARK   0x0100          /* 0000-0001-0000-0000 */
++#define SCI_9_DATA_BITS         0x0200          /* 0000-0010-0000-0000 */
++#define SCI_PARITY_ENABLE       0x0400          /* 0000-0100-0000-0000 */
++#define SCI_PARITY_ODD          0x0800          /* 0000-1000-0000-0000 */
++
++#define SCI_RCVR_WAKE_ON_IDLE   0xFEFF          /* 1111-1110-1111-1111 */
++#define SCI_8_DATA_BITS         0xFDFF          /* 1111-1101-1111-1111 */
++#define SCI_PARITY_DISABLE      0xFBFF          /* 1111-1011-1111-1111 */
++#define SCI_PARITY_EVEN         0xF7FF          /* 1111-0111-1111-1111 */
++
++#define SCI_PARITY_NONE         0xF3FF          /* 1111-0011-1111-1111 */
++
++#define SCI_IDLE_LINE_LONG      0x1000          /* 0001-0000-0000-0000 */
++#define SCI_TXD_OPEN_DRAIN      0x2000          /* 0010-0000-0000-0000 */
++#define SCI_LOOPBACK_MODE       0x4000          /* 0100-0000-0000-0000 */
++#define SCI_SCCR1_UNUSED        0x8000          /* 1000-0000-0000-0000 */
 +\f
 +
 +\f
 +
-+//  SCI Status Register  (SCSR)  $FFFC0C
-+
-+//  8 4 2 1 - 8 4 2 1 - 8 4 2 1 - 8 4 2 1
-+//  ^ ^ ^ ^   ^ ^ ^ ^   ^ ^ ^ ^   ^ ^ ^ ^
-+//  | | | |   | | | |   | | | |   | | | |
-+//  | | | |   | | | |   | | | |   | | | +-----   0 PF - parity error
-+//  | | | |   | | | |   | | | |   | | +-------   1 FE - framing error
-+//  | | | |   | | | |   | | | |   | +---------   2 NF - noise flag
-+//  | | | |   | | | |   | | | |   +-----------   3 OR - overrun flag
-+//  | | | |   | | | |   | | | |
-+//  | | | |   | | | |   | | | +---------------   4 IDLE - idle line detected
-+//  | | | |   | | | |   | | +-----------------   5 RAF  - rcvr active flag
-+//  | | | |   | | | |   | +-------------------   6 RDRF - rcv data reg full
-+//  | | | |   | | | |   +---------------------   7 TC   - xmt complete flag
-+//  | | | |   | | | |
-+//  | | | |   | | | +-------------------------   8 TDRE - xmt data reg empty
-+//  | | | |   | | +---------------------------   9 always zero
-+//  | | | |   | +-----------------------------  10 always zero
-+//  | | | |   +-------------------------------  11 always zero
-+//  | | | |
-+//  | | | +-----------------------------------  12 always zero
-+//  | | +-------------------------------------  13 always zero
-+//  | +---------------------------------------  14 always zero
-+//  +-----------------------------------------  15 always zero
-+
-+//  0 0 0 0 - 0 0 0 1 - 1 0 0 0 - 0 0 0 0       reset value
-+
-+#define SCI_ERROR_PARITY        0x0001          // 0000-0000-0000-0001
-+#define SCI_ERROR_FRAMING       0x0002          // 0000-0000-0000-0010
-+#define SCI_ERROR_NOISE         0x0004          // 0000-0000-0000-0100
-+#define SCI_ERROR_OVERRUN       0x0008          // 0000-0000-0000-1000
-+
-+#define SCI_IDLE_LINE           0x0010          // 0000-0000-0001-0000
-+#define SCI_RCVR_ACTIVE         0x0020          // 0000-0000-0010-0000
-+#define SCI_RCVR_READY          0x0040          // 0000-0000-0100-0000
-+#define SCI_XMTR_IDLE           0x0080          // 0000-0000-1000-0000
-+
-+#define SCI_CLEAR_RX_INT        0xFFBF          // 1111-1111-1011-1111
-+
-+#define SCI_XMTR_READY          0x0100          // 0000-0001-0000-0000
-+
-+#define SCI_CLEAR_TDRE          0xFEFF          // 1111-1110-1111-1111
-+
-+#define SCI_XMTR_AVAILABLE      0x0180          // 0000-0001-1000-0000
++/*  SCI Status Register  (SCSR)  $FFFC0C
++
++    8 4 2 1 - 8 4 2 1 - 8 4 2 1 - 8 4 2 1
++    ^ ^ ^ ^   ^ ^ ^ ^   ^ ^ ^ ^   ^ ^ ^ ^
++    | | | |   | | | |   | | | |   | | | |
++    | | | |   | | | |   | | | |   | | | +-----   0 PF - parity error
++    | | | |   | | | |   | | | |   | | +-------   1 FE - framing error
++    | | | |   | | | |   | | | |   | +---------   2 NF - noise flag
++    | | | |   | | | |   | | | |   +-----------   3 OR - overrun flag
++    | | | |   | | | |   | | | |
++    | | | |   | | | |   | | | +---------------   4 IDLE - idle line detected
++    | | | |   | | | |   | | +-----------------   5 RAF  - rcvr active flag
++    | | | |   | | | |   | +-------------------   6 RDRF - rcv data reg full
++    | | | |   | | | |   +---------------------   7 TC   - xmt complete flag
++    | | | |   | | | |
++    | | | |   | | | +-------------------------   8 TDRE - xmt data reg empty
++    | | | |   | | +---------------------------   9 always zero
++    | | | |   | +-----------------------------  10 always zero
++    | | | |   +-------------------------------  11 always zero
++    | | | |
++    | | | +-----------------------------------  12 always zero
++    | | +-------------------------------------  13 always zero
++    | +---------------------------------------  14 always zero
++    +-----------------------------------------  15 always zero
++  
++    0 0 0 0 - 0 0 0 1 - 1 0 0 0 - 0 0 0 0       reset value
++*/
++
++#define SCI_ERROR_PARITY        0x0001          /* 0000-0000-0000-0001 */
++#define SCI_ERROR_FRAMING       0x0002          /* 0000-0000-0000-0010 */
++#define SCI_ERROR_NOISE         0x0004          /* 0000-0000-0000-0100 */
++#define SCI_ERROR_OVERRUN       0x0008          /* 0000-0000-0000-1000 */
++
++#define SCI_IDLE_LINE           0x0010          /* 0000-0000-0001-0000 */
++#define SCI_RCVR_ACTIVE         0x0020          /* 0000-0000-0010-0000 */
++#define SCI_RCVR_READY          0x0040          /* 0000-0000-0100-0000 */
++#define SCI_XMTR_IDLE           0x0080          /* 0000-0000-1000-0000 */
++
++#define SCI_CLEAR_RX_INT        0xFFBF          /* 1111-1111-1011-1111 */
++
++#define SCI_XMTR_READY          0x0100          /* 0000-0001-0000-0000 */
++
++#define SCI_CLEAR_TDRE          0xFEFF          /* 1111-1110-1111-1111 */
++
++#define SCI_XMTR_AVAILABLE      0x0180          /* 0000-0001-1000-0000 */
 +
 +\f
 +
 +
 +\f
 +
@@ -282,35 +315,35 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.h
 +extern "C" {
 +#endif
 +
 +extern "C" {
 +#endif
 +
-+// look at console_open to see how this is called
++/* look at console_open to see how this is called */
 +
 +const rtems_termios_callbacks * SciGetTermiosHandlers( int32_t   polled );
 +
 +/* SCI interrupt */
 +
 +
 +const rtems_termios_callbacks * SciGetTermiosHandlers( int32_t   polled );
 +
 +/* SCI interrupt */
 +
-+//rtems_isr SciIsr( rtems_vector_number vector );
++/*rtems_isr SciIsr( rtems_vector_number vector ); */
 +
 +
-+//int32_t   SciOpenPolled    ( int32_t   major, int32_t   minor, void *arg );
-+//int32_t   SciOpenInterrupt ( int32_t   major, int32_t   minor, void *arg );
++/*int32_t   SciOpenPolled    ( int32_t   major, int32_t   minor, void *arg ); */
++/*int32_t   SciOpenInterrupt ( int32_t   major, int32_t   minor, void *arg ); */
 +
 +
-+//int32_t   SciClose         ( int32_t   major, int32_t   minor, void *arg );
++/*int32_t   SciClose         ( int32_t   major, int32_t   minor, void *arg ); */
 +
 +
-+//int32_t   SciWritePolled   ( int32_t   minor, const char *buf, int32_t   len );
-+//int32_t   SciWriteInterrupt( int32_t   minor, const char *buf, int32_t   len );
++/*int32_t   SciWritePolled   ( int32_t   minor, const char *buf, int32_t   len ); */
++/*int32_t   SciWriteInterrupt( int32_t   minor, const char *buf, int32_t   len ); */
 +
 +
-+//int32_t   SciReadPolled    ( int32_t   minor );
++/*int32_t   SciReadPolled    ( int32_t   minor ); */
 +
 +
-+//int32_t   SciSetAttributes ( int32_t   minor, const struct termios *t );
++/*int32_t   SciSetAttributes ( int32_t   minor, const struct termios *t ); */
 +
 +#ifdef __cplusplus
 +}
 +#endif
 +
 +
 +#ifdef __cplusplus
 +}
 +#endif
 +
-+#endif  // _sci_h_
++#endif  /* _sci_h_ */
 Index: rtems/c/src/lib/libbsp/m68k/mo376/startup/linkcmds_ROM
 ===================================================================
 Index: rtems/c/src/lib/libbsp/m68k/mo376/startup/linkcmds_ROM
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/startup/linkcmds_ROM
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/m68k/mo376/startup/linkcmds_ROM     2007-08-14 17:20:30.000000000 +0200
 @@ -0,0 +1,200 @@
 +/*  linkcmds
 + *
 @@ -0,0 +1,200 @@
 +/*  linkcmds
 + *
@@ -514,8 +547,8 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/startup/linkcmds_ROM
 +}
 Index: rtems/c/src/lib/libbsp/m68k/mo376/startup/except_vect_332_ROM.S
 ===================================================================
 +}
 Index: rtems/c/src/lib/libbsp/m68k/mo376/startup/except_vect_332_ROM.S
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/startup/except_vect_332_ROM.S
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/m68k/mo376/startup/except_vect_332_ROM.S    2007-08-14 17:20:30.000000000 +0200
 @@ -0,0 +1,293 @@
 +/*
 + *  $Id: except_vect_332_ROM.S,v 1.3 2004/04/21 16:01:35 ralf Exp $
 @@ -0,0 +1,293 @@
 +/*
 + *  $Id: except_vect_332_ROM.S,v 1.3 2004/04/21 16:01:35 ralf Exp $
@@ -812,9 +845,9 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/startup/except_vect_332_ROM.S
 +                                 not vectored to reboot or did not return. */
 Index: rtems/c/src/lib/libbsp/m68k/mo376/console/console.c
 ===================================================================
 +                                 not vectored to reboot or did not return. */
 Index: rtems/c/src/lib/libbsp/m68k/mo376/console/console.c
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/console/console.c
-@@ -0,0 +1,176 @@
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/m68k/mo376/console/console.c        2007-08-14 17:20:30.000000000 +0200
+@@ -0,0 +1,174 @@
 +/*
 + *  This file contains the generic console driver shell used
 + *  by all console drivers using libchip.
 +/*
 + *  This file contains the generic console driver shell used
 + *  by all console drivers using libchip.
@@ -828,15 +861,13 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/console.c
 + *  found in the file LICENSE in this distribution or at
 + *  http://www.rtems.com/license/LICENSE.
 + *
 + *  found in the file LICENSE in this distribution or at
 + *  http://www.rtems.com/license/LICENSE.
 + *
-+ *  $Id: console.c,v 1.7 2004/04/21 16:01:35 ralf Exp $
++ *  $Id: console.c,v 1.8 2006/09/11 21:43:53 joel Exp $
 + */
 +
 +#include <bsp.h>
 +#include <rtems/libio.h>
 +#include <termios.h>
 +#include "sci.h"
 + */
 +
 +#include <bsp.h>
 +#include <rtems/libio.h>
 +#include <termios.h>
 +#include "sci.h"
-+//#include "../../../../../../rtems/c/src/lib/libbsp/m68k/opti/console/duart.h"
-+//#include "../../../../../../rtems/c/src/lib/libc/libio_.h"
 +
 +/*PAGE
 + *
 +
 +/*PAGE
 + *
@@ -991,29 +1022,10 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/console.c
 +
 +  return RTEMS_SUCCESSFUL;
 +}
 +
 +  return RTEMS_SUCCESSFUL;
 +}
-Index: rtems/c/src/lib/libbsp/m68k/mo376/.cvsignore
-===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/.cvsignore
-@@ -0,0 +1,14 @@
-+aclocal.m4
-+autom4te*.cache
-+config.cache
-+config.guess
-+config.log
-+config.status
-+config.sub
-+configure
-+depcomp
-+install-sh
-+Makefile
-+Makefile.in
-+missing
-+mkinstalldirs
 Index: rtems/c/src/lib/libbsp/m68k/mo376/start/start.S
 ===================================================================
 Index: rtems/c/src/lib/libbsp/m68k/mo376/start/start.S
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/start/start.S
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/m68k/mo376/start/start.S    2007-08-14 17:20:30.000000000 +0200
 @@ -0,0 +1,150 @@
 +/*
 + *  $Id
 @@ -0,0 +1,150 @@
 +/*
 + *  $Id
@@ -1167,8 +1179,8 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/start/start.S
 +#endif
 Index: rtems/c/src/lib/libbsp/m68k/mo376/misc/dotests
 ===================================================================
 +#endif
 Index: rtems/c/src/lib/libbsp/m68k/mo376/misc/dotests
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/misc/dotests
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/m68k/mo376/misc/dotests     2007-08-14 17:20:30.000000000 +0200
 @@ -0,0 +1,15 @@
 +#! /bin/bash
 +#
 @@ -0,0 +1,15 @@
 +#! /bin/bash
 +#
@@ -1187,9 +1199,9 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/misc/dotests
 +kill -9 $cpJob
 Index: rtems/c/src/lib/libbsp/m68k/mo376/include/bsp.h
 ===================================================================
 +kill -9 $cpJob
 Index: rtems/c/src/lib/libbsp/m68k/mo376/include/bsp.h
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/include/bsp.h
-@@ -0,0 +1,140 @@
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/m68k/mo376/include/bsp.h    2007-08-14 17:20:30.000000000 +0200
+@@ -0,0 +1,139 @@
 +/*  bsp.h
 + *
 + *  This include file contains all mrm board IO definitions.
 +/*  bsp.h
 + *
 + *  This include file contains all mrm board IO definitions.
@@ -1201,7 +1213,7 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/include/bsp.h
 + *  found in the file LICENSE in this distribution or at
 + *  http://www.rtems.com/license/LICENSE.
 + *
 + *  found in the file LICENSE in this distribution or at
 + *  http://www.rtems.com/license/LICENSE.
 + *
-+ *  $Id: bsp.h,v 1.13 2005/05/26 05:31:17 ralf Exp $
++ *  $Id: bsp.h,v 1.14 2006/03/17 10:11:36 ralf Exp $
 + */
 +
 +#ifndef _BSP_H
 + */
 +
 +#ifndef _BSP_H
@@ -1329,11 +1341,10 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/include/bsp.h
 +#endif
 +
 +#endif
 +#endif
 +
 +#endif
-+/* end of include file */
 Index: rtems/c/src/lib/libbsp/m68k/mo376/misc/interr.c
 ===================================================================
 Index: rtems/c/src/lib/libbsp/m68k/mo376/misc/interr.c
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/misc/interr.c
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/m68k/mo376/misc/interr.c    2007-08-14 17:20:30.000000000 +0200
 @@ -0,0 +1,99 @@
 +/*
 + *  Internal Error Handler
 @@ -0,0 +1,99 @@
 +/*
 + *  Internal Error Handler
@@ -1436,9 +1447,27 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/misc/interr.c
 +}
 Index: rtems/c/src/lib/libbsp/m68k/mo376/ChangeLog
 ===================================================================
 +}
 Index: rtems/c/src/lib/libbsp/m68k/mo376/ChangeLog
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/ChangeLog
-@@ -0,0 +1,437 @@
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/m68k/mo376/ChangeLog        2007-08-14 17:20:30.000000000 +0200
+@@ -0,0 +1,455 @@
++2006-12-02    Ralf Corsépius <ralf.corsepius@rtems.org>
++
++      * configure.ac: New BUG-REPORT address.
++
++2006-10-20    Ralf Corsépius <ralf.corsepius@rtems.org>
++
++      * Makefile.am: Remove superfluous -DASM.
++
++2006-10-19    Ralf Corsépius <ralf.corsepius@rtems.org>
++
++      * configure.ac: Require automake-1.10. Require autoconf-2.60.
++
++2006-09-11    Joel Sherrill <joel@OARcorp.com>
++
++      * console/console.c, console/sci.c, console/sci.h, spurious/spinit.c,
++      startup/bspclean.c, startup/start_c.c: Convert C++ style comments to
++      C style.
++
 +2006-02-08    Joel Sherrill <joel@OARcorp.com>
 +
 +      * startup/linkcmds, startup/linkcmds_ROM: Add sections required by
 +2006-02-08    Joel Sherrill <joel@OARcorp.com>
 +
 +      * startup/linkcmds, startup/linkcmds_ROM: Add sections required by
@@ -1878,8 +1907,8 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/ChangeLog
 +
 Index: rtems/c/src/lib/libbsp/m68k/mo376/startup/bspclean.c
 ===================================================================
 +
 Index: rtems/c/src/lib/libbsp/m68k/mo376/startup/bspclean.c
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/startup/bspclean.c
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/m68k/mo376/startup/bspclean.c       2007-08-14 17:20:30.000000000 +0200
 @@ -0,0 +1,27 @@
 +/*  bsp_cleanup()
 + *
 @@ -0,0 +1,27 @@
 +/*  bsp_cleanup()
 + *
@@ -1897,7 +1926,7 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/startup/bspclean.c
 + *  found in the file LICENSE in this distribution or at
 + *  http://www.rtems.com/license/LICENSE.
 + *
 + *  found in the file LICENSE in this distribution or at
 + *  http://www.rtems.com/license/LICENSE.
 + *
-+ *  $Id: bspclean.c,v 1.4 2004/04/21 10:42:52 ralf Exp $
++ *  $Id: bspclean.c,v 1.5 2006/09/11 21:43:56 joel Exp $
 + */
 +
 +#include <bsp.h>
 + */
 +
 +#include <bsp.h>
@@ -1906,12 +1935,12 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/startup/bspclean.c
 +{
 +    /* interrupt driven stdio must be flushed */
 +    _CPU_ISR_Set_level( 7 );
 +{
 +    /* interrupt driven stdio must be flushed */
 +    _CPU_ISR_Set_level( 7 );
-+    //_UART_flush();
++    /*_UART_flush(); */
 +}
 Index: rtems/c/src/lib/libbsp/m68k/mo376/timer/timer.c
 ===================================================================
 +}
 Index: rtems/c/src/lib/libbsp/m68k/mo376/timer/timer.c
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/timer/timer.c
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/m68k/mo376/timer/timer.c    2007-08-14 17:20:30.000000000 +0200
 @@ -0,0 +1,81 @@
 +/*  Timer_init()
 + *
 @@ -0,0 +1,81 @@
 +/*  Timer_init()
 + *
@@ -1996,8 +2025,8 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/timer/timer.c
 +}
 Index: rtems/c/src/lib/libbsp/m68k/mo376/clock/ckinit.c
 ===================================================================
 +}
 Index: rtems/c/src/lib/libbsp/m68k/mo376/clock/ckinit.c
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/clock/ckinit.c
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/m68k/mo376/clock/ckinit.c   2007-08-14 17:20:30.000000000 +0200
 @@ -0,0 +1,128 @@
 +/*  Clock_init()
 + *
 @@ -0,0 +1,128 @@
 +/*  Clock_init()
 + *
@@ -2129,8 +2158,8 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/clock/ckinit.c
 +}
 Index: rtems/c/src/lib/libbsp/m68k/mo376/misc/gdbinit68
 ===================================================================
 +}
 Index: rtems/c/src/lib/libbsp/m68k/mo376/misc/gdbinit68
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/misc/gdbinit68
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/m68k/mo376/misc/gdbinit68   2007-08-14 17:20:30.000000000 +0200
 @@ -0,0 +1,16 @@
 +#
 +#  $Id: gdbinit68,v 1.1 2001/05/25 16:28:46 joel Exp $
 @@ -0,0 +1,16 @@
 +#
 +#  $Id: gdbinit68,v 1.1 2001/05/25 16:28:46 joel Exp $
@@ -2150,20 +2179,20 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/misc/gdbinit68
 +q
 Index: rtems/c/src/lib/libbsp/m68k/mo376/configure.ac
 ===================================================================
 +q
 Index: rtems/c/src/lib/libbsp/m68k/mo376/configure.ac
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/configure.ac
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/m68k/mo376/configure.ac     2007-08-14 17:20:30.000000000 +0200
 @@ -0,0 +1,20 @@
 +## Process this file with autoconf to produce a configure script.
 +## 
 @@ -0,0 +1,20 @@
 +## Process this file with autoconf to produce a configure script.
 +## 
-+## $Id: configure.ac,v 1.14 2004/09/24 06:32:09 ralf Exp $
++## $Id: configure.ac,v 1.14.2.2 2006/12/02 06:04:46 ralf Exp $
 +
 +
-+AC_PREREQ(2.59)
-+AC_INIT([rtems-c-src-lib-libbsp-m68k-mrm332],[_RTEMS_VERSION],[rtems-bugs@rtems.com])
++AC_PREREQ(2.60)
++AC_INIT([rtems-c-src-lib-libbsp-m68k-mrm332],[_RTEMS_VERSION],[http://www.rtems.org/bugzilla])
 +AC_CONFIG_SRCDIR([bsp_specs])
 +RTEMS_TOP(../../../../../..)
 +
 +RTEMS_CANONICAL_TARGET_CPU
 +AC_CONFIG_SRCDIR([bsp_specs])
 +RTEMS_TOP(../../../../../..)
 +
 +RTEMS_CANONICAL_TARGET_CPU
-+AM_INIT_AUTOMAKE([no-define nostdinc foreign 1.9])
++AM_INIT_AUTOMAKE([no-define nostdinc foreign 1.10])
 +RTEMS_BSP_CONFIGURE
 +
 +RTEMS_PROG_CC_FOR_TARGET
 +RTEMS_BSP_CONFIGURE
 +
 +RTEMS_PROG_CC_FOR_TARGET
@@ -2175,8 +2204,8 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/configure.ac
 +AC_OUTPUT
 Index: rtems/c/src/lib/libbsp/m68k/mo376/README
 ===================================================================
 +AC_OUTPUT
 Index: rtems/c/src/lib/libbsp/m68k/mo376/README
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/README
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/m68k/mo376/README   2007-08-14 17:20:30.000000000 +0200
 @@ -0,0 +1,24 @@
 +#
 +#  $Id: README,v 1.1 2001/05/25 16:28:46 joel Exp $
 @@ -0,0 +1,24 @@
 +#
 +#  $Id: README,v 1.1 2001/05/25 16:28:46 joel Exp $
@@ -2204,11 +2233,11 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/README
 +
 Index: rtems/c/src/lib/libbsp/m68k/mo376/Makefile.am
 ===================================================================
 +
 Index: rtems/c/src/lib/libbsp/m68k/mo376/Makefile.am
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/Makefile.am
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/m68k/mo376/Makefile.am      2007-08-14 17:20:30.000000000 +0200
 @@ -0,0 +1,68 @@
 +##
 @@ -0,0 +1,68 @@
 +##
-+## $Id: Makefile.am,v 1.24 2006/01/12 10:12:30 ralf Exp $
++## $Id: Makefile.am,v 1.24.2.1 2006/10/20 11:54:57 ralf Exp $
 +##
 +
 +ACLOCAL_AMFLAGS = -I ../../../../aclocal
 +##
 +
 +ACLOCAL_AMFLAGS = -I ../../../../aclocal
@@ -2232,7 +2261,7 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/Makefile.am
 +
 +EXTRA_DIST += start/start.S
 +start.$(OBJEXT): start/start.S
 +
 +EXTRA_DIST += start/start.S
 +start.$(OBJEXT): start/start.S
-+      $(CPPASCOMPILE) -DASM -o $@ -c $<
++      $(CPPASCOMPILE) -o $@ -c $<
 +
 +project_lib_DATA = start.$(OBJEXT)
 +
 +
 +project_lib_DATA = start.$(OBJEXT)
 +
@@ -2277,9 +2306,9 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/Makefile.am
 +include $(top_srcdir)/../../../../automake/local.am
 Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 ===================================================================
 +include $(top_srcdir)/../../../../automake/local.am
 Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
-@@ -0,0 +1,1620 @@
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c    2007-08-14 17:20:30.000000000 +0200
+@@ -0,0 +1,1596 @@
 +/*****************************************************************************
 +* File:     sci.c
 +*
 +/*****************************************************************************
 +* File:     sci.c
 +*
@@ -2315,34 +2344,10 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +*
 +* Note:     See bsp.h,confdefs.h,system.h for installing drivers into RTEMS.
 +*
 +*
 +* Note:     See bsp.h,confdefs.h,system.h for installing drivers into RTEMS.
 +*
-+* $Id: sci.c,v 1.10 2005/01/05 18:12:35 ralf Exp $
++* $Id: sci.c,v 1.11 2006/09/11 21:43:53 joel Exp $
 +*
 +*****************************************************************************/
 +\f
 +*
 +*****************************************************************************/
 +\f
-+
-+/*****************************************************************************
-+  Compiler Options for the incurably curious
-+*****************************************************************************/
-+
-+/*
-+/opt/rtems/bin/m68k-rtems-gcc
-+    --pipe                                      # use pipes, not tmp files
-+    -B../../../../../../../../opti/lib/         # where the library is
-+    -specs bsp_specs                            # ???
-+    -qrtems                                     # ???
-+    -g                                          # add debugging info
-+    -Wall                                       # issue all warnings
-+    -fasm                                       # allow inline asm???
-+    -DCONSOLE_SCI                               # for opti-r box/rev b proto
-+    -mcpu32                                     # machine = motorola cpu 32
-+    -c                                          # compile, don't link
-+    -O4                                         # max optimization
-+    -fomit-frame-pointer                        # stack frames are optional
-+    -o o-optimize/sci.o                         # the object file
-+    ../../../../../../../../../rtems/c/src/lib/libbsp/m68k/opti/console/sci.c
-+*/
-+\f
-+
 +/*****************************************************************************
 +  Overview of serial port console terminal input/output
 +*****************************************************************************/
 +/*****************************************************************************
 +  Overview of serial port console terminal input/output
 +*****************************************************************************/
@@ -2394,29 +2399,29 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +#include <libchip/serial.h>
 +#include <libchip/sersupp.h>
 +#include "sci.h"
 +#include <libchip/serial.h>
 +#include <libchip/sersupp.h>
 +#include "sci.h"
-+//#include "../misc/include/cpu332.h"
++/*#include "../misc/include/cpu332.h" */
 +\f
 +
 +/*****************************************************************************
 +  Section B - Manifest Constants
 +*****************************************************************************/
 +
 +\f
 +
 +/*****************************************************************************
 +  Section B - Manifest Constants
 +*****************************************************************************/
 +
-+#define SCI_MINOR       0                   // minor device number
++#define SCI_MINOR       0                   /* minor device number */
 +
 +
-+// IMPORTANT - if the device driver api is opened, it means the sci is being
-+// used for direct hardware access, so other users (like termios) get ignored
-+
-+#define DRIVER_CLOSED   0                   // the device driver api is closed
-+#define DRIVER_OPENED   1                   // the device driver api is opened
++/* IMPORTANT - if the device driver api is opened, it means the sci is being
++ * used for direct hardware access, so other users (like termios) get ignored
++ */
++#define DRIVER_CLOSED   0                   /* the device driver api is closed */
++#define DRIVER_OPENED   1                   /* the device driver api is opened */
 +
 +
-+// system clock definitions, i dont have documentation on this...
++/* system clock definitions, i dont have documentation on this... */
 +
 +
-+#if 0 // Not needed, this is provided in mrm332.h
-+#define XTAL            32768.0                       // crystal frequency in Hz
-+#define NUMB_W          0                             // system clock parameters
++#if 0 /* Not needed, this is provided in mrm332.h */
++#define XTAL            32768.0    /* crystal frequency in Hz */
++#define NUMB_W          0          /* system clock parameters */
 +#define NUMB_X          1
 +#define NUMB_X          1
-+//efine NUMB_Y          0x38                  // for 14.942 Mhz
-+#define NUMB_Y          0x3F                      // for 16.777 Mhz
++#define NUMB_Y          0x38       /* for 14.942 Mhz */
++#define NUMB_Y          0x3F       /* for 16.777 Mhz */
 +
 +#define SYS_CLOCK       (XTAL * 4.0 * (NUMB_Y+1) * (1 << (2 * NUMB_W + NUMB_X)))
 +
 +
 +#define SYS_CLOCK       (XTAL * 4.0 * (NUMB_Y+1) * (1 << (2 * NUMB_W + NUMB_X)))
 +
@@ -2441,61 +2446,70 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +
 +void SCI_output_char(char c);
 +
 +
 +void SCI_output_char(char c);
 +
-+rtems_isr SciIsr( rtems_vector_number vector );         // interrupt handler
++/*rtems_isr SciIsr( rtems_vector_number vector );   interrupt handler */
 +
 +const rtems_termios_callbacks * SciGetTermiosHandlers( int32_t   polled );
 +
 +
 +const rtems_termios_callbacks * SciGetTermiosHandlers( int32_t   polled );
 +
-+rtems_device_driver SciInitialize ();                   // device driver api
-+rtems_device_driver SciOpen ();                         // device driver api
-+rtems_device_driver SciClose ();                        // device driver api
-+rtems_device_driver SciRead ();                         // device driver api
-+rtems_device_driver SciWrite ();                        // device driver api
-+rtems_device_driver SciControl ();                      // device driver api
-+
-+int32_t   SciInterruptOpen();                            // termios api
-+int32_t   SciInterruptClose();                           // termios api
-+int32_t   SciInterruptWrite();                           // termios api
++rtems_device_driver SciInitialize(                     /* device driver api */
++    rtems_device_major_number, rtems_device_minor_number, void *);
++rtems_device_driver SciOpen(                           /* device driver api */
++    rtems_device_major_number, rtems_device_minor_number, void *);
++rtems_device_driver SciClose(                          /* device driver api */
++    rtems_device_major_number, rtems_device_minor_number, void *);
++rtems_device_driver SciRead(                           /* device driver api */
++    rtems_device_major_number, rtems_device_minor_number, void *);
++rtems_device_driver SciWrite(                          /* device driver api */
++    rtems_device_major_number, rtems_device_minor_number, void *);
++rtems_device_driver SciControl(                        /* device driver api */
++    rtems_device_major_number, rtems_device_minor_number, void *);
++rtems_device_driver SciRead (
++    rtems_device_major_number, rtems_device_minor_number, void *);
 +
 +
-+int32_t   SciSetAttributes();                            // termios api
++int   SciInterruptOpen(int, int, void *);               /* termios api */
++int   SciInterruptClose(int, int, void *);              /* termios api */
++int   SciInterruptWrite(int, const char *, int);        /* termios api */
 +
 +
-+int32_t   SciPolledOpen();                               // termios api
-+int32_t   SciPolledClose();                              // termios api
-+int32_t   SciPolledRead();                               // termios api
-+int32_t   SciPolledWrite();                              // termios api
++int   SciSetAttributes(int, const struct termios*);     /* termios api */
++int   SciPolledOpen(int, int, void *);                  /* termios api */
++int   SciPolledClose(int, int, void *);                 /* termios api */
++int   SciPolledRead(int);                               /* termios api */
++int   SciPolledWrite(int, const char *, int);           /* termios api */
 +
 +
-+static void SciSetBaud(uint32_t   rate);                // hardware routine
-+static void SciSetDataBits(uint16_t   bits);            // hardware routine
-+static void SciSetParity(uint16_t   parity);            // hardware routine
++static void SciSetBaud(uint32_t   rate);                /* hardware routine */
++static void SciSetDataBits(uint16_t   bits);            /* hardware routine */
++static void SciSetParity(uint16_t   parity);            /* hardware routine */
 +
 +
-+static void inline SciDisableAllInterrupts( void );     // hardware routine
-+static void inline SciDisableTransmitInterrupts( void );// hardware routine
-+static void inline SciDisableReceiveInterrupts( void ); // hardware routine
++static void inline SciDisableAllInterrupts( void );     /* hardware routine */
++static void inline SciDisableTransmitInterrupts( void );/* hardware routine */
++static void inline SciDisableReceiveInterrupts( void ); /* hardware routine */
 +
 +
-+static void inline SciEnableTransmitInterrupts( void ); // hardware routine
-+static void inline SciEnableReceiveInterrupts( void );  // hardware routine
++static void inline SciEnableTransmitInterrupts( void ); /* hardware routine */
++static void inline SciEnableReceiveInterrupts( void );  /* hardware routine */
 +
 +
-+static void inline SciDisableReceiver( void );          // hardware routine
-+static void inline SciDisableTransmitter( void );       // hardware routine
++static void inline SciDisableReceiver( void );          /* hardware routine */
++static void inline SciDisableTransmitter( void );       /* hardware routine */
 +
 +
-+static void inline SciEnableReceiver( void );           // hardware routine
-+static void inline SciEnableTransmitter( void );        // hardware routine
++static void inline SciEnableReceiver( void );           /* hardware routine */
++static void inline SciEnableTransmitter( void );        /* hardware routine */
 +
 +
-+void SciWriteCharWait  ( uint8_t);                   // hardware routine
-+void SciWriteCharNoWait( uint8_t);                   // hardware routine
++void SciWriteCharWait  ( uint8_t );                     /* hardware routine */
++void SciWriteCharNoWait( uint8_t );                     /* hardware routine */
 +
 +
-+uint8_t   inline SciCharAvailable( void );              // hardware routine
++uint8_t   inline SciCharAvailable( void );              /* hardware routine */
 +
 +
-+uint8_t   inline SciReadCharWait( void );               // hardware routine
-+uint8_t   inline SciReadCharNoWait( void );             // hardware routine
++uint8_t   inline SciReadCharWait( void );               /* hardware routine */
++uint8_t   inline SciReadCharNoWait( void );             /* hardware routine */
 +
 +
-+void SciSendBreak( void );                              // test routine
++void SciSendBreak( void );                              /* test routine */
 +
 +
-+static int8_t   SciRcvBufGetChar();                      // circular rcv buf
-+static void    SciRcvBufPutChar( uint8_t);           // circular rcv buf
-+//atic void    SciRcvBufFlush( void );                  // circular rcv buf
++static int8_t   SciRcvBufGetChar();                     /* circular rcv buf */
++static void    SciRcvBufPutChar( uint8_t);              /* circular rcv buf */
++#if 0
++static void    SciRcvBufFlush( void );                  /* unused routine */
++#endif
 +
 +
-+void SciUnitTest();                                     // test routine
-+void SciPrintStats();                                   // test routine
++void SciUnitTest();                                     /* test routine */
++void SciPrintStats();                                   /* test routine */
 +\f
 +
 +/*****************************************************************************
 +\f
 +
 +/*****************************************************************************
@@ -2504,35 +2518,35 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +
 +static struct rtems_termios_tty *SciTermioTty;
 +
 +
 +static struct rtems_termios_tty *SciTermioTty;
 +
-+static uint8_t   SciInited = 0;             // has the driver been inited
++static uint8_t   SciInited = 0;             /* has the driver been inited */
 +
 +
-+static uint8_t   SciOpened;                 // has the driver been opened
++static uint8_t   SciOpened;                 /* has the driver been opened */
 +
 +
-+static uint8_t   SciMajor;                  // major device number
++static uint8_t   SciMajor;                  /* major device number */
 +
 +
-+static uint16_t   SciBaud;                  // current value in baud register
++static uint16_t   SciBaud;                  /* current value in baud register */
 +
 +
-+static uint32_t   SciBytesIn  = 0;          // bytes received
-+static uint32_t   SciBytesOut = 0;          // bytes transmitted
++static uint32_t   SciBytesIn  = 0;          /* bytes received */
++static uint32_t   SciBytesOut = 0;          /* bytes transmitted */
 +
 +
-+static uint32_t   SciErrorsParity  = 0;     // error counter
-+static uint32_t   SciErrorsNoise   = 0;     // error counter
-+static uint32_t   SciErrorsFraming = 0;     // error counter
-+static uint32_t   SciErrorsOverrun = 0;     // error counter
++static uint32_t   SciErrorsParity  = 0;     /* error counter */
++static uint32_t   SciErrorsNoise   = 0;     /* error counter */
++static uint32_t   SciErrorsFraming = 0;     /* error counter */
++static uint32_t   SciErrorsOverrun = 0;     /* error counter */
 +
 +#if defined(CONSOLE_SCI)
 +
 +
 +#if defined(CONSOLE_SCI)
 +
-+// this is what rtems printk uses to do polling based output
++/* this is what rtems printk uses to do polling based output */
 +
 +BSP_output_char_function_type      BSP_output_char = SCI_output_char;
 +BSP_polling_getchar_function_type  BSP_poll_char   = NULL;
 +
 +#endif
 +
 +
 +BSP_output_char_function_type      BSP_output_char = SCI_output_char;
 +BSP_polling_getchar_function_type  BSP_poll_char   = NULL;
 +
 +#endif
 +
-+// cvs id string so you can use the unix ident command on the object
++/* cvs id string so you can use the unix ident command on the object */
 +
 +#ifdef ID_STRINGS
 +
 +#ifdef ID_STRINGS
-+static const char SciIdent[]="$Id: sci.c,v 1.10 2005/01/05 18:12:35 ralf Exp $";
++static const char SciIdent[]="$Id: sci.c,v 1.11 2006/09/11 21:43:53 joel Exp $";
 +#endif
 +\f
 +
 +#endif
 +\f
 +
@@ -2540,21 +2554,21 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +  Section G - A circular buffer for rcv chars when the driver interface is used.
 +*****************************************************************************/
 +
 +  Section G - A circular buffer for rcv chars when the driver interface is used.
 +*****************************************************************************/
 +
-+// it is trivial to wrap your buffer pointers when size is a power of two
-+
-+#define SCI_RCV_BUF_SIZE        256         // must be a power of 2 !!!
++/* it is trivial to wrap your buffer pointers when size is a power of two */
 +
 +
-+// if someone opens the sci device using the device driver interface,
-+// then the receive data interrupt handler will put characters in this buffer
-+// instead of sending them up to the termios module for the console
++#define SCI_RCV_BUF_SIZE        256         /* must be a power of 2 !!! */
 +
 +
++/* if someone opens the sci device using the device driver interface,
++ * then the receive data interrupt handler will put characters in this buffer
++ * instead of sending them up to the termios module for the console
++ */
 +static uint8_t   SciRcvBuffer[SCI_RCV_BUF_SIZE];
 +
 +static uint8_t   SciRcvBuffer[SCI_RCV_BUF_SIZE];
 +
-+static uint8_t   SciRcvBufPutIndex = 0;     // array index to put in next char
++static uint8_t   SciRcvBufPutIndex = 0; /* array index to put in next char */
 +
 +
-+static uint8_t   SciRcvBufGetIndex = 0;     // array index to take out next char
++static uint8_t   SciRcvBufGetIndex = 0; /* array index to take out next char */
 +
 +
-+static uint16_t  SciRcvBufCount = 0;        // how many bytes are in the buffer
++static uint16_t  SciRcvBufCount = 0;   /* how many bytes are in the buffer */
 +
 +\f
 +
 +
 +\f
 +
@@ -2564,14 +2578,14 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +
 +static const rtems_termios_callbacks SciInterruptCallbacks =
 +{
 +
 +static const rtems_termios_callbacks SciInterruptCallbacks =
 +{
-+    SciInterruptOpen,                       // first open
-+    SciInterruptClose,                      // last close
-+    NULL,                                   // polled read (not required)
-+    SciInterruptWrite,                      // write
-+    SciSetAttributes,                       // set attributes
-+    NULL,                                   // stop remote xmit
-+    NULL,                                   // start remote xmit
-+    TRUE                                    // output uses interrupts
++    SciInterruptOpen,                       /* first open */
++    SciInterruptClose,                      /* last close */
++    NULL,                                   /* polled read (not required) */
++    SciInterruptWrite,                      /* write */
++    SciSetAttributes,                       /* set attributes */
++    NULL,                                   /* stop remote xmit */
++    NULL,                                   /* start remote xmit */
++    TRUE                                    /* output uses interrupts */
 +};
 +
 +/*****************************************************************************
 +};
 +
 +/*****************************************************************************
@@ -2580,36 +2594,34 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +
 +static const rtems_termios_callbacks SciPolledCallbacks =
 +{
 +
 +static const rtems_termios_callbacks SciPolledCallbacks =
 +{
-+    SciPolledOpen,                          // first open
-+    SciPolledClose,                         // last close
-+    SciPolledRead,                          // polled read
-+    SciPolledWrite,                         // write
-+    SciSetAttributes,                       // set attributes
-+    NULL,                                   // stop remote xmit
-+    NULL,                                   // start remote xmit
-+    FALSE                                   // output uses interrupts
++    SciPolledOpen,                          /* first open */
++    SciPolledClose,                         /* last close */
++    SciPolledRead,                          /* polled read */
++    SciPolledWrite,                         /* write */
++    SciSetAttributes,                       /* set attributes */
++    NULL,                                   /* stop remote xmit */
++    NULL,                                   /* start remote xmit */
++    FALSE                                   /* output uses interrupts */
 +};
 +\f
 +
 +};
 +\f
 +
-+/////////////////////////////////////////////////////////////////////////////
-+//
-+//                              SECTION 0
-+//                        MISCELLANEOUS ROUTINES
-+//
-+/////////////////////////////////////////////////////////////////////////////
++/*
++ *                              SECTION 0
++ *                        MISCELLANEOUS ROUTINES
++ */
 +
 +/****************************************************************************
 +
 +/****************************************************************************
-+* Func:     SCI_output_char
-+* Desc:     used by rtems printk function to send a char to the uart
-+* Inputs:   the character to transmit
-+* Outputs:  none
-+* Errors:   none
-+* Scope:    public
-+****************************************************************************/
++ * Func:     SCI_output_char
++ * Desc:     used by rtems printk function to send a char to the uart
++ * Inputs:   the character to transmit
++ * Outputs:  none
++ * Errors:   none
++ * Scope:    public
++ ****************************************************************************/
 +
 +void SCI_output_char(char c)
 +{
 +
 +void SCI_output_char(char c)
 +{
-+//  ( minor device number, pointer to the character, length )
++/*  ( minor device number, pointer to the character, length ) */
 +
 +    SciPolledWrite( SCI_MINOR, &c, 1);
 +
 +
 +    SciPolledWrite( SCI_MINOR, &c, 1);
 +
@@ -2631,11 +2643,11 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +{
 +    if ( polled )
 +    {
 +{
 +    if ( polled )
 +    {
-+        return &SciPolledCallbacks;             // polling based
++        return &SciPolledCallbacks;             /* polling based */
 +    }
 +    else
 +    {
 +    }
 +    else
 +    {
-+        return &SciInterruptCallbacks;          // interrupt driven
++        return &SciInterruptCallbacks;          /* interrupt driven */
 +    }
 +}
 +\f
 +    }
 +}
 +\f
@@ -2658,53 +2670,52 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +    if ( (*SCSR) & SCI_ERROR_NOISE   )   SciErrorsNoise   ++;
 +    if ( (*SCSR) & SCI_ERROR_OVERRUN )   SciErrorsOverrun ++;
 +
 +    if ( (*SCSR) & SCI_ERROR_NOISE   )   SciErrorsNoise   ++;
 +    if ( (*SCSR) & SCI_ERROR_OVERRUN )   SciErrorsOverrun ++;
 +
-+    // see if it was a transmit interrupt
++    /* see if it was a transmit interrupt */
 +
 +
-+    if ( (*SCSR) & SCI_XMTR_AVAILABLE )         // data reg empty, xmt complete
++    if ( (*SCSR) & SCI_XMTR_AVAILABLE )         /* data reg empty, xmt complete */
 +    {
 +        SciDisableTransmitInterrupts();
 +
 +    {
 +        SciDisableTransmitInterrupts();
 +
-+        // tell termios module that the charcter was sent
-+        // he will call us later to transmit more if there are any
++        /* tell termios module that the charcter was sent */
++        /* he will call us later to transmit more if there are any */
 +
 +        if (rtems_termios_dequeue_characters( SciTermioTty, 1 ))
 +        {
 +
 +        if (rtems_termios_dequeue_characters( SciTermioTty, 1 ))
 +        {
-+            // there are more bytes to transmit so enable TX interrupt
++            /* there are more bytes to transmit so enable TX interrupt */
 +
 +            SciEnableTransmitInterrupts();
 +        }
 +    }
 +
 +
 +            SciEnableTransmitInterrupts();
 +        }
 +    }
 +
-+    // see if it was a receive interrupt
-+    // on the sci uart we just get one character per interrupt
++    /* see if it was a receive interrupt */
++    /* on the sci uart we just get one character per interrupt */
 +
 +
-+    while (  SciCharAvailable() )               // char in data register?
++    while (  SciCharAvailable() )               /* char in data register? */
 +    {
 +    {
-+        ch = SciReadCharNoWait();               // get the char from the uart
++        ch = SciReadCharNoWait();               /* get the char from the uart */
 +
 +
-+        // IMPORTANT!!!
-+        // either send it to the termios module or keep it locally
++        /* IMPORTANT!!! */
++        /* either send it to the termios module or keep it locally */
 +
 +
-+        if ( SciOpened == DRIVER_OPENED )       // the driver is open
++        if ( SciOpened == DRIVER_OPENED )       /* the driver is open */
 +        {
 +        {
-+            SciRcvBufPutChar(ch);               // keep it locally
++            SciRcvBufPutChar(ch);               /* keep it locally */
 +        }
 +        }
-+        else                                    // put in termios buffer
++        else                                    /* put in termios buffer */
 +        {
 +        {
-+            rtems_termios_enqueue_raw_characters( SciTermioTty, &ch, 1 );
++            char c = (char) ch;
++            rtems_termios_enqueue_raw_characters( SciTermioTty, &c, 1 );
 +        }
 +
 +        }
 +
-+        *SCSR &= SCI_CLEAR_RX_INT;              // clear the interrupt
++        *SCSR &= SCI_CLEAR_RX_INT;              /* clear the interrupt */
 +    }
 +}
 +\f
 +
 +    }
 +}
 +\f
 +
-+/////////////////////////////////////////////////////////////////////////////
-+//
-+//                              SECTION 1
-+//                ROUTINES TO MANIPULATE THE CIRCULAR BUFFER
-+//
-+/////////////////////////////////////////////////////////////////////////////
++/*
++ *                              SECTION 1
++ *                ROUTINES TO MANIPULATE THE CIRCULAR BUFFER
++ */
 +
 +/****************************************************************************
 +* Func:     SciRcvBufGetChar
 +
 +/****************************************************************************
 +* Func:     SciRcvBufGetChar
@@ -2723,22 +2734,22 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +
 +    if ( SciRcvBufCount == 0 )
 +    {
 +
 +    if ( SciRcvBufCount == 0 )
 +    {
-+        rtems_fatal_error_occurred(0xDEAD);     // check the count first!
++        rtems_fatal_error_occurred(0xDEAD);     /* check the count first! */
 +    }
 +
 +    }
 +
-+    rtems_interrupt_disable( level );           // disable interrupts
++    rtems_interrupt_disable( level );           /* disable interrupts */
 +
 +
-+    ch = SciRcvBuffer[SciRcvBufGetIndex];       // get next byte
++    ch = SciRcvBuffer[SciRcvBufGetIndex];       /* get next byte */
 +
 +
-+    SciRcvBufGetIndex++;                        // bump the index
++    SciRcvBufGetIndex++;                        /* bump the index */
 +
 +
-+    SciRcvBufGetIndex &= SCI_RCV_BUF_SIZE - 1;  // and wrap it
++    SciRcvBufGetIndex &= SCI_RCV_BUF_SIZE - 1;  /* and wrap it */
 +
 +
-+    SciRcvBufCount--;                           // decrement counter
++    SciRcvBufCount--;                           /* decrement counter */
 +
 +
-+    rtems_interrupt_enable( level );            // restore interrupts
++    rtems_interrupt_enable( level );            /* restore interrupts */
 +
 +
-+    return ch;                                  // return the char
++    return ch;                                  /* return the char */
 +}
 +\f
 +
 +}
 +\f
 +
@@ -2755,24 +2766,24 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +{
 +    rtems_interrupt_level level;
 +
 +{
 +    rtems_interrupt_level level;
 +
-+    if ( SciRcvBufCount == SCI_RCV_BUF_SIZE )   // is there room?
++    if ( SciRcvBufCount == SCI_RCV_BUF_SIZE )   /* is there room? */
 +    {
 +    {
-+        return;                                 // no, throw it away
++        return;                                 /* no, throw it away */
 +    }
 +
 +    }
 +
-+    rtems_interrupt_disable( level );           // disable interrupts
++    rtems_interrupt_disable( level );           /* disable interrupts */
 +
 +
-+    SciRcvBuffer[SciRcvBufPutIndex] = ch;       // put it in the buf
++    SciRcvBuffer[SciRcvBufPutIndex] = ch;       /* put it in the buf */
 +
 +
-+    SciRcvBufPutIndex++;                        // bump the index
++    SciRcvBufPutIndex++;                        /* bump the index */
 +
 +
-+    SciRcvBufPutIndex &= SCI_RCV_BUF_SIZE - 1;  // and wrap it
++    SciRcvBufPutIndex &= SCI_RCV_BUF_SIZE - 1;  /* and wrap it */
 +
 +
-+    SciRcvBufCount++;                           // increment counter
++    SciRcvBufCount++;                           /* increment counter */
 +
 +
-+    rtems_interrupt_enable( level );            // restore interrupts
++    rtems_interrupt_enable( level );            /* restore interrupts */
 +
 +
-+    return;                                     // return
++    return;                                     /* return */
 +}
 +\f
 +
 +}
 +\f
 +
@@ -2785,34 +2796,33 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +* Scope:    private
 +****************************************************************************/
 +
 +* Scope:    private
 +****************************************************************************/
 +
-+#if 0                                           // prevents compiler warning
++#if 0                                           /* prevents compiler warning */
 +static void SciRcvBufFlush( void )
 +{
 +    rtems_interrupt_level level;
 +
 +static void SciRcvBufFlush( void )
 +{
 +    rtems_interrupt_level level;
 +
-+    rtems_interrupt_disable( level );           // disable interrupts
++    rtems_interrupt_disable( level );           /* disable interrupts */
 +
 +    memset( SciRcvBuffer, 0, sizeof(SciRcvBuffer) );
 +
 +
 +    memset( SciRcvBuffer, 0, sizeof(SciRcvBuffer) );
 +
-+    SciRcvBufPutIndex = 0;                      // clear
++    SciRcvBufPutIndex = 0;                      /* clear */
 +
 +
-+    SciRcvBufGetIndex = 0;                      // clear
++    SciRcvBufGetIndex = 0;                      /* clear */
 +
 +
-+    SciRcvBufCount = 0;                         // clear
++    SciRcvBufCount = 0;                         /* clear */
 +
 +
-+    rtems_interrupt_enable( level );            // restore interrupts
++    rtems_interrupt_enable( level );            /* restore interrupts */
 +
 +
-+    return;                                     // return
++    return;                                     /* return */
 +}
 +#endif
 +\f
 +
 +}
 +#endif
 +\f
 +
-+/////////////////////////////////////////////////////////////////////////////
-+//
-+//                              SECTION 2
-+//            INTERRUPT BASED ENTRY POINTS FOR THE TERMIOS MODULE
-+//
-+/////////////////////////////////////////////////////////////////////////////
++/*
++ *
++ *                              SECTION 2
++ *            INTERRUPT BASED ENTRY POINTS FOR THE TERMIOS MODULE
++ */
 +
 +/****************************************************************************
 +* Func:     SciInterruptOpen
 +
 +/****************************************************************************
 +* Func:     SciInterruptOpen
@@ -2828,43 +2838,43 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +* Scope:    public API
 +****************************************************************************/
 +
 +* Scope:    public API
 +****************************************************************************/
 +
-+int32_t   SciInterruptOpen(
-+    int32_t    major,
-+    int32_t    minor,
-+    void     *arg
++int   SciInterruptOpen(
++    int    major,
++    int    minor,
++    void  *arg
 +)
 +{
 +    rtems_libio_open_close_args_t * args = arg;
 +    rtems_isr_entry old_vector;
 +
 +)
 +{
 +    rtems_libio_open_close_args_t * args = arg;
 +    rtems_isr_entry old_vector;
 +
-+    if ( minor != SCI_MINOR )                   // check minor device num
++    if ( minor != SCI_MINOR )                   /* check minor device num */
 +    {
 +        return -1;
 +    }
 +
 +    {
 +        return -1;
 +    }
 +
-+    if ( !args )                                // must have args
++    if ( !args )                                /* must have args */
 +    {
 +        return -1;
 +    }
 +
 +    {
 +        return -1;
 +    }
 +
-+    SciTermioTty = args->iop->data1;            // save address of struct
++    SciTermioTty = args->iop->data1;            /* save address of struct */
 +
 +
-+    SciDisableAllInterrupts();                  // turn off sci interrupts
++    SciDisableAllInterrupts();                  /* turn off sci interrupts */
 +
 +
-+    // THIS IS ACTUALLY A BAD THING - SETTING LINE PARAMETERS HERE
-+    // IT SHOULD BE DONE THROUGH TCSETATTR() WHEN THE CONSOLE IS OPENED!!!
++    /* THIS IS ACTUALLY A BAD THING - SETTING LINE PARAMETERS HERE */
++    /* IT SHOULD BE DONE THROUGH TCSETATTR() WHEN THE CONSOLE IS OPENED!!! */
 +
 +
-+//  SciSetBaud(115200);                         // set the baud rate
-+//  SciSetBaud( 57600);                         // set the baud rate
-+//  SciSetBaud( 38400);                         // set the baud rate
-+SciSetBaud( 19200);                         // set the baud rate
-+//    SciSetBaud(  9600);                         // set the baud rate
++/*  SciSetBaud(115200);                         set the baud rate */
++/*  SciSetBaud( 57600);                         set the baud rate */
++/*  SciSetBaud( 38400);                         set the baud rate */
++    SciSetBaud( 19200);                      /* set the baud rate */
++/*  SciSetBaud(  9600);                         set the baud rate */
 +
 +
-+    SciSetParity(SCI_PARITY_NONE);              // set parity to none
++    SciSetParity(SCI_PARITY_NONE);              /* set parity to none */
 +
 +
-+    SciSetDataBits(SCI_8_DATA_BITS);            // set data bits to 8
++    SciSetDataBits(SCI_8_DATA_BITS);            /* set data bits to 8 */
 +
 +
-+    // Install our interrupt handler into RTEMS, where does 66 come from?
++    /* Install our interrupt handler into RTEMS, where does 66 come from? */
 +
 +    rtems_interrupt_catch( SciIsr, 66, &old_vector );
 +
 +
 +    rtems_interrupt_catch( SciIsr, 66, &old_vector );
 +
@@ -2872,11 +2882,11 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +    *QIVR &= 0xf8;
 +    *QILR |= 0x06 & 0x07;
 +
 +    *QIVR &= 0xf8;
 +    *QILR |= 0x06 & 0x07;
 +
-+    SciEnableTransmitter();                     // enable the transmitter
++    SciEnableTransmitter();                     /* enable the transmitter */
 +
 +
-+    SciEnableReceiver();                        // enable the receiver
++    SciEnableReceiver();                        /* enable the receiver */
 +
 +
-+    SciEnableReceiveInterrupts();               // enable rcv interrupts
++    SciEnableReceiveInterrupts();               /* enable rcv interrupts */
 +
 +    return RTEMS_SUCCESSFUL;
 +}
 +
 +    return RTEMS_SUCCESSFUL;
 +}
@@ -2893,10 +2903,10 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +* Scope:    public - termio entry point
 +****************************************************************************/
 +
 +* Scope:    public - termio entry point
 +****************************************************************************/
 +
-+int32_t   SciInterruptClose(
-+    int32_t    major,
-+    int32_t    minor,
-+    void     *arg
++int   SciInterruptClose(
++    int    major,
++    int    minor,
++    void  *arg
 +)
 +{
 +    SciDisableAllInterrupts();
 +)
 +{
 +    SciDisableAllInterrupts();
@@ -2916,37 +2926,37 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +* Scope:    public API
 +****************************************************************************/
 +
 +* Scope:    public API
 +****************************************************************************/
 +
-+int32_t   SciInterruptWrite(
-+    int32_t      minor,
++int   SciInterruptWrite(
++    int         minor,
 +    const char *buf,
 +    const char *buf,
-+    int32_t      len
++    int         len
 +)
 +{
 +)
 +{
-+    // We are using interrupt driven output so termios only sends us
-+    // one character at a time. The sci does not have a fifo.
++    /* We are using interrupt driven output so termios only sends us */
++    /* one character at a time. The sci does not have a fifo. */
 +
 +
-+    if ( !len )                                 // no data?
++    if ( !len )                                 /* no data? */
 +    {
 +    {
-+        return 0;                               // return error
++        return 0;                               /* return error */
 +    }
 +
 +    }
 +
-+    if ( minor != SCI_MINOR )                   // check the minor dev num
++    if ( minor != SCI_MINOR )                   /* check the minor dev num */
 +    {
 +    {
-+        return 0;                               // return error
++        return 0;                               /* return error */
 +    }
 +
 +    }
 +
-+    if ( SciOpened == DRIVER_OPENED )           // is the driver api open?
++    if ( SciOpened == DRIVER_OPENED )           /* is the driver api open? */
 +    {
 +    {
-+        return 1;                               // yep, throw this away
++        return 1;                               /* yep, throw this away */
 +    }
 +
 +    }
 +
-+    SciWriteCharNoWait(*buf);                   // try to send a char
++    SciWriteCharNoWait(*buf);                   /* try to send a char */
 +
 +
-+    *SCSR &= SCI_CLEAR_TDRE;                    // clear tx data reg empty flag
++    *SCSR &= SCI_CLEAR_TDRE;                    /* clear tx data reg empty flag */
 +
 +
-+    SciEnableTransmitInterrupts();              // enable the tx interrupt
++    SciEnableTransmitInterrupts();              /* enable the tx interrupt */
 +
 +
-+    return 1;                                   // return success
++    return 1;                                   /* return success */
 +}
 +\f
 +
 +}
 +\f
 +
@@ -2960,8 +2970,8 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +* Scope:    public API
 +****************************************************************************/
 +
 +* Scope:    public API
 +****************************************************************************/
 +
-+int32_t   SciSetAttributes(
-+    int32_t   minor,
++int   SciSetAttributes(
++    int                   minor,
 +    const struct termios *t
 +)
 +{
 +    const struct termios *t
 +)
 +{
@@ -2970,45 +2980,45 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +    uint16_t    sci_parity = 0;
 +    uint16_t    sci_databits = 0;
 +
 +    uint16_t    sci_parity = 0;
 +    uint16_t    sci_databits = 0;
 +
-+    if ( minor != SCI_MINOR )                   // check the minor dev num
++    if ( minor != SCI_MINOR )                   /* check the minor dev num */
 +    {
 +    {
-+        return -1;                              // return error
++        return -1;                              /* return error */
 +    }
 +
 +    }
 +
-+    // if you look closely you will see this is the only thing we use
-+    // set the baud rate
++    /* if you look closely you will see this is the only thing we use */
++    /* set the baud rate */
 +
 +
-+    baud_requested = t->c_cflag & CBAUD;        // baud rate
++    baud_requested = t->c_cflag & CBAUD;        /* baud rate */
 +
 +    if (!baud_requested)
 +    {
 +
 +    if (!baud_requested)
 +    {
-+//        baud_requested = B9600;                 // default to 9600 baud
-+        baud_requested = B19200;                 // default to 19200 baud
++/*        baud_requested = B9600;                   default to 9600 baud */
++        baud_requested = B19200;                 /* default to 19200 baud */
 +    }
 +
 +    sci_rate = termios_baud_to_number( baud_requested );
 +
 +    }
 +
 +    sci_rate = termios_baud_to_number( baud_requested );
 +
-+    // parity error detection
++    /* parity error detection */
 +
 +
-+    if (t->c_cflag & PARENB)                    // enable parity detection?
++    if (t->c_cflag & PARENB)                    /* enable parity detection? */
 +    {
 +        if (t->c_cflag & PARODD)
 +        {
 +    {
 +        if (t->c_cflag & PARODD)
 +        {
-+            sci_parity = SCI_PARITY_ODD;        // select odd parity
++            sci_parity = SCI_PARITY_ODD;        /* select odd parity */
 +        }
 +        else
 +        {
 +        }
 +        else
 +        {
-+            sci_parity = SCI_PARITY_EVEN;       // select even parity
++            sci_parity = SCI_PARITY_EVEN;       /* select even parity */
 +        }
 +    }
 +    else
 +    {
 +        }
 +    }
 +    else
 +    {
-+        sci_parity = SCI_PARITY_NONE;           // no parity, most common
++        sci_parity = SCI_PARITY_NONE;           /* no parity, most common */
 +    }
 +
 +    }
 +
-+    //  set the number of data bits, 8 is most common
++    /*  set the number of data bits, 8 is most common */
 +
 +
-+    if (t->c_cflag & CSIZE)                     // was it specified?
++    if (t->c_cflag & CSIZE)                     /* was it specified? */
 +    {
 +        switch (t->c_cflag & CSIZE)
 +        {
 +    {
 +        switch (t->c_cflag & CSIZE)
 +        {
@@ -3018,34 +3028,31 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +    }
 +    else
 +    {
 +    }
 +    else
 +    {
-+        sci_databits = SCI_8_DATA_BITS;         // default to 8 data bits
++        sci_databits = SCI_8_DATA_BITS;         /* default to 8 data bits */
 +    }
 +
 +    }
 +
-+    //  the number of stop bits; always 1 for SCI
++    /*  the number of stop bits; always 1 for SCI */
 +
 +    if (t->c_cflag & CSTOPB)
 +    {
 +
 +    if (t->c_cflag & CSTOPB)
 +    {
-+        // do nothing
++        /* do nothing */
 +    }
 +
 +    }
 +
-+    // setup the hardware with these serial port parameters
-+
-+    SciSetBaud(sci_rate);                       // set the baud rate
-+
-+    SciSetParity(sci_parity);                   // set the parity type
++    /* setup the hardware with these serial port parameters */
 +
 +
-+    SciSetDataBits(sci_databits);               // set the data bits
++    SciSetBaud(sci_rate);                       /* set the baud rate */
++    SciSetParity(sci_parity);                   /* set the parity type */
++    SciSetDataBits(sci_databits);               /* set the data bits */
 +
 +    return RTEMS_SUCCESSFUL;
 +}
 +\f
 +
 +
 +    return RTEMS_SUCCESSFUL;
 +}
 +\f
 +
-+/////////////////////////////////////////////////////////////////////////////
-+//
-+//                              SECTION 3
-+//            POLLING BASED ENTRY POINTS FOR THE TERMIOS MODULE
-+//
-+/////////////////////////////////////////////////////////////////////////////
++/*
++ *
++ *                              SECTION 3
++ *            POLLING BASED ENTRY POINTS FOR THE TERMIOS MODULE
++ */
 +
 +/****************************************************************************
 +* Func:     SciPolledOpen
 +
 +/****************************************************************************
 +* Func:     SciPolledOpen
@@ -3059,44 +3066,44 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +* Scope:    public - termios entry point
 +****************************************************************************/
 +
 +* Scope:    public - termios entry point
 +****************************************************************************/
 +
-+int32_t   SciPolledOpen(
-+    int32_t   major,
-+    int32_t   minor,
-+    void    *arg
++int   SciPolledOpen(
++    int   major,
++    int   minor,
++    void *arg
 +)
 +{
 +    rtems_libio_open_close_args_t * args = arg;
 +
 +)
 +{
 +    rtems_libio_open_close_args_t * args = arg;
 +
-+    if ( minor != SCI_MINOR )                   // check minor device num
++    if ( minor != SCI_MINOR )                   /* check minor device num */
 +    {
 +        return -1;
 +    }
 +
 +    {
 +        return -1;
 +    }
 +
-+    if ( !args )                                // must have args
++    if ( !args )                                /* must have args */
 +    {
 +        return -1;
 +    }
 +
 +    {
 +        return -1;
 +    }
 +
-+    SciTermioTty = args->iop->data1;            // Store tty pointer
++    SciTermioTty = args->iop->data1;            /* Store tty pointer */
 +
 +
-+    SciDisableAllInterrupts();                  // don't generate interrupts
++    SciDisableAllInterrupts();                  /* don't generate interrupts */
 +
 +
-+    // THIS IS ACTUALLY A BAD THING - SETTING LINE PARAMETERS HERE
-+    // IT SHOULD BE DONE THROUGH TCSETATTR() WHEN THE CONSOLE IS OPENED!!!
++    /* THIS IS ACTUALLY A BAD THING - SETTING LINE PARAMETERS HERE */
++    /* IT SHOULD BE DONE THROUGH TCSETATTR() WHEN THE CONSOLE IS OPENED!!! */
 +
 +
-+//  SciSetBaud(115200);                         // set the baud rate
-+//  SciSetBaud( 57600);                         // set the baud rate
-+//  SciSetBaud( 38400);                         // set the baud rate
-+  SciSetBaud( 19200);                         // set the baud rate
-+//  SciSetBaud(  9600);                         // set the baud rate
++/*  SciSetBaud(115200);                            set the baud rate */
++/*  SciSetBaud( 57600);                            set the baud rate */
++/*  SciSetBaud( 38400);                            set the baud rate */
++  SciSetBaud( 19200);                         /* set the baud rate */
++/*  SciSetBaud(  9600);                            set the baud rate */
 +
 +
-+    SciSetParity(SCI_PARITY_NONE);              // set no parity
++    SciSetParity(SCI_PARITY_NONE);              /* set no parity */
 +
 +
-+    SciSetDataBits(SCI_8_DATA_BITS);            // set 8 data bits
++    SciSetDataBits(SCI_8_DATA_BITS);            /* set 8 data bits */
 +
 +
-+    SciEnableTransmitter();                     // enable the xmitter
++    SciEnableTransmitter();                     /* enable the xmitter */
 +
 +
-+    SciEnableReceiver();                        // enable the rcvr
++    SciEnableReceiver();                        /* enable the rcvr */
 +
 +    return RTEMS_SUCCESSFUL;
 +}
 +
 +    return RTEMS_SUCCESSFUL;
 +}
@@ -3113,10 +3120,10 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +* Scope:    public termios API
 +****************************************************************************/
 +
 +* Scope:    public termios API
 +****************************************************************************/
 +
-+int32_t   SciPolledClose(
-+    int32_t    major,
-+    int32_t    minor,
-+    void     *arg
++int   SciPolledClose(
++    int    major,
++    int    minor,
++    void  *arg
 +)
 +{
 +    SciDisableAllInterrupts();
 +)
 +{
 +    SciDisableAllInterrupts();
@@ -3134,21 +3141,21 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +* Scope:    public API
 +****************************************************************************/
 +
 +* Scope:    public API
 +****************************************************************************/
 +
-+int32_t   SciPolledRead(
-+    int32_t   minor
++int   SciPolledRead(
++    int   minor
 +)
 +{
 +)
 +{
-+    if ( minor != SCI_MINOR )               // check the minor dev num
++    if ( minor != SCI_MINOR )               /* check the type-punned dev num */
 +    {
 +    {
-+        return -1;                          // return error
++        return -1;                          /* return error */
 +    }
 +
 +    }
 +
-+    if ( SciCharAvailable() )               // if a char is available
++    if ( SciCharAvailable() )               /* if a char is available */
 +    {
 +    {
-+        return SciReadCharNoWait();         // read the rx data register
++        return SciReadCharNoWait();         /* read the rx data register */
 +    }
 +
 +    }
 +
-+    return -1;                              // return error
++    return -1;                              /* return error */
 +}
 +\f
 +
 +}
 +\f
 +
@@ -3164,43 +3171,42 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +* Scope:    public termios API
 +****************************************************************************/
 +
 +* Scope:    public termios API
 +****************************************************************************/
 +
-+int32_t   SciPolledWrite(
-+    int32_t        minor,
-+    const char   *buf,
-+    int32_t        len
++int   SciPolledWrite(
++    int         minor,
++    const char *buf,
++    int         len
 +)
 +{
 +    int32_t   written = 0;
 +
 +)
 +{
 +    int32_t   written = 0;
 +
-+    if ( minor != SCI_MINOR )                   // check minor device num
++    if ( minor != SCI_MINOR )                   /* check minor device num */
 +    {
 +        return -1;
 +    }
 +
 +    {
 +        return -1;
 +    }
 +
-+    if ( SciOpened == DRIVER_OPENED )           // is the driver api open?
++    if ( SciOpened == DRIVER_OPENED )           /* is the driver api open? */
 +    {
 +    {
-+        return -1;                              // toss the data
++        return -1;                              /* toss the data */
 +    }
 +
 +    }
 +
-+    // send each byte in the string out the port
++    /* send each byte in the string out the port */
 +
 +    while ( written < len )
 +    {
 +
 +    while ( written < len )
 +    {
-+        SciWriteCharWait(*buf++);               // send a byte
++        SciWriteCharWait(*buf++);               /* send a byte */
 +
 +
-+        written++;                              // increment counter
++        written++;                              /* increment counter */
 +    }
 +
 +    }
 +
-+    return written;                             // return count
++    return written;                             /* return count */
 +}
 +\f
 +
 +}
 +\f
 +
-+/////////////////////////////////////////////////////////////////////////////
-+//
-+//                              SECTION 4
-+//                 DEVICE DRIVER PUBLIC API ENTRY POINTS
-+//
-+/////////////////////////////////////////////////////////////////////////////
++/*
++ *
++ *                              SECTION 4
++ *                 DEVICE DRIVER PUBLIC API ENTRY POINTS
++ */
 +
 +/****************************************************************************
 +* Func:     SciInit
 +
 +/****************************************************************************
 +* Func:     SciInit
@@ -3219,26 +3225,27 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +    void * arg
 +)
 +{
 +    void * arg
 +)
 +{
-+//     rtems_status_code status;
++/*     rtems_status_code status; */
 +
 +
-+//printk("%s\r\n", __FUNCTION__);
++/*printk("%s\r\n", __FUNCTION__); */
 +
 +
-+    // register the SCI device name for termios console i/o
-+    // this is done over in console.c which doesn't seem exactly right
-+    // but there were problems doing it here...
++    /* register the SCI device name for termios console i/o
++     * this is done over in console.c which doesn't seem exactly right
++     * but there were problems doing it here...
++     */
 +
 +
-+//  status = rtems_io_register_name( "/dev/sci", major, 0 );
++/*  status = rtems_io_register_name( "/dev/sci", major, 0 ); */
 +
 +
-+//  if (status != RTEMS_SUCCESSFUL)
-+//      rtems_fatal_error_occurred(status);
++/*  if (status != RTEMS_SUCCESSFUL) */
++/*      rtems_fatal_error_occurred(status); */
 +
 +
-+    SciMajor = major;                           // save the rtems major number
++    SciMajor = major;                           /* save the rtems major number */
 +
 +
-+    SciOpened = DRIVER_CLOSED;                  // initial state is closed
++    SciOpened = DRIVER_CLOSED;                  /* initial state is closed */
 +
 +
-+    // if you have an interrupt handler, install it here
++    /* if you have an interrupt handler, install it here */
 +
 +
-+    SciInited = 1;                              // set the inited flag
++    SciInited = 1;                              /* set the inited flag */
 +
 +    return RTEMS_SUCCESSFUL;
 +}
 +
 +    return RTEMS_SUCCESSFUL;
 +}
@@ -3264,24 +3271,24 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +    void * arg
 +)
 +{
 +    void * arg
 +)
 +{
-+//printk("%s major=%d minor=%d\r\n", __FUNCTION__,major,minor);
++/*printk("%s major=%d minor=%d\r\n", __FUNCTION__,major,minor); */
 +
 +
-+    if (SciInited == 0)                         // must be initialized first!
++    if (SciInited == 0)                         /* must be initialized first! */
 +    {
 +        return RTEMS_NOT_CONFIGURED;
 +    }
 +
 +    if (minor != SCI_MINOR)
 +    {
 +    {
 +        return RTEMS_NOT_CONFIGURED;
 +    }
 +
 +    if (minor != SCI_MINOR)
 +    {
-+        return RTEMS_INVALID_NAME;              // verify minor number
++        return RTEMS_INVALID_NAME;              /* verify minor number */
 +    }
 +
 +    if (SciOpened == DRIVER_OPENED)
 +    {
 +    }
 +
 +    if (SciOpened == DRIVER_OPENED)
 +    {
-+        return RTEMS_RESOURCE_IN_USE;           // already opened!
++        return RTEMS_RESOURCE_IN_USE;           /* already opened! */
 +    }
 +
 +    }
 +
-+    SciOpened = DRIVER_OPENED;                  // set the opened flag
++    SciOpened = DRIVER_OPENED;                  /* set the opened flag */
 +
 +    return RTEMS_SUCCESSFUL;
 +}
 +
 +    return RTEMS_SUCCESSFUL;
 +}
@@ -3306,19 +3313,19 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +    void * arg
 +)
 +{
 +    void * arg
 +)
 +{
-+//printk("%s major=%d minor=%d\r\n", __FUNCTION__,major,minor);
++/*printk("%s major=%d minor=%d\r\n", __FUNCTION__,major,minor); */
 +
 +    if (minor != SCI_MINOR)
 +    {
 +
 +    if (minor != SCI_MINOR)
 +    {
-+        return RTEMS_INVALID_NAME;              // check the minor number
++        return RTEMS_INVALID_NAME;              /* check the minor number */
 +    }
 +
 +    if (SciOpened != DRIVER_OPENED)
 +    {
 +    }
 +
 +    if (SciOpened != DRIVER_OPENED)
 +    {
-+        return RTEMS_INCORRECT_STATE;           // must be opened first
++        return RTEMS_INCORRECT_STATE;           /* must be opened first */
 +    }
 +
 +    }
 +
-+    SciOpened = DRIVER_CLOSED;                  // set the flag
++    SciOpened = DRIVER_CLOSED;                  /* set the flag */
 +
 +    return RTEMS_SUCCESSFUL;
 +}
 +
 +    return RTEMS_SUCCESSFUL;
 +}
@@ -3342,42 +3349,42 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +    void *arg
 +)
 +{
 +    void *arg
 +)
 +{
-+    rtems_libio_rw_args_t *rw_args;             // ptr to argument struct
-+    uint8_t   *buffer;
++    rtems_libio_rw_args_t *rw_args;             /* ptr to argument struct */
++    char      *buffer;
 +    uint16_t   length;
 +
 +    uint16_t   length;
 +
-+    rw_args = (rtems_libio_rw_args_t *) arg;    // arguments to read()
++    rw_args = (rtems_libio_rw_args_t *) arg;    /* arguments to read() */
 +
 +    if (minor != SCI_MINOR)
 +    {
 +
 +    if (minor != SCI_MINOR)
 +    {
-+        return RTEMS_INVALID_NAME;              // check the minor number
++        return RTEMS_INVALID_NAME;              /* check the minor number */
 +    }
 +
 +    if (SciOpened == DRIVER_CLOSED)
 +    {
 +    }
 +
 +    if (SciOpened == DRIVER_CLOSED)
 +    {
-+        return RTEMS_INCORRECT_STATE;           // must be opened first
++        return RTEMS_INCORRECT_STATE;           /* must be opened first */
 +    }
 +
 +    }
 +
-+    buffer = rw_args->buffer;                   // points to user's buffer
++    buffer = rw_args->buffer;                   /* points to user's buffer */
 +
 +
-+    length = rw_args->count;                    // how many bytes they want
++    length = rw_args->count;                    /* how many bytes they want */
 +
 +
-+//  *buffer = SciReadCharWait();                // wait for a character
++/*  *buffer = SciReadCharWait();                   wait for a character */
 +
 +
-+    // if there isn't a character available, wait until one shows up
-+    // or the timeout period expires, which ever happens first
++    /* if there isn't a character available, wait until one shows up */
++    /* or the timeout period expires, which ever happens first */
 +
 +
-+    if ( SciRcvBufCount == 0 )                  // no chars
++    if ( SciRcvBufCount == 0 )                  /* no chars */
 +    {
 +    {
-+        // wait for someone to wake me up...
-+        //rtems_task_wake_after(SciReadTimeout);
++        /* wait for someone to wake me up... */
++        /*rtems_task_wake_after(SciReadTimeout); */
 +    }
 +
 +    }
 +
-+    if ( SciRcvBufCount )                       // any characters locally?
++    if ( SciRcvBufCount )                       /* any characters locally? */
 +    {
 +    {
-+        *buffer = SciRcvBufGetChar();           // get the character
++        *buffer = SciRcvBufGetChar();           /* get the character */
 +
 +
-+        rw_args->bytes_moved = 1;               // how many we actually read
++        rw_args->bytes_moved = 1;               /* how many we actually read */
 +    }
 +
 +    return RTEMS_SUCCESSFUL;
 +    }
 +
 +    return RTEMS_SUCCESSFUL;
@@ -3402,7 +3409,7 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +    void * arg
 +)
 +{
 +    void * arg
 +)
 +{
-+    rtems_libio_rw_args_t *rw_args;             // ptr to argument struct
++    rtems_libio_rw_args_t *rw_args;             /* ptr to argument struct */
 +    uint8_t   *buffer;
 +    uint16_t   length;
 +
 +    uint8_t   *buffer;
 +    uint16_t   length;
 +
@@ -3410,24 +3417,24 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +
 +    if (minor != SCI_MINOR)
 +    {
 +
 +    if (minor != SCI_MINOR)
 +    {
-+        return RTEMS_INVALID_NAME;              // check the minor number
++        return RTEMS_INVALID_NAME;              /* check the minor number */
 +    }
 +
 +    if (SciOpened == DRIVER_CLOSED)
 +    {
 +    }
 +
 +    if (SciOpened == DRIVER_CLOSED)
 +    {
-+        return RTEMS_INCORRECT_STATE;           // must be opened first
++        return RTEMS_INCORRECT_STATE;           /* must be opened first */
 +    }
 +
 +    }
 +
-+    buffer = (uint8_t*)rw_args->buffer;       // points to data
++    buffer = (uint8_t*)rw_args->buffer;       /* points to data */
 +
 +
-+    length = rw_args->count;                    // how many bytes
++    length = rw_args->count;                    /* how many bytes */
 +
 +    while (length--)
 +    {
 +
 +    while (length--)
 +    {
-+        SciWriteCharWait(*buffer++);            // send the bytes out
++        SciWriteCharWait(*buffer++);            /* send the bytes out */
 +    }
 +
 +    }
 +
-+    rw_args->bytes_moved = rw_args->count;      // how many we wrote
++    rw_args->bytes_moved = rw_args->count;      /* how many we wrote */
 +
 +    return RTEMS_SUCCESSFUL;
 +}
 +
 +    return RTEMS_SUCCESSFUL;
 +}
@@ -3451,53 +3458,52 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +    void * arg
 +)
 +{
 +    void * arg
 +)
 +{
-+    rtems_libio_ioctl_args_t *args = arg;       // rtems arg struct
-+    uint16_t   command;                         // the cmd to execute
-+    uint16_t   unused;                          // maybe later
-+    uint16_t   *ptr;                            // ptr to user data
++    rtems_libio_ioctl_args_t *args = arg;       /* rtems arg struct */
++    uint16_t   command;                         /* the cmd to execute */
++    uint16_t   unused;                          /* maybe later */
++    uint16_t   *ptr;                            /* ptr to user data */
 +
 +
-+//printk("%s major=%d minor=%d\r\n", __FUNCTION__,major,minor);
++/*printk("%s major=%d minor=%d\r\n", __FUNCTION__,major,minor); */
 +
 +
-+    // do some sanity checking
++    /* do some sanity checking */
 +
 +    if (minor != SCI_MINOR)
 +    {
 +
 +    if (minor != SCI_MINOR)
 +    {
-+        return RTEMS_INVALID_NAME;              // check the minor number
++        return RTEMS_INVALID_NAME;              /* check the minor number */
 +    }
 +
 +    if (SciOpened == DRIVER_CLOSED)
 +    {
 +    }
 +
 +    if (SciOpened == DRIVER_CLOSED)
 +    {
-+        return RTEMS_INCORRECT_STATE;           // must be open first
++        return RTEMS_INCORRECT_STATE;           /* must be open first */
 +    }
 +
 +    if (args == 0)
 +    {
 +    }
 +
 +    if (args == 0)
 +    {
-+        return RTEMS_INVALID_ADDRESS;           // must have args
++        return RTEMS_INVALID_ADDRESS;           /* must have args */
 +    }
 +
 +    }
 +
-+    args->ioctl_return = -1;                    // assume an error
++    args->ioctl_return = -1;                    /* assume an error */
 +
 +
-+    command = args->command;                    // get the command
-+    ptr     = args->buffer;                     // this is an address
-+    unused  = *ptr;                             // brightness
++    command = args->command;                    /* get the command */
++    ptr     = args->buffer;                     /* this is an address */
++    unused  = *ptr;                             /* brightness */
 +
 +
-+    if (command == SCI_SEND_BREAK)              // process the command
++    if (command == SCI_SEND_BREAK)              /* process the command */
 +    {
 +    {
-+        SciSendBreak();                         // send break char
++        SciSendBreak();                         /* send break char */
 +    }
 +
 +    }
 +
-+    args->ioctl_return = 0;                     // return status
++    args->ioctl_return = 0;                     /* return status */
 +
 +    return RTEMS_SUCCESSFUL;
 +}
 +\f
 +
 +
 +    return RTEMS_SUCCESSFUL;
 +}
 +\f
 +
-+/////////////////////////////////////////////////////////////////////////////
-+//
-+//                              SECTION 5
-+//                       HARDWARE LEVEL ROUTINES
-+//
-+/////////////////////////////////////////////////////////////////////////////
++/*
++ *
++ *                              SECTION 5
++ *                       HARDWARE LEVEL ROUTINES
++ */
 +
 +/****************************************************************************
 +* Func:     SciSetBaud
 +
 +/****************************************************************************
 +* Func:     SciSetBaud
@@ -3513,26 +3519,26 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +    uint16_t   value;
 +    uint16_t   save_sccr1;
 +
 +    uint16_t   value;
 +    uint16_t   save_sccr1;
 +
-+// when you open the console you need to set the termio struct baud rate
-+// it has a default value of 9600, when someone calls tcsetattr it reverts!
++/* when you open the console you need to set the termio struct baud rate */
++/* it has a default value of 9600, when someone calls tcsetattr it reverts! */
 +
 +
-+    SciBaud = rate;                             // save the rate
++    SciBaud = rate;                             /* save the rate */
 +
 +
-+    // calculate the register value as a float and convert to an int
-+    // set baud rate - you must define the system clock constant
-+    // see mrm332.h for an example
++    /* calculate the register value as a float and convert to an int */
++    /* set baud rate - you must define the system clock constant */
++    /* see mrm332.h for an example */
 +
 +    value = ( (uint16_t) ( SYS_CLOCK / rate / 32.0 + 0.5 ) & 0x1fff );
 +
 +
 +    value = ( (uint16_t) ( SYS_CLOCK / rate / 32.0 + 0.5 ) & 0x1fff );
 +
-+    save_sccr1 = *SCCR1;                        // save register
++    save_sccr1 = *SCCR1;                        /* save register */
 +
 +
-+    // also turns off the xmtr and rcvr
++    /* also turns off the xmtr and rcvr */
 +
 +
-+    *SCCR1 &= SCI_DISABLE_INT_ALL;              // disable interrupts
++    *SCCR1 &= SCI_DISABLE_INT_ALL;              /* disable interrupts */
 +
 +
-+    *SCCR0 = value;                             // write the register
++    *SCCR0 = value;                             /* write the register */
 +
 +
-+    *SCCR1 = save_sccr1;                        // restore register
++    *SCCR1 = save_sccr1;                        /* restore register */
 +
 +    return;
 +}
 +
 +    return;
 +}
@@ -3551,28 +3557,28 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +{
 +    uint16_t   value;
 +
 +{
 +    uint16_t   value;
 +
-+    value = *SCCR1;                             // get the register
++    value = *SCCR1;                             /* get the register */
 +
 +    if (parity == SCI_PARITY_ODD)
 +    {
 +
 +    if (parity == SCI_PARITY_ODD)
 +    {
-+        value |= SCI_PARITY_ENABLE;             // parity enabled
-+        value |= SCI_PARITY_ODD;                // parity odd
++        value |= SCI_PARITY_ENABLE;             /* parity enabled */
++        value |= SCI_PARITY_ODD;                /* parity odd */
 +    }
 +
 +    else if (parity == SCI_PARITY_EVEN)
 +    {
 +    }
 +
 +    else if (parity == SCI_PARITY_EVEN)
 +    {
-+        value |= SCI_PARITY_ENABLE;             // parity enabled
-+        value &= ~SCI_PARITY_ODD;               // parity even
++        value |= SCI_PARITY_ENABLE;             /* parity enabled */
++        value &= ~SCI_PARITY_ODD;               /* parity even */
 +    }
 +
 +    else if (parity == SCI_PARITY_NONE)
 +    {
 +    }
 +
 +    else if (parity == SCI_PARITY_NONE)
 +    {
-+        value &= ~SCI_PARITY_ENABLE;            // disabled, most common
++        value &= ~SCI_PARITY_ENABLE;            /* disabled, most common */
 +    }
 +
 +    /* else no changes */
 +
 +    }
 +
 +    /* else no changes */
 +
-+    *SCCR1 = value;                             // write the register
++    *SCCR1 = value;                             /* write the register */
 +
 +    return;
 +}
 +
 +    return;
 +}
@@ -3591,23 +3597,23 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +{
 +    uint16_t   value;
 +
 +{
 +    uint16_t   value;
 +
-+    value = *SCCR1;                             // get the register
++    value = *SCCR1;                             /* get the register */
 +
 +    /* note - the parity setting affects the number of data bits */
 +
 +    if (bits == SCI_9_DATA_BITS)
 +    {
 +
 +    /* note - the parity setting affects the number of data bits */
 +
 +    if (bits == SCI_9_DATA_BITS)
 +    {
-+        value |= SCI_9_DATA_BITS;               // 9 data bits
++        value |= SCI_9_DATA_BITS;               /* 9 data bits */
 +    }
 +
 +    else if (bits == SCI_8_DATA_BITS)
 +    {
 +    }
 +
 +    else if (bits == SCI_8_DATA_BITS)
 +    {
-+        value &= SCI_8_DATA_BITS;               // 8 data bits
++        value &= SCI_8_DATA_BITS;               /* 8 data bits */
 +    }
 +
 +    /* else no changes */
 +
 +    }
 +
 +    /* else no changes */
 +
-+    *SCCR1 = value;                             // write the register
++    *SCCR1 = value;                             /* write the register */
 +
 +    return;
 +}
 +
 +    return;
 +}
@@ -3626,7 +3632,7 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +
 +static void inline SciDisableAllInterrupts( void )
 +{
 +
 +static void inline SciDisableAllInterrupts( void )
 +{
-+    // this also turns off the xmtr and rcvr
++    /* this also turns off the xmtr and rcvr */
 +
 +    *SCCR1 &= SCI_DISABLE_INT_ALL;
 +}
 +
 +    *SCCR1 &= SCI_DISABLE_INT_ALL;
 +}
@@ -3694,7 +3700,7 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +
 +void SciWriteCharWait(uint8_t   c)
 +{
 +
 +void SciWriteCharWait(uint8_t   c)
 +{
-+    // poll the fifo, waiting for room for another character
++    /* poll the fifo, waiting for room for another character */
 +
 +    while ( ( *SCSR & SCI_XMTR_AVAILABLE ) == 0 )
 +    {
 +
 +    while ( ( *SCSR & SCI_XMTR_AVAILABLE ) == 0 )
 +    {
@@ -3708,9 +3714,9 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +      rtems_task_wake_after(RTEMS_YIELD_PROCESSOR);
 +    }
 +
 +      rtems_task_wake_after(RTEMS_YIELD_PROCESSOR);
 +    }
 +
-+    *SCDR = c;                                  // send the charcter
++    *SCDR = c;                                  /* send the charcter */
 +
 +
-+    SciBytesOut++;                              // increment the counter
++    SciBytesOut++;                              /* increment the counter */
 +
 +    return;
 +}
 +
 +    return;
 +}
@@ -3728,12 +3734,12 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +{
 +    if ( ( *SCSR & SCI_XMTR_AVAILABLE ) == 0 )
 +    {
 +{
 +    if ( ( *SCSR & SCI_XMTR_AVAILABLE ) == 0 )
 +    {
-+        return;                                 // no room, throw it away
++        return;                                 /* no room, throw it away */
 +    }
 +
 +    }
 +
-+    *SCDR = c;                                  // put the char in the fifo
++    *SCDR = c;                                  /* put the char in the fifo */
 +
 +
-+    SciBytesOut++;                              // increment the counter
++    SciBytesOut++;                              /* increment the counter */
 +
 +    return;
 +}
 +
 +    return;
 +}
@@ -3752,21 +3758,21 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +{
 +    uint8_t   ch;
 +
 +{
 +    uint8_t   ch;
 +
-+    while ( SciCharAvailable() == 0 )           // anything there?
++    while ( SciCharAvailable() == 0 )           /* anything there? */
 +    {
 +      /* relinquish processor while waiting */
 +      rtems_task_wake_after(RTEMS_YIELD_PROCESSOR);
 +    }
 +
 +    {
 +      /* relinquish processor while waiting */
 +      rtems_task_wake_after(RTEMS_YIELD_PROCESSOR);
 +    }
 +
-+    // if you have rcv ints enabled, then the isr will probably
-+    // get the character before you will unless you turn off ints
-+    // ie polling and ints don't mix that well
++    /* if you have rcv ints enabled, then the isr will probably */
++    /* get the character before you will unless you turn off ints */
++    /* ie polling and ints don't mix that well */
 +
 +
-+    ch = *SCDR;                                 // get the charcter
++    ch = *SCDR;                                 /* get the charcter */
 +
 +
-+    SciBytesIn++;                               // increment the counter
++    SciBytesIn++;                               /* increment the counter */
 +
 +
-+    return ch;                                  // return the char
++    return ch;                                  /* return the char */
 +}
 +
 +/****************************************************************************
 +}
 +
 +/****************************************************************************
@@ -3782,14 +3788,14 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +{
 +    uint8_t   ch;
 +
 +{
 +    uint8_t   ch;
 +
-+    if ( SciCharAvailable() == 0 )              // anything there?
++    if ( SciCharAvailable() == 0 )              /* anything there? */
 +        return -1;
 +
 +        return -1;
 +
-+    ch = *SCDR;                                 // get the character
++    ch = *SCDR;                                 /* get the character */
 +
 +
-+    SciBytesIn++;                               // increment the count
++    SciBytesIn++;                               /* increment the count */
 +
 +
-+    return ch;                                  // return the char
++    return ch;                                  /* return the char */
 +}
 +\f
 +
 +}
 +\f
 +
@@ -3804,7 +3810,7 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +
 +uint8_t   inline SciCharAvailable( void )
 +{
 +
 +uint8_t   inline SciCharAvailable( void )
 +{
-+    return ( *SCSR & SCI_RCVR_READY );          // char in data register?
++    return ( *SCSR & SCI_RCVR_READY );          /* char in data register? */
 +}
 +\f
 +
 +}
 +\f
 +
@@ -3819,27 +3825,26 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +
 +void SciSendBreak( void )
 +{
 +
 +void SciSendBreak( void )
 +{
-+    // From the Motorola QSM reference manual -
++    /* From the Motorola QSM reference manual - */
 +
 +
-+    // "if SBK is toggled by writing it first to a one and then immediately
-+    // to a zero (in less than one serial frame interval), the transmitter
-+    // sends only one or two break frames before reverting to mark (idle)
-+    // or before commencing to send more data"
++    /* "if SBK is toggled by writing it first to a one and then immediately */
++    /* to a zero (in less than one serial frame interval), the transmitter */
++    /* sends only one or two break frames before reverting to mark (idle) */
++    /* or before commencing to send more data" */
 +
 +
-+    *SCCR1 |=  SCI_SEND_BREAK;                  // set the bit
++    *SCCR1 |=  SCI_SEND_BREAK;                  /* set the bit */
 +
 +
-+    *SCCR1 &= ~SCI_SEND_BREAK;                  // clear the bit
++    *SCCR1 &= ~SCI_SEND_BREAK;                  /* clear the bit */
 +
 +    return;
 +}
 +\f
 +
 +
 +    return;
 +}
 +\f
 +
-+/////////////////////////////////////////////////////////////////////////////
-+//
-+//                             SECTION 6
-+//                             TEST CODE
-+//
-+/////////////////////////////////////////////////////////////////////////////
++/*
++ *
++ *                             SECTION 6
++ *                             TEST CODE
++ */
 +
 +/****************************************************************************
 +* Func:     SciUnitTest
 +
 +/****************************************************************************
 +* Func:     SciUnitTest
@@ -3850,23 +3855,23 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +****************************************************************************/
 +
 +#if 0
 +****************************************************************************/
 +
 +#if 0
-+#define O_RDWR LIBIO_FLAGS_READ_WRITE           // dont like this but...
++#define O_RDWR LIBIO_FLAGS_READ_WRITE           /* dont like this but... */
 +
 +void SciUnitTest()
 +{
 +
 +void SciUnitTest()
 +{
-+    uint8_t   byte;                             // a character
-+    uint16_t   fd;                              // file descriptor for device
-+    uint16_t   result;                          // result of ioctl
++    uint8_t   byte;                             /* a character */
++    uint16_t   fd;                              /* file descriptor for device */
++    uint16_t   result;                          /* result of ioctl */
 +
 +
-+    fd = open("/dev/sci",O_RDWR);               // open the device
++    fd = open("/dev/sci",O_RDWR);               /* open the device */
 +
 +printk("SCI open fd=%d\r\n",fd);
 +
 +
 +printk("SCI open fd=%d\r\n",fd);
 +
-+    result = write(fd, "abcd\r\n", 6);          // send a string
++    result = write(fd, "abcd\r\n", 6);          /* send a string */
 +
 +printk("SCI write result=%d\r\n",result);
 +
 +
 +printk("SCI write result=%d\r\n",result);
 +
-+    result = read(fd, &byte, 1);                // read a byte
++    result = read(fd, &byte, 1);                /* read a byte */
 +
 +printk("SCI read result=%d,byte=%x\r\n",result,byte);
 +
 +
 +printk("SCI read result=%d,byte=%x\r\n",result,byte);
 +
@@ -3902,8 +3907,8 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 +}
 Index: rtems/c/src/lib/libbsp/m68k/mo376/startup/bspstart.c
 ===================================================================
 +}
 Index: rtems/c/src/lib/libbsp/m68k/mo376/startup/bspstart.c
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/startup/bspstart.c
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/m68k/mo376/startup/bspstart.c       2007-08-14 17:20:30.000000000 +0200
 @@ -0,0 +1,82 @@
 +/*
 + *  This routine starts the application.  It includes application,
 @@ -0,0 +1,82 @@
 +/*
 + *  This routine starts the application.  It includes application,
@@ -3989,8 +3994,8 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/startup/bspstart.c
 +}
 Index: rtems/c/src/lib/libbsp/m68k/mo376/startup/start_c.c
 ===================================================================
 +}
 Index: rtems/c/src/lib/libbsp/m68k/mo376/startup/start_c.c
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/startup/start_c.c
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/m68k/mo376/startup/start_c.c        2007-08-14 17:20:30.000000000 +0200
 @@ -0,0 +1,125 @@
 +/*
 + *  $Id
 @@ -0,0 +1,125 @@
 +/*
 + *  $Id
@@ -4108,7 +4113,7 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/startup/start_c.c
 +
 +  /* Spurious should be called in the predriver hook */
 +  /* Spurious_Initialize(); */
 +
 +  /* Spurious should be called in the predriver hook */
 +  /* Spurious_Initialize(); */
-+  //console_init();
++  /*console_init(); */
 +
 +  /*
 +   * Execute main with arguments argc and agrv.
 +
 +  /*
 +   * Execute main with arguments argc and agrv.
@@ -4119,8 +4124,8 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/startup/start_c.c
 +}
 Index: rtems/c/src/lib/libbsp/m68k/mo376/include/tm27.h
 ===================================================================
 +}
 Index: rtems/c/src/lib/libbsp/m68k/mo376/include/tm27.h
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/include/tm27.h
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/m68k/mo376/include/tm27.h   2007-08-14 17:20:30.000000000 +0200
 @@ -0,0 +1,34 @@
 +/*
 + *  tm27.h
 @@ -0,0 +1,34 @@
 +/*
 + *  tm27.h
@@ -4158,8 +4163,8 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/include/tm27.h
 +#endif
 Index: rtems/c/src/lib/libbsp/m68k/mo376/times
 ===================================================================
 +#endif
 Index: rtems/c/src/lib/libbsp/m68k/mo376/times
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/times
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/m68k/mo376/times    2007-08-14 17:20:30.000000000 +0200
 @@ -0,0 +1,195 @@
 +#
 +#  Timing Test Suite Results for the MRM332 BSP
 @@ -0,0 +1,195 @@
 +#
 +#  Timing Test Suite Results for the MRM332 BSP
@@ -4358,8 +4363,8 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/times
 +   rtems_rate_monotonic_period: conclude periods -- caller blocks       53
 Index: rtems/c/src/lib/libbsp/m68k/mo376/include/mrm332.h
 ===================================================================
 +   rtems_rate_monotonic_period: conclude periods -- caller blocks       53
 Index: rtems/c/src/lib/libbsp/m68k/mo376/include/mrm332.h
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/include/mrm332.h
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/m68k/mo376/include/mrm332.h 2007-08-14 17:20:30.000000000 +0200
 @@ -0,0 +1,70 @@
 +/*  mrm332.h
 + *
 @@ -0,0 +1,70 @@
 +/*  mrm332.h
 + *
@@ -4433,8 +4438,8 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/include/mrm332.h
 +#endif /* _MRM_H_ */
 Index: rtems/c/src/lib/libbsp/m68k/mo376/include/bspopts.h.in
 ===================================================================
 +#endif /* _MRM_H_ */
 Index: rtems/c/src/lib/libbsp/m68k/mo376/include/bspopts.h.in
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/include/bspopts.h.in
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/m68k/mo376/include/bspopts.h.in     2007-08-14 17:20:30.000000000 +0200
 @@ -0,0 +1,16 @@
 +/* include/bspopts.h.in.  Generated from configure.ac by autoheader.  */
 +
 @@ -0,0 +1,16 @@
 +/* include/bspopts.h.in.  Generated from configure.ac by autoheader.  */
 +
@@ -4454,8 +4459,8 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/include/bspopts.h.in
 +#undef PACKAGE_VERSION
 Index: rtems/c/src/lib/libbsp/m68k/mo376/spurious/spinit.c
 ===================================================================
 +#undef PACKAGE_VERSION
 Index: rtems/c/src/lib/libbsp/m68k/mo376/spurious/spinit.c
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/spurious/spinit.c
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/m68k/mo376/spurious/spinit.c        2007-08-14 17:20:30.000000000 +0200
 @@ -0,0 +1,105 @@
 +/*  Spurious_driver
 + *
 @@ -0,0 +1,105 @@
 +/*  Spurious_driver
 + *
@@ -4472,7 +4477,7 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/spurious/spinit.c
 + *  found in the file LICENSE in this distribution or at
 + *  http://www.rtems.com/license/LICENSE.
 + *
 + *  found in the file LICENSE in this distribution or at
 + *  http://www.rtems.com/license/LICENSE.
 + *
-+ *  $Id: spinit.c,v 1.5 2004/04/21 10:42:52 ralf Exp $
++ *  $Id: spinit.c,v 1.6 2006/09/11 21:43:55 joel Exp $
 + */
 +
 +#include <bsp.h>
 + */
 +
 +#include <bsp.h>
@@ -4492,7 +4497,7 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/spurious/spinit.c
 +  rtems_vector_number vector
 +)
 +{
 +  rtems_vector_number vector
 +)
 +{
-+  //int sp = 0;
++  /*int sp = 0; */
 +#if 0
 +  const char * const VectDescrip[] = {
 +    _Spurious_Error_[0],   _Spurious_Error_[0],  _Spurious_Error_[1],
 +#if 0
 +  const char * const VectDescrip[] = {
 +    _Spurious_Error_[0],   _Spurious_Error_[0],  _Spurious_Error_[1],
@@ -4519,10 +4524,10 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/spurious/spinit.c
 +    _Spurious_Error_[27], _Spurious_Error_[28]};
 +#endif
 +
 +    _Spurious_Error_[27], _Spurious_Error_[28]};
 +#endif
 +
-+  //asm volatile ( "movea.l   %%sp,%0 " : "=a" (sp) : "0" (sp) );
++  /*asm volatile ( "movea.l   %%sp,%0 " : "=a" (sp) : "0" (sp) ); */
 +
 +  _CPU_ISR_Set_level( 7 );
 +
 +  _CPU_ISR_Set_level( 7 );
-+  //_UART_flush();
++  /*_UART_flush(); */
 +#if 0
 +  RAW_PUTS("\n\rRTEMS: Spurious interrupt: ");
 +  RAW_PUTS((char *)VectDescrip[( (vector>64) ? 64 : vector )]);
 +#if 0
 +  RAW_PUTS("\n\rRTEMS: Spurious interrupt: ");
 +  RAW_PUTS((char *)VectDescrip[( (vector>64) ? 64 : vector )]);
@@ -4564,8 +4569,8 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/spurious/spinit.c
 +}
 Index: rtems/c/src/lib/libbsp/m68k/mo376/startup/linkcmds
 ===================================================================
 +}
 Index: rtems/c/src/lib/libbsp/m68k/mo376/startup/linkcmds
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/startup/linkcmds
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/m68k/mo376/startup/linkcmds 2007-08-14 17:20:30.000000000 +0200
 @@ -0,0 +1,164 @@
 +/*  linkcmds
 + *
 @@ -0,0 +1,164 @@
 +/*  linkcmds
 + *
@@ -4733,8 +4738,8 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/startup/linkcmds
 +}
 Index: rtems/c/src/lib/libbsp/m68k/mo376/bsp_specs
 ===================================================================
 +}
 Index: rtems/c/src/lib/libbsp/m68k/mo376/bsp_specs
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/bsp_specs
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/m68k/mo376/bsp_specs        2007-08-14 17:20:30.000000000 +0200
 @@ -0,0 +1,16 @@
 +%rename endfile old_endfile
 +%rename startfile old_startfile
 @@ -0,0 +1,16 @@
 +%rename endfile old_endfile
 +%rename startfile old_startfile
@@ -4752,26 +4757,10 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/bsp_specs
 +*endfile:
 +%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s crtn.o%s}
 +
 +*endfile:
 +%{!qrtems: %(old_endfile)} %{qrtems: crtend.o%s crtn.o%s}
 +
-Index: rtems/c/src/lib/libbsp/m68k/mo376/include/.cvsignore
-===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/include/.cvsignore
-@@ -0,0 +1,5 @@
-+bspopts.h
-+bspopts.h.in
-+coverhd.h
-+stamp-h
-+stamp-h.in
-Index: rtems/c/src/lib/libbsp/m68k/mo376/wrapup/.keep
-===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/wrapup/.keep
-@@ -0,0 +1 @@
-+
 Index: rtems/c/src/lib/libbsp/m68k/mo376/preinstall.am
 ===================================================================
 Index: rtems/c/src/lib/libbsp/m68k/mo376/preinstall.am
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/preinstall.am
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/m68k/mo376/preinstall.am    2007-08-14 17:20:30.000000000 +0200
 @@ -0,0 +1,66 @@
 +## Automatically generated by ampolish3 - Do not edit
 +
 @@ -0,0 +1,66 @@
 +## Automatically generated by ampolish3 - Do not edit
 +
@@ -4794,12 +4783,12 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/preinstall.am
 +CLEANFILES += $(PREINSTALL_FILES)
 +
 +$(PROJECT_LIB)/$(dirstamp):
 +CLEANFILES += $(PREINSTALL_FILES)
 +
 +$(PROJECT_LIB)/$(dirstamp):
-+      @$(mkdir_p) $(PROJECT_LIB)
++      @$(MKDIR_P) $(PROJECT_LIB)
 +      @: > $(PROJECT_LIB)/$(dirstamp)
 +PREINSTALL_DIRS += $(PROJECT_LIB)/$(dirstamp)
 +
 +$(PROJECT_INCLUDE)/$(dirstamp):
 +      @: > $(PROJECT_LIB)/$(dirstamp)
 +PREINSTALL_DIRS += $(PROJECT_LIB)/$(dirstamp)
 +
 +$(PROJECT_INCLUDE)/$(dirstamp):
-+      @$(mkdir_p) $(PROJECT_INCLUDE)
++      @$(MKDIR_P) $(PROJECT_INCLUDE)
 +      @: > $(PROJECT_INCLUDE)/$(dirstamp)
 +PREINSTALL_DIRS += $(PROJECT_INCLUDE)/$(dirstamp)
 +
 +      @: > $(PROJECT_INCLUDE)/$(dirstamp)
 +PREINSTALL_DIRS += $(PROJECT_INCLUDE)/$(dirstamp)
 +
index 313d71c5b71c5708cc0b1b4927ca60ad370c45da..be62d51ba9260bd5ba039288a6f06b4b6577fae6 100644 (file)
@@ -1,27 +1,42 @@
-Index: rtems/c/src/lib/libbsp/powerpc/ec555/.cvsignore
-===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/powerpc/ec555/.cvsignore
-@@ -0,0 +1,14 @@
-+aclocal.m4
-+autom4te*.cache
-+config.cache
-+config.guess
-+config.log
-+config.status
-+config.sub
-+configure
-+depcomp
-+install-sh
-+Makefile
-+Makefile.in
-+missing
-+mkinstalldirs
+---
+ c/src/lib/libbsp/powerpc/ec555/ChangeLog          |  131 +++++++
+ c/src/lib/libbsp/powerpc/ec555/Makefile.am        |   65 +++
+ c/src/lib/libbsp/powerpc/ec555/README             |  262 ++++++++++++++
+ c/src/lib/libbsp/powerpc/ec555/bsp_specs          |   13 
+ c/src/lib/libbsp/powerpc/ec555/clock/p_clock.c    |   69 +++
+ c/src/lib/libbsp/powerpc/ec555/configure.ac       |   52 ++
+ c/src/lib/libbsp/powerpc/ec555/console/console.c  |  368 +++++++++++++++++++
+ c/src/lib/libbsp/powerpc/ec555/include/bsp.h      |  114 ++++++
+ c/src/lib/libbsp/powerpc/ec555/include/coverhd.h  |  116 ++++++
+ c/src/lib/libbsp/powerpc/ec555/include/tm27.h     |   54 ++
+ c/src/lib/libbsp/powerpc/ec555/irq/irq.h          |   55 ++
+ c/src/lib/libbsp/powerpc/ec555/preinstall.am      |   58 +++
+ c/src/lib/libbsp/powerpc/ec555/startup/bspstart.c |  201 ++++++++++
+ c/src/lib/libbsp/powerpc/ec555/startup/iss555.c   |  148 +++++++
+ c/src/lib/libbsp/powerpc/ec555/startup/linkcmds   |  319 +++++++++++++++++
+ c/src/lib/libbsp/powerpc/ec555/startup/start.S    |  411 ++++++++++++++++++++++
+ c/src/lib/libbsp/powerpc/ec555/startup/tm27supp.c |   29 +
+ c/src/lib/libbsp/powerpc/ec555/times              |  189 ++++++++++
+ make/custom/ec555.cfg                             |   41 ++
+ 19 files changed, 2695 insertions(+)
+
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/ChangeLog
 ===================================================================
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/ChangeLog
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/powerpc/ec555/ChangeLog
-@@ -0,0 +1,119 @@
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/powerpc/ec555/ChangeLog     2007-08-14 17:51:38.000000000 +0200
+@@ -0,0 +1,131 @@
++2007-04-06    Ralf Corsépius <ralf.corsepius@rtems.org>
++
++      * bsp_specs: Remove lib (Now expected to exist in GCC).
++
++2006-12-02    Ralf Corsépius <ralf.corsepius@rtems.org>
++
++      * configure.ac: New BUG-REPORT address.
++
++2006-10-19    Ralf Corsépius <ralf.corsepius@rtems.org>
++
++      * configure.ac: Require automake-1.10. Require autoconf-2.60.
++
 +2006-03-08    Joel Sherrill <joel@OARcorp.com>
 +
 +      * startup/linkcmds: Add .gnu.linkonce.b.* section.
 +2006-03-08    Joel Sherrill <joel@OARcorp.com>
 +
 +      * startup/linkcmds: Add .gnu.linkonce.b.* section.
@@ -143,8 +158,8 @@ Index: rtems/c/src/lib/libbsp/powerpc/ec555/ChangeLog
 +
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/Makefile.am
 ===================================================================
 +
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/Makefile.am
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/powerpc/ec555/Makefile.am
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/powerpc/ec555/Makefile.am   2007-08-14 17:51:38.000000000 +0200
 @@ -0,0 +1,65 @@
 +##
 +## $Id: Makefile.am,v 1.10 2006/01/12 10:12:30 ralf Exp $
 @@ -0,0 +1,65 @@
 +##
 +## $Id: Makefile.am,v 1.10 2006/01/12 10:12:30 ralf Exp $
@@ -213,8 +228,8 @@ Index: rtems/c/src/lib/libbsp/powerpc/ec555/Makefile.am
 +include $(top_srcdir)/../../../../automake/local.am
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/README
 ===================================================================
 +include $(top_srcdir)/../../../../automake/local.am
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/README
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/powerpc/ec555/README
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/powerpc/ec555/README        2007-08-14 17:51:38.000000000 +0200
 @@ -0,0 +1,262 @@
 +#
 +#  $Id: README,v 1.1 2004/04/12 21:52:13 joel Exp $
 @@ -0,0 +1,262 @@
 +#
 +#  $Id: README,v 1.1 2004/04/12 21:52:13 joel Exp $
@@ -480,20 +495,13 @@ Index: rtems/c/src/lib/libbsp/powerpc/ec555/README
 +    - The paranoia program dies on a floating-point assist exception.
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/bsp_specs
 ===================================================================
 +    - The paranoia program dies on a floating-point assist exception.
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/bsp_specs
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/powerpc/ec555/bsp_specs
-@@ -0,0 +1,20 @@
-+%rename lib old_lib
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/powerpc/ec555/bsp_specs     2007-08-14 17:51:38.000000000 +0200
+@@ -0,0 +1,13 @@
 +%rename endfile old_endfile
 +%rename startfile old_startfile
 +%rename link old_link
 +
 +%rename endfile old_endfile
 +%rename startfile old_startfile
 +%rename link old_link
 +
-+*lib:
-+%{!qrtems: %(old_lib)} %{!nostdlib: %{qrtems: --start-group \
-+%{!qrtems_debug: -lrtemsbsp -lrtemscpu} %{qrtems_debug: -lrtemsbsp_g -lrtemscpu_g} \
-+%{qjava: -lffi -lgcjgc -lzgcj -lgcj} %{qc++: -lstdc++} -lc -lgcc --end-group \
-+%{!qnolinkcmds: %{qrtems_debug: --defsym RTEMS_DEBUG=1} -T linkcmds%s -Map %b.map}}}
-+
 +*startfile:
 +%{!qrtems: %(old_startfile)} %{!nostdlib: %{qrtems: ecrti%O%s}}
 +
 +*startfile:
 +%{!qrtems: %(old_startfile)} %{!nostdlib: %{qrtems: ecrti%O%s}}
 +
@@ -505,8 +513,8 @@ Index: rtems/c/src/lib/libbsp/powerpc/ec555/bsp_specs
 +
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/clock/p_clock.c
 ===================================================================
 +
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/clock/p_clock.c
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/powerpc/ec555/clock/p_clock.c
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/powerpc/ec555/clock/p_clock.c       2007-08-14 17:51:38.000000000 +0200
 @@ -0,0 +1,69 @@
 +/*
 + *  Clock Tick interrupt conexion code.
 @@ -0,0 +1,69 @@
 +/*
 + *  Clock Tick interrupt conexion code.
@@ -579,20 +587,20 @@ Index: rtems/c/src/lib/libbsp/powerpc/ec555/clock/p_clock.c
 +}
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/configure.ac
 ===================================================================
 +}
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/configure.ac
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/powerpc/ec555/configure.ac
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/powerpc/ec555/configure.ac  2007-08-14 17:51:38.000000000 +0200
 @@ -0,0 +1,52 @@
 +## Process this file with autoconf to produce a configure script.
 +## 
 @@ -0,0 +1,52 @@
 +## Process this file with autoconf to produce a configure script.
 +## 
-+## $Id: configure.ac,v 1.7 2006/01/11 04:52:39 ralf Exp $
++## $Id: configure.ac,v 1.7.2.2 2006/12/02 06:06:51 ralf Exp $
 +
 +
-+AC_PREREQ(2.59)
-+AC_INIT([rtems-c-src-lib-libbsp-powerpc-mbx5xx],[_RTEMS_VERSION],[rtems-bugs@rtems.com])
++AC_PREREQ(2.60)
++AC_INIT([rtems-c-src-lib-libbsp-powerpc-mbx5xx],[_RTEMS_VERSION],[http://www.rtems.org/bugzilla])
 +AC_CONFIG_SRCDIR([bsp_specs])
 +RTEMS_TOP(../../../../../..)
 +
 +RTEMS_CANONICAL_TARGET_CPU
 +AC_CONFIG_SRCDIR([bsp_specs])
 +RTEMS_TOP(../../../../../..)
 +
 +RTEMS_CANONICAL_TARGET_CPU
-+AM_INIT_AUTOMAKE([no-define nostdinc foreign 1.9])
++AM_INIT_AUTOMAKE([no-define nostdinc foreign 1.10])
 +RTEMS_BSP_CONFIGURE
 +
 +RTEMS_PROG_CC_FOR_TARGET([-ansi -fasm])
 +RTEMS_BSP_CONFIGURE
 +
 +RTEMS_PROG_CC_FOR_TARGET([-ansi -fasm])
@@ -636,8 +644,8 @@ Index: rtems/c/src/lib/libbsp/powerpc/ec555/configure.ac
 +AC_OUTPUT
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/console/console.c
 ===================================================================
 +AC_OUTPUT
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/console/console.c
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/powerpc/ec555/console/console.c
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/powerpc/ec555/console/console.c     2007-08-14 17:51:38.000000000 +0200
 @@ -0,0 +1,368 @@
 +/*
 + *  console.c
 @@ -0,0 +1,368 @@
 +/*
 + *  console.c
@@ -1007,20 +1015,11 @@ Index: rtems/c/src/lib/libbsp/powerpc/ec555/console/console.c
 +    return RTEMS_SUCCESSFUL;
 +  #endif
 +}
 +    return RTEMS_SUCCESSFUL;
 +  #endif
 +}
-Index: rtems/c/src/lib/libbsp/powerpc/ec555/include/.cvsignore
-===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/powerpc/ec555/include/.cvsignore
-@@ -0,0 +1,4 @@
-+bspopts.h
-+bspopts.h.in
-+stamp-h
-+stamp-h.in
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/include/bsp.h
 ===================================================================
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/include/bsp.h
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/powerpc/ec555/include/bsp.h
-@@ -0,0 +1,115 @@
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/powerpc/ec555/include/bsp.h 2007-08-14 17:51:38.000000000 +0200
+@@ -0,0 +1,114 @@
 +/*  bsp.h
 + *
 + *  This include file contains all board IO definitions.
 +/*  bsp.h
 + *
 + *  This include file contains all board IO definitions.
@@ -1040,7 +1039,7 @@ Index: rtems/c/src/lib/libbsp/powerpc/ec555/include/bsp.h
 + *  found in the file LICENSE in this distribution or at
 + *  http://www.rtems.com/license/LICENSE.
 + *
 + *  found in the file LICENSE in this distribution or at
 + *  http://www.rtems.com/license/LICENSE.
 + *
-+ *  $Id: bsp.h,v 1.9 2005/05/26 05:36:48 ralf Exp $
++ *  $Id: bsp.h,v 1.10 2006/03/17 10:11:37 ralf Exp $
 + */
 +
 +#ifndef _BSP_H
 + */
 +
 +#ifndef _BSP_H
@@ -1135,12 +1134,11 @@ Index: rtems/c/src/lib/libbsp/powerpc/ec555/include/bsp.h
 +#endif
 +
 +#endif
 +#endif
 +
 +#endif
-+/* end of include file */
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/include/coverhd.h
 ===================================================================
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/include/coverhd.h
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/powerpc/ec555/include/coverhd.h
-@@ -0,0 +1,117 @@
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/powerpc/ec555/include/coverhd.h     2007-08-14 17:51:38.000000000 +0200
+@@ -0,0 +1,116 @@
 +/*  coverhd.h
 + *
 + *  This include file has defines to represent the overhead associated
 +/*  coverhd.h
 + *
 + *  This include file has defines to represent the overhead associated
@@ -1164,7 +1162,7 @@ Index: rtems/c/src/lib/libbsp/powerpc/ec555/include/coverhd.h
 + *  found in the file LICENSE in this distribution or at
 + *  http://www.rtems.com/license/LICENSE.
 + *
 + *  found in the file LICENSE in this distribution or at
 + *  http://www.rtems.com/license/LICENSE.
 + *
-+ *  $Id: coverhd.h,v 1.1 2004/04/12 21:52:13 joel Exp $
++ *  $Id: coverhd.h,v 1.2 2006/03/17 10:11:37 ralf Exp $
 + */
 +
 +#ifndef __COVERHD_h
 + */
 +
 +#ifndef __COVERHD_h
@@ -1257,11 +1255,10 @@ Index: rtems/c/src/lib/libbsp/powerpc/ec555/include/coverhd.h
 +#endif
 +
 +#endif
 +#endif
 +
 +#endif
-+/* end of include file */
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/include/tm27.h
 ===================================================================
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/include/tm27.h
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/powerpc/ec555/include/tm27.h
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/powerpc/ec555/include/tm27.h        2007-08-14 17:51:38.000000000 +0200
 @@ -0,0 +1,54 @@
 +/*
 + *  tm27.h
 @@ -0,0 +1,54 @@
 +/*
 + *  tm27.h
@@ -1319,8 +1316,8 @@ Index: rtems/c/src/lib/libbsp/powerpc/ec555/include/tm27.h
 +#endif
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/irq/irq.h
 ===================================================================
 +#endif
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/irq/irq.h
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/powerpc/ec555/irq/irq.h
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/powerpc/ec555/irq/irq.h     2007-08-14 17:51:38.000000000 +0200
 @@ -0,0 +1,55 @@
 +/* irq.h
 + *
 @@ -0,0 +1,55 @@
 +/* irq.h
 + *
@@ -1379,8 +1376,8 @@ Index: rtems/c/src/lib/libbsp/powerpc/ec555/irq/irq.h
 +#endif /* LIBBSP_POWERPC_SS555_IRQ_IRQ_H */
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/startup/bspstart.c
 ===================================================================
 +#endif /* LIBBSP_POWERPC_SS555_IRQ_IRQ_H */
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/startup/bspstart.c
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/powerpc/ec555/startup/bspstart.c
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/powerpc/ec555/startup/bspstart.c    2007-08-14 17:51:38.000000000 +0200
 @@ -0,0 +1,201 @@
 +/*  bspstart.c
 + *
 @@ -0,0 +1,201 @@
 +/*  bspstart.c
 + *
@@ -1585,8 +1582,8 @@ Index: rtems/c/src/lib/libbsp/powerpc/ec555/startup/bspstart.c
 +}
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/startup/iss555.c
 ===================================================================
 +}
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/startup/iss555.c
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/powerpc/ec555/startup/iss555.c
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/powerpc/ec555/startup/iss555.c      2007-08-14 17:51:38.000000000 +0200
 @@ -0,0 +1,148 @@
 +/*
 + *  iss555.c
 @@ -0,0 +1,148 @@
 +/*
 + *  iss555.c
@@ -1738,8 +1735,8 @@ Index: rtems/c/src/lib/libbsp/powerpc/ec555/startup/iss555.c
 +}
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/startup/linkcmds
 ===================================================================
 +}
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/startup/linkcmds
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/powerpc/ec555/startup/linkcmds
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/powerpc/ec555/startup/linkcmds      2007-08-14 17:51:38.000000000 +0200
 @@ -0,0 +1,319 @@
 +/*
 + * Linker command file for Intec SS555 board
 @@ -0,0 +1,319 @@
 +/*
 + * Linker command file for Intec SS555 board
@@ -2062,8 +2059,8 @@ Index: rtems/c/src/lib/libbsp/powerpc/ec555/startup/linkcmds
 +}
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/startup/start.S
 ===================================================================
 +}
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/startup/start.S
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/powerpc/ec555/startup/start.S
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/powerpc/ec555/startup/start.S       2007-08-14 17:51:38.000000000 +0200
 @@ -0,0 +1,411 @@
 +/*  start.S
 + *
 @@ -0,0 +1,411 @@
 +/*  start.S
 + *
@@ -2478,8 +2475,8 @@ Index: rtems/c/src/lib/libbsp/powerpc/ec555/startup/start.S
 +.L_text_e:
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/startup/tm27supp.c
 ===================================================================
 +.L_text_e:
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/startup/tm27supp.c
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/powerpc/ec555/startup/tm27supp.c
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/powerpc/ec555/startup/tm27supp.c    2007-08-14 17:51:38.000000000 +0200
 @@ -0,0 +1,29 @@
 +/*
 + *  Support routines for TM27
 @@ -0,0 +1,29 @@
 +/*
 + *  Support routines for TM27
@@ -2512,8 +2509,8 @@ Index: rtems/c/src/lib/libbsp/powerpc/ec555/startup/tm27supp.c
 +
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/times
 ===================================================================
 +
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/times
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/powerpc/ec555/times
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/powerpc/ec555/times 2007-08-14 17:51:38.000000000 +0200
 @@ -0,0 +1,189 @@
 +#
 +#  Timing Test Suite Results for the Intec SS555
 @@ -0,0 +1,189 @@
 +#
 +#  Timing Test Suite Results for the Intec SS555
@@ -2706,9 +2703,9 @@ Index: rtems/c/src/lib/libbsp/powerpc/ec555/times
 +   rtems_rate_monotonic_period: conclude periods -- caller blocks       36
 Index: rtems/make/custom/ec555.cfg
 ===================================================================
 +   rtems_rate_monotonic_period: conclude periods -- caller blocks       36
 Index: rtems/make/custom/ec555.cfg
 ===================================================================
---- /dev/null
-+++ rtems/make/custom/ec555.cfg
-@@ -0,0 +1,49 @@
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/make/custom/ec555.cfg        2007-08-14 17:51:38.000000000 +0200
+@@ -0,0 +1,41 @@
 +#
 +#  Config file for an Intec Automation SS555 MPC555-based card
 +#
 +#
 +#  Config file for an Intec Automation SS555 MPC555-based card
 +#
@@ -2733,16 +2730,8 @@ Index: rtems/make/custom/ec555.cfg
 +#
 +CPU_CFLAGS = -mcpu=$(GCC_CPU_MODEL) -D$(RTEMS_CPU_MODEL) -D$(RTEMS_BSP_FAMILY)
 +
 +#
 +CPU_CFLAGS = -mcpu=$(GCC_CPU_MODEL) -D$(RTEMS_CPU_MODEL) -D$(RTEMS_BSP_FAMILY)
 +
-+# Debugging flags:  If we debug with optimization on, single-stepping
-+# sometimes looks a little odd, but there won't be any surprises later.
-+CFLAGS_DEBUG_V += -O4 -ggdb
-+CXXFLAGS_DEBUG_V += -O4 -ggdb
-+
-+# optimize flag: typically -O, could use -O4 or -fast
-+# -O4 is ok for RTEMS
-+# NOTE: some level of -O may be actually required by inline assembler
-+CFLAGS_OPTIMIZE_V=-O4 -fno-keep-inline-functions
-+CXXFLAGS_OPTIMIZE_V=-O4
++# optimize flag: typically -O2
++CFLAGS_OPTIMIZE_V = -O2 -g -fno-keep-inline-functions
 +
 +define make-exe
 +      $(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) $(SS555_LDFLAGS) \
 +
 +define make-exe
 +      $(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) $(SS555_LDFLAGS) \
@@ -2760,8 +2749,8 @@ Index: rtems/make/custom/ec555.cfg
 +
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/preinstall.am
 ===================================================================
 +
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/preinstall.am
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/powerpc/ec555/preinstall.am
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/powerpc/ec555/preinstall.am 2007-08-14 17:51:38.000000000 +0200
 @@ -0,0 +1,58 @@
 +## Automatically generated by ampolish3 - Do not edit
 +
 @@ -0,0 +1,58 @@
 +## Automatically generated by ampolish3 - Do not edit
 +
@@ -2779,12 +2768,12 @@ Index: rtems/c/src/lib/libbsp/powerpc/ec555/preinstall.am
 +CLEANFILES = $(PREINSTALL_FILES)
 +
 +$(PROJECT_LIB)/$(dirstamp):
 +CLEANFILES = $(PREINSTALL_FILES)
 +
 +$(PROJECT_LIB)/$(dirstamp):
-+      @$(mkdir_p) $(PROJECT_LIB)
++      @$(MKDIR_P) $(PROJECT_LIB)
 +      @: > $(PROJECT_LIB)/$(dirstamp)
 +PREINSTALL_DIRS += $(PROJECT_LIB)/$(dirstamp)
 +
 +$(PROJECT_INCLUDE)/$(dirstamp):
 +      @: > $(PROJECT_LIB)/$(dirstamp)
 +PREINSTALL_DIRS += $(PROJECT_LIB)/$(dirstamp)
 +
 +$(PROJECT_INCLUDE)/$(dirstamp):
-+      @$(mkdir_p) $(PROJECT_INCLUDE)
++      @$(MKDIR_P) $(PROJECT_INCLUDE)
 +      @: > $(PROJECT_INCLUDE)/$(dirstamp)
 +PREINSTALL_DIRS += $(PROJECT_INCLUDE)/$(dirstamp)
 +
 +      @: > $(PROJECT_INCLUDE)/$(dirstamp)
 +PREINSTALL_DIRS += $(PROJECT_INCLUDE)/$(dirstamp)
 +
@@ -2805,7 +2794,7 @@ Index: rtems/c/src/lib/libbsp/powerpc/ec555/preinstall.am
 +PREINSTALL_FILES += $(PROJECT_INCLUDE)/bspopts.h
 +
 +$(PROJECT_INCLUDE)/bsp/$(dirstamp):
 +PREINSTALL_FILES += $(PROJECT_INCLUDE)/bspopts.h
 +
 +$(PROJECT_INCLUDE)/bsp/$(dirstamp):
-+      @$(mkdir_p) $(PROJECT_INCLUDE)/bsp
++      @$(MKDIR_P) $(PROJECT_INCLUDE)/bsp
 +      @: > $(PROJECT_INCLUDE)/bsp/$(dirstamp)
 +PREINSTALL_DIRS += $(PROJECT_INCLUDE)/bsp/$(dirstamp)
 +
 +      @: > $(PROJECT_INCLUDE)/bsp/$(dirstamp)
 +PREINSTALL_DIRS += $(PROJECT_INCLUDE)/bsp/$(dirstamp)
 +
index 2085573d6157c41ba24378830a2860c0916b1f52..c247240d546a91bcd459dac0223a8bf7c6513047 100644 (file)
@@ -1,13 +1,17 @@
-Index: rtems-051009/c/src/lib/libbsp/m68k/acinclude.m4
+---
+ c/src/lib/libbsp/m68k/acinclude.m4 |    2 ++
+ 1 file changed, 2 insertions(+)
+
+Index: rtems/c/src/lib/libbsp/m68k/acinclude.m4
 ===================================================================
 ===================================================================
---- rtems.orig/c/src/lib/libbsp/m68k/acinclude.m4
-+++ rtems/c/src/lib/libbsp/m68k/acinclude.m4
-@@ -22,6 +22,8 @@ AC_DEFUN([RTEMS_CHECK_BSPDIR],
+--- rtems.orig/c/src/lib/libbsp/m68k/acinclude.m4      2007-08-14 18:59:45.000000000 +0200
++++ rtems/c/src/lib/libbsp/m68k/acinclude.m4   2007-08-14 19:04:40.000000000 +0200
+@@ -20,6 +20,8 @@
+     AC_CONFIG_SUBDIRS([mcf5206elite]);;
+   mcf5235 )
      AC_CONFIG_SUBDIRS([mcf5235]);;
      AC_CONFIG_SUBDIRS([mcf5235]);;
-   mrm332 )
-     AC_CONFIG_SUBDIRS([mrm332]);;
 +  mo376 )
 +    AC_CONFIG_SUBDIRS([mo376]);;
 +  mo376 )
 +    AC_CONFIG_SUBDIRS([mo376]);;
+   mrm332 )
+     AC_CONFIG_SUBDIRS([mrm332]);;
    mvme136 )
    mvme136 )
-     AC_CONFIG_SUBDIRS([mvme136]);;
-   mvme147 )
index 22a05b7bf94f85f782c4bcde9feaa92c37acbc7a..22ea2ff29ac131faffeb2c1062a316d8c680b301 100644 (file)
@@ -1,7 +1,19 @@
-Index: rtems-051009/c/src/lib/libbsp/m68k/mo376/include/bsp.h
+---
+ c/src/lib/libbsp/m68k/mo376/clock/ckinit.c       |    2 
+ c/src/lib/libbsp/m68k/mo376/include/bsp.h        |   26 +
+ c/src/lib/libbsp/m68k/mo376/include/mo376.h      |   27 -
+ c/src/lib/libbsp/m68k/mo376/misc/gdbinit68       |  395 ++++++++++++++++++++++-
+ c/src/lib/libbsp/m68k/mo376/spurious/spinit.c    |   10 
+ c/src/lib/libbsp/m68k/mo376/startup/linkcmds     |   10 
+ c/src/lib/libbsp/m68k/mo376/startup/linkcmds_ROM |   17 
+ c/src/lib/libbsp/m68k/mo376/startup/start_c.c    |    6 
+ make/custom/mo376.cfg                            |   10 
+ 9 files changed, 455 insertions(+), 48 deletions(-)
+
+Index: rtems/c/src/lib/libbsp/m68k/mo376/include/bsp.h
 ===================================================================
 ===================================================================
---- rtems.orig/c/src/lib/libbsp/m68k/mo376/include/bsp.h
-+++ rtems/c/src/lib/libbsp/m68k/mo376/include/bsp.h
+--- rtems.orig/c/src/lib/libbsp/m68k/mo376/include/bsp.h       2007-08-14 17:24:09.000000000 +0200
++++ rtems/c/src/lib/libbsp/m68k/mo376/include/bsp.h    2007-08-14 17:36:35.000000000 +0200
 @@ -1,6 +1,6 @@
  /*  bsp.h
   *
 @@ -1,6 +1,6 @@
  /*  bsp.h
   *
@@ -10,7 +22,7 @@ Index: rtems-051009/c/src/lib/libbsp/m68k/mo376/include/bsp.h
   *
   *  COPYRIGHT (c) 1989-1999.
   *  On-Line Applications Research Corporation (OAR).
   *
   *  COPYRIGHT (c) 1989-1999.
   *  On-Line Applications Research Corporation (OAR).
-@@ -41,6 +41,30 @@ extern "C" {
+@@ -41,6 +41,30 @@
  /* #define CONFIGURE_INTERRUPT_STACK_MEMORY  (TBD * 1024) */
  
  /*
  /* #define CONFIGURE_INTERRUPT_STACK_MEMORY  (TBD * 1024) */
  
  /*
@@ -41,11 +53,11 @@ Index: rtems-051009/c/src/lib/libbsp/m68k/mo376/include/bsp.h
   *  Simple spin delay in microsecond units for device drivers.
   *  This is very dependent on the clock speed of the target.
   */
   *  Simple spin delay in microsecond units for device drivers.
   *  This is very dependent on the clock speed of the target.
   */
-Index: rtems-051009/c/src/lib/libbsp/m68k/mo376/clock/ckinit.c
+Index: rtems/c/src/lib/libbsp/m68k/mo376/clock/ckinit.c
 ===================================================================
 ===================================================================
---- rtems.orig/c/src/lib/libbsp/m68k/mo376/clock/ckinit.c
-+++ rtems/c/src/lib/libbsp/m68k/mo376/clock/ckinit.c
-@@ -60,7 +60,7 @@ void Install_clock(
+--- rtems.orig/c/src/lib/libbsp/m68k/mo376/clock/ckinit.c      2007-08-14 17:24:09.000000000 +0200
++++ rtems/c/src/lib/libbsp/m68k/mo376/clock/ckinit.c   2007-08-14 17:36:35.000000000 +0200
+@@ -60,7 +60,7 @@
    Old_ticker = (rtems_isr_entry) set_vector( clock_isr, CLOCK_VECTOR, 1 );
  
    /* enable 1mS interrupts */
    Old_ticker = (rtems_isr_entry) set_vector( clock_isr, CLOCK_VECTOR, 1 );
  
    /* enable 1mS interrupts */
@@ -54,10 +66,10 @@ Index: rtems-051009/c/src/lib/libbsp/m68k/mo376/clock/ckinit.c
    *PICR = (unsigned short int)                     /* enable interrupt */
      ( SAM(ISRL_PIT,8,PIRQL) | SAM(CLOCK_VECTOR,0,PIV) );
  
    *PICR = (unsigned short int)                     /* enable interrupt */
      ( SAM(ISRL_PIT,8,PIRQL) | SAM(CLOCK_VECTOR,0,PIV) );
  
-Index: rtems-051009/c/src/lib/libbsp/m68k/mo376/misc/gdbinit68
+Index: rtems/c/src/lib/libbsp/m68k/mo376/misc/gdbinit68
 ===================================================================
 ===================================================================
---- rtems.orig/c/src/lib/libbsp/m68k/mo376/misc/gdbinit68
-+++ rtems/c/src/lib/libbsp/m68k/mo376/misc/gdbinit68
+--- rtems.orig/c/src/lib/libbsp/m68k/mo376/misc/gdbinit68      2007-08-14 17:20:30.000000000 +0200
++++ rtems/c/src/lib/libbsp/m68k/mo376/misc/gdbinit68   2007-08-14 17:36:35.000000000 +0200
 @@ -1,16 +1,399 @@
  #
  #  $Id: gdbinit68,v 1.1 2001/05/25 16:28:46 joel Exp $
 @@ -1,16 +1,399 @@
  #
  #  $Id: gdbinit68,v 1.1 2001/05/25 16:28:46 joel Exp $
@@ -464,10 +476,10 @@ Index: rtems-051009/c/src/lib/libbsp/m68k/mo376/misc/gdbinit68
 +#b main
 +
 +run
 +#b main
 +
 +run
-Index: rtems-051009/c/src/lib/libbsp/m68k/mo376/include/mo376.h
+Index: rtems/c/src/lib/libbsp/m68k/mo376/include/mo376.h
 ===================================================================
 ===================================================================
---- rtems.orig/c/src/lib/libbsp/m68k/mo376/include/mo376.h
-+++ rtems/c/src/lib/libbsp/m68k/mo376/include/mo376.h
+--- rtems.orig/c/src/lib/libbsp/m68k/mo376/include/mo376.h     2007-08-14 17:24:09.000000000 +0200
++++ rtems/c/src/lib/libbsp/m68k/mo376/include/mo376.h  2007-08-14 17:36:35.000000000 +0200
 @@ -26,31 +26,22 @@
  #define EFI_INT1 25           /* CTS interrupt */
  #define ISRL_SCI 6
 @@ -26,31 +26,22 @@
  #define EFI_INT1 25           /* CTS interrupt */
  #define ISRL_SCI 6
@@ -509,10 +521,10 @@ Index: rtems-051009/c/src/lib/libbsp/m68k/mo376/include/mo376.h
  #define SCI_BAUD 19200                /* RS232 Baud Rate */
  
  /* macros/functions */
  #define SCI_BAUD 19200                /* RS232 Baud Rate */
  
  /* macros/functions */
-Index: rtems-051009/c/src/lib/libbsp/m68k/mo376/startup/linkcmds_ROM
+Index: rtems/c/src/lib/libbsp/m68k/mo376/startup/linkcmds_ROM
 ===================================================================
 ===================================================================
---- rtems.orig/c/src/lib/libbsp/m68k/mo376/startup/linkcmds_ROM
-+++ rtems/c/src/lib/libbsp/m68k/mo376/startup/linkcmds_ROM
+--- rtems.orig/c/src/lib/libbsp/m68k/mo376/startup/linkcmds_ROM        2007-08-14 17:20:30.000000000 +0200
++++ rtems/c/src/lib/libbsp/m68k/mo376/startup/linkcmds_ROM     2007-08-14 17:36:35.000000000 +0200
 @@ -4,7 +4,8 @@
   */
  
 @@ -4,7 +4,8 @@
   */
  
@@ -523,7 +535,7 @@ Index: rtems-051009/c/src/lib/libbsp/m68k/mo376/startup/linkcmds_ROM
  __DYNAMIC  =  0;
  
  /*
  __DYNAMIC  =  0;
  
  /*
-@@ -39,18 +40,18 @@ __DYNAMIC  =  0;
+@@ -39,18 +40,18 @@
  
  MEMORY
  {
  
  MEMORY
  {
@@ -549,36 +561,36 @@ Index: rtems-051009/c/src/lib/libbsp/m68k/mo376/startup/linkcmds_ROM
  
  /*
   * 
  
  /*
   * 
-Index: rtems-051009/c/src/lib/libbsp/m68k/mo376/spurious/spinit.c
+Index: rtems/c/src/lib/libbsp/m68k/mo376/spurious/spinit.c
 ===================================================================
 ===================================================================
---- rtems.orig/c/src/lib/libbsp/m68k/mo376/spurious/spinit.c
-+++ rtems/c/src/lib/libbsp/m68k/mo376/spurious/spinit.c
-@@ -33,8 +33,8 @@ rtems_isr Spurious_Isr(
+--- rtems.orig/c/src/lib/libbsp/m68k/mo376/spurious/spinit.c   2007-08-14 17:20:30.000000000 +0200
++++ rtems/c/src/lib/libbsp/m68k/mo376/spurious/spinit.c        2007-08-14 17:45:18.000000000 +0200
+@@ -33,8 +33,8 @@
    rtems_vector_number vector
  )
  {
    rtems_vector_number vector
  )
  {
--  //int sp = 0;
+-  /*int sp = 0; */
 -#if 0
 +  int sp = 0;
 +#if 1
    const char * const VectDescrip[] = {
      _Spurious_Error_[0],   _Spurious_Error_[0],  _Spurious_Error_[1],
      _Spurious_Error_[2],   _Spurious_Error_[3],  _Spurious_Error_[4],
 -#if 0
 +  int sp = 0;
 +#if 1
    const char * const VectDescrip[] = {
      _Spurious_Error_[0],   _Spurious_Error_[0],  _Spurious_Error_[1],
      _Spurious_Error_[2],   _Spurious_Error_[3],  _Spurious_Error_[4],
-@@ -60,11 +60,11 @@ rtems_isr Spurious_Isr(
+@@ -60,11 +60,11 @@
      _Spurious_Error_[27], _Spurious_Error_[28]};
  #endif
  
      _Spurious_Error_[27], _Spurious_Error_[28]};
  #endif
  
--  //asm volatile ( "movea.l   %%sp,%0 " : "=a" (sp) : "0" (sp) );
+-  /*asm volatile ( "movea.l   %%sp,%0 " : "=a" (sp) : "0" (sp) ); */
 +  asm volatile ( "movea.l   %%sp,%0 " : "=a" (sp) : "0" (sp) );
  
    _CPU_ISR_Set_level( 7 );
 +  asm volatile ( "movea.l   %%sp,%0 " : "=a" (sp) : "0" (sp) );
  
    _CPU_ISR_Set_level( 7 );
-   //_UART_flush();
+   /*_UART_flush(); */
 -#if 0
 +#if 1
    RAW_PUTS("\n\rRTEMS: Spurious interrupt: ");
    RAW_PUTS((char *)VectDescrip[( (vector>64) ? 64 : vector )]);
    RAW_PUTS("\n\rRTEMS:    Vector: ");
 -#if 0
 +#if 1
    RAW_PUTS("\n\rRTEMS: Spurious interrupt: ");
    RAW_PUTS((char *)VectDescrip[( (vector>64) ? 64 : vector )]);
    RAW_PUTS("\n\rRTEMS:    Vector: ");
-@@ -89,6 +89,7 @@ void Spurious_Initialize(void)
+@@ -89,6 +89,7 @@
      {
        switch (vector)
        {
      {
        switch (vector)
        {
@@ -586,7 +598,7 @@ Index: rtems-051009/c/src/lib/libbsp/m68k/mo376/spurious/spinit.c
        case 4:
        case 9:
        case 31:
        case 4:
        case 9:
        case 31:
-@@ -96,6 +97,7 @@ void Spurious_Initialize(void)
+@@ -96,6 +97,7 @@
        case 66:
          /* These vectors used by CPU32bug - don't overwrite them. */
          break;
        case 66:
          /* These vectors used by CPU32bug - don't overwrite them. */
          break;
@@ -594,11 +606,11 @@ Index: rtems-051009/c/src/lib/libbsp/m68k/mo376/spurious/spinit.c
  
        default:
          (void) set_vector( Spurious_Isr, vector, 1 );
  
        default:
          (void) set_vector( Spurious_Isr, vector, 1 );
-Index: rtems-051009/c/src/lib/libbsp/m68k/mo376/startup/linkcmds
+Index: rtems/c/src/lib/libbsp/m68k/mo376/startup/linkcmds
 ===================================================================
 ===================================================================
---- rtems.orig/c/src/lib/libbsp/m68k/mo376/startup/linkcmds
-+++ rtems/c/src/lib/libbsp/m68k/mo376/startup/linkcmds
-@@ -33,15 +33,15 @@ __DYNAMIC  =  0;
+--- rtems.orig/c/src/lib/libbsp/m68k/mo376/startup/linkcmds    2007-08-14 17:20:30.000000000 +0200
++++ rtems/c/src/lib/libbsp/m68k/mo376/startup/linkcmds 2007-08-14 17:36:35.000000000 +0200
+@@ -33,15 +33,15 @@
  /*
   * Declare some sizes.
   */
  /*
   * Declare some sizes.
   */
@@ -619,33 +631,32 @@ Index: rtems-051009/c/src/lib/libbsp/m68k/mo376/startup/linkcmds
  }
  
  _copy_data_from_rom = 0;
  }
  
  _copy_data_from_rom = 0;
-Index: rtems-051009/make/custom/mo376.cfg
+Index: rtems/make/custom/mo376.cfg
 ===================================================================
 ===================================================================
---- rtems.orig/make/custom/mo376.cfg
-+++ rtems/make/custom/mo376.cfg
-@@ -16,8 +16,16 @@ RTEMS_BSP_FAMILY=mo376
+--- rtems.orig/make/custom/mo376.cfg   2007-08-14 17:24:09.000000000 +0200
++++ rtems/make/custom/mo376.cfg        2007-08-14 17:41:03.000000000 +0200
+@@ -16,8 +16,14 @@
  #  and (hopefully) optimize for it. 
  CPU_CFLAGS = -mcpu32
  
  #  and (hopefully) optimize for it. 
  CPU_CFLAGS = -mcpu32
  
+-# optimize flag: typically -O2
+-CFLAGS_OPTIMIZE_V = -O2 -g -fomit-frame-pointer
 +# Debugging flags:  If we debug with optimization on, single-stepping
 +# sometimes looks a little odd, but there won't be any surprises later.
 +CFLAGS_DEBUG_V += -O2 -ggdb
 +CXXFLAGS_DEBUG_V += -O2 -ggdb
 +
 +# Debugging flags:  If we debug with optimization on, single-stepping
 +# sometimes looks a little odd, but there won't be any surprises later.
 +CFLAGS_DEBUG_V += -O2 -ggdb
 +CXXFLAGS_DEBUG_V += -O2 -ggdb
 +
- # optimize flag: typically -0, could use -O4 or -fast, -O4 is ok for RTEMS
--CFLAGS_OPTIMIZE_V=-O4 -fomit-frame-pointer
-+CFLAGS_OPTIMIZE_V=-O4 -fomit-frame-pointer -ggdb
-+CXXFLAGS_OPTIMIZE_V=-O4 -ggdb
-+
-+
++# optimize flag: typically -0, could use -O4 or -fast, -O4 is ok for RTEMS
++CFLAGS_OPTIMIZE_V=-O2 -fomit-frame-pointer -ggdb
++CXXFLAGS_OPTIMIZE_V=-O2 -ggdb
  
  # The following are definitions of make-exe which will work using ld as
  
  # The following are definitions of make-exe which will work using ld as
- # is currently required.  It is expected that as of gcc 2.8, the end user
-Index: rtems-051009/c/src/lib/libbsp/m68k/mo376/startup/start_c.c
+ # is currently required.
+Index: rtems/c/src/lib/libbsp/m68k/mo376/startup/start_c.c
 ===================================================================
 ===================================================================
---- rtems.orig/c/src/lib/libbsp/m68k/mo376/startup/start_c.c
-+++ rtems/c/src/lib/libbsp/m68k/mo376/startup/start_c.c
-@@ -60,12 +60,12 @@ void  start_c() {
+--- rtems.orig/c/src/lib/libbsp/m68k/mo376/startup/start_c.c   2007-08-14 17:24:09.000000000 +0200
++++ rtems/c/src/lib/libbsp/m68k/mo376/startup/start_c.c        2007-08-14 17:36:35.000000000 +0200
+@@ -60,12 +60,12 @@
  
    /* Port E and F Data Direction Register */
    /*    see section 9 of the SIM Reference Manual */
  
    /* Port E and F Data Direction Register */
    /*    see section 9 of the SIM Reference Manual */
diff --git a/rtems-patches/current/rtems-readlink-type-fix.patch b/rtems-patches/current/rtems-readlink-type-fix.patch
new file mode 100644 (file)
index 0000000..1bed335
--- /dev/null
@@ -0,0 +1,21 @@
+---
+ cpukit/libcsupport/src/readlink.c |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+Index: rtems/cpukit/libcsupport/src/readlink.c
+===================================================================
+--- rtems.orig/cpukit/libcsupport/src/readlink.c       2007-08-15 01:54:35.000000000 +0200
++++ rtems/cpukit/libcsupport/src/readlink.c    2007-08-15 01:56:45.000000000 +0200
+@@ -18,10 +18,10 @@
+ #include <rtems/libio_.h>
+ #include <rtems/seterr.h>
+-int readlink(
++ssize_t readlink(
+   const char *pathname,
+   char       *buf,
+-  int         bufsize
++  size_t      bufsize
+ )
+ {
+   rtems_filesystem_location_info_t  loc;
index 330d95b2622218393c462c9908da3f9a7c8fdcbf..938846788e771854aee695aa3d4adda3dff393be 100644 (file)
@@ -1,7 +1,24 @@
+---
+ c/src/lib/libbsp/m68k/mo376/ChangeLog         |    5 +
+ c/src/lib/libbsp/m68k/mo376/Makefile.am       |    2 
+ c/src/lib/libbsp/m68k/mo376/README            |   25 ++++-----
+ c/src/lib/libbsp/m68k/mo376/clock/ckinit.c    |    2 
+ c/src/lib/libbsp/m68k/mo376/configure.ac      |    2 
+ c/src/lib/libbsp/m68k/mo376/console/sci.c     |    4 -
+ c/src/lib/libbsp/m68k/mo376/include/bsp.h     |    2 
+ c/src/lib/libbsp/m68k/mo376/include/mo376.h   |   70 ++++++++++++++++++++++++++
+ c/src/lib/libbsp/m68k/mo376/include/mrm332.h  |   70 --------------------------
+ c/src/lib/libbsp/m68k/mo376/preinstall.am     |    6 +-
+ c/src/lib/libbsp/m68k/mo376/start/start.S     |    2 
+ c/src/lib/libbsp/m68k/mo376/startup/start_c.c |    2 
+ c/src/lib/libbsp/m68k/mo376/times             |    6 +-
+ make/custom/mo376.cfg                         |    4 -
+ 14 files changed, 104 insertions(+), 98 deletions(-)
+
 Index: rtems/c/src/lib/libbsp/m68k/mo376/start/start.S
 ===================================================================
 Index: rtems/c/src/lib/libbsp/m68k/mo376/start/start.S
 ===================================================================
---- rtems.orig/c/src/lib/libbsp/m68k/mo376/start/start.S
-+++ rtems/c/src/lib/libbsp/m68k/mo376/start/start.S
+--- rtems.orig/c/src/lib/libbsp/m68k/mo376/start/start.S       2007-08-14 17:20:30.000000000 +0200
++++ rtems/c/src/lib/libbsp/m68k/mo376/start/start.S    2007-08-14 17:24:09.000000000 +0200
 @@ -2,7 +2,7 @@
   *  $Id
   */
 @@ -2,7 +2,7 @@
   *  $Id
   */
@@ -13,9 +30,9 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/start/start.S
  
 Index: rtems/c/src/lib/libbsp/m68k/mo376/include/bsp.h
 ===================================================================
  
 Index: rtems/c/src/lib/libbsp/m68k/mo376/include/bsp.h
 ===================================================================
---- rtems.orig/c/src/lib/libbsp/m68k/mo376/include/bsp.h
-+++ rtems/c/src/lib/libbsp/m68k/mo376/include/bsp.h
-@@ -26,7 +26,7 @@ extern "C" {
+--- rtems.orig/c/src/lib/libbsp/m68k/mo376/include/bsp.h       2007-08-14 17:20:30.000000000 +0200
++++ rtems/c/src/lib/libbsp/m68k/mo376/include/bsp.h    2007-08-14 17:24:09.000000000 +0200
+@@ -26,7 +26,7 @@
  #include <rtems/clockdrv.h>
  #include <rtems/console.h>
  #include <rtems/iosupp.h>
  #include <rtems/clockdrv.h>
  #include <rtems/console.h>
  #include <rtems/iosupp.h>
@@ -26,9 +43,9 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/include/bsp.h
  
 Index: rtems/c/src/lib/libbsp/m68k/mo376/ChangeLog
 ===================================================================
  
 Index: rtems/c/src/lib/libbsp/m68k/mo376/ChangeLog
 ===================================================================
---- rtems.orig/c/src/lib/libbsp/m68k/mo376/ChangeLog
-+++ rtems/c/src/lib/libbsp/m68k/mo376/ChangeLog
-@@ -11,6 +11,11 @@
+--- rtems.orig/c/src/lib/libbsp/m68k/mo376/ChangeLog   2007-08-14 17:20:30.000000000 +0200
++++ rtems/c/src/lib/libbsp/m68k/mo376/ChangeLog        2007-08-14 17:24:09.000000000 +0200
+@@ -29,6 +29,11 @@
  
        * include/bsp.h: New header guard.
  
  
        * include/bsp.h: New header guard.
  
@@ -42,8 +59,8 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/ChangeLog
        * Makefile.am: Eliminate CFLAGS_OPTIMIZE_V.
 Index: rtems/c/src/lib/libbsp/m68k/mo376/clock/ckinit.c
 ===================================================================
        * Makefile.am: Eliminate CFLAGS_OPTIMIZE_V.
 Index: rtems/c/src/lib/libbsp/m68k/mo376/clock/ckinit.c
 ===================================================================
---- rtems.orig/c/src/lib/libbsp/m68k/mo376/clock/ckinit.c
-+++ rtems/c/src/lib/libbsp/m68k/mo376/clock/ckinit.c
+--- rtems.orig/c/src/lib/libbsp/m68k/mo376/clock/ckinit.c      2007-08-14 17:20:30.000000000 +0200
++++ rtems/c/src/lib/libbsp/m68k/mo376/clock/ckinit.c   2007-08-14 17:24:09.000000000 +0200
 @@ -20,7 +20,7 @@
  #include <stdlib.h>
  #include <bsp.h>
 @@ -20,7 +20,7 @@
  #include <stdlib.h>
  #include <bsp.h>
@@ -55,21 +72,21 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/clock/ckinit.c
  
 Index: rtems/c/src/lib/libbsp/m68k/mo376/configure.ac
 ===================================================================
  
 Index: rtems/c/src/lib/libbsp/m68k/mo376/configure.ac
 ===================================================================
---- rtems.orig/c/src/lib/libbsp/m68k/mo376/configure.ac
-+++ rtems/c/src/lib/libbsp/m68k/mo376/configure.ac
+--- rtems.orig/c/src/lib/libbsp/m68k/mo376/configure.ac        2007-08-14 17:20:30.000000000 +0200
++++ rtems/c/src/lib/libbsp/m68k/mo376/configure.ac     2007-08-14 17:26:26.000000000 +0200
 @@ -3,7 +3,7 @@
 @@ -3,7 +3,7 @@
- ## $Id: configure.ac,v 1.14 2004/09/24 06:32:09 ralf Exp $
+ ## $Id: configure.ac,v 1.14.2.2 2006/12/02 06:04:46 ralf Exp $
  
  
- AC_PREREQ(2.59)
--AC_INIT([rtems-c-src-lib-libbsp-m68k-mrm332],[_RTEMS_VERSION],[rtems-bugs@rtems.com])
-+AC_INIT([rtems-c-src-lib-libbsp-m68k-mo376],[_RTEMS_VERSION],[rtems-bugs@rtems.com])
+ AC_PREREQ(2.60)
+-AC_INIT([rtems-c-src-lib-libbsp-m68k-mrm332],[_RTEMS_VERSION],[http://www.rtems.org/bugzilla])
++AC_INIT([rtems-c-src-lib-libbsp-m68k-mo376],[_RTEMS_VERSION],[http://www.rtems.org/bugzilla])
  AC_CONFIG_SRCDIR([bsp_specs])
  RTEMS_TOP(../../../../../..)
  
 Index: rtems/c/src/lib/libbsp/m68k/mo376/README
 ===================================================================
  AC_CONFIG_SRCDIR([bsp_specs])
  RTEMS_TOP(../../../../../..)
  
 Index: rtems/c/src/lib/libbsp/m68k/mo376/README
 ===================================================================
---- rtems.orig/c/src/lib/libbsp/m68k/mo376/README
-+++ rtems/c/src/lib/libbsp/m68k/mo376/README
+--- rtems.orig/c/src/lib/libbsp/m68k/mo376/README      2007-08-14 17:20:30.000000000 +0200
++++ rtems/c/src/lib/libbsp/m68k/mo376/README   2007-08-14 17:24:09.000000000 +0200
 @@ -2,23 +2,24 @@
  #  $Id: README,v 1.1 2001/05/25 16:28:46 joel Exp $
  #
 @@ -2,23 +2,24 @@
  #  $Id: README,v 1.1 2001/05/25 16:28:46 joel Exp $
  #
@@ -109,9 +126,9 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/README
  
 Index: rtems/c/src/lib/libbsp/m68k/mo376/Makefile.am
 ===================================================================
  
 Index: rtems/c/src/lib/libbsp/m68k/mo376/Makefile.am
 ===================================================================
---- rtems.orig/c/src/lib/libbsp/m68k/mo376/Makefile.am
-+++ rtems/c/src/lib/libbsp/m68k/mo376/Makefile.am
-@@ -16,7 +16,7 @@ nodist_include_HEADERS = include/bspopts
+--- rtems.orig/c/src/lib/libbsp/m68k/mo376/Makefile.am 2007-08-14 17:20:30.000000000 +0200
++++ rtems/c/src/lib/libbsp/m68k/mo376/Makefile.am      2007-08-14 17:24:09.000000000 +0200
+@@ -16,7 +16,7 @@
  DISTCLEANFILES = include/bspopts.h
  noinst_PROGRAMS =
  
  DISTCLEANFILES = include/bspopts.h
  noinst_PROGRAMS =
  
@@ -122,30 +139,30 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/Makefile.am
  EXTRA_DIST = times
 Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 ===================================================================
  EXTRA_DIST = times
 Index: rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
 ===================================================================
---- rtems.orig/c/src/lib/libbsp/m68k/mo376/console/sci.c
-+++ rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c
-@@ -129,7 +129,7 @@
+--- rtems.orig/c/src/lib/libbsp/m68k/mo376/console/sci.c       2007-08-14 17:20:30.000000000 +0200
++++ rtems/c/src/lib/libbsp/m68k/mo376/console/sci.c    2007-08-14 17:31:42.000000000 +0200
+@@ -105,7 +105,7 @@
  
  
- // system clock definitions, i dont have documentation on this...
+ /* system clock definitions, i dont have documentation on this... */
  
  
--#if 0 // Not needed, this is provided in mrm332.h
-+#if 0 // Not needed, this is provided in mo376.h
- #define XTAL            32768.0                       // crystal frequency in Hz
- #define NUMB_W          0                             // system clock parameters
+-#if 0 /* Not needed, this is provided in mrm332.h */
++#if 0 /* Not needed, this is provided in mo376.h */
+ #define XTAL            32768.0    /* crystal frequency in Hz */
+ #define NUMB_W          0          /* system clock parameters */
  #define NUMB_X          1
  #define NUMB_X          1
-@@ -1238,7 +1238,7 @@ static void SciSetBaud(uint32_t   rate)
+@@ -1215,7 +1215,7 @@
  
  
-     // calculate the register value as a float and convert to an int
-     // set baud rate - you must define the system clock constant
--    // see mrm332.h for an example
-+    // see mo376.h for an example
+     /* calculate the register value as a float and convert to an int */
+     /* set baud rate - you must define the system clock constant */
+-    /* see mrm332.h for an example */
++    /* see mo376.h for an example */
  
      value = ( (uint16_t) ( SYS_CLOCK / rate / 32.0 + 0.5 ) & 0x1fff );
  
 Index: rtems/c/src/lib/libbsp/m68k/mo376/startup/start_c.c
 ===================================================================
  
      value = ( (uint16_t) ( SYS_CLOCK / rate / 32.0 + 0.5 ) & 0x1fff );
  
 Index: rtems/c/src/lib/libbsp/m68k/mo376/startup/start_c.c
 ===================================================================
---- rtems.orig/c/src/lib/libbsp/m68k/mo376/startup/start_c.c
-+++ rtems/c/src/lib/libbsp/m68k/mo376/startup/start_c.c
+--- rtems.orig/c/src/lib/libbsp/m68k/mo376/startup/start_c.c   2007-08-14 17:20:30.000000000 +0200
++++ rtems/c/src/lib/libbsp/m68k/mo376/startup/start_c.c        2007-08-14 17:24:09.000000000 +0200
 @@ -2,7 +2,7 @@
   *  $Id
   */
 @@ -2,7 +2,7 @@
   *  $Id
   */
@@ -157,8 +174,8 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/startup/start_c.c
  #include "bsp.h"
 Index: rtems/c/src/lib/libbsp/m68k/mo376/times
 ===================================================================
  #include "bsp.h"
 Index: rtems/c/src/lib/libbsp/m68k/mo376/times
 ===================================================================
---- rtems.orig/c/src/lib/libbsp/m68k/mo376/times
-+++ rtems/c/src/lib/libbsp/m68k/mo376/times
+--- rtems.orig/c/src/lib/libbsp/m68k/mo376/times       2007-08-14 17:20:30.000000000 +0200
++++ rtems/c/src/lib/libbsp/m68k/mo376/times    2007-08-14 17:24:09.000000000 +0200
 @@ -1,5 +1,5 @@
  #
 -#  Timing Test Suite Results for the MRM332 BSP
 @@ -1,5 +1,5 @@
  #
 -#  Timing Test Suite Results for the MRM332 BSP
@@ -166,7 +183,7 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/times
  #
  #  $Id: times,v 1.2 2004/01/07 21:13:50 joel Exp $
  #
  #
  #  $Id: times,v 1.2 2004/01/07 21:13:50 joel Exp $
  #
-@@ -8,9 +8,9 @@ NOTE:  This BSP is user submitted and no
+@@ -8,9 +8,9 @@
  
  TBD: MATT - update this with real times!
  
  
  TBD: MATT - update this with real times!
  
@@ -180,8 +197,8 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/times
  
 Index: rtems/c/src/lib/libbsp/m68k/mo376/include/mo376.h
 ===================================================================
  
 Index: rtems/c/src/lib/libbsp/m68k/mo376/include/mo376.h
 ===================================================================
---- /dev/null
-+++ rtems/c/src/lib/libbsp/m68k/mo376/include/mo376.h
+--- /dev/null  1970-01-01 00:00:00.000000000 +0000
++++ rtems/c/src/lib/libbsp/m68k/mo376/include/mo376.h  2007-08-14 17:24:09.000000000 +0200
 @@ -0,0 +1,70 @@
 +/*  mo376.h
 + *
 @@ -0,0 +1,70 @@
 +/*  mo376.h
 + *
@@ -255,8 +272,8 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/include/mo376.h
 +#endif /* _MRM_H_ */
 Index: rtems/c/src/lib/libbsp/m68k/mo376/include/mrm332.h
 ===================================================================
 +#endif /* _MRM_H_ */
 Index: rtems/c/src/lib/libbsp/m68k/mo376/include/mrm332.h
 ===================================================================
---- rtems.orig/c/src/lib/libbsp/m68k/mo376/include/mrm332.h
-+++ /dev/null
+--- rtems.orig/c/src/lib/libbsp/m68k/mo376/include/mrm332.h    2007-08-14 17:20:30.000000000 +0200
++++ /dev/null  1970-01-01 00:00:00.000000000 +0000
 @@ -1,70 +0,0 @@
 -/*  mrm332.h
 - *
 @@ -1,70 +0,0 @@
 -/*  mrm332.h
 - *
@@ -330,19 +347,9 @@ Index: rtems/c/src/lib/libbsp/m68k/mo376/include/mrm332.h
 -#endif /* _MRM_H_ */
 Index: rtems/make/custom/mo376.cfg
 ===================================================================
 -#endif /* _MRM_H_ */
 Index: rtems/make/custom/mo376.cfg
 ===================================================================
---- rtems.orig/make/custom/mo376.cfg
-+++ rtems/make/custom/mo376.cfg
-@@ -1,7 +1,7 @@
- #
--#  Config file for the mrm332 BSP
-+#  Config file for the mo376 BSP
- #
--#  $Id: mrm332.cfg,v 1.8 2004/02/04 16:50:30 ralf Exp $
-+#  $Id: mo376.cfg,v 1.8 2004/02/04 16:50:30 ralf Exp $
- #
- include $(RTEMS_ROOT)/make/custom/default.cfg
-@@ -10,7 +10,7 @@ RTEMS_CPU=m68k
+--- rtems.orig/make/custom/mo376.cfg   2007-08-14 17:20:30.000000000 +0200
++++ rtems/make/custom/mo376.cfg        2007-08-14 17:24:09.000000000 +0200
+@@ -10,7 +10,7 @@
  RTEMS_CPU_MODEL=m68332
  
  # This is the actual bsp directory used during the build process.
  RTEMS_CPU_MODEL=m68332
  
  # This is the actual bsp directory used during the build process.
@@ -351,7 +358,7 @@ Index: rtems/make/custom/mo376.cfg
  
  #  This contains the compiler options necessary to select the CPU model
  #  and (hopefully) optimize for it. 
  
  #  This contains the compiler options necessary to select the CPU model
  #  and (hopefully) optimize for it. 
-@@ -26,7 +26,7 @@ CFLAGS_OPTIMIZE_V=-O4 -fomit-frame-point
+@@ -25,7 +25,7 @@
  ifeq ($(MRM_IN_ROM),yes)
  # Build a rommable image - move the .data section after the .text section
  # in the image.
  ifeq ($(MRM_IN_ROM),yes)
  # Build a rommable image - move the .data section after the .text section
  # in the image.
@@ -362,9 +369,9 @@ Index: rtems/make/custom/mo376.cfg
  #  though and greatly slows the build process so only do this if needed.
 Index: rtems/c/src/lib/libbsp/m68k/mo376/preinstall.am
 ===================================================================
  #  though and greatly slows the build process so only do this if needed.
 Index: rtems/c/src/lib/libbsp/m68k/mo376/preinstall.am
 ===================================================================
---- rtems.orig/c/src/lib/libbsp/m68k/mo376/preinstall.am
-+++ rtems/c/src/lib/libbsp/m68k/mo376/preinstall.am
-@@ -44,9 +44,9 @@ $(PROJECT_INCLUDE)/bspopts.h: include/bs
+--- rtems.orig/c/src/lib/libbsp/m68k/mo376/preinstall.am       2007-08-14 17:20:30.000000000 +0200
++++ rtems/c/src/lib/libbsp/m68k/mo376/preinstall.am    2007-08-14 17:24:09.000000000 +0200
+@@ -44,9 +44,9 @@
        $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bspopts.h
  PREINSTALL_FILES += $(PROJECT_INCLUDE)/bspopts.h
  
        $(INSTALL_DATA) $< $(PROJECT_INCLUDE)/bspopts.h
  PREINSTALL_FILES += $(PROJECT_INCLUDE)/bspopts.h
  
index 258809c51da932166968dcda3bf564475b9993c4..1dbf184ee0086050a3c7cb8c39f061e5f66d8e3e 100644 (file)
@@ -1,20 +1,27 @@
+---
+ c/src/lib/libbsp/powerpc/ec555/ChangeLog    |    5 +++++
+ c/src/lib/libbsp/powerpc/ec555/README       |   18 +++++++++---------
+ c/src/lib/libbsp/powerpc/ec555/configure.ac |    2 +-
+ make/custom/ec555.cfg                       |    6 +++---
+ 4 files changed, 18 insertions(+), 13 deletions(-)
+
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/ChangeLog
 ===================================================================
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/ChangeLog
 ===================================================================
---- rtems/c/src/lib/libbsp/powerpc/ec555/ChangeLog
-+++ rtems/c/src/lib/libbsp/powerpc/ec555/ChangeLog
+--- rtems.orig/c/src/lib/libbsp/powerpc/ec555/ChangeLog        2007-08-14 17:51:38.000000000 +0200
++++ rtems/c/src/lib/libbsp/powerpc/ec555/ChangeLog     2007-08-14 17:56:57.000000000 +0200
 @@ -1,3 +1,8 @@
 @@ -1,3 +1,8 @@
-+2006-06-02    Pavel Pisa <pisa@cmp.felk.cvut.cz>
++2007-08-14    Pavel Pisa <pisa@cmp.felk.cvut.cz>
 +
 +      * EC555 BSP for Wuerz-elektronik EC555 board started
 +        as clone of SS555 BSP.
 +
 +
 +      * EC555 BSP for Wuerz-elektronik EC555 board started
 +        as clone of SS555 BSP.
 +
- 2006-03-08    Joel Sherrill <joel@OARcorp.com>
+ 2007-04-06    Ralf Corsépius <ralf.corsepius@rtems.org>
  
  
-       * startup/linkcmds: Add .gnu.linkonce.b.* section.
+       * bsp_specs: Remove lib (Now expected to exist in GCC).
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/README
 ===================================================================
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/README
 ===================================================================
---- rtems/c/src/lib/libbsp/powerpc/ec555/README
-+++ rtems/c/src/lib/libbsp/powerpc/ec555/README
+--- rtems.orig/c/src/lib/libbsp/powerpc/ec555/README   2007-08-14 17:51:38.000000000 +0200
++++ rtems/c/src/lib/libbsp/powerpc/ec555/README        2007-08-14 17:53:52.000000000 +0200
 @@ -2,9 +2,9 @@
  #  $Id: README,v 1.1 2004/04/12 21:52:13 joel Exp $
  #
 @@ -2,9 +2,9 @@
  #  $Id: README,v 1.1 2004/04/12 21:52:13 joel Exp $
  #
@@ -27,7 +34,7 @@ Index: rtems/c/src/lib/libbsp/powerpc/ec555/README
  Canada - Suffield, and is Copyright (C) 2004, Real-Time Systems Inc.
  
  Please send any comments, improvements, or bug reports to:
  Canada - Suffield, and is Copyright (C) 2004, Real-Time Systems Inc.
  
  Please send any comments, improvements, or bug reports to:
-@@ -16,8 +16,8 @@ querbach@realtime.bc.ca
+@@ -16,8 +16,8 @@
  Summary
  -------
  
  Summary
  -------
  
@@ -38,7 +45,7 @@ Index: rtems/c/src/lib/libbsp/powerpc/ec555/README
  BUS:                None 
  CPU FAMILY:         PowerPC
  CPU:                PowerPC MPC555
  BUS:                None 
  CPU FAMILY:         PowerPC
  CPU:                PowerPC MPC555
-@@ -88,7 +88,7 @@ RAM:            512k 2-1-1-1 burst SRAM
+@@ -88,7 +88,7 @@
  Installation
  ------------
  
  Installation
  ------------
  
@@ -47,7 +54,7 @@ Index: rtems/c/src/lib/libbsp/powerpc/ec555/README
  depending on whether or not it is built for debugging by giving the
  VARIANT=DEBUG switch to make:
  
  depending on whether or not it is built for debugging by giving the
  VARIANT=DEBUG switch to make:
  
-@@ -112,7 +112,7 @@ Console driver
+@@ -112,7 +112,7 @@
  
  This BSP includes an termios-capable asynchronous serial line driver that
  supports SCI1 and SCI2. The RTEMS console is selected at configuration time
  
  This BSP includes an termios-capable asynchronous serial line driver that
  supports SCI1 and SCI2. The RTEMS console is selected at configuration time
@@ -56,7 +63,7 @@ Index: rtems/c/src/lib/libbsp/powerpc/ec555/README
  SCI2 for the console, since SCI1 has some extra features which may be
  desired for application use.
  
  SCI2 for the console, since SCI1 has some extra features which may be
  desired for application use.
  
-@@ -123,7 +123,7 @@ The BSP console supports three different
+@@ -123,7 +123,7 @@
    3. interrupt-driven I/O with termios support.
       
  The mode of operation of the serial driver is determined at configure time in
    3. interrupt-driven I/O with termios support.
       
  The mode of operation of the serial driver is determined at configure time in
@@ -65,7 +72,7 @@ Index: rtems/c/src/lib/libbsp/powerpc/ec555/README
  
    0 - polled I/O.
    1 - interrupt-driven I/O.
  
    0 - polled I/O.
    1 - interrupt-driven I/O.
-@@ -208,7 +208,7 @@ from the Debian distribution.
+@@ -208,7 +208,7 @@
  Test Configuration
  ------------------
  
  Test Configuration
  ------------------
  
@@ -74,7 +81,7 @@ Index: rtems/c/src/lib/libbsp/powerpc/ec555/README
  CPU:                  Motorola MPC555LFMZP40, mask 1K83H
  Clock Speed:          Crystal 4.0 MHz, CPU 40.0 MHz
  RAM:                  512K bytes of 2-1-1-1 Burst SRAM
  CPU:                  Motorola MPC555LFMZP40, mask 1K83H
  Clock Speed:          Crystal 4.0 MHz, CPU 40.0 MHz
  RAM:                  512K bytes of 2-1-1-1 Burst SRAM
-@@ -244,7 +244,7 @@ Timing tests:
+@@ -244,7 +244,7 @@
    OPERATION_COUNT=20 at configuration time.
  
    To run tm27 (the interrupt latency timer test), short CN5-48 to CN5-50 on
    OPERATION_COUNT=20 at configuration time.
  
    To run tm27 (the interrupt latency timer test), short CN5-48 to CN5-50 on
@@ -85,21 +92,21 @@ Index: rtems/c/src/lib/libbsp/powerpc/ec555/README
    exits.  This doesn't seem to cause a problem otherwise.
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/configure.ac
 ===================================================================
    exits.  This doesn't seem to cause a problem otherwise.
 Index: rtems/c/src/lib/libbsp/powerpc/ec555/configure.ac
 ===================================================================
---- rtems/c/src/lib/libbsp/powerpc/ec555/configure.ac
-+++ rtems/c/src/lib/libbsp/powerpc/ec555/configure.ac
+--- rtems.orig/c/src/lib/libbsp/powerpc/ec555/configure.ac     2007-08-14 17:51:38.000000000 +0200
++++ rtems/c/src/lib/libbsp/powerpc/ec555/configure.ac  2007-08-14 17:55:32.000000000 +0200
 @@ -3,7 +3,7 @@
 @@ -3,7 +3,7 @@
- ## $Id: configure.ac,v 1.7 2006/01/11 04:52:39 ralf Exp $
+ ## $Id: configure.ac,v 1.7.2.2 2006/12/02 06:06:51 ralf Exp $
  
  
- AC_PREREQ(2.59)
--AC_INIT([rtems-c-src-lib-libbsp-powerpc-mbx5xx],[_RTEMS_VERSION],[rtems-bugs@rtems.com])
-+AC_INIT([rtems-c-src-lib-libbsp-powerpc-ec5xx],[_RTEMS_VERSION],[rtems-bugs@rtems.com])
+ AC_PREREQ(2.60)
+-AC_INIT([rtems-c-src-lib-libbsp-powerpc-mbx5xx],[_RTEMS_VERSION],[http://www.rtems.org/bugzilla])
++AC_INIT([rtems-c-src-lib-libbsp-powerpc-ec5xx],[_RTEMS_VERSION],[http://www.rtems.org/bugzilla])
  AC_CONFIG_SRCDIR([bsp_specs])
  RTEMS_TOP(../../../../../..)
  
 Index: rtems/make/custom/ec555.cfg
 ===================================================================
  AC_CONFIG_SRCDIR([bsp_specs])
  RTEMS_TOP(../../../../../..)
  
 Index: rtems/make/custom/ec555.cfg
 ===================================================================
---- rtems/make/custom/ec555.cfg
-+++ rtems/make/custom/ec555.cfg
+--- rtems.orig/make/custom/ec555.cfg   2007-08-14 17:51:38.000000000 +0200
++++ rtems/make/custom/ec555.cfg        2007-08-14 17:53:52.000000000 +0200
 @@ -1,5 +1,5 @@
  #
 -#  Config file for an Intec Automation SS555 MPC555-based card
 @@ -1,5 +1,5 @@
  #
 -#  Config file for an Intec Automation SS555 MPC555-based card
@@ -107,7 +114,7 @@ Index: rtems/make/custom/ec555.cfg
  #
  #  This file is derived from:
  #
  #
  #  This file is derived from:
  #
-@@ -15,7 +15,7 @@ GCC_CPU_MODEL=505
+@@ -15,7 +15,7 @@
  RTEMS_CPU_MODEL=mpc555
  
  # This is the actual bsp directory used during the build process.
  RTEMS_CPU_MODEL=mpc555
  
  # This is the actual bsp directory used during the build process.
@@ -116,8 +123,8 @@ Index: rtems/make/custom/ec555.cfg
  
  #  This contains the compiler options necessary to select the CPU model
  #  and (hopefully) optimize for it.
  
  #  This contains the compiler options necessary to select the CPU model
  #  and (hopefully) optimize for it.
-@@ -34,7 +34,7 @@ CFLAGS_OPTIMIZE_V=-O4 -fno-keep-inline-f
- CXXFLAGS_OPTIMIZE_V=-O4
+@@ -26,7 +26,7 @@
+ CFLAGS_OPTIMIZE_V = -O2 -g -fno-keep-inline-functions
  
  define make-exe
 -      $(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) $(SS555_LDFLAGS) \
  
  define make-exe
 -      $(LINK.c) $(AM_CFLAGS) $(AM_LDFLAGS) $(SS555_LDFLAGS) \
diff --git a/rtems-patches/current/rtems-usleep-type-fix.patch b/rtems-patches/current/rtems-usleep-type-fix.patch
new file mode 100644 (file)
index 0000000..26726ac
--- /dev/null
@@ -0,0 +1,19 @@
+---
+ cpukit/posix/src/usleep.c |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+Index: rtems/cpukit/posix/src/usleep.c
+===================================================================
+--- rtems.orig/cpukit/posix/src/usleep.c       2007-08-15 01:51:58.000000000 +0200
++++ rtems/cpukit/posix/src/usleep.c    2007-08-15 01:50:38.000000000 +0200
+@@ -15,8 +15,8 @@
+ #include <rtems/score/tod.h>
+-unsigned usleep(
+-  unsigned int useconds
++int usleep(
++  useconds_t useconds
+ )
+ {
+   struct timespec tp;
index 0c8755bdcf879c63630eeec771dedfa32c334c9f..894cea23bbbdcdd9e1e61cd4252c09042aff32cc 100644 (file)
@@ -1,4 +1,4 @@
-rtems-inttypes-wcs-disable-fix.patch
+#rtems-inttypes-wcs-disable-fix.patch
 rtems-m9328-pimx1-mapping-change.patch
 rtems-m9328-pimx1-baud-19200.patch
 rtems-m9328-pimx1-syncmclk.patch
 rtems-m9328-pimx1-mapping-change.patch
 rtems-m9328-pimx1-baud-19200.patch
 rtems-m9328-pimx1-syncmclk.patch
@@ -10,4 +10,8 @@ rtems-clone-ss555-to-ec555.patch
 rtems-ec555-add-to-configs.patch
 rtems-update-ss555-to-ec555.patch
 rtems-update-ss555-to-ec555-cpld-remove.patch
 rtems-ec555-add-to-configs.patch
 rtems-update-ss555-to-ec555.patch
 rtems-update-ss555-to-ec555-cpld-remove.patch
+rtems-usleep-type-fix.patch
+rtems-readlink-type-fix.patch
+rtems-m9328-pimx1-uart1to3.patch
+#rtems-m5235bcc-changes.patch
 rtems-m9328-pimx1-uart1to3.patch
 rtems-m9328-pimx1-uart1to3.patch