summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/sparc (follow)
Commit message (Collapse)AuthorAgeFilesLines
* bsp/leon3: Add bsp_reset() for SMP configurationSebastian Huber2014-02-213-0/+65
|
* bsp/leon3: Add and use leon3_get_cpu_count()Sebastian Huber2014-02-212-2/+10
|
* bsp/leon3: Add leon3_power_down_loop()Sebastian Huber2014-02-212-0/+4
|
* bsps/sparc: Delete unused fileSebastian Huber2014-02-211-24/+0
|
* bsp/leon3: Add and use LEON3_IrqCtrl_LockSebastian Huber2014-02-192-13/+23
| | | | | Disabling of interrupts is not enough to ensure mutual exclusion on SMP configurations.
* bsp/leon3: Declare LEON3_IrqCtrl_EIrq only onceSebastian Huber2014-02-191-2/+2
|
* bsp/leon3: Declare leon3_ext_irq_init() in headerSebastian Huber2014-02-193-4/+5
|
* score: Rename rtems_smp_process_interrupt()Sebastian Huber2014-02-191-4/+3
| | | | | | Rename rtems_smp_process_interrupt() into _SMP_Inter_processor_interrupt_handler(). Delete unused header file <rtems/bspsmp.h>.
* score: Rename rtems_smp_secondary_cpu_initialize()Sebastian Huber2014-02-191-1/+2
| | | | | | Rename rtems_smp_secondary_cpu_initialize() into _SMP_Start_multitasking_on_secondary_processor(). Move declaration to <rtems/score/smpimpl.h>.
* score: Delete bsp_smp_broadcast_interrupt()Sebastian Huber2014-02-191-16/+0
| | | | | | Since the per-CPU SMP lock must be acquired and released to send the message a single interrupt broadcast operations offers no benefits. If synchronization is required, then a SMP barrier must be used anyway.
* score: Rename bsp_smp_initialize()Sebastian Huber2014-02-191-1/+1
| | | | | Rename bsp_smp_initialize() into _CPU_SMP_Initialize() since every CPU port must supply this function.
* bsp/leon3: Add and use fatal codesSebastian Huber2014-02-192-3/+5
|
* score: Add RTEMS_FATAL_SOURCE_BSPSebastian Huber2014-02-192-5/+2
| | | | | | Merge RTEMS_FATAL_SOURCE_BSP_GENERIC and RTEMS_FATAL_SOURCE_BSP_SPECIFIC into new fatal source RTEMS_FATAL_SOURCE_BSP. This makes it easier to figure out the code position given a fatal source and code.
* bsp/leon3: Declare amba_initialize()Sebastian Huber2014-02-142-2/+2
|
* bsp/leon3: Do not define RTEMS_DEBUGSebastian Huber2014-02-141-11/+12
| | | | | Move vital code out of debug section. Harmonize variable names with other implementations.
* sparc: Add LEON3_ASR17_PROCESSOR_INDEX_SHIFTSebastian Huber2014-02-145-17/+6
| | | | Add _LEON3_Get_current_processor().
* score: Add CPU counter supportSebastian Huber2014-02-147-0/+73
| | | | | | | | | Add a CPU counter interface to allow access to a free-running counter. It is useful to measure short time intervals. This can be used for example to enable profiling of critical low-level functions. Add two busy wait functions rtems_counter_delay_ticks() and rtems_counter_delay_nanoseconds() implemented via the CPU counter.
* sparc: Save/restore only non-volatile contextSebastian Huber2014-02-121-15/+4
| | | | | | | | | | The _CPU_Context_switch() is a normal function call. The following registers are volatile (the caller must assume that the register contents are destroyed by the callee) according to "SYSTEM V APPLICATION BINARY INTERFACE - SPARC Processor Supplement", Third Edition: g1, o0, o1, o2, o3, o4, o5. Drop these registers from the context. Ensure that offset defines match the structure offsets.
* bsps/sparc: Fix ambapp_find_by_idx()Sebastian Huber2014-02-111-1/+1
| | | | The expression "*pi++" post-increments the pointer (not the value).
* Revert "bsp/leon3: New BSP variant leon3_qemu"Sebastian Huber2014-02-079-99/+0
| | | | | | This reverts commit 7579e255127ee0cf04901bbab6c1538559053508. Improve QEMU to support AMBA plug and play instead.
* bsp/leon3: New BSP variant leon3_qemuSebastian Huber2014-02-069-0/+99
|
* bsp/leon3: Declare bsp_debug_uart_init() in headerSebastian Huber2014-02-063-5/+5
| | | | Do not return a status.
* score: _CPU_Context_switch_to_first_task_smp()Sebastian Huber2014-02-051-28/+0
| | | | | Delete _CPU_Context_switch_to_first_task_smp() and use _CPU_Context_restore() instead.
* bsps: Delete unused bsp_smp_delay()Sebastian Huber2014-02-051-23/+0
|
* bsp/leon3: Avoid magic delays for IPI broadcastSebastian Huber2014-02-051-5/+3
|
* bsp/leon3: Fix SMP initializationSebastian Huber2014-02-053-51/+34
| | | | | | | Avoid usage of the same stack area by multiple secondary processors at the same time. Avoid magic delay loops.
* bsp/leon3: Install IPI handler earlySebastian Huber2014-02-051-7/+4
| | | | | | | | Install inter-processor interrupt (IPI) handler before secondary CPUs are started. This ensures that secondary CPUs fetch the newly installed handler. Remove superfluous return statement.
* bsp/leon3: Use printk() only if debug is enabledSebastian Huber2014-02-051-9/+10
|
* bsps/sparc: Fix commentSebastian Huber2014-02-051-1/+1
|
* bsps/sparc: Remove confusing nopSebastian Huber2014-02-041-1/+0
|
* bsps/sparc: Order load/store by increasing offsetsSebastian Huber2014-02-041-7/+7
| | | | This may increase the cache hit performance.
* bsps/sparc: Fix commentsSebastian Huber2014-02-041-3/+1
|
* bsp/leon3: Console driver changesSebastian Huber2014-02-043-68/+56
| | | | | Move declaration of global variables and functions to <leon.h> header file. Make several global variables and functions static.
* bsp/leon3: Avoid copy and paste in console driverSebastian Huber2014-02-041-39/+23
|
* bsp/leon3: Fix interrupt-driven console driverSebastian Huber2014-02-041-72/+98
|
* bsps: Thread-local storage (TLS) for linkcmdsSebastian Huber2014-02-041-0/+14
|
* bsps/sparc: Fix linkcmds part of new network stackSebastian Huber2014-01-301-3/+3
|
* sparc BSP shared: Improve DoxygenToma Radu2014-01-0919-49/+147
| | | | Add doxygen to the header files in sparc/shared/include directory.
* PR 1548: ERC32 console stops working when UART error flags are setGerardo Puga2014-01-091-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Problem: The console works fine when only transmitting data from the ERC32, but stops working after a while when receiving data. "Stops working" means, bytes are neither sent nor received from the UART, but the rest of the system keeps functioning (task are executing, the operative system is responsive, etc). Context: - When an RX error occurs, the ERC32 UARTS stop generating RX/TX interrupts until the corresponding error flag in the UART_STATUS are cleared. - The console.c code currently cleans the error flags from the console_isr_x subroutines, but those are NOT called when an RX error occurs. Thus the error flag is never cleaned and then the UARTs stop generating interrupts indefinitely. - The ERC32 UARTs generate a different interrupt when an RX error occurs. Fixed by: - Adding a third interrupt service routine console_isr_error to handle the UART_ERROR trap. This isr cleans the error flags of the channels. - Cleaning the error flags manually just after having initialized the interrupt vectors. This is because if the error flag was already set by the time the interrupt vectors are configured, the interrupts might never be called.
* bsps: Simplify FreeBSD linker setsSebastian Huber2013-12-161-13/+5
|
* PR1960: ERC32_Is_interrupt_masked for ERC32 in erc32.hHelder Silva2013-12-111-1/+1
| | | | | | | | | | The function-like macro ERC32_Is_interrupt_masked defined as: (ERC32_MEC.Interrupt_Masked & (1 << (_source))) The ERC32_MEC is of type ERC32_Register_Map structure and Interrupt_Masked does not exist in structure, instead Interrupt_Mask exists. Update the macro accordingly.
* doxygen: refactored doxygen in libbsp to illustrate new rule setDaniel Ramirez2013-12-094-9/+50
|
* sparc shared: improve doxygenToma Radu2013-12-074-8/+9
| | | | Add doxygen to the header files in sparc/shared/include directory.
* erc32: improve doxygenToma Radu2013-12-044-0/+25
| | | | Add doxygen to the bsp.h, tm27.h, erc32.h and irq.h files.
* leon3: fix doxygen description for bsp.hGedare Bloom2013-12-041-1/+1
|
* leon3: improve doxygenToma Radu2013-12-044-1/+23
| | | | Add doxygen to the bsp.h, tm27.h, amba.h and leon.h files
* sparc: refactored shared/start.S to shared/start/start.SDaniel Ramirez2013-12-035-4/+4
|
* leon2: fix typo in doxygenGedare Bloom2013-12-031-1/+1
|
* leon2: improve doxygenToma Radu2013-12-032-0/+12
| | | | Add doxygen to the cchip.c & leon_open_eth.c files.
* libbsp: refactored sparc/shared/bspgetworkarea.c to ↵Daniel Ramirez2013-12-034-3/+3
| | | | | | sparc/shared/startup/bspgetworkarea.c * refactored sparc/shared/bspgetworkarea.c to sparc/shared/startup/bspgetworkarea.c