Commit Graph

13388 Commits

Author SHA1 Message Date
Aun-Ali Zaidi
f39e173c47 mips/genmongoosev: Remove
updates #2448.
2015-12-14 11:31:11 -05:00
Aun-Ali Zaidi
f6a8a77f0e h8300: Regenerate h8300 architecture
closes #2453.
2015-12-14 11:31:11 -05:00
Aun-Ali Zaidi
357fdfc246 h8300/h8sim: Remove
updates #2453.
2015-12-13 22:02:57 -05:00
Aun-Ali Zaidi
f2a228b2cb arm/gp32: Remove
updates #2451.
2015-12-13 08:39:14 -05:00
Jan Sommer
687463d7f3 Store task_id of the current thread for the ISR before waiting for the transient event
The ISR will send a transient event to the task specified in bus->taskid.
Make sure that the correct task_id is written to this field before waiting
for the transient event to arrive.

Fixes #2483
2015-12-12 20:22:03 -05:00
Aun-Ali Zaidi
c8a8a6013f arm/gba: Remove
updates #2449.
2015-12-12 20:21:33 -05:00
Aun-Ali Zaidi
32c2cd2be1 arm/nds: Remove
updates #2450.
2015-12-11 09:20:34 -05:00
Sebastian Huber
d0c3983814 Use linker set for system initialization
Make rtems_initialize_data_structures(),
rtems_initialize_before_drivers() and rtems_initialize_device_drivers()
static.  Rename rtems_initialize_start_multitasking() to
rtems_initialize_executive() and call the registered system
initialization handlers in this function.  Add system initialization API
available via #include <rtems/sysinit.h>.  Update the documentation
accordingly.

This is no functional change, only the method to call the existing
initialization routines changes.  Instead of direct function calls a
table of function pointers contained in the new RTEMS system
initialization linker set is used.  This table looks like this (the
actual addresses depend on the target).

nm *.exe | grep _Linker | sort
0201a2d0 D _Linker_set__Sysinit_begin
0201a2d0 D _Linker_set__Sysinit_bsp_work_area_initialize
0201a2d4 D _Linker_set__Sysinit_bsp_start
0201a2d8 D _Linker_set__Sysinit_rtems_initialize_data_structures
0201a2dc D _Linker_set__Sysinit_bsp_libc_init
0201a2e0 D _Linker_set__Sysinit_rtems_initialize_before_drivers
0201a2e4 D _Linker_set__Sysinit_bsp_predriver_hook
0201a2e8 D _Linker_set__Sysinit_rtems_initialize_device_drivers
0201a2ec D _Linker_set__Sysinit_bsp_postdriver_hook
0201a2f0 D _Linker_set__Sysinit_end

Add test sptests/spsysinit01.

Update #2408.
2015-12-11 08:17:16 +01:00
Joel Sherrill
d19d1c23ec m32r/configure.ac: Looked for m32rsim to exist and now is gone 2015-12-10 07:46:14 -06:00
Aun-Ali Zaidi
f7c47a6880 m32r/m32rsim: Remove
updates #2447.
2015-12-10 09:28:47 +01:00
Sebastian Huber
2858939a2c bsps: Delete superfluous bsp_pretasking_hook()
Use the bsp_predriver_hook() instead.

Update #2408.
2015-12-10 08:32:37 +01:00
Sebastian Huber
e7545f1b40 bsps/powerpc: Use default bsp_pretasking_hook()
Update #2408.
2015-12-10 08:32:37 +01:00
Sebastian Huber
afe87e1a1f bsps/bfin: Use default bsp_pretasking_hook()
Rename BSP-specific bsp_pretasking_hook() to bsp_predriver_hook().

Update #2408.
2015-12-10 08:32:37 +01:00
Sebastian Huber
ac78f35cb1 bsp/beatnik: Delete superfluous declaration
Update #2408.
2015-12-10 08:32:36 +01:00
Sebastian Huber
20d7093a9a bsps/virtex*: Use default bsp_pretasking_hook()
Update #2408.
2015-12-10 08:32:36 +01:00
Sebastian Huber
37030e38c6 bsps: Call bsp_work_area_initialize() early
Call bsp_work_area_initialize() before bsp_start().  This allows
bsp_start() to use malloc() etc. which is beneficial for systems with a
plug-and-play hardware enumeration.

Update #2408.
2015-12-10 08:32:36 +01:00
Sebastian Huber
938ef78cc4 bsps/sparc: Use default bsp_pretasking_hook()
Move content to bsp_predriver_hook() functions of the BSPs.

Update #2408.
2015-12-10 08:32:36 +01:00
Sebastian Huber
9ef736a6fd bsp/tqm8xx: Fix linker set description
Fix broken RTEMS linker set description introduced by
b618d8cfc5.
2015-12-10 08:32:35 +01:00
Sebastian Huber
08a315d76a bsps/sh: Disable fileio test due to lack of memory 2015-12-09 14:23:24 +01:00
Sebastian Huber
328d40674b bsps/sh: Disable fileio test due to lack of memory 2015-12-09 14:15:42 +01:00
Sebastian Huber
44d18b9e64 bsps: Fix some linker set descriptions
Fix broken RTEMS linker set descriptions introduced by
b618d8cfc5.
2015-12-09 14:04:52 +01:00
Aun-Ali Zaidi
05d09f44fc powerpc/ep1a: Remove
updates #2457.
2015-12-09 07:27:28 +01:00
Ralph Holmes
999529516a powerpc/score603e: Remove (obselete).
Updates #2458.
2015-12-08 21:17:00 -05:00
Aun-Ali Zaidi
9ae2d98866 m68k/mvme136: Remove
closes #2444.
2015-12-08 14:02:43 -06:00
Sebastian Huber
b618d8cfc5 Add RTEMS linker sets
Update #2408.
2015-12-08 09:25:22 +01:00
Aun-Ali Zaidi
a4e172aca7 m68k/sim68000: Remove
closes #2445.
2015-12-08 07:31:20 +01:00
Sebastian Huber
762390eca1 bsp/generic_or1k: Delete unused extern declaration 2015-12-07 14:53:48 +01:00
Sebastian Huber
8054b1c718 Remove <rtems/debug.h>
Close #2477.
2015-12-07 13:11:07 +01:00
Pavel Pisa
4a02a74154 bsp/tms570: ensure that linker symbol comparison to NULL is not optimized out.
Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
2015-12-01 21:09:41 -05:00
Sebastian Huber
8d6ceb1a61 bsp/t32mppc: Add primitive NULL pointer protection 2015-11-30 13:04:21 +01:00
Sebastian Huber
bbd8484b2a bsp/t32mppc: Use -Og optimization level 2015-11-27 11:17:51 +01:00
Sebastian Huber
0a3110158f bsp/t32mppc: Convert to Termios device 2015-11-27 10:39:33 +01:00
Sebastian Huber
443c61ec94 Delete empty libc_init() 2015-11-27 07:24:51 +01:00
Sebastian Huber
d62dfc7d99 bsp/altera-cyclone-v: Add fatal extension handler 2015-11-24 08:33:52 +01:00
Premysl Houdek
3e1196d9e1 bsp/tms570: unite code duplication in pinmux and clean SCI close per review remarks.
Signed-off-by: Premysl Houdek <kom541000@gmail.com>
2015-11-18 13:12:44 -05:00
Pavel Pisa
74172b7da0 bsp/tms570: use common tms570ls3137.inc file for all board ling variants.
Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
2015-11-18 10:19:46 -05:00
Premysl Houdek
38404cb42c bsp/tms570: separate Flash variants to one which boots directly and one for boot loader.
The default tms570ls3137_hdk variant is for building RTEMS
application image starting directly from start of Flash.

Variant tms570ls3137_hdk_with_loader skips 256kB at start
of Flash to allow use with application loader.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
2015-11-18 10:19:46 -05:00
Pavel Pisa
870ff8e9b6 bsp/tms570: use POM only when application image does not start at address 0.
Parameters overlay module is initialized and cleared first.
It is used later to replace exception target vectors
only if that is required.

The application loader code with CPU and SDRAM setup
code has to provide well defined pattern of instructions
at addresses 0x00000000 and 0x0000001f, because only data
read accesses can be processed reliably by POM. The expected
instruction pattern can be seen in the next example

  https://github.com/hornmich/tms570ls3137-hdk-sdram/blob/master/SDRAM_SCI_configuration/source/sys_intvecs.asm

Comments with detailed description of code, background
and reasons for selected approach have been included
in TMS570 bsp startup code.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
Signed-off-by: Premysl Houdek <kom541000@gmail.com>
2015-11-18 10:19:46 -05:00
Premysl Houdek
2f95794e49 bsp/tms570: updated reserved space for vector overlay in internal RAM 2015-11-18 10:19:46 -05:00
Premysl Houdek
7e18dd9d20 bsp/tms570: fixed sci driver freeze when closing terminal bug
tms570_sci_interrupt_last_close: do not wait for old data transmit.

Signed-off-by: Premysl Houdek <kom541000@gmail.com>
2015-11-18 10:19:46 -05:00
Premysl Houdek
e5d5767e01 bsp/tms570: Pinmux support and EMAC pin definition added
Signed-off-by: Premysl Houdek <kom541000@gmail.com>
2015-11-18 10:19:46 -05:00
Premysl Houdek
6302c61fd7 bsp/tms570: EMAC control header file corrected and EMAC interrupt vector added
Signed-off-by: Premysl Houdek <kom541000@gmail.com>
Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
2015-11-18 10:19:46 -05:00
Daniel Cederman
78cac9b092 sparc: Fix context switch on SMP
We must not load registers (e.g. PSR) from the heir context area before
the heir stopped execution.

With this patch the write to PSR is divided into two steps. We first update
the current window pointer and then we restore the status registers and
enable traps. This allows us to move the first write to PSR to be before
the write to WIM, as there is now no risk that we get an interrupt where
the CWP and WIM would be inconsistent. We only need to make sure that we
do not use any of the non-global registers or instructions that affects
CWP for three instructions after the write.

In the earlier code the non-global %o1 register was used right after the
write to PSR, which required the use of three nop:s.
2015-11-16 14:48:54 +01:00
Sebastian Huber
610909fa85 irq-server: Fix race condition on SMP systems 2015-11-12 08:21:45 +01:00
Sebastian Huber
5c7bfcf82e Fix interrupt epilogue for ARMv7-AR and PowerPC 2015-11-12 08:21:45 +01:00
Sebastian Huber
4fee1296e9 Introduce general purpose system server event
Use this event for the interrupt server to avoid conflicts with
application events used by interrupt handlers.
2015-11-12 08:21:44 +01:00
Gedare Bloom
f8bdd12a48 gpio: free memory in error path
Updates #2462.
2015-11-09 13:42:04 -05:00
Martin Galvan
1d55e157ca LPC1768: Fix compilation error
The LPC1768 variants have a gpio.h file whose name clashes with the gpio.h from
the new GPIO API. This results on the BSPs failing to compile.

This patch renames the LPC1768 gpio.* files to lpc-gpio.*, as it's done on other
BSPs (e.g. Beaglebone).

Closes #2441.
2015-11-05 15:27:46 +01:00
Sebastian Huber
8dbb14d58b bsp/irq-server: Use proper chain API 2015-11-05 11:30:21 +01:00
Isaac Gutekunst
c20847a5ad Add STM32F7 HAL Files
These files originated as:
  + STC32CubeF7 V1.1.0 from http://www.st.com/web/en/catalog/tools/PF261909
2015-11-03 17:34:20 -06:00