summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/sparc/erc32/startup (follow)
Commit message (Collapse)AuthorAgeFilesLines
* bsps: Move startup files to bspsSebastian Huber2018-04-208-450/+0
| | | | | | | | Adjust build support files to new directory layout. This patch is a part of the BSP source reorganization. Update #3285.
* bsps: Convert all bsp_predriver_hook()Sebastian Huber2018-04-201-30/+0
| | | | | | Use RTEMS_SYSINIT_ITEM() instead. Update #2408.
* sparc/*/linkcmds*: Move ENTRY() from linkcmds.base to top linkcmdsJoel Sherrill2018-02-051-0/+2
| | | | | | | | This was at the request of a user to make it easier to have a custom entry point. This way they just provide their own top level linkcmds and include linkcmds.base. Updates #3520.
* Remove make preinstallChris Johns2018-01-251-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | A speciality of the RTEMS build system was the make preinstall step. It copied header files from arbitrary locations into the build tree. The header files were included via the -Bsome/build/tree/path GCC command line option. This has at least seven problems: * The make preinstall step itself needs time and disk space. * Errors in header files show up in the build tree copy. This makes it hard for editors to open the right file to fix the error. * There is no clear relationship between source and build tree header files. This makes an audit of the build process difficult. * The visibility of all header files in the build tree makes it difficult to enforce API barriers. For example it is discouraged to use BSP-specifics in the cpukit. * An introduction of a new build system is difficult. * Include paths specified by the -B option are system headers. This may suppress warnings. * The parallel build had sporadic failures on some hosts. This patch removes the make preinstall step. All installed header files are moved to dedicated include directories in the source tree. Let @RTEMS_CPU@ be the target architecture, e.g. arm, powerpc, sparc, etc. Let @RTEMS_BSP_FAMILIY@ be a BSP family base directory, e.g. erc32, imx, qoriq, etc. The new cpukit include directories are: * cpukit/include * cpukit/score/cpu/@RTEMS_CPU@/include * cpukit/libnetworking The new BSP include directories are: * bsps/include * bsps/@RTEMS_CPU@/include * bsps/@RTEMS_CPU@/@RTEMS_BSP_FAMILIY@/include There are build tree include directories for generated files. The include directory order favours the most general header file, e.g. it is not possible to override general header files via the include path order. The "bootstrap -p" option was removed. The new "bootstrap -H" option should be used to regenerate the "headers.am" files. Update #3254.
* sparc: Add lazy floating point switchSebastian Huber2017-07-251-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The SPARC ABI is a bit special with respect to the floating point context. The complete floating point context is volatile. Thus, from an ABI point of view nothing needs to be saved and restored during a context switch. Instead the floating point context must be saved and restored during interrupt processing. Historically, the deferred floating point switch was used for SPARC and the complete floating point context is saved and restored during a context switch to the new floating point unit owner. This is a bit dangerous since post-switch actions (e.g. signal handlers) and context switch extensions may silently corrupt the floating point context. The floating point unit is disabled for interrupt handlers. Thus, in case an interrupt handler uses the floating point unit then this will result in a trap (INTERNAL_ERROR_ILLEGAL_USE_OF_FLOATING_POINT_UNIT). In uniprocessor configurations, a lazy floating point context switch is used. In case an active floating point thread is interrupted (PSR[EF] == 1) and a thread dispatch is carried out, then this thread is registered as the floating point owner. When a floating point owner is present during a context switch, the floating point unit is disabled for the heir thread (PSR[EF] == 0). The floating point disabled trap checks that the use of the floating point unit is allowed and saves/restores the floating point context on demand. Update #3077.
* INTERNAL_ERROR_ILLEGAL_USE_OF_FLOATING_POINT_UNITSebastian Huber2017-07-251-0/+4
| | | | | | Add new fatal error INTERNAL_ERROR_ILLEGAL_USE_OF_FLOATING_POINT_UNIT. Update #3077.
* bsps/sparc: Fix warningsSebastian Huber2017-02-151-2/+7
|
* sparc: Optimize _ISR_Handler()Sebastian Huber2016-11-281-0/+3
| | | | | | Use _Thread_Do_dispatch() instead of _Thread_Dispatch(). Restore the PSR[EF] state of the interrupted context via new system call syscall_irqdis_fp in case floating-point support is enabled.
* bsps/sparc: Use default bsp_pretasking_hook()Sebastian Huber2015-12-101-0/+2
| | | | | | Move content to bsp_predriver_hook() functions of the BSPs. Update #2408.
* bsps/sparc: Fix trap table initializationSebastian Huber2014-12-051-4/+6
| | | | Fixes bug introduced with dff1803cfbec3775fff1b9c34cc707c05494dc3b.
* sparc/erc32: Fix warningsJoel Sherrill2014-10-192-3/+8
|
* score: Rename _BSP_Exception_frame_print()Sebastian Huber2014-09-111-1/+1
| | | | | Rename _BSP_Exception_frame_print() to _CPU_Exception_frame_print() to be in line with other CPU port functions.
* bsps/sparc: Change tabs to spaces.Daniel Cederman2014-05-271-3/+3
|
* bsps/sparc: Add copyright and license informationDaniel Cederman2014-05-271-2/+13
|
* bsps/sparc: Make spurious trap handler function static.Daniel Cederman2014-03-211-1/+1
|
* Change all references of rtems.com to rtems.org.Chris Johns2014-03-215-5/+5
|
* score: Add CPU_Exception_frameSebastian Huber2012-11-271-16/+21
| | | | | | | | | | | | | | | | | | | | | 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.
* Remove All CVS Id Strings Possible Using a ScriptJoel Sherrill2012-05-117-14/+0
| | | | | | | | | | | | 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.
* SPARC BSPs: implemented shared-irq using libbsp/shared layerDaniel Hellstrom2012-04-061-0/+25
| | | | | | | | | | | | | | | 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
* 2011-06-16 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius2011-06-161-1/+1
| | | | * startup/bspdelay.c: Fix broken CVS-Id.
* 2011-05-23 Jennifer Averett <Jennifer.Averett@OARcorp.com>Jennifer Averett2011-05-231-0/+25
| | | | | | | | 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.
* 2011-02-11 Ralf Corsépius <ralf.corsepius@rtems.org>Ralf Corsepius2011-02-111-1/+1
| | | | | * include/tm27.h, startup/spurious.c: Use "__asm__" instead of "asm" for improved c99-compliance.
* 2010-05-11 Sebastian Huber <sebastian.huber@embedded-brains.de>Sebastian Huber2010-05-111-194/+6
| | | | | | | * 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.
* Whitespace removal.Ralf Corsepius2009-11-291-1/+1
|
* 2009-08-19 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill2009-08-192-9/+29
| | | | | | | * 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.
* 2009-03-09 Antoine Lacroix <antoine.lacroix at sodern.fr>Joel Sherrill2009-03-091-1/+1
| | | | | PR 1391/bsps * startup/spurious.c: Format was %d but had leading 0x.
* 2009-03-02 Daniel Hellstrom <daniel@gaisler.com>Joel Sherrill2009-03-021-12/+23
| | | | | | PR 1390/bsps * startup/linkcmds: Fix sections so C++ global constructors and destructors work with late model (>= 4.3) gcc versions.
* 2009-02-12 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2009-02-121-1/+1
| | | | | * startup/setvec.c: Change prototype of IDLE thread to consistently return void * and take a uintptr_t argument.
* 2008-09-17 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2008-09-171-0/+1
| | | | * startup/linkcmds: Add start symbol to eliminate warning.
* 2008-09-17 Joel Sherrill <joel.sherrill@oarcorp.com>Joel Sherrill2008-09-171-2/+3
| | | | * startup/linkcmds: Work Area should start on 16 byte boundary.
* 2008-08-08 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill2008-08-081-0/+5
| | | | | | * startup/linkcmds: All SPARC executables should include rtems_get_version_string so the monitor used can provide RTEMS awareness based upon the version.
* 2008-08-05 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill2008-08-051-1/+1
| | | | | | PR 1294/bsps * startup/spurious.c: Correct prototype and usage of sparc_disable_interrupts.
* 2008-08-04 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill2008-08-041-1/+1
| | | | | | PR 1294/bsps * startup/spurious.c: Correct prototype and usage of sparc_disable_interrupts.
* 2008-03-03 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill2008-03-031-1/+1
| | | | | * startup/linkcmds: Add wildcard to gcc_except_table section so programs compiled with gcc 4.3.x can link.
* 2007-05-09 Joel Sherrill <joel.sherrill@OARcorp.com>Joel Sherrill2007-05-091-47/+27
| | | | | | * console/debugputs.c, include/bsp.h, startup/spurious.c: Remove debug print methods that are redundant with prntk and replace their use with printk.
* 2007-05-03 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2007-05-031-1/+1
| | | | * startup/linkcmds: Handle .data.* sections
* 2006-06-24 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2006-06-251-0/+14
| | | | * startup/linkcmds: Add .rela.dyn sections.
* 2006-03-08 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2006-03-081-1/+1
| | | | * startup/linkcmds: Add .gnu.linkonce.b.* section.
* 2006-02-08 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2006-02-081-2/+2
| | | | * startup/linkcmds: Add sections required by newer gcc versions.
* 2006-01-10 Joel Sherrill <joel@OARcorp.com>Joel Sherrill2006-01-101-9/+9
| | | | | * startup/linkcmds: Merge from 4.6 branch. Now the copy_data loop works.
* Remove duplicate white lines.Ralf Corsepius2004-04-211-1/+0
|
* Remove stray white spaces.Ralf Corsepius2004-04-214-26/+26
|
* Remove stray white spaces.Ralf Corsepius2004-04-152-2/+0
|
* 2004-04-01 Ralf Corsepius <ralf_corsepius@rtems.org>Ralf Corsepius2004-04-011-1/+1
| | | | | | | | * 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>.
* 2004-03-31 Ralf Corsepius <ralf_corsepius@rtems.org>Ralf Corsepius2004-03-312-7/+7
| | | | | | | * 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.
* .cvsignore: Remove (Unused).Ralf Corsepius2004-02-121-2/+0
|
* 2004-01-27 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Ralf Corsepius2004-01-271-47/+0
| | | | | | | | | | | * Makefile.am: Merge-in clock/Makefile.am, erc32sonic/Makefile.am, startup/Makefile.am, console/Makefile.am, gnatsupp/Makefile.am, timer/Makefile.am, wrapup/Makefile.am. Use automake compilation rules. * clock/Makefile.am, erc32sonic/Makefile.am, startup/Makefile.am, console/Makefile.am, gnatsupp/Makefile.am, timer/Makefile.am, wrapup/Makefile.am: Remove. * configure.ac: Reflect changes above.
* 2004-01-14 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Ralf Corsepius2004-01-141-0/+5
| | | | | | * Makefile.am: Re-add dirstamps to PRE/TMPINSTALL_FILES. Add PRE/TMPINSTALL_FILES to CLEANFILES. * startup/Makefile.am: Ditto.
* 2003-12-13 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Ralf Corsepius2003-12-131-6/+6
| | | | | * start/Makefile.am: s,${PROJECT_RELEASE}/lib,$(PROJECT_LIB),g. * startup/Makefile.am: s,${PROJECT_RELEASE}/lib,$(PROJECT_LIB),g.
* 2003-12-12 Ralf Corsepius <corsepiu@faw.uni-ulm.de>Ralf Corsepius2003-12-121-0/+4
| | | | | | * start/Makefile.am: Use mkdir_p. Remove dirs from PRE/TMPINSTALL_FILES. * startup/Makefile.am: Use mkdir_p. Remove dirs from PRE/TMPINSTALL_FILES. * wrapup/Makefile.am: Use mkdir_p. Remove dirs from PRE/TMPINSTALL_FILES.