summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libcpu/powerpc (follow)
Commit message (Collapse)AuthorAgeFilesLines
* bsps/powerpc: Add support for interrupt profilingSebastian Huber2014-03-141-2/+51
|
* bsps/powerpc: Fix GET_INTERRUPT_MASK macroSebastian Huber2014-03-121-1/+2
| | | | | Use _PPC_INTERRUPT_DISABLE_MASK introduced with 801b5d80325dbd3e92218271d54e75f389da7136.
* sapi: Use one SMP lock for all chainsSebastian Huber2014-03-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This partially reverts commit 1215fd4d9426a59d568560e9a485628560363133. In order to support profiling of SMP locks and provide a future compatible SMP locks API it is necessary to add an SMP lock destroy function. Since the commit above adds an SMP lock to each chain control we would have to add a rtems_chain_destroy() function as well. This complicates the chain usage dramatically. Thus revert the patch above. A global SMP lock for all chains is used to implement the protected chain operations. Advantages: * The SAPI chain API is now identical on SMP and non-SMP configurations. * The size of the chain control is reduced and is then equal to the Score chains. * The protected chain operations work correctly on SMP. Disadvantage: * Applications using many different chains and the protected operations may notice lock contention. The chain control size drop is a huge benefit (SAPI chain controls are 66% larger than the Score chain controls). The only disadvantage is not really a problem since these applications can use specific interrupt locks and unprotected chain operations to avoid this issue.
* rtems: Use size_t for cache line sizeSebastian Huber2014-02-281-1/+1
| | | | A cache line cannot have a negative size.
* score: Add RTEMS_FATAL_SOURCE_BSPSebastian Huber2014-02-193-6/+7
| | | | | | 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.
* powerpc: Change interrupt disable implemetationSebastian Huber2014-02-192-6/+0
| | | | | | | | | | | | Instead of SPRG0 (= special purpose register 272) use the new global symbol _PPC_INTERRUPT_DISABLE_MASK to store the interrupt disable mask. The benefit is that it is now possible to disable interrupts without further run-time initialization in boot_card(). At least on Freescale e500 cores this leads also to a faster execution since the mfmsr and mfspr instruction require four cycles to complete. The instructions to load the mask value can execute while the mfmsr is in progress.
* Add thread-local storage (TLS) supportSebastian Huber2014-02-041-3/+13
| | | | | Tested and implemented on ARM, m68k, PowerPC and SPARC. Other architectures need more work.
* libcpu/powerpc/mpc5xx: use THREAD_DISABLE_DISPATCH_LEVEL in asmChirayu Desai2013-12-061-13/+13
|
* bsps/powerpc: Unconditionally clear reservationsSebastian Huber2013-12-031-7/+8
|
* powerpc: Add r2 to CPU contextSebastian Huber2013-11-182-1/+7
| | | | The r2 may be used for thread-local storage.
* sapi: SMP support for chainsSebastian Huber2013-08-301-1/+1
| | | | | | | | Add ISR lock to chain control for proper SMP protection. Replace rtems_chain_extract() with rtems_chain_explicit_extract() and rtems_chain_insert() with rtems_chain_explicit_insert() on SMP configurations. Use rtems_chain_explicit_extract() and rtems_chain_explicit_insert() to provide SMP support.
* bsps/powerpc: Per-CPU thread dispatch disableSebastian Huber2013-08-093-53/+45
| | | | Interrupt support for per-CPU thread dispatch disable level.
* Include missing <rtems/score/threaddispatch.h>Sebastian Huber2013-07-262-3/+5
|
* bsp/mpc55xx: Fix prototypePeter Dufault2013-07-241-1/+1
|
* bsp/mpc55xx: Add MPC5668G supportSebastian Huber2013-07-157-13/+6770
|
* bsps/powerpc: Add ppc_count_leading_zeros()Sebastian Huber2013-07-091-0/+13
|
* powerpc: Fix Altivec supportSebastian Huber2013-06-261-1/+1
| | | | Use the right context.
* termios: Update due to API changesSebastian Huber2013-06-255-18/+29
| | | | | Termios notifies now the driver about an inactive transmit with the length argument set to zero.
* bsps/powerpc: Delete clock_4xx.cSebastian Huber2013-06-241-225/+0
|
* bsps: Move bsp_generic_fatal_code to new fileSebastian Huber2013-06-211-5/+2
| | | | Add bsp_generic_fatal().
* bsps/powerpc: Delete bsp_exceptions_in_RAMSebastian Huber2013-06-214-68/+77
| | | | | Delete ppc_exc_vector_base. Add and use ppc_exc_initialize_with_vector_base().
* smp: Fix PowerPC context switchSebastian Huber2013-06-071-1/+1
|
* smp: Add PowerPC supportSebastian Huber2013-05-311-0/+23
|
* score: Remove idle field of Per_CPU_ControlSebastian Huber2013-05-311-2/+5
| | | | | | This field is unused except for special case simulator clock drivers. In these places use an alternative. Add and use _Thread_Set_global_exit_status() and _Thread_Get_global_exit_status().
* bsp/mpc55xx: Avoid empty enumSebastian Huber2013-04-291-0/+2
|
* bsp/mpc55xx: Add MMU tag translate initializerSebastian Huber2013-04-251-3/+6
|
* bsp/mpc55xx: TypoSebastian Huber2013-04-171-1/+1
|
* bsp/mpc55xx: eDMA API changesSebastian Huber2013-04-084-165/+471
|
* bsp/mpc55xx: Add alternative register layoutSebastian Huber2013-04-081-0/+17
|
* bsp/mpc55xx: Add PCR index enumerationSebastian Huber2013-04-081-2/+266
|
* bsp/mpc55xx: New fatal errorsSebastian Huber2013-04-081-4/+3
|
* bsps: Fix warningsSebastian Huber2013-04-081-1/+1
|
* mpc83xx: Add and use mpc83xx_reset()Sebastian Huber2013-03-141-0/+19
| | | | | The inline version makes it possible to use this code in different memory areas.
* RTEMS: Delete ChangeLog files.Gedare Bloom2013-03-081-2759/+0
| | | | | | | | | This commit deletes all RTEMS ChangeLog files. These files have been abandoned since converting to git version control. The historical data may be recovered by checking out any commit before this one. Most of the contents of these ChangeLog files can also be found in the git log. Two external ChangeLog files, ChangeLog.slac and ChangeLog.zlib, remain.
* bsp/mpc55xx: Add register type definitionSebastian Huber2013-02-251-1/+1
|
* bsps/powerpc: Add and use ppc_cpu_is_specific_e200Sebastian Huber2013-02-062-2/+10
|
* bsps/powerpc: Fix e200 checkSebastian Huber2013-02-061-4/+2
|
* bsp/mpc55xx: Add mpc55xx_mmu_apply_config()Sebastian Huber2013-02-061-2/+12
|
* bsps/powerpc: Add option for write-through cacheSebastian Huber2013-01-281-1/+2
|
* bsps/powerpc: Add probe handler to I2C driverSebastian Huber2013-01-091-0/+1
|
* bsps/powerpc: Fix compiler warningsSebastian Huber2013-01-091-4/+1
|
* bsp/gen83xx: Add GPR_1 to register mapSebastian Huber2012-12-211-1/+3
|
* bsp/gen83xx: Fix RCWLR_CEVCO definesSebastian Huber2012-12-211-2/+3
|
* bsps/powerpc: Install missing <bsp/vectors.h>Sebastian Huber2012-12-072-4/+2
|
* bsp/mpc55xx: Set PPC_EXC_CONFIG_USE_FIXED_HANDLERSebastian Huber2012-12-031-10/+29
|
* bsp/mpc55xx: Add mpc55xx_wait_for_interrupt()Sebastian Huber2012-12-031-2/+20
| | | | Use mpc55xx_wait_for_interrupt().
* bsp/mpc55xx: Fix INTC initializationSebastian Huber2012-12-031-1/+8
|
* bsp/mpc55xx: Add union tagsSebastian Huber2012-12-031-6/+6
|
* bsps/powerpc: Add PPC_EXC_CONFIG_BOOKE_ONLYSebastian Huber2012-12-035-1/+47
| | | | | | | In combination with the PPC_EXC_CONFIG_USE_FIXED_HANDLER option this removes all dependencies on valid read-write data. The exception handling must be statically configured and all components reside in read-only sections.
* bsps/powerpc: Add PPC_EXC_CONFIG_USE_FIXED_HANDLERSebastian Huber2012-12-036-24/+89
| | | | | | | | | In case a BSP enables this option, then fixed high level exception handler will be used. For normal asynchronous exceptions this is bsp_interrupt_dispatch() and for other exceptions this is the handler from the read-only ppc_exc_handler_table. The global handler is C_exception_handler(). This avoids some dependencies on valid read-write data.