summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/sparc/erc32 (unfollow)
Commit message (Collapse)AuthorFilesLines
2018-01-02bsps: Include bsp.am in all BSP Makefile.amSebastian Huber1-0/+1
Update #3254.
2017-12-19sparc/*/bsp_specs, shared/linkcmds: Simplify bsp_specsJoel Sherrill1-1/+1
Updates #3520.
2017-11-29erc32/bsp_specs: Reorder and improve consistencyJoel Sherrill1-3/+3
Updates #3520.
2017-11-27REVERT */*/bsp_specs: Increase similarity to ease futureJoel Sherrill1-3/+3
Patch was not intended to be pushed yet. Updates #3520.
2017-11-27*/*/bsp_specs: Increase similarity to ease future analysisJoel Sherrill1-3/+3
Done: arm bfin epiphany i386 lm32 m32c mips moxie nios2 or1k powerpc riscv sh sparc sparc64 v850 To do: m68k Differences noted: + endfile was sometimes before startfile + endfile sometimes was hard-coded and did not have -qrtems version + Should -e XXX (e.g. entry point) be in linkcmds? + Should -u XXX (e.g. undefined symbols) be in linkcmds? + Typos: Odd spacing, "old_endfiles" typo, and *(old_endfiles) (not %) + nios2: Referenced crtnn.o not crtn.o (error) Need to revisit: + m32c, moxie, sparc64 includes !nostdlib which is not used elsewhere + sh has -EL/-EB mapping. Why needed? + sparc64 didn't include crti.o/crtn.o but it is part of toolset + v850 uses something like this for link and end_file: "%{qrtems: %(old_link)}" This means that these are unnecessary. Try this on all. + mips uses old_link all the time also. + arm/tms750 adds -EB. + powerpc: Why do we have rtems_crt* and not use something from GCC? Updates #3520.
2017-11-27libbsp/*/*/configure.ac: Remove references to bsp_specs in AC_CONFIG_SRCDIRJoel Sherrill1-1/+1
Updates #3250.
2017-11-24Remove coverhd.hSebastian Huber2-5/+0
This header file contained timing overhead values which are hard to maintain. Update #3254.
2017-11-22bsps: Simplify RTEMS_BSP_CLEANUP_OPTIONSSebastian Huber2-1/+2
Remove BSP-specific defaults for RTEMS_BSP_CLEANUP_OPTIONS to simplify the BSP configuration and documentation. Change defaults to: BSP_PRESS_KEY_FOR_RESET=0 BSP_RESET_BOARD_AT_EXIT=1 BSP_PRINT_EXCEPTION_CONTEXT=1
2017-11-17getentropy: Add cpu counter based implementation.Christian Mauderer1-0/+1
Update #3239.
2017-09-18bsps: Clock_driver_support_install_isr()Sebastian Huber1-4/+2
Remove old ISR parameter since is not used by the clock driver shell. Make an implementation optional. Update #3139.
2017-07-25sparc: Add lazy floating point switchSebastian Huber1-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.
2017-07-25INTERNAL_ERROR_ILLEGAL_USE_OF_FLOATING_POINT_UNITSebastian Huber1-0/+4
Add new fatal error INTERNAL_ERROR_ILLEGAL_USE_OF_FLOATING_POINT_UNIT. Update #3077.
2017-07-12bsps: Include missing header fileSebastian Huber1-1/+1
Update #3071.
2017-07-12Add interrupt vector set/get affinitySebastian Huber1-0/+20
Close #3071.
2017-02-15bsps/sparc: Fix warningsSebastian Huber1-2/+7
2016-12-14libdl: Add C++ exception support to loaded modules.Chris Johns1-4/+0
This has been tested on SPARC, i386, PowerPC and ARM. Closes #2767.
2016-12-07testsuite: Add test states to the testsuit configuration files.Chris Johns1-0/+4
Change the testsuite configuration files to hold state information about a test. The states are: exclude - Do not build the test expected-fail - The test is expected to fail indeterminate - The test may pass or may fail A message is printed just after the test's BEGIN message to indicate there is a special state for the test. No state message means the test is expected to pass. This support requires tests are correctly written to the use standard support to begin and end a test.
2016-11-29Remove sparc/sis BSP.Joel Sherrill4-28/+0
closes #2810.
2016-11-28sparc: Optimize _ISR_Handler()Sebastian Huber1-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.
2016-06-22sparc: Optimize CPU counter supportSebastian Huber1-5/+2
2016-06-21sparc: Rework CPU counter supportSebastian Huber1-12/+13
Rework CPU counter support to enable use of the GR740 up-counter via %asr22 and %asr23.
2016-03-30sparc/erc32/include/bsp.h: Do not include <rtems/iosupp.h>Joel Sherrill1-1/+0
2016-03-29sparc/erc32: Remove include of <rtems/console.h> from <bsp.h> and fix warningsJoel Sherrill1-1/+0
2016-03-27sparc/erc32/include/bsp.h: Do not include <rtems/clockdrv.h>Joel Sherrill1-1/+0
2016-03-24erc32/*/erc32sonic.c: Fix warningsJoel Sherrill1-8/+8
2016-03-04score: Distribute clock tick to all online CPUsSebastian Huber1-0/+5
Update #2554.
2016-02-03Use linker set for libio initializationSebastian Huber1-2/+0
Update #2408.
2016-01-19score: Fix simple timecounter supportSebastian Huber1-3/+7
Update #2502.
2015-12-24api: Remove deprecated NotepadsAun-Ali Zaidi1-2/+0
Notepads where a feature of RTEMS' tasks that simply functioned in the same way as POSIX keys or threaded local storage (TLS). They were introduced well before per task variables, which are also deprecated, and were barely used in favor of their POSIX alternatives. In addition to their scarce usage, Notepads took up unnecessary memory. For each task: - 16 32-bit integers were allocated. - A total of 64 bytes per task per thread. This is especially critical in low memory and safety-critical applications. They are also defined as uint32_t, and therefore are not guaranteed to hold a pointer. Lastly, they are not portable solutions for SMP and uniprocessor systems, like POSIX keys and TLS. updates #2493.
2015-12-10bsps: Delete superfluous bsp_pretasking_hook()Sebastian Huber1-1/+0
Use the bsp_predriver_hook() instead. Update #2408.
2015-12-10bsps: Call bsp_work_area_initialize() earlySebastian Huber2-8/+0
Call bsp_work_area_initialize() before bsp_start(). This allows bsp_start() to use malloc() etc. which is beneficial for systems with a plug-and-play hardware enumeration. Update #2408.
2015-12-10bsps/sparc: Use default bsp_pretasking_hook()Sebastian Huber2-1/+3
Move content to bsp_predriver_hook() functions of the BSPs. Update #2408.
2015-07-16Most bsp.h: Switch to LIBBSP_@CPU@_@BSP_FAMILY@_H for guardJoel Sherrill1-2/+2
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
2015-05-20bsps: Convert clock drivers to use a timecounterAlexander Krutwig1-16/+36
Update #2271.
2015-04-17sparc BSPs: implemented libpci IRQ BSP supportDaniel Hellstrom1-0/+7
2015-02-11bsp/sparc: Move BSP_ISR_handler to a separate file and rename itDaniel Cederman2-0/+4
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.
2014-12-05bsps/sparc: Fix trap table initializationSebastian Huber1-4/+6
Fixes bug introduced with dff1803cfbec3775fff1b9c34cc707c05494dc3b.
2014-12-05Update bug report URLSebastian Huber1-1/+1
2014-12-05libmisc: More useful default configurationSebastian Huber1-1/+0
The dummy.c was a de-facto default configuration. Rename it to default-configuration.c. Use unlimited objects and the stack checker. This makes it easier for new RTEMS users which will likely use this file if they just work with the usual main() function as the application entry point. Provide proper arguments for main() using the BSP command line. Add spare user extensions and drivers. Do not initialize the network by default. Delete bspinit.c.
2014-10-23bsps: Move extern "C" to not cover includesSebastian Huber1-4/+4
Some includes may use C++ and this conflicts if surrounded extern "C".
2014-10-19sparc/erc32: Fix warningsJoel Sherrill4-14/+21
2014-10-13sparc/erc32/clock/ckinit.c: Fix warningsJoel Sherrill1-5/+4
2014-10-09SPARC BSPs: added CPU aware interrupt ctrl operationsDaniel Hellstrom1-1/+13
The LEON2 and ERC32 maps the new macros to CPU0 since they do not support SMP. With the LEON3 a specific CPU's interrupt controller registers can be modified using macros.
2014-10-06erc32,leon2: replace bsp_reset with SPARC fatal handlerDaniel Hellstrom1-1/+1
Now that a SPARC fatal handler is defined, we no longer need the BSP specific reset routine.
2014-10-06SPARC: Fatal_halt use source and exit codesDaniel Hellstrom2-0/+6
The Fatal_halt handler now have two options, either halt as before or enter system error state to return to debugger or simulator. The exit-code is now also propagated to the debugger which is very useful for testing. The CPU_Fatal_halt handler was split up into two, since the only the LEON3 support the CPU power down. The LEON3 halt now uses the power-down instruction to save CPU power. This doesn't stop a potential watch-dog timer from expiring.
2014-10-06SPARC: add BSP specific error handlerDaniel Hellstrom2-0/+3
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.
2014-10-06SPARC BSPs: remove BSP_fatal_return unreached codeDaniel Hellstrom1-2/+0
2014-09-16Use correct prototype of benchmark_timer_read()Joel Sherrill1-1/+1
This change starts with removing the effectively empty file timerdrv.h. The prototypes for benchmark_timer_XXX() were in btimer.h which was not universally used. Thus every use of timerdrv.h had to be changed to btimer.h. Then the prototypes for benchmark_timer_read() had to be adjusted to return benchmark_timer_t rather than int or uint32_t. I took this opportunity to also correct the file headers to separate the copyright from the file description comments which is needed to ensure the copyright isn't propagated into Doxygen output.
2014-09-11score: Rename _BSP_Exception_frame_print()Sebastian Huber1-1/+1
Rename _BSP_Exception_frame_print() to _CPU_Exception_frame_print() to be in line with other CPU port functions.
2014-08-29Regenerate all preinstall.am files.Chris Johns1-3/+3
With this patch the preinstall.am files are in a set order and not dependent on now perl implements a hash.