| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
| |
* rtems/mkrootfs.c: Add (relocated from libmisc/rootfs).
* rtems/mkrootfs.h: Ditto.
* rtems/Makefile.am: Reflect changes above.
|
|
|
|
|
| |
* sp21/task1.c (INVALID_DRIVER_MAJOR): Change definition to reflect
number of staticly configured device drivers.
|
|
|
|
|
| |
* mpc6xx/exceptions/raw_exception.c, pc6xx/mmu/pte121.c: Modified
slightly to reflect recent PowerPC re-organization and avoid warnings.
|
|
|
|
|
|
| |
* libc/envlock.c: Implemented code to let newlib's envlock share
the libio open/close mutex. Since both should be lightly used,
this should not lead to problems and saves resources.
|
|
|
|
| |
* startup/linkcmds: Per PR224, added wild card math to .rodata.
|
|
|
|
|
| |
* macros/rtems/score/thread..inl: Implemented missing routines
for new libc reentrancy support.
|
|
|
|
|
| |
* macros/rtems/posix/mqueue.inl: Implemented missing routines
to support message queue FDs.
|
|
|
|
|
| |
* mpc6xx/mmu/pte121.c, mpc6xx/mmu/pte121.h: New files. Missed in
merge of PR213.
|
|
|
|
|
|
|
|
|
|
|
| |
* mkgcc3newlibspec.in: Remove SETUP (bogus).
* gcc3newlib/target-c++.add: New.
* gcc3newlib/Makefile.am: Add target-c++.add.
* gcc3newlib/base-g77.add: Adapt to gcc-3.1.
Reflect having split out c++. Various minor fixes.
* gcc3newlib/base-gcc.add: Ditto.
* gcc3newlib/gccnewlib.add: Ditto.
* gcc3newlib/target-gcc.add: Ditto.
|
|
|
|
|
|
|
|
|
| |
* Per PR194, added the Capture engine.
* capture/Makefile.am, capture/README, capture/capture-cli.c,
capture/capture-cli.h, capture/capture.c, capture/capture.h,
capture/.cvsignore: New files.
* Makefile.am, configure.ac, wrapup/Makefile.am: Modified to
reflect addition.
|
|
|
|
|
|
|
|
| |
* libc/newlibc.c: Per PR141, move the C library re-enterrant
support directly into the thread dispatch code. RTEMS needs
libc and so requiring libc to use a user extension with its
overhead is not the best solution. This patch lowers the
overhead to 2 pointer moves.
|
|
|
|
|
|
|
|
|
| |
* include/rtems/score/thread.h, inline/rtems/score/thread.inl,
src/threaddispatch.c, src/threadinitialize.c:
Move the C library re-enterrant support directly into
the thread dispatch code. RTEMS needs libc and so requiring
libc to use a user extension with its overhead is not the best
solution. This patch lowers the overhead to 2 pointer moves.
|
|
|
|
|
|
| |
* src/i386/any/remdeb_svc.c, src/m68k/any/remdeb_svc.c,
src/powerpc/new_exception_processing/remdeb_svc.c: Readding as
I accidentally deleted the incorrectly empty versions.
|
|
|
|
| |
* Makefile.am: Add preinstall-stamp.
|
|
|
|
|
| |
* libc/Makefile.am: envlock.c should only be built for embedded
targets using newlib.
|
|
|
|
| |
* shared/include/cpuIdent.c: Account for duplicate numbers.
|
|
|
|
|
| |
* dummy/Makefile.am, wrapup/Makefile.am: Fixed to generate
a library of the same name.
|
|
|
|
|
|
|
|
|
| |
* include/Makefile.am: Remove.
* include/sys/utsname.h: Added, removed times (now in newlib).
* Makefile.am: Merge include/Makefile.am
* libc/utsname.c: Relocated from posix/src.
* libc/Makefile.am: Reflect changes above.
* configure.ac: Remove include/Makefile
|
|
|
|
|
|
|
| |
* Per PR212, added envlock support for newlib. This is used
by at least getenv()/putenv() to avoid race conditions.
* libc/envlock.c: New file.
* libc/Makefile.am: Modified to reflect above.
|
|
|
|
|
|
|
|
|
|
|
| |
* include/Makefile.am: Remove.
* include/sys/utsname.h: Added, removed times (now in newlib).
* Makefile.am: Merge include/Makefile.am
* libc/utsname.c: Relocated from posix/src.
* libc/Makefile.am: Reflect changes above.
* configure.ac: Remove include/Makefile
|
|
|
|
|
|
|
| |
* include/sys/utsname.h: Remove.
* include/Makefile.am: Reflect changes above.
* src/utsname.c: Remove.
* src/Makefile.am: Reflect changes above.
|
|
|
|
|
|
| |
* rtems/powerpc/debugmod.h: New file (extracted from
score/ppc.h).
* Makefile.am: Relect changes above.
|
|
|
|
| |
* rtems/score/ppc.h: Remove PPC_DEBUG_MODEL.
|
|
|
|
|
| |
* include/Makefile.am: Work-around to autoconf-2.53 adding PACKAGE_*
to autoheaders - sed out *PACKAGE* from cpuopts-tmp.h.
|
|
|
|
|
|
|
|
| |
* sys/ioctl.h: Remove.
* sys/sockio.h: Remove.
* sys/filio.h: Remove.
* sys/Makefile.am: Reflect changes above.
* configure.ac: Take out *NETWORKING*.
|
|
|
|
|
|
|
|
| |
* include/sys/ioctl.h: Relocated from libnetworking/sys.
* include/sys/filio.h: Relocated from libnetworking/sys.
* include/sys/sockio.h: Relocated from libnetworking/sys.
* include/Makefile.am: Reflect changes above.
* configure.ac: Take out *NETWORKING*.
|
|
|
|
|
|
|
| |
* sys/ioctl.h: Remove.
* sys/sockio.h: Remove.
* sys/filio.h: Remove.
* sys/Makefile.am: Reflect changes above.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* bootloader/Makefile.am, console/Makefile.am, pci/Makefile.am:
Per PR215 address the following issues:
- _IO_BASE, _ISA_MEM_BASE and PCI_DRAM_OFFSET
are no longer defined by libcpu (powerpc/shared/include/io.h)
but by the BSP (who is the only one to know the values)
- the affected BSP (shared/motorola) headers have been fixed
in a separate "libbsp/powerpc/shared" patch.
- the DEC 21140 driver (libchip/network/dec21140.c) has been
fixed to use PCI_DRAM_OFFSET instead of PREP_PCI_DRAM_OFFSET.
and PCI_MEM_BASE instead of PREP_ISA_MEM_BASE. PCI_MEM_BASE
is to be defined by the BSP who is using this driver.
- the DEC driver also has been fixed to use the newer
rtems_bsp_delay_in_bus_cycles() instead of the obsolete
delay_in_bus_cycles().
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* cpu.c: Per PR211 fix
saving/restoring floating point context. The fpsave and fprestore
routines are only used in a executing context which _is_ fp and hence
has the FPU enabled. The current behavior required the FPU always to
be on which is very dangerous if lazy context switching is used.
[Joel Note: Some ports explicitly enabled the FPU in the FP save and
restore routines to avoid this.]
The patch also makes sure (on powerpc only) that the FPU is disabled
for integer tasks. Note that this is crucial if deferred fp context
switching is used. Otherwise, fp context corruption may go undetected!
Also note that even tasks which merely push/pop FP registers to/from
the stack without modifying them still MUST be FP tasks - otherwise
(if lazy FP context switching is used), FP register corruption (of
other, FP, tasks may occur)!
Furthermore, (on PPC) by default, lazy FP context save/restore
is _disabled_.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* rtems/new-exceptions/cpu.h: Per PR211 fix
saving/restoring floating point context. The fpsave and fprestore
routines are only used in a executing context which _is_ fp and hence
has the FPU enabled. The current behavior required the FPU always to
be on which is very dangerous if lazy context switching is used.
[Joel Note: Some ports explicitly enabled the FPU in the FP save and
restore routines to avoid this.]
The patch also makes sure (on powerpc only) that the FPU is disabled
for integer tasks. Note that this is crucial if deferred fp context
switching is used. Otherwise, fp context corruption may go undetected!
Also note that even tasks which merely push/pop FP registers to/from
the stack without modifying them still MUST be FP tasks - otherwise
(if lazy FP context switching is used), FP register corruption (of
other, FP, tasks may occur)!
Furthermore, (on PPC) by default, lazy FP context save/restore
is _disabled_.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* src/threaddispatch.c, src/threadhandler.c: Per PR211 fix
saving/restoring floating point context. The fpsave and fprestore
routines are only used in a executing context which _is_ fp and hence
has the FPU enabled. The current behavior required the FPU always to
be on which is very dangerous if lazy context switching is used.
[Joel Note: Some ports explicitly enabled the FPU in the FP save and
restore routines to avoid this.]
The patch also makes sure (on powerpc only) that the FPU is disabled
for integer tasks. Note that this is crucial if deferred fp context
switching is used. Otherwise, fp context corruption may go undetected!
Also note that even tasks which merely push/pop FP registers to/from
the stack without modifying them still MUST be FP tasks - otherwise
(if lazy FP context switching is used), FP register corruption (of
other, FP, tasks may occur)!
Furthermore, (on PPC) by default, lazy FP context save/restore
is _disabled_.
|
|
|
|
| |
* ChangeLog: Corrected -- entry should have been in libchip.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* bootloader/Makefile.am, console/Makefile.am, pci/Makefile.am:
Per PR215 address the following issues:
- _IO_BASE, _ISA_MEM_BASE and PCI_DRAM_OFFSET
are no longer defined by libcpu (powerpc/shared/include/io.h)
but by the BSP (who is the only one to know the values)
- the affected BSP (shared/motorola) headers have been fixed
in a separate "libbsp/powerpc/shared" patch.
- the DEC 21140 driver (libchip/network/dec21140.c) has been
fixed to use PCI_DRAM_OFFSET instead of PREP_PCI_DRAM_OFFSET.
and PCI_MEM_BASE instead of PREP_ISA_MEM_BASE. PCI_MEM_BASE
is to be defined by the BSP who is using this driver.
- the DEC driver also has been fixed to use the newer
rtems_bsp_delay_in_bus_cycles() instead of the obsolete
delay_in_bus_cycles().
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Per PR216, "libbsp/powerpc/shared" BSP has been modified considerably
with the goal to make it more flexible and reusable by other
BSPs. The main strategies were:
- eliminate hardcoded base addresses; devices use offsets
and a BSP defined base address.
- separate functionality into different files (e.g. reboot from
inch.c to reboot.c) which can be overridden by a 'derived' BSP.
- separate initialization code into separate files (e.g. PCI
bridge detection/initialization was separated from the more
generic PCI access routines), also to make it easier for
'derived' BSPs to substitute their own initialization code.
There are also a couple of enhancements and fixes:
- IRQ handling code now has a hook for attaching a VME bridge.
- OpenPIC is now explicitely initialized (polarities, senses).
Eliminated the implicit assumption on the presence of an ISA PIC.
- UART and console driver now supports more than 1 port. The current
maximum of 2 can easily be extended by enlarging a table (it
would even be easier if the ISR API was not broken by design).
- fixed polled_io.c so it correctly supports console on COM2
- fixed TLB invalidation code (start.S).
- exception handler prints a stack backtrace.
- added BSP_pciFindDevice() to scan the pci bus for a particular
vendor/device/instance.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* bootloader/Makefile.am, console/Makefile.am, pci/Makefile.am:
Per PR216, "libbsp/powerpc/shared" BSP has been modified considerably
with the goal to make it more flexible and reusable by other
BSPs. The main strategies were:
- eliminate hardcoded base addresses; devices use offsets
and a BSP defined base address.
- separate functionality into different files (e.g. reboot from
inch.c to reboot.c) which can be overridden by a 'derived' BSP.
- separate initialization code into separate files (e.g. PCI
bridge detection/initialization was separated from the more
generic PCI access routines), also to make it easier for
'derived' BSPs to substitute their own initialization code.
There are also a couple of enhancements and fixes:
- IRQ handling code now has a hook for attaching a VME bridge.
- OpenPIC is now explicitely initialized (polarities, senses).
Eliminated the implicit assumption on the presence of an ISA PIC.
- UART and console driver now supports more than 1 port. The current
maximum of 2 can easily be extended by enlarging a table (it
would even be easier if the ISR API was not broken by design).
- fixed polled_io.c so it correctly supports console on COM2
- fixed TLB invalidation code (start.S).
- exception handler prints a stack backtrace.
- added BSP_pciFindDevice() to scan the pci bus for a particular
vendor/device/instance.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* bootloader/Makefile.am, console/Makefile.am, pci/Makefile.am:
Per PR216, "libbsp/powerpc/shared" BSP has been modified considerably
with the goal to make it more flexible and reusable by other
BSPs. The main strategies were:
- eliminate hardcoded base addresses; devices use offsets
and a BSP defined base address.
- separate functionality into different files (e.g. reboot from
inch.c to reboot.c) which can be overridden by a 'derived' BSP.
- separate initialization code into separate files (e.g. PCI
bridge detection/initialization was separated from the more
generic PCI access routines), also to make it easier for
'derived' BSPs to substitute their own initialization code.
There are also a couple of enhancements and fixes:
- IRQ handling code now has a hook for attaching a VME bridge.
- OpenPIC is now explicitely initialized (polarities, senses).
Eliminated the implicit assumption on the presence of an ISA PIC.
- UART and console driver now supports more than 1 port. The current
maximum of 2 can easily be extended by enlarging a table (it
would even be easier if the ISR API was not broken by design).
- fixed polled_io.c so it correctly supports console on COM2
- fixed TLB invalidation code (start.S).
- exception handler prints a stack backtrace.
- added BSP_pciFindDevice() to scan the pci bus for a particular
vendor/device/instance.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* bootloader/misc.c, console/Makefile.am, console/console.c,
console/consoleIo.h, console/inch.c, console/polled_io.c,
console/uart.c, console/uart.h, include/bsp.h, irq/Makefile.am,
irq/irq.c, irq/irq.h, irq/irq_init.c, openpic/openpic.c,
openpic/openpic.h, pci/Makefile.am, pci/pci.c, pci/pci.h,
residual/Makefile.am, start/start.S, startup/bspstart.c,
vectors/vectors.S, vectors/vectors.h, vectors/vectors_init.c:
Per PR216, "libbsp/powerpc/shared" BSP has been modified considerably
with the goal to make it more flexible and reusable by other
BSPs. The main strategies were:
- eliminate hardcoded base addresses; devices use offsets
and a BSP defined base address.
- separate functionality into different files (e.g. reboot from
inch.c to reboot.c) which can be overridden by a 'derived' BSP.
- separate initialization code into separate files (e.g. PCI
bridge detection/initialization was separated from the more
generic PCI access routines), also to make it easier for
'derived' BSPs to substitute their own initialization code.
There are also a couple of enhancements and fixes:
- IRQ handling code now has a hook for attaching a VME bridge.
- OpenPIC is now explicitely initialized (polarities, senses).
Eliminated the implicit assumption on the presence of an ISA PIC.
- UART and console driver now supports more than 1 port. The current
maximum of 2 can easily be extended by enlarging a table (it
would even be easier if the ISR API was not broken by design).
- fixed polled_io.c so it correctly supports console on COM2
- fixed TLB invalidation code (start.S).
- exception handler prints a stack backtrace.
- added BSP_pciFindDevice() to scan the pci bus for a particular
vendor/device/instance.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* network/dec21140.c: Per PR215 address the following issues:
- _IO_BASE, _ISA_MEM_BASE and PCI_DRAM_OFFSET
are no longer defined by libcpu (powerpc/shared/include/io.h)
but by the BSP (who is the only one to know the values)
- the affected BSP (shared/motorola) headers have been fixed
in a separate "libbsp/powerpc/shared" patch.
- the DEC 21140 driver (libchip/network/dec21140.c) has been
fixed to use PCI_DRAM_OFFSET instead of PREP_PCI_DRAM_OFFSET.
and PCI_MEM_BASE instead of PREP_ISA_MEM_BASE. PCI_MEM_BASE
is to be defined by the BSP who is using this driver.
- the DEC driver also has been fixed to use the newer
rtems_bsp_delay_in_bus_cycles() instead of the obsolete
delay_in_bus_cycles().
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* shared/include/io.h: Per PR215 address the following issues:
- _IO_BASE, _ISA_MEM_BASE and PCI_DRAM_OFFSET
are no longer defined by libcpu (powerpc/shared/include/io.h)
but by the BSP (who is the only one to know the values)
- the affected BSP (shared/motorola) headers have been fixed
in a separate "libbsp/powerpc/shared" patch.
- the DEC 21140 driver (libchip/network/dec21140.c) has been
fixed to use PCI_DRAM_OFFSET instead of PREP_PCI_DRAM_OFFSET.
and PCI_MEM_BASE instead of PREP_ISA_MEM_BASE. PCI_MEM_BASE
is to be defined by the BSP who is using this driver.
- the DEC driver also has been fixed to use the newer
rtems_bsp_delay_in_bus_cycles() instead of the obsolete
delay_in_bus_cycles().
|
|
|
|
|
|
|
|
|
|
| |
* vmeUniverse/README.universe, vmeUniverse/vmeUniverse.c,
vmeUniverse/vmeUniverse.h: New files.
* Makefile.am: Modified to reflect addition of files.
* Per PR214, contributes a driver for the TUNDRA UNIVERSE
VME-PCI bridge to libbsp/shared.
NOTE: This driver is maintained _outside_ RTEMS by Till. Please
forward future modifications to him.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* rtems/powerpc/registers.h, rtems/score/ppc.h: Per PR213, add
the following:
- support for the MPC74000 (AKA G4); there is no
AltiVec support yet, however.
- the cache flushing assembly code uses hardware-flush on the G4.
Also, a couple of hardcoded numerical values were replaced
by more readable symbolic constants.
- extended interrupt-disabled code section so enclose the entire
cache flush/invalidate procedure (as recommended by the book).
This is not (latency) critical as it is only used by
init code but prevents possible corruption.
- Trivial page table support as been added.
(1:1 effective-virtual-physical address mapping which is only
useful only on CPUs which feature hardware TLB replacement,
e.g. >604. This allows for write-protecting memory regions,
e.g. text/ro-data which makes catching corruptors a lot easier.
It also frees one DBAT/IBAT and gives more flexibility
for setting up address maps :-)
- setdbat() allows changing BAT0 also (since the BSP may use
a page table, BAT0 could be available...).
- asm_setdbatX() violated the SVR ABI by using
r20 as a scratch register; changed for r0
- according to the book, a context synchronizing instruction is
necessary prior to and after changing a DBAT -> isync added
|
|
|
|
|
|
| |
* rtems/powerpc/registers.h, rtems/score/ppc.h: Per PR213, add
support for the MPC74000 (AKA G4); there is no AltiVec support yet,
however.
|
|
|
|
| |
* config-ml.in: Take out arm and sh variants RTEMS does not support.
|
|
|
|
|
|
| |
* startup/linkcmds.bootp, startup/linkcmds.prom: Per PR192 add
sections needed by gcc 3.1. linkcmds had already been fixed on
a gcc 3.1 clean up sweep.
|
|
|
|
|
|
| |
* console/console.c, fatal/bspfatal.c, startup/bspclean.c,
startup/page_table.c: Per PR200 fix multi-line inline assembly
to satisfy gcc 3.1 and newer.
|
|
|
|
|
|
|
|
|
|
| |
* custom/dmv177.cfg: Use -mcpu=603e.
* custom/ppcn_60x.cfg: Use -mcpu=603e.
* custom/psim.cfg: Use -mcpu=603e.
* custom/score603e.cfg: Use -mcpu=603e.
* custom/ts_386ex.cfg: Remove obsolete comments.
* custom/rxgen960.cfg: Remove obsolete comments.
* custom/cvme961.cfg: Remove obsolete comments.
|
|
|
|
|
| |
* sp21/task1.c: Correct INVALID_DRIVER_MAJOR so it is precisely 1 more
than the configured number of drivers.
|
|
|
|
|
|
| |
* c/src/libchip/network/i82586.c: Per PR210, adjust the mbuf
lengths to remove the ethernet header as the FreeBSD (RTEMS)
stack requires it to be stripped.
|
|
|
|
|
|
|
| |
* src/m68k/rdbg_cpu_asm.S: Per PR163, Fix incorrect assumption that
exception stack frames on M68K members with VBR always are 6 byte long.
The incorrect assumption resulted in some gdb commands like "next"
to fail on the 68360.
|
|
|
|
|
|
| |
* src/i386/any/remdeb_svc.c, src/m68k/any/remdeb_svc.c,
src/powerpc/new_exception_processing/remdeb_svc.c: Per PR220 remove
these files from CVS.
|