summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/sparc (follow)
Commit message (Collapse)AuthorAgeFilesLines
* 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
* leon2_doxygen_1Radu2013-12-0220-3/+121
|
* sparc/leon3: Add doxygen.Radu Toma2013-12-017-19/+40
|
* sparc/shared/irq_asm.S: Get pointer to self per-CPU controlDaniel Hellstrom2013-11-301-0/+1
| | | | | | | | _CPU_Context_switch_to_first_task_smp() branches to done_flushing which requires o3 to be initalized with "self per-CPU control", this adds initialization of o3. This problem only affects SMP, see commit f8ad6c6f7f8b591e were usage of o3 was intruduced.
* sparc/../irq-shared.c: Fix compilation for SMP when not LEON3Joel Sherrill2013-11-141-1/+2
|
* bsp/ngmp: New BSP variantSebastian Huber2013-11-134-0/+25
|
* bsp/leon3: Enable linker script variantsSebastian Huber2013-11-134-4/+11
|
* bsp/leon3: Delete unused LEON_REG symbolSebastian Huber2013-11-131-7/+0
|
* SPARC BSPs: disable interrupts as early as possibleDaniel Hellstrom2013-10-311-2/+2
| | | | | | | | | There is no point having interrupts enabled before reaching boot_card() that disables interrupt. We better have it off all the time. It is required to turn off interrupt on secondary CPUs in an SMP system.
* LEON3 SMP: remove compiler warning from __delay() declarationDaniel Hellstrom2013-10-311-1/+1
|
* LEON3 SMP: CPU ack irq on trap vector entry executionDaniel Hellstrom2013-10-311-1/+0
|
* LEON3_MP ISR: shared-IRQ setup overwrite SMP/MP ISR trap handlerDaniel Hellstrom2013-10-311-0/+5
| | | | | | Basically the shared-irq handler overwrite the SMP/MP traphandler previously initialized with set_vector(). That caused IPIs to enter BSP spurious handler.
* sparc all BSPs: Use function and data sectionsJoel Sherrill2013-10-244-8/+18
| | | | This reduces the size of the RTEMS tests on average about 45%.
* libbsp/sparc/.../gnatcommon.c: FormattingJoel Sherrill2013-09-301-7/+5
|
* leon2/.../ckinit.c: Change get nanoseconds handler to staticJoel Sherrill2013-09-301-1/+1
|
* leon3/bsppredriver.c: Add include file to warningJoel Sherrill2013-09-231-0/+1
|
* leon3/.../ckinit.c: Change get nanoseconds handler to staticJoel Sherrill2013-09-231-6/+1
|
* leon3/.../ckinit.c: Fix missing prototype warningsJoel Sherrill2013-09-221-1/+5
|
* leon3/.../bspstart.c: Fix missing prototype warningsJoel Sherrill2013-09-221-2/+2
|
* sparc/.../grcan.c: Switch to using RTEMS_COMPILER_UNUSED_ATTRIBUTEJoel Sherrill2013-09-221-8/+6
|
* leon3/console.c: Fix misisng prototype issuesJoel Sherrill2013-09-211-2/+15
|
* sparc/.../grcan.c: Fix multiple warningsJoel Sherrill2013-09-211-2/+8
|
* sparc/.../ambapp.h: Add ambapp_get_number_apbslv_devices() prototypeJoel Sherrill2013-09-211-0/+4
|
* sparc/.../occan.c: Fix missing prototype warningJoel Sherrill2013-09-211-0/+2
|
* sparc/.../ambapp.h: Add ambapp_get_number_ahbslv_devices() prototypeJoel Sherrill2013-09-211-0/+6
|
* sparc/../occan.c: Fix set but unused variable warningJoel Sherrill2013-09-211-2/+1
|
* sparc irq-shared.c: Fix unused variable warningJoel Sherrill2013-09-211-1/+1
|
* leon3/include/bsp.h: Fix spacingJoel Sherrill2013-09-161-1/+0
|
* bsps: Fix clock driver definesSebastian Huber2013-08-143-3/+3
|
* sparc: Make _CPU_ISR_Dispatch_disable per-CPUSebastian Huber2013-08-091-22/+20
| | | | This variable must be available for each processor in the system.
* sparc: Move _CPU_Context_switch(), etc.Sebastian Huber2013-08-091-0/+224
| | | | | | Move the _CPU_Context_switch(), _CPU_Context_restore() and _CPU_Context_switch_to_first_task_smp() code since the method to obtain the processor index is BSP specific.
* bsps/sparc: SMP and per-CPU thread dispatch disableSebastian Huber2013-08-091-10/+25
| | | | Interrupt support for SMP and per-CPU thread dispatch disable level.
* bsps/sparc: Revert most SMP related changesSebastian Huber2013-08-091-111/+59
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As a side-effect the PR2082 is fixed with this and later changes. The commit restores the _ISR_Handler code to the original version in "cpukit/score/sparc/cpu_asm.S" in commit 6d42b4c60a4ac686489b793d5df2047c735c7c94. A list of reverted changes follows. commit c236082873cb4a2fd42af4ca0868106e1dd65422 Author: Sebastian Huber <sebastian.huber@embedded-brains.de> Date: Tue Jul 30 15:54:53 2013 +0200 smp: Provide cache optimized Per_CPU_Control Delete _Per_CPU_Information_p. This commit was completely reverted. commit e517714b7cd28807aad4c1afd8c97df72dadb4c1 Author: Jennifer Averett <jennifer.averett@oarcorp.com> Date: Tue Feb 26 12:31:23 2013 -0600 sparc: Remove dead code that was leftover from SMP development. This commit was completely reverted. commit 47a61aa16f81588f8ffb8ea5cfd1ceba3e9a867a Author: Joel Sherrill <joel.sherrill@OARcorp.com> Date: Fri Oct 7 14:35:03 2011 +0000 2011-10-07 Daniel Hellstrom <daniel@gaisler.com> PR 1933/cpukit * shared/irq_asm.S: From code inspection I have found the following issues (most SMP), and some improvements in irq_asm.S. I would need a long test with interrupts to verify the interrupt handler better, however I can not see that these patches hurt. Please see comment per hunk below, One should go through the file to indent delay-slots correctly, I have fixed some in the patch areas. An extra space is added in front of delay slots to indicate a delay slot. This commit was completely reverted. commit 0bd3f7e5d12fdbfb5bf4aa4a4169c67bfd92c988 Author: Jennifer Averett <Jennifer.Averett@OARcorp.com> Date: Thu Jul 28 17:33:07 2011 +0000 2011-07-28 Jennifer Averett <Jennifer.Averett@OARcorp.com> PR 1801 * shared/irq_asm.S: Modifications to synch the sparc with the smp working tree. This commit was completely reverted. commit 5d69cd33e9a72cf8c1a24fc9eda7f64d61f10fd1 Author: Joel Sherrill <joel.sherrill@OARcorp.com> Date: Wed Mar 16 20:05:30 2011 +0000 2011-03-16 Jennifer Averett <jennifer.averett@OARcorp.com> PR 1729/cpukit * shared/irq_asm.S: New file. The parts modifying the original code of _ISR_Handler were reverted. Only the content move remains.
* smp: Provide cache optimized Per_CPU_ControlSebastian Huber2013-07-311-11/+12
| | | | Delete _Per_CPU_Information_p.
* smp: Add and use _Per_CPU_Get()Sebastian Huber2013-07-301-5/+5
| | | | | | Add and use _Per_CPU_Get_by_index() and _Per_CPU_Get_index(). Add _Per_CPU_Send_interrupt(). This avoids direct access of _Per_CPU_Information.
* smp: Add and use _CPU_SMP_Send_interrupt()Sebastian Huber2013-07-171-5/+3
| | | | Delete bsp_smp_interrupt_cpu().
* smp: Add and use _CPU_SMP_Get_current_processor()Sebastian Huber2013-07-172-7/+9
| | | | | | | | | | Add and use _SMP_Get_current_processor() and rtems_smp_get_current_processor(). Delete bsp_smp_interrupt_cpu(). Change type of current processor index from int to uint32_t to match _SMP_Processor_count type.
* termios: Update due to API changesSebastian Huber2013-06-252-33/+30
| | | | | Termios notifies now the driver about an inactive transmit with the length argument set to zero.
* score: Rename rtems_smp_get_number_of_processors()Sebastian Huber2013-06-141-1/+1
| | | | | | | | | Rename in rtems_smp_get_processor_count(). Always provide <rtems/score/smp.h> and <rtems/rtems/smp.h>. Add _SMP_Get_processor_count(). This function will be a compile time constant defined to be one on uni-processor configurations. This allows iterations over all processors without overhead on uni-processor configurations.
* smp: Simplify SMP initialization sequenceSebastian Huber2013-05-293-27/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Delete bsp_smp_wait_for(). Other parts of the system work without timeout, e.g. the spinlocks. Using a timeout here does not make the system more robust. Delete bsp_smp_cpu_state and replace it with Per_CPU_State. The Per_CPU_State follows the Score naming conventions. Add _Per_CPU_Change_state() and _Per_CPU_Wait_for_state() functions to change and observe states. Use Per_CPU_State in Per_CPU_Control instead of the anonymous integer. Add _CPU_Processor_event_broadcast() and _CPU_Processor_event_receive() functions provided by the CPU port. Use these functions in _Per_CPU_Change_state() and _Per_CPU_Wait_for_state(). Add prototype for _SMP_Send_message(). Delete RTEMS_BSP_SMP_FIRST_TASK message. The first context switch is now performed in rtems_smp_secondary_cpu_initialize(). Issuing the first context switch in the context of the inter-processor interrupt is not possible on systems with a modern interrupt controller. Such an interrupt controler usually requires a handshake protocol with interrupt acknowledge and end of interrupt signals. A direct context switch in an interrupt handler circumvents the interrupt processing epilogue and may leave the system in an inconsistent state. Release lock in rtems_smp_process_interrupt() even if no message was delivered. This prevents deadlock of the system. Simplify and format _SMP_Send_message(), _SMP_Request_other_cores_to_perform_first_context_switch(), _SMP_Request_other_cores_to_dispatch() and _SMP_Request_other_cores_to_shutdown().