| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This was done by the following script run from libbsp:
find * -name bsp.h | xargs -e grep -l "#ifndef.*_BSP_H" | while read b
do
echo $b
cpu=`echo $b | cut -d'/' -f1 | tr '[:lower:]' '[:upper:]' `
bsp=`echo $b | cut -d'/' -f2 | tr '[:lower:]' '[:upper:]' `
g="LIBBSP_${cpu}_${bsp}_BSP_H"
# echo $g
sed -e "s/ifndef _BSP_H/ifndef ${g}/" \
-e "s/define _BSP_H/define ${g}/" \
-i $b
done
|
| |
|
|
|
|
|
|
|
| |
This allows it to be wrapped by another function at link-time
and can be used to trace interrupts. If not placed in a separate
file, the function pointer address used in BSP_shared_interrupt_init
will be resolved at compile-time, and the function will not be wrappable.
|
|
|
|
| |
Some includes may use C++ and this conflicts if surrounded extern "C".
|
| |
|
|
|
|
|
|
|
|
| |
Instead of calling the system call TA instruction directly it
is better paractise to isolate the trap implementation to the
system call functions.
BSP_fatal_exit() is added.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
Add doxygen to the header files in sparc/shared/include directory.
|
|
|
|
| |
Add doxygen to the bsp.h, tm27.h, erc32.h and irq.h files.
|
| |
|
| |
|
|
|
|
|
|
|
| |
Include <bsp/default-initial-extension.h> in all BSPs. Call
rtems_fatal() with RTEMS_FATAL_SOURCE_EXIT as source and the exit()
status code as fatal code in every bsp_cleanup(). Move previous
bsp_cleanup() code into bsp_fatal_extension().
|
|
|
|
| |
The bsp_fatal_extension() will call BSP_fatal_return().
|
|
|
|
|
|
|
|
|
|
|
|
| |
The work areas (RTEMS work space and C program heap) will be initialized
now in a separate step and are no longer part of
rtems_initialize_data_structures(). Initialization is performed with
tables of Heap_Area entries. This allows usage of scattered memory
areas present on various small scale micro-controllers.
The sbrk() support API changes also. The bsp_sbrk_init() must now deal
with a minimum size for the first memory chunk to take the configured
work space size into account.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
| |
If bsp_early_malloc() is called early during boot room will be
allocated after BSS END. If the function is called after boot
is will call malloc() instead. The returned memory is not freeable
and always 8-byte aligned.
If the bsp_early_malloc() isn't called the function is not
dragged in and the workspace will be unmodified in size.
Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
|
|
|
|
|
|
| |
PR 1783/bsps
* include/bsp.h: Remove dead prototypes of Clock_delay() and delay().
Neither had bodies.
|
|
|
|
|
|
|
| |
* Makefile.am, 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.
* startup/bspidle.c: New file.
|
|
|
|
| |
* include/bsp.h: Remove unnecessary boilerplate comments.
|
|
|
|
|
|
| |
* include/bsp.h: Review of all bsp_cleanup() implementations. In this
phase, all prototypes were removed from bsp.h and empty
implementations were removed and made to use the shared stub.
|
|
|
|
|
|
| |
* clock/ckinit.c, include/bsp.h: Eliminate copies of the Configuration
Table. Use the RTEMS provided accessor macros to obtain configuration
fields.
|
|
|
|
|
|
| |
* include/bsp.h: 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.
|
|
|
|
| |
* clock/ckinit.c, include/bsp.h: Fix spacing.
|
|
|
|
|
|
| |
* console/debugputs.c, include/bsp.h, startup/spurious.c: Remove debug
print methods that are redundant with prntk and replace their use
with printk.
|
| |
|
|
|
|
| |
* include/bsp.h: New header guard.
|
|
|
|
|
| |
* include/bsp.h: Split out tmtest27 support.
* include/tm27.h: New.
|
|
|
|
|
| |
PR 613/bsps
* include/bsp.h: Remove MAX_LONG_TEST_DURATION.
|
|
|
|
|
| |
PR 614/bsps
* include/bsp.h: Remove MAX_SHORT_TEST_DURATION (Unused).
|
| |
|
| |
|
|
|
|
|
|
|
|
| |
* startup/boardinit.S: Include <rtems/asm.h> instead of <asm.h>.
* include/bsp.h: Include <rtems/clockdrv.h> instead of <clockdrv.h>.
* include/bsp.h: Include <rtems/console.h> instead of <console.h>.
* include/bsp.h: Include <rtems/iosupp.h> instead of <iosupp.h>.
* console/console.c: Include <rtems/ringbuf.h> instead of <ringbuf.h>.
|
|
|
|
|
|
|
| |
* clock/ckinit.c, console/console.c, console/debugputs.c,
erc32sonic/erc32sonic.c, include/bsp.h, include/erc32.h,
startup/setvec.c, startup/spurious.c, timer/timer.c: Convert to
using c99 fixed size types.
|
|
|
|
|
|
|
| |
* clock/ckinit.c, console/console.c, console/consolereserveresources.c,
console/debugputs.c, include/bsp.h, include/coverhd.h,
include/erc32.h, startup/erc32mec.c, startup/setvec.c, timer/timer.c:
URL for license changed.
|
|
|
|
| |
* include/bsp.h: Change SIS to ERC32_BSP.
|
|
|
|
|
|
|
| |
* configure.ac: Add RTEMS_BSPOPTS*(CONSOLE_USE_INTERRUPTS).
Add RTEMS_BSPOPTS*(SIMSPARC_FAST_IDLE).
Remove RTEMS_OUTPUT_BUILD_SUBDIRS.
* include/bsp.h: include bspopts.h.
|
|
|
|
|
|
|
|
| |
This fix is in response to test results reported by Jerry Needell
<jerry.needell@unh.edu> for the SPARC/ERC32 and tracked as PR80.
* include/bsp.h: TM27 was not running properly because the ERC32
and LEON cannot nest interrupts at the same level. The BSP test support
had to be modified to support using two different interrupt sources.
|
|
|
|
| |
* include/bsp.h: Renamed delay() to rtems_bsp_delay().
|
|
|
|
|
|
|
| |
* configure.in: Add bspopts.h.
* include/.cvsignore: Add bspopts.h*, stamp-h*.
* include/Makefile.am: Use *_HEADERS instead of *H_FILES.
* include/bsp.h: Include bspopts.h.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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.
|
|
|
|
|
|
| |
routines and structures that require CPU model specific information
are now in libcpu. This primarily required moving erc32 specific
information from score/cpu files to libcpu/sparc and the erc32 BSP.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
code in each BSP's bspstart.c. These changes were:
+ confdefs.h now knows libio's semaphore requirements
+ shared/main.c now copies Configuration to BSP_Configuration
+ shared/main.c fills in the Cpu_table with default values
This removed the need for rtems_libio_config() and the constant
BSP_LIBIO_MAX_FDS in every BSP. Plus now the maximum number of open
files can now be set on the gcc command line.
|
|
|
|
|
|
|
|
| |
based on the GNU tools. This usually involved correcting the
type of bsp_start(), bsp_cleanup(), adjusting the start code to
call the right start routine (the shared boot_card()), and then
removing code from bsp_start() which was performed in the new
boot_card()/main() path.
|
| |
|