Edvin Catovic <edvin@gaisler.com>
Konrad Eisele <konrad@gaisler.com>
PR 827/bsps
* ChangeLog, configure.ac, console/Makefile.am, console/console.c,
console/debugputs.c, startup/Makefile.am, startup/linkcmds,
tools/Makefile.am: Portion of large update of SPARC BSPs. Includes
addition of sis, leon2 and leon3 BSPs, deletion of leon BSP, addition
of SMC91111 NIC driver and much more.
Edvin Catovic <edvin@gaisler.com>
Konrad Eisele <konrad@gaisler.com>
PR 827/bsps
* Makefile.am, bspstart.c, gnatcommon.c, start.S: Portion of large
update of SPARC BSPs. Includes addition of sis, leon2 and leon3 BSPs,
deletion of leon BSP, addition of SMC91111 NIC driver and much more.
Edvin Catovic <edvin@gaisler.com>
Konrad Eisele <konrad@gaisler.com>
PR 827/bsps
* custom/Makefile.am, custom/erc32.cfg, custom/erc32nfp.cfg,
custom/leon1.cfg, custom/leon2.cfg: Portion of large update of SPARC
BSPs. Includes addition of sis, leon2 and leon3 BSPs, deletion of
leon BSP, addition of SMC91111 NIC driver and much more.
* custom/sis.cfg: New file.
* timer/timer.c: Enhance to use either interupt-based timer
functions on older CPUs or to use TSC-based timer functions on
more recent (Pentium and above) CPUs. The decision is made in
Timer_initialize function when it is called for the first time
based on a result obtained from cpuid instruction during the BSP
initialization phase. During the first call, there are also late
bindings to the implementation functions initialized to
appropriate values.
PR 527/bsps
PR 822/bsps
* mpc8xx/clock/clock.c: Currently the MBX8xx BSP does not boot,
because some logical errors are in the startup code. Additionally,
the mpc8xx shared clock driver does not support the clocking scheme
of some of the board variants, which are clocked from a
32768Hz (!) external crystal.
PR 829/rtems
* src/tasks.c, src/taskvariabledelete.c: If task variables are deleted
from a different context (i.e., executing context != owner of the
task variable. The owner meaning the task that registered the dtor in
question) the argument passed to the task variable dtor must be tvar
and not *ptr which yields the executing task's value of the task
variable instead of the owner's.
PR 822/bsps
* console/console.c, startup/bspstart.c, startup/imbx8xx.c,
startup/mmutlbtab.c, startup/start.S, vectors/vectors_init.c:
Currently the MBX8xx BSP does not boot, because some logical errors
are in the startup code. Additionally, the mpc8xx shared clock driver
does not support the clocking scheme of some of the board variants,
which are clocked from a 32768Hz (!) external crystal.
PR 820/rtems
* inline/rtems/score/coremsg.inl, macros/rtems/score/coremsg.inl,
src/coremsginsert.c: Increment of pending message count should be
atomic with insertion on the pending message chain. Determination of
the need to call the notification handler should also be in this
atomic section of code.
PR 796/rtems
* src/semtimedwait.c: sem_timedwait is supposed to use absolute time
for timeout specification. This patch is a modified version of the
one suggested by Peter Dufault.
PR 577/bsps
* console.c: The console_close() method currently calls StopRemoteTx()
on all invocations. It should should be ok for last close only but
not for any others. If you open a port multiple times, you only want
to call StopRemoteTx() only as part of the last close.
PR 805/rtems
* include/rtems/posix/timer.h: Due to bad choice of error constants by
original submitter, it was impossible to create more than 10 POSIX
timers.
PR 807/rtems
* rtems/src/timerfireafter.c, rtems/src/timerserverfireafter.c,
score/src/watchdoginsert.c: Tighten critical section checks on an ISR
using the same timer being inserted by a lower priority ISR or
interupt task.
PR 744/filesystem
* libcsupport/src/unlink.c, libfs/src/dosfs/msdos_eval.c: DOSFS did not
support permissions on directories so the check performed by unlink
would always fail. The unlink code was modified to support a not
supported status being returned.
PR 816/bsps
* mpc8xx/include/mpc8xx.h: The struct which describes SCC Ethernet mode
parameters (m8xxSCCENparms_t) does not match the hardware: members
taddr_h and taddr_l are transposed. When loading new multicast group
addresses into the hash table, the wrong hash bit is set.
PR 790/rtems
* src/extensioncreate.c, src/extensionident.c: Correct use of name.
This was missed when the other ident services in rtems/src where
changed.
Cherrypick from master 2005-05-03 22:18:32 UTC Joel Sherrill <joel.sherrill@OARcorp.com> '2005-05-03 Joel Sherrill <joel@OARcorp.com>':
cpukit/rtems/src/regiongetfreeinfo.c
cpukit/score/src/heapgetfreeinfo.c
PR 692/rtems
* src/regiongetsegment.c, src/regionreturnsegment.c: The Region
Manager did not follow the proper protocol when blocking and
unblocking tasks waiting on buffers. This was a bug introduced with
the transition to an Allocation Mutex.