* General effort to make things compile with macros not inlines
* inline/rtems/score/coremutex.inl: Added comment indicating
for macros there is another copy of
_CORE_mutex_Seize_interrupt_trylock() in src/coremutexseize.c.
* src/coremutexseize.c: Added body of
_CORE_mutex_Seize_interrupt_trylock() for macro case.
* macros/rtems/score/coremutex.inl: Added prototype for
_CORE_mutex_Seize_interrupt_trylock() since there is a real
body when macros are enabled.
* macros/rtems/score/coresem.inl: Added macro implementation of
_CORE_semaphore_Seize_isr_disable.
* macros/score/Makefile.am: Fixed typos.
* rtems/score/address.inl: Correct macro implementation of
_Addresses_Is_aligned() so it would compile.
* macros/rtems/score/coremsg.inl: Added closing parentheses.
* cpu_asm.S: Changed "_CPU_Ccontext_switch_restore: typo to
correct name of _CPU_Context_switch_restore. Added dummy
version of exc_utlb_code() so applications would link.
* include/rtems/Makefile.am: Added termiostypes.h.
* libc/Makefile.am: Removed termiostypes.h.
* libc/termios.c: Changed include of "termiostypes.h" to
<rtems/termiostypes.h> since that is an RTEMS specific header file.
* src/heapallocate.c: Do not allow the size to overflow when
adjusting it. A test allocated a stack of -1 (~0). This
actually resulted in a stack being allocated but with a
size of 0xb. The allocator did not test the size to see if
it rolled through 0 and so allowed the allocation to happen, the
thread to get created. The task crashed as you would expect.
* startup/linkcmds: Fix typo and add extra 0 to base address.
Now runs until printf() tries to put a character and then
it locks up checking a status bit that does not change.
* start/start.S, startup/bspstart.c: Not functional for CPU32
but hopefully will compile now and give a warning saying that
the CPU32 variant needs work.
* The shsim is for the SH simulator in gdb. It should be able
to be used with multiple SH CPU models.
* .cvsignore, ChangeLog, Makefile.am, README, bsp_specs,
configure.in, clock/.cvsignore, clock/Makefile.am,
clock/clockdrv.c, console/.cvsignore, console/Makefile.am,
console/console-io.c, console/console-support.S,
include/.cvsignore, include/Makefile.am, include/bsp.h,
start/.cvsignore, start/Makefile.am, start/regs.S,
start/start.S, startup/.cvsignore, startup/Makefile.am,
startup/bspstart.c, startup/linkcmds, wrapup/.cvsignore,
wrapup/Makefile.am: New files.
* wrapup/Makefile.am: Added modem subdir.
* configure.in, Makefile.am: Added modem subdir.
* net/Makefile.am: Added if_pppvar.h, pppcompress.h.
* pppd/Makefile.am: Added pppmain.c (which needs work).
* pppd/chat.c, pppd/fsm.c, pppd/fsm.h, pppd/ipxcp.c, pppd/main.c,
pppd/ppp_tty.c, pppd/upap.c: Changes from Thomas Doerfler
<Thomas.Doerfler@imd-systems.de> and cosmetic changes by me.
Actually main.c and ppp_tty.c should be scratched. The modem
subdir has the real ppp_tty.c and the real pppd main is in pppmain.c.
* wrapup/Makefile.am: Added modem subdir.
* configure.in, Makefile.am: Added modem subdir.
* net/Makefile.am: Added if_pppvar.h, pppcompress.h.
* pppd/Makefile.am: Added pppmain.c (which needs work).
* pppd/chat.c, pppd/fsm.c, pppd/fsm.h, pppd/ipxcp.c, pppd/main.c,
pppd/ppp_tty.c, pppd/upap.c: Changes from Thomas Doerfler
<Thomas.Doerfler@imd-systems.de> and cosmetic changes by me.
Actually main.c and ppp_tty.c should be scratched. The modem
subdir has the real ppp_tty.c and the real pppd main is in pppmain.c.
* The JMR BSP is for a Toshiba TX39 evaluation board but
can also be used with the mips simulator in gdb.
* .cvsignore, ChangeLog, Makefile.am, README, bsp_specs,
configure.in, clock/.cvsignore, clock/Makefile.am,
clock/clockdrv.c, console/.cvsignore, console/Makefile.am,
console/console-io.c, include/.cvsignore,
include/Makefile.am, include/bsp.h, start/.cvsignore,
start/Makefile.am, start/regs.S, start/start.S,
startup/.cvsignore, startup/Makefile.am, startup/bspstart.c,
startup/linkcmds, wrapup/.cvsignore, wrapup/Makefile.am: New files.
* erc32sonic/erc32sonic.c: Minor modifications which enable
network interface to come up and work for some time before
getting an error in the SONIC driver. The error is a bit random,
sometimes MCLGET (m, M_WAIT) tries to access memory way outside the
available ram (and traps) while sometimes there is a panic due
to RBAE/RXEN.
* psxstat/test.c, psxstat/psxstat.scn: Forced inode numbers
to remain consistant across platforms and bsps by forcing
a mount point in front of all paths.
2000-11-17 Jennifer Averret <jennifer@OARcorp.com>
* psxmount/test.c, psxmount/psxmount.scn: Improve output to report
expected error condition in one case.
* psxreaddir/test.c, psxreaddir.scn: Added test cases to exercise
readdir() of root of mounted filesystem. Also corrected the screen
file for some mistakes noticed in this effort.
* psxmount/test.c, psxmount/psxmount.scn: Improve output to report
expected error condition in one case.
* psxreaddir/test.c, psxreaddir.scn: Added test cases to exercise
readdir() of root of mounted filesystem. Also corrected the screen
file for some mistakes noticed in this effort.
* psxmount/test.c, psxmount/psxmount.scn: Improve output to report
expected error condition in one case.
* psxreaddir/test.c, psxreaddir.scn: Added test cases to exercise
readdir() of root of mounted filesystem. Also corrected the screen
file for some mistakes noticed in this effort.
* psxmount/test.c, psxmount/psxmount.scn: Improve output to report
expected error condition in one case.
* psxreaddir/test.c, psxreaddir.scn: Added test cases to exercise
readdir() of root of mounted filesystem. Also corrected the screen
file for some mistakes noticed in this effort.
* libc/mount.c (search_mt_for_mount_point): Deleted routine.
* libc/mount.c (Is_node_fs_root): Replacement for above that
accounts for the imaginary root node being returned by the
filesystem evaluation routine.
* libc/unmount.c (unmount): Account for imaginary root node
being returned and improved variable names to clarify code.
* libc/unmount.c (file_systems_below_this_mountpoint): Body of
routine replaced to account for imaginary root node being returned.
* Makefile.am, configure.in: Added support for instruction
cache enabling based on CPU model.
* cache/.cvsignore, cache/Makefile.am, cache/cache.c,
cache/cache_.h: New files.
* shared/src/cache_manager.c
(rtems_cache_invalidate_multiple_instruction_lines): If
CPU_INSTRUCTION_CACHE_ALIGNMENT is defined but 0, then there is
an instruction cache but no notion of line size.
* cpu.c, rtems/cpu/sparc.h: Make floating point optional based
on gcc arguments. Do not initialize FP context if there is
no FPU. Flush instruction cache after installing RTEMS trap handler.
* ChangeLog, .cvsignore, Makefile.am, bspclean.c, bspstart.c,
gnatcommon.c, start.S: New files. Largely moved from ERC32
BSP to be able to be shared with LEON and other SPARC BSPs.
* network/sonic.c: Added ipalign() routine to align the
received packet so that the ip header is on a 32-bit boundary.
Necessary for cpu's that do not allow unaligned loads and stores
and when the 32-bit DMA mode is used.
* ChangeLog, .cvsignore, Makefile.am, bspclean.c, bspstart.c,
gnatcommon.c, start.S: New files. Largely moved from ERC32
BSP to be able to be shared with LEON and other SPARC BSPs.
* Makefile.am, configure.in, gnatsupp/Makefile.am,
gnatsupp/gnatsupp.c, include/Makefile.am, include/bsp.h,
start/Makefile.am, startup/Makefile.am, startup/setvec.c,
wrapup/Makefile.am:
* erc32sonic: New directory.
* erc32sonic/Makefile.am, erc32sonic/erc32sonic.c,
erc32sonic/.cvsignore: New files.
* include/erc32.h: New file.
* startup/boardinit.S: New file.
Big update of SPARC support for ERC32 and LEON.
Added support for ERC32 without floating point.
Added SONIC support as configured on Tharsys ERC32 board.
The bsp's share various code in the shared directory:
gnat-support, start-up code, etc.
To decrease the foot-print, I removed the 16 kbyte start-up
stack that was put in .bss and never reused once the system
was up. The stack is now put between the heap and the
workspace. To reclaim it, the user can do a rtems_region_extend
to merge the stack to the heap region once the system is up.