Commit Graph

13344 Commits

Author SHA1 Message Date
Marcos Diaz
44eb9893b5 Beaglebone: fix missing clobber in inline assembly.
flush_data_cache uses R0 directly but doesn't list it as a clobbered
register. Compiling with -O3 made this code break, since the function
that calls flush_data_cache already uses r0.

closes #2416.
2015-09-10 13:30:43 -05:00
Martin Galvan
d781ad5086 various .h files: Add missing C++ extern wrappers
Updates #2405.
2015-09-03 11:27:42 -05:00
Joel Sherrill
652888c22d ada-tests/support/init.c: Fix compile errors and warnings
closes #2379.
2015-08-02 08:32:45 -07:00
Sebastian Huber
8b14cbd996 bsps/arm: Update due to API changes 2015-07-21 10:01:34 +02:00
Premysl Houdek
49c1d25dc2 bsp/tms570 Use bitfields instead of hard-coded values
Signed-off-by: Premysl Houdek <kom541000@gmail.com>
2015-07-20 21:06:55 +10:00
Premysl Houdek
9a84f98372 bsp/tms570: skipped 32bit field definitions and corrected single bit fields
there is no need to define access macros for field covering
whole registers. In addition, BSP_FLD32 does not work right
for field 32bit length.

Signed-off-by: Premysl Houdek <kom541000@gmail.com>
2015-07-20 21:06:42 +10:00
Sebastian Huber
e5a79e54d9 bsp/mpc83xx: Update due to header guard change
Close #2373.
2015-07-17 07:59:35 +02:00
Joel Sherrill
7e14385b46 sh/shared/startup/bspstart.c: Add include of percpu.h 2015-07-16 11:15:52 -07:00
Premysl Houdek
069560a5f9 bsp/tms570: source changes reflecting new headers.
Signed-off-by: Premysl Houdek <kom541000@gmail.com>
2015-07-16 11:15:52 -07:00
Pavel Pisa
602e395b4d bsp/tms570: fix get time resolution after infrastructure change to timecounter.
The update fixes breakage of TMS570 support after Alexander Krutwig
switch of RTEMS time read to timecounter mechanism

bsps: Convert clock drivers to use a timecounter

Mechanism to specify odd (non 1 Mhz) time base update frequencies
implemented after objections of  Martin Galvan.

Code is adjusted to convert RTEMS configuration parameter
microseconds_per_tick to such odd base if
TMS570_PREFERRED_TC_FREQUENCY is specified appropriately.

Signed-off-by: Premysl Houdek <kom541000@gmail.com>
Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
2015-07-16 09:31:09 -07:00
Premysl Houdek
bea49c9477 bsp/tms570: New/generated header files for TMS570 SoC peripherals registers.
The header files are generated by script make_header.py.
Current script's version can be found at:

https://github.com/AoLaD/rtems-tms570-utils/tree/headers/headers/python

Registers offsets and fields have been extracted from reference manual.

Signed-off-by: Premysl Houdek <kom541000@gmail.com>
2015-07-16 09:31:09 -07:00
Joel Sherrill
4784214a6a remaining bsp.h: Fix by hand to LIBBSP_@CPU@_@BSP_FAMILY@_BSP_H
These files were left after running the script in the previous patch.
2015-07-16 08:43:51 -07:00
Joel Sherrill
9cff822a26 Most bsp.h: Switch to LIBBSP_@CPU@_@BSP_FAMILY@_H for guard
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-07-16 08:40:05 -07:00
Sebastian Huber
93f5adb644 powerpc: Do not use the ATB for e500 multilib
The e500v1 has no support for the ATB.

Update #2369.
2015-07-15 10:52:40 +02:00
Sebastian Huber
c2596dfbd0 bsps/powerpc: Fix small-data area issue
Update #2369.
2015-07-09 10:00:26 +02:00
Sebastian Huber
b171982439 bsps/powerpc: Provide debug and trace symbols 2015-07-08 10:07:59 +02:00
Sebastian Huber
3e02a472ba bsp/qoriq: Enable branch prediction for T series 2015-07-08 10:07:59 +02:00
Sebastian Huber
994d7e12b5 bsp/qoriq: Use -O2 for T series 2015-07-08 10:07:59 +02:00
Jan Sommer
e77f625401 RaspberryPi: Use rtems_configuration_get_microseconds_per_tick to set clock counter
timer interrupt was hard coded to 10 ms per tick.
    Fix uses the setting of CONFIGURE_MICROSECONDS_PER_TICK to compute the correct start value for the counter
    See for more information: http://permalink.gmane.org/gmane.os.rtems.user/22691
2015-07-07 16:01:28 -05:00
Sebastian Huber
635ed82a12 bsp/qoriq: Update due to API changes 2015-07-01 11:13:50 +02:00
Sebastian Huber
32005a7284 bsp/mpc55xxevb: Fix configure script
This was the only configure.ac file with bspopts.h present in
AC_CONFIG_FILES().  This somehow prevented the generation of this file
leading to build errors for this BSP.
2015-06-26 09:40:24 +02:00
Sebastian Huber
27f08f5b72 bsps/arm: Update due to API changes 2015-06-26 09:40:03 +02:00
Sebastian Huber
48fed9a56e score: Simplify <rtems/system.h>
Drop the <rtems/score/percpu.h> include since this file exposes a lot of
implementation details.
2015-06-26 09:16:25 +02:00
Sebastian Huber
df8341ae30 bsp/gen5200: Simplify interrupt write support 2015-06-24 08:46:32 +02:00
Sebastian Huber
cdf30f0550 rtems: Add rtems_interrupt_local_disable|enable()
Add rtems_interrupt_local_disable|enable() as suggested by Pavel Pisa to
emphasize that interrupts are only disabled on the current processor.
Do not define the rtems_interrupt_disable|enable|flash() macros and
functions on SMP configurations since they don't ensure system wide
mutual exclusion.
2015-06-22 08:40:26 +02:00
Joel Sherrill
becbedac78 pc386/console/fb*.c: Use atomics to avoid dependency on pthreads
closes #2364.
2015-06-11 08:06:33 -07:00
Sebastian Huber
30f8412ab3 bsps/sparc: tlib clock driver timecounter support 2015-06-09 10:01:50 +02:00
Sebastian Huber
a51b3526ea sparc: Add SPARC_USE_SAFE_FP_SUPPORT
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 is
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.

On SMP configurations the deferred floating point switch is not
supported in principle.  So use here a safe floating point support.  Safe
means that the volatile floating point context is saved and restored
around a thread dispatch issued during interrupt processing.  Thus
post-switch actions and context switch extensions may safely use the
floating point unit.

Update #2270.
2015-06-09 09:05:50 +02:00
Sebastian Huber
335e5caa9a score: Add Thread_Control::is_fp
Store the floating-point unit property in the thread control block
regardless of the CPU_HARDWARE_FP and CPU_SOFTWARE_FP settings.  Make
sure the floating-point unit is only enabled for the corresponding
multilibs.  This helps targets which have a volatile only floating point
context like SPARC for example.
2015-06-09 09:05:50 +02:00
Alexander Krutwig
2764bd43d0 sparc: Disable FPU in interrupt context
Update #2270.
2015-05-30 16:46:36 +02:00
Sebastian Huber
aff220db7a bsps/powerpc: Fix potential integer overflow
Update #2356.
2015-05-29 08:59:59 +02:00
ragunath
d55d7a067f beagle bsp: RTC support for BBB 2015-05-28 14:41:37 +02:00
Hesham ALMatary
5774c41455 generic_or1k: Fix a typo in a comment 2015-05-26 11:34:06 -05:00
Hesham ALMatary
5b1a10a01c generic_or1k: Use the correct bsp_specs file 2015-05-26 11:34:06 -05:00
Jan Dolezal
6f79310889 i386/pc386: default graphics driver changed from VGA to VESA based
basic VGA driver can be enabled during configure phase by exporting variable
USE_VGA=1 so that it is available in configure environment
cirrus driver is enabled the same way by exporting variable
USE_CIRRUS_GD5446=1
2015-05-26 11:26:54 -05:00
Jan Dolezal
56399c3bc8 i386/pc386/VESA framebuffer driver: modified and extended initialization options
driver is not initialized by default
initialization is possible through multiboot command line option or
through the string variable (see fb_default_mode.h) set in user's module
allowing the driver to evaluate this variable after the two
modules are linked together
2015-05-26 11:26:46 -05:00
Sebastian Huber
10454223a9 bsps/sparc: Delete unused local labels 2015-05-26 10:02:27 +02:00
Sebastian Huber
26ffb8c21c bsps/sparc: Change tabs to spaces 2015-05-26 10:02:11 +02:00
Hesham ALMatary
6f71dcb7cd Epiphany: Add the first epiphany_sim BSP v4
This BSP in intended to run on the simulator that should be built
from RSB. When building RTEMS for Epiphany --disable-networking must
be provided part of the configure command.
2015-05-21 16:03:34 -04:00
Joel Sherrill
60e4c0094a arm/s3c24xx/clock/clockdrv.c: Remove unused variable warning 2015-05-21 08:28:58 -07:00
Joel Sherrill
562c1b1b6d arm/lpc22xx/clock/clockdrv.c: Remove unused variable warning 2015-05-21 08:28:56 -07:00
Joel Sherrill
efd351d2f8 powerpc/shared/clock/clock.c: Remove unused variable warning 2015-05-21 08:28:56 -07:00
Joel Sherrill
68592d5432 mpc55xxevb/clock/clock-config.c: Remove unused variable warning 2015-05-21 08:28:55 -07:00
Joel Sherrill
4004d971fa mcf5225x/clock/clock.c: Remove unused variable warning 2015-05-21 08:28:55 -07:00
Joel Sherrill
2a605f6495 mcf52235/clock/clock.c: Remove unused variable warning 2015-05-21 08:28:55 -07:00
Joel Sherrill
5a9c3c1053 pc386/clock/ckinit.c: Remove prototyped but not defined warning 2015-05-21 08:28:55 -07:00
Joel Sherrill
52258f1344 arm/shared/lpc/clock/lpc-clock-config.c: Remove unused variable warning 2015-05-21 08:28:54 -07:00
Joel Sherrill
1c0663b48f mcf52235-testsuite.tcfg: Add syscall01 2015-05-21 08:28:54 -07:00
Joel Sherrill
0afac6ab66 Multiple bsp_specs: Change *(old_endfile) to %(old_endfile)
Fix typo.

closes 2345.
2015-05-21 08:28:54 -07:00
Joel Sherrill
22e576dfde simsh2e-testsuite.tcfg: Add fileio 2015-05-21 08:28:53 -07:00