* shared/console/uart.c: when draining UART during
initialization (wait for possible printk() activity
to finish) look at TEMT (fifo, holding-reg and shift-reg)
rather than THRE (fifo, holding-reg only). This resolved
some scrambled output issues for me.
Enhanced semantics: if BSP initializes BSPBaseBaud to a negative
value then the driver interprets the modulus as a speed value
and uses the current setting of the divisor to compute the
clock speed (BSPBaseBaud). This is useful if you have a board
that you know is initialized e.g., to 9600 but you
don't know the clock speed.
* Makefile.am, motorola_powerpc/Makefile.am,
* shared/pci/detect_raven_bridge.c, Makefile.am,
* shared/pci/generic_clear_hberrs.c: separated the generic
version of _BSP_clear_hostbridge_errors() into its own
file.
* libi2c/libi2c.c, libi2c/libi2c.h, libi2c/README_libi2c:
Added checks so that use of 'stdio' is avoided (falling
back to 'printk') before the system is up.
Publish driver entry points so that the libi2c driver could
be added to the applications 'device driver table'.
This is not fully implemented yet, though, since in addition to
initializing libi2c the low-level i2c bus drivers as well
as high-level i2c device drivers need to be registered
with the library.
Updated README_libi2c accordingly.
* libnetworking/rtems/rtems_glue.c: let rtems_bsdnet_ifconfig
(SIOCGIFMEDIA) pass the user parameter down to the ioctl
so that it knows what PHY they want to look at.
* rtems/score/powerpc.h: Added a '__ppc_generic' CPU variant.
The goal would be making cpukit and hopefully libcpu work
for all (or at least most) CPUs/BSPs with -D__ppc_generic so
that eventually all tests [#if defined(<cpu_flavor>)] for CPU
flavors can be eliminated.
* shared/src/cache.c: moved generic operations
(flush/invalidate 1 data line, invalidate 1 inst. line)
from #ifdef <cpu_flavor> to general section (all CPUs).
* libmisc/shell/shell.c, libmisc/shell/shell.h: Much cleanup but much
of the focus was on the beginning stages of making the login checker
pluggable just like the shell.
* sapi/src/exinit.c, score/Makefile.am,
score/include/rtems/score/apimutex.h: API Mutex calls should never
have been inlined. Inlining them lead to many inlined copies of core
mutex lock. This lead to over 2K savings in the SPARC/ERC32
minimum.exe.
* score/src/apimutex.c, score/src/apimutexallocate.c,
score/src/apimutexlock.c, score/src/apimutexunlock.c: New files.