Commit Graph

1692 Commits

Author SHA1 Message Date
Sebastian Huber
3e2647a714 powerpc: AltiVec and FPU context support
Add AltiVec and FPU support to the Context_Control in case we use the
e6500 multilib.

Add PPC_MULTILIB_ALTIVEC and PPC_MULTILIB_FPU multilib defines.  Add
non-volatile AltiVec and FPU context to Context_Control.  Add save/restore of
non-volatile AltiVec and FPU to _CPU_Context_switch().  Add save/restore
of volatile AltiVec and FPU context to the exception code.  Adjust data
cache optimizations for the new context and cache line size.
2015-01-13 11:37:28 +01:00
Sebastian Huber
c279d0a33f bsps/powerpc: Use e500 exc categories for e6500
This is not correct, but works for now.
2015-01-13 11:37:28 +01:00
Sebastian Huber
2e19bfde2f powerpc: Use PPC_HAS_FPU
Provide floating point context support only if PPC_HAS_FPU == 1.
2015-01-09 14:05:46 +01:00
Sebastian Huber
7c16e1a514 powerpc: Set PPC_DEFAULT_CACHE_LINE_SIZE for e6500 2015-01-09 14:05:08 +01:00
Sebastian Huber
84d3b9b0a2 powerpc: Use PPC_DEFAULT_CACHE_LINE_SIZE
Use it for the default PPC_CACHE_ALIGNMENT.  Use it for
PPC_STRUCTURE_ALIGNMENT.
2015-01-09 14:03:35 +01:00
Sebastian Huber
71b611d172 bsps/powerpc: ppc_exc_initialize_interrupt_stack() 2015-01-09 14:03:34 +01:00
Sebastian Huber
7bad67256e bsps/powerpc: Add TMR access macros 2015-01-09 14:03:34 +01:00
Sebastian Huber
c32a128cb2 bsps/powerpc: Add cache size functions 2015-01-09 14:03:34 +01:00
Sebastian Huber
7d26f60a1b bsps/powerpc: Delete C pre-processor warning
Do not warn about not implemented cache functions.
2015-01-09 14:03:34 +01:00
Sebastian Huber
5175ac6a87 bsps/powerpc: Support a cache alignment of 64
Give the BSP the ability to define PPC_CACHE_ALIGNMENT.
2015-01-09 14:03:33 +01:00
Sebastian Huber
f6660bfba4 bsps/powerpc: Support e6500 indentification 2015-01-09 14:03:33 +01:00
Sebastian Huber
fca5892454 bsps/mpc83xx: Fix warnings 2015-01-09 14:03:33 +01:00
Nick Withers
2d5c486914 Use fixed-width C99 types for PowerPC in_be16() and co.
Also use the const qualifier on the address pointer's target in in_*()

Closes #2128
2014-12-23 22:40:32 -05:00
Sebastian Huber
3cd3a260a6 bsp/mpc8xx: Fix warnings
close #2211
2014-12-12 16:36:39 +01:00
Sebastian Huber
3507f3f953 bsp/mpc8xx: Fix warnings
close #2211
2014-12-12 15:32:40 +01:00
Gedare Bloom
71d97c92e5 sparc64: put each copyright on one line 2014-12-08 13:16:37 -05:00
Sebastian Huber
1207288022 Update bug report URL 2014-12-05 07:47:32 +01:00
Ben Gras
13d9029453 beagle bsp: disable watchdog on am335x
On recent u-boots, the watchdog is turned on / left enabled. The
Beaglebone Black rev. C ships with such a u-boot internally so any
application booting from it must disable the watchdog.

Therefore this change is needed to boot an RTEMS app out-of-the-box
on a BBB Rev C - otherwise the user button must be held during boot
(to bypass the stock uboot) or the internal uboot must be updated. To
allow for a better out-of-the-box experience, we just turn off the
watchdog.
2014-12-05 04:05:45 +01:00
Jan Dolezal
038e1dba31 i386: doxygen and comments related to VESA real mode framebuffer 2014-12-04 13:37:50 -05:00
Daniel Hellstrom
dff1803cfb SPARC: optimize IRQ enable & disable
* Coding style cleanups.
* Use OS reserved trap 0x89 for IRQ Disable
* Use OS reserved trap 0x8A for IRQ Enable
* Add to SPARC CPU supplement documentation

This will result in faster Disable/Enable code since the
system trap handler does not need to decode which function
the user wants. Besides the IRQ disable/enabled can now
be inline which avoids the caller to take into account that
o0-o7+g1-g4 registers are destroyed by trap handler.

It was also possible to reduce the interrupt trap handler by
five instructions due to this.
2014-12-04 12:51:11 +01:00
Daniel Hellstrom
0d3b5d4742 SPARC: optimize window underflow trap
Save five instructions on underflow handling.

By using an optimized trap entry we can move instructions from
the window underflow function into the trap entry vector. By
setting WIM=0 and using RESTORE it is possible to move the
new WIM register content from the trapped window into the
to-be-restored register window. It is then possible to avoid
the WIM write delay.
2014-12-02 13:57:20 +01:00
Daniel Hellstrom
6930aa7f19 SPARC: optimize window overflow trap entry
By using a optimized trap entry we can move instructions from
the window overflow function into the trap entry vector. By
using the saved locals instead of g1 we don't need to save
that register temporarily. Also spead out non store instructions
inbetween stores to use the write buffer better.
2014-12-02 13:57:15 +01:00
Daniel Hellstrom
348d1812ba SPARC: window overflow optimization
I see no need for waiting the 3 instruction delay for wim to be
written in this case, since the STD after does not depend on WIM
2014-12-02 13:55:50 +01:00
Sebastian Huber
7e5c9b895e rtems: Move rtems_cache_aligned_malloc()
Make sure also the size is cache aligned since otherwise we may have
some overlap with the next allocation block.  A cache invalidate on this
area would be fatal.
2014-11-25 16:08:16 +01:00
Nigel Spon
502609c80d powerpc/haleakala: Add network driver
close 1405
2014-11-21 13:47:42 -06:00
Jan Dolezal
74d2d94041 i386: global descriptor table manipulation functions 2014-11-20 09:52:39 -05:00
Jan Dolezal
d885b2b213 i386: GDTR manipulation functions parameters changed to use explicit width types 2014-11-20 09:52:39 -05:00
Ben Gras
b51842bb38 Add some generic ARM am335x and omap definitions 2014-11-03 14:19:47 -06:00
Joel Sherrill
def13373fa libcpu/bfin/clock/tod.h: Delete - missed on previous commits 2014-10-31 15:14:28 -05:00
Sebastian Huber
e08b0b917c bsp/mpc55xxevb: Fix flash settings for MPC5510 2014-10-31 07:49:45 +01:00
Joel Sherrill
82f5ec45e9 libcpu/sh/sh7045/sci/sci.c: Eliminate use of obsolete method 2014-10-20 11:31:41 -05:00
Joel Sherrill
d0c479345b libcpu/arm/pxa255/ffuart/ffuart.c: Fix warning 2014-10-20 10:02:05 -05:00
Joel Sherrill
1c4890bf1e libcpu/arm/at91rm9200/dbgu/dbgu.c: Fix warning 2014-10-20 10:02:05 -05:00
Joel Sherrill
8200c9efaa libcpu/powerpc configure logic: Do not built e500 components unused by qoriq 2014-10-19 17:03:00 -05:00
Joel Sherrill
a94fb39198 mcf5206 libcpu and mcf5206elite: Fix warnings 2014-10-19 17:00:55 -05:00
Joel Sherrill
fc22287702 libcpu/powerpc/ppc403/console/console405.c: Fix warnings 2014-10-16 08:58:49 -05:00
Joel Sherrill
4b86f61c00 libcpu/powerpc/mpc8xx/console-generic/console-generic.c: Fix warnings 2014-10-16 08:58:49 -05:00
Joel Sherrill
ad5143634d libcpu/powerpc/mpc6xx: Fix warnings 2014-10-16 08:58:49 -05:00
Joel Sherrill
a14e7ba3ca libcpu/powerpc/mpc55xx/misc/flash_support.c: Fix warnings 2014-10-16 08:58:49 -05:00
Joel Sherrill
3cdc08c2dd libcpu/powerpc/e500/mmu/mmu.c: Fix warnings 2014-10-16 08:58:49 -05:00
Joel Sherrill
0626dba48a SH libcpu and libbsp: Fix warnings 2014-10-16 08:58:49 -05:00
Joel Sherrill
7ec9bd5917 mpc8260 libcpu and mpc6260ads BSP: Fix warnings 2014-10-16 08:58:48 -05:00
Joel Sherrill
4af55a83f1 libcpu/arm/at91rm9200/usart/usart.c: Fix warnings 2014-10-16 08:58:48 -05:00
Joel Sherrill
7b5da2606b libcpu/powerpc/mpc8260/cpm/brg.c: Remove unneed extern 2014-10-16 08:58:48 -05:00
Joel Sherrill
f2ae58cf1c libcpu/powerpc/mpc6xx/timer/timer.c: Formatting 2014-10-16 08:58:48 -05:00
Joel Sherrill
494d2f1ff8 Remove unused pxa255/pmc, update csb337 and gumstix BSPs 2014-10-16 08:58:48 -05:00
Joel Sherrill
f62c7daa64 mpc5xx libcpu and ss555 BSP: Fix warnings 2014-10-16 08:58:47 -05:00
Joel Sherrill
c7e77ee488 mcf5282: Move cache to libcpu and update av5282 and uC5282 BSPs 2014-10-16 08:58:47 -05:00
Joel Sherrill
ed6365aa08 bfin libcpu and libbsp: Fix warnings 2014-10-16 08:58:47 -05:00
Joel Sherrill
2f3f206a54 libcpu/i388: Fix warning i displayCpu.c 2014-10-16 08:58:47 -05:00