| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add CPU port type CPU_Exception_frame and function
_CPU_Exception_frame_print().
The CPU ports of avr, bfin, h8300, lm32, m32c, m32r, m68k, nios2, sh,
sparc64, and v850 use an empty default implementation of
_CPU_Exception_frame_print().
Add rtems_exception_frame and rtems_exception_frame_print().
Add RTEMS_FATAL_SOURCE_EXCEPTION for CPU exceptions. Use rtems_fatal()
with source RTEMS_FATAL_SOURCE_EXCEPTION in CPU ports of i386, powerpc,
and sparc for unexpected exceptions.
Add third parameter to RTEMS_BSP_CLEANUP_OPTIONS() which controls the
BSP_PRINT_EXCEPTION_CONTEXT define used in the default
bsp_fatal_extension().
Add test sptests/spfatal26.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Script does what is expected and tries to do it as
smartly as possible.
+ remove occurrences of two blank comment lines
next to each other after Id string line removed.
+ remove entire comment blocks which only exited to
contain CVS Ids
+ If the processing left a blank line at the top of
a file, it was removed.
|
| |
|
|
|
|
| |
Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The implementation use IRQ number instead of vector number since
some IRQs does not have a unique vector, for example the extended
interrupts all enter the same trap vector entry.
Added support for the LEON3 extended interrupt controller when using
the shared IRQ layer.
ERC32 patches untested.
Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
Regenerate
|
|
|
|
| |
Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
|
|
|
|
|
|
|
|
|
|
| |
PR 2010/bsps
The previous code only checked if d-cache snooping was implemented,
however snooping may be available but not enabled which may lead
to driver bugs.
Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
PR 2009/bsps
All LEON3/4 systems have a CPU-id, if on a single-CPU system the
ID is always zero. On a multicore system it ranges from 0 to 15.
The CPU index should always by updated even in a non-MP RTEMS OS
since the CPU running RTEMS may not always be CPU0. For example
when RTEMS runs on CPU1 and Linux on CPU0 in a mixed ASMP system.
The old code executed within the IRQ controller initialization code
makes no sense since the ASR register is a CPU register, it has
nothing to do with AMBA initialization either.
Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
|
|
|
|
|
|
|
|
| |
PR 1795/bsps
* erc32/Makefile.am, leon2/Makefile.am, leon3/Makefile.am: Add
rtems_bsp_delay to sparc bsps.
* erc32/startup/bspdelay.c, leon2/startup/bspdelay.c,
leon3/startup/bspdelay.c: New files.
|
|
|
|
|
|
| |
* amba/amba.c, include/tm27.h, shmsupp/lock.c, startup/bspstart.c,
startup/spurious.c:
Use "__asm__" instead of "asm" for improved c99-compliance.
|
|
|
|
|
|
|
| |
* Makefile.am, amba/amba.c, console/console.c, console/debugputs.c,
startup/bspstart.c: Rework initialization order so AMBA bus is
scanned earlier. This lets us look for UARTs earlier and support
printk as early as bsp_start() returning.
|
|
|
|
|
|
|
| |
* startup/linkcmds: Include basic linker command file and define only
board specific values. Define RAM and PROM limits only if not defined
by command line arguments.
* Makefile.am, preinstall.am: Reflect changes above.
|
| |
|
|
|
|
|
|
| |
* Makefile.am, startup/bspstart.c:
Use ../../sparc/shared/bsppretaskinghook.c.
* console/console.c: Remove sis comment.
|
|
|
|
| |
* startup/ithread.S: Removed. Now bspidle.S.
|
|
|
|
|
|
|
|
| |
* Makefile.am, console/console.c, console/debugputs.c, include/bsp.h,
startup/setvec.c: Split idle method into its own file. Properly note
to confdefs.h that this BSP has its own idle thread. Also address use
of maximum termios constant in debug IO.
* startup/bspidle.S: New file.
|
|
|
|
|
| |
* startup/linkcmds: Start of RTEMS Work Area must be on 16 byte
boundary on the SPARC.
|
|
|
|
|
| |
PR 1391/bsps
* startup/spurious.c: Format was %d but had leading 0x.
|
|
|
|
|
|
| |
PR 1390/bsps
* startup/linkcmds: Fix sections so C++ global constructors and
destructors work with late model (>= 4.3) gcc versions.
|
|
|
|
|
| |
* Makefile.am, startup/bspstart.c: Use shared bsp_get_work_area() into
its own file and use BSP Framework to perform more initialization.
|
| |
|
|
|
|
|
|
| |
* startup/linkcmds: All SPARC executables should include
rtems_get_version_string so the monitor used can provide RTEMS
awareness based upon the version.
|
|
|
|
| |
added support for an optional separate heap area.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Makefile.am, configure.ac, startup/bspstart.c: Add capability for
bootcard.c BSP Initialization Framework to ask the BSP where it has
memory for the RTEMS Workspace and C Program Heap. These collectively
are referred to as work area. If the BSP supports this, then it does
not have to include code to split the available memory between the
two areas. This reduces the amount of code in the BSP specific
bspstart.c file. Additionally, the shared framework can initialize
the C Library, call rtems_debug_enable(), and dirty the work area
memory. Until most/all BSPs support this new capability, if the BSP
supports this, it should call
RTEMS_BSP_BOOTCARD_HANDLES_RAM_ALLOCATION from its configure.ac. When
the transition is complete, this autoconf macro can be removed.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* startup/bspstart.c: Refactored and renamed initialization routines to
rtems_initialize_data_structures, rtems_initialize_before_drivers,
rtems_initialize_device_drivers, and
rtems_initialize_start_multitasking. This opened the sequence up so
that bootcard() could provide a more robust and flexible framework
which is easier to explain and understand. This also lays the
groundwork for sharing the division of available memory between the
RTEMS workspace and heap and the C library initialization across all
BSPs.
|
|
|
|
|
| |
* startup/linkcmds: Add wildcard to gcc_except_table section so
programs compiled with gcc 4.3.x can link.
|
|
|
|
|
|
| |
* clock/ckinit.c, include/bsp.h, startup/bspstart.c: Eliminate copies
of the Configuration Table. Use the RTEMS provided accessor macros to
obtain configuration fields.
|
|
|
|
|
|
|
| |
* amba/amba.c, clock/ckinit.c, console/console.c, include/bsp.h,
startup/bspstart.c, timer/timer.c: Move interrupt_stack_size field
from CPU Table to Configuration Table. Eliminate CPU Table from all
ports. Delete references to CPU Table in all forms.
|
|
|
|
|
|
|
|
|
|
| |
* amba/amba.c, startup/bspstart.c: Moved most of the remaining CPU
Table fields to the Configuration Table. This included
pretasking_hook, predriver_hook, postdriver_hook, idle_task,
do_zero_of_workspace, extra_mpci_receive_server_stack,
stack_allocate_hook, and stack_free_hook. As a side-effect of this
effort some multiprocessing code was made conditional and some style
clean up occurred.
|
|
|
|
|
|
|
|
| |
* include/bsp.h, startup/bspstart.c: LEON2 and LEON3 Data cache
snooping detection on startup, for drivers. (LEON2,3 are configurable
processors, they can be with or without DCache snooping. Caches
without snooping needs the drivers to flush cache or use the sparc
instruction lda to force cache miss...)
|
|
|
|
|
| |
* include/bsp.h, startup/bspstart.c, startup/spurious.c: hello and
ticker now run using runtest.
|
|
|
|
| |
* startup/spurious.c: Fix typo from previous commit.
|
|
|
|
|
|
| |
* console/debugputs.c, include/bsp.h, leon_smc91111/leon_smc91111.c,
startup/bspstart.c, startup/spurious.c: Remove debug print methods
that are redundant with prntk and replace their use with printk.
|
|
|
|
| |
* startup/linkcmds: Handle .data.* sections
|
|
|
|
|
|
| |
* startup/bspstart.c: Remove assignments of
Cpu_table.do_zero_of_workspace to TRUE since TRUE is the default
value in boot_card.c
|
|
|
|
|
|
|
|
|
|
| |
* clock/ckinit.c, startup/bspstart.c: Use common clock driver template
and eliminate all fast idle code specific to this BSP. This
eliminates a fair amount of code in the BSP clock driver and
bsp_startup. The LEON3 has to do a scan of the AMBA bus to find the
timer so I added the new hook Clock_driver_support_find_timer to
support this. In general, there was some clean up to the file headers
of various files.
|
|
|
|
| |
* startup/linkcmds: Add .rela.dyn sections.
|
|
|
|
| |
* startup/linkcmds: Add .gnu.linkonce.b.* section.
|
|
|
|
| |
* startup/linkcmds: Add sections required by newer gcc versions.
|
|
|