Commit Graph

26684 Commits

Author SHA1 Message Date
Hesham ALMatary
2cd68a8bf6 Add or1ksim (sim.cfg) configuration file and edit README.
OpenRISC/or1ksim BSP: The new sim.cfg file configures or1ksim emulator with HW
capabilities that the current RTEMS/or1ksim BSP supports.

README: HOWTO run the or1ksim simulator.
2014-08-26 15:32:44 -05:00
Sebastian Huber
76386c1047 bsp/altera-cyclone-v: Add DMA support hwlib files 2014-08-26 17:10:18 +02:00
Sebastian Huber
9907ddeb5a bsp/altera-cyclone-v: Update to hwlib 13.1
This version is distributed with SoC EDS 14.0.0.200.
2014-08-26 17:10:18 +02:00
Sebastian Huber
96ec8ee80a rtems: Add more clock tick functions
Add rtems_clock_tick_later(), rtems_clock_tick_later_usec() and
rtems_clock_tick_before().
2014-08-26 10:21:27 +02:00
Joel Sherrill
8f1bdcb9ad or1k/Makefile.am: libbsp_a_CPPFLAGS was defined twice 2014-08-25 17:07:12 -05:00
Joel Sherrill
3d99c17deb gensh4: Improve ROM vs RAM startup configuration 2014-08-25 17:00:49 -05:00
Joel Sherrill
bf1f876483 gensh4/bsp_specs: Account for big/little endian 2014-08-25 17:00:48 -05:00
Joel Sherrill
e75907d58e simsh4-testsuite.tcfg: new file 2014-08-25 17:00:48 -05:00
Joel Sherrill
d26cded81b simsh2e-testsuite.tcfg: new file 2014-08-25 17:00:48 -05:00
Joel Sherrill
a4d355b426 shsim/bsp_specs: Account for big/little endian 2014-08-25 17:00:48 -05:00
Hesham ALMatary
baa3c91ecb or1ksim BSP: Include cache manager stubs, and re-generate preinstall.am files. 2014-08-25 11:13:55 -05:00
Hesham ALMatary
e5f6ca87e1 Add or1k to the list of targets that use IEEE 754 in xdr_float.c 2014-08-25 11:13:36 -05:00
Hesham ALMatary
9d92a43ff7 Rename or1k_or1ksim BSP to or1ksim 2014-08-25 11:13:14 -05:00
Hesham ALMatary
eeea9e30a2 libcpu: Add new entry for or1k cpu and include cache manager stubs. 2014-08-25 11:12:20 -05:00
Hesham ALMatary
23b14f87cf sptests/spcache01: Make inline assembly conditional to account for OpenRISC l.nop instruction. 2014-08-25 11:12:16 -05:00
Sebastian Huber
4b104834eb bsp/mpc55xx: Fix comment 2014-08-25 13:40:20 +02:00
Sebastian Huber
f3237a3c3b bsp/mpc55xx: Add defines for MPC5668 2014-08-25 09:30:53 +02:00
Sebastian Huber
0a31483901 bsp/mpc55xx: Limit flash support to MPC55[56]X 2014-08-25 09:11:05 +02:00
Sebastian Huber
f553c6ebbe rtems: Inline rtems_clock_get_ticks_since_boot()
Update documentation.
2014-08-25 08:57:36 +02:00
Daniel Cederman
e7a42a0cfb score: Add missing define to cache manager 2014-08-25 08:52:05 +02:00
Pavel Pisa
d13ce7553b bsp/tms570: implemented and tested initialization of Cortex-R performance counters.
The code is written as BSP specific now but it should work for all
Cortex-A and R based CPUs and can be moved to ARM generic place in future.

StackOverflow suggested sequences of writes to the registers required
to start counters is used.

http://stackoverflow.com/questions/3247373/how-to-measure-program-execution-time-in-arm-cortex-a8-processor
2014-08-22 10:24:53 -05:00
Daniel Cederman
9a9ab85b45 smptests/smpcache01: Test the SMP cache manager
Invokes SMP cache management routines under different scenarios.
2014-08-22 13:10:59 +02:00
Daniel Cederman
ddbc3f8d83 score: Add SMP support to the cache manager
Adds functions that allows the user to specify which cores that should
perform the cache operation. SMP messages are sent to all the specified
cores and the caller waits until all cores have acknowledged that they
have flushed their cache. If CPU_CACHE_NO_INSTRUCTION_CACHE_SNOOPING is
defined the instruction cache invalidation function will perform the
operation on all cores using the previous method.
2014-08-22 13:10:59 +02:00
Daniel Cederman
62f373fb57 bsp/sparc: Flush only instruction cache
The flush instruction on LEON flushes both the data and the instruction
cache. Flushing of just the instruction cache can be done by setting
the "flush instruction cache" bit in the cache control register.
2014-08-22 13:10:59 +02:00
Daniel Cederman
bba83e5191 score/sparc: Add comment on icache flush after trap table update
Changes to the trap table might be missed by other cores.
If the system state is up, the other cores can be notified
using SMP messages that they need to flush their icache.
If the up state has not been reached there is no need to
notify other cores. They will do an automatic flush of the
icache just after entering the up state, but before enabling
interrupts. Cache invalidation is required for both single
and multiprocessor systems.
2014-08-22 13:10:59 +02:00
Daniel Cederman
54f3476e24 bsp/sparc: Flush icache before first time enabling interrupts
A secondary processor might miss changes done to the trap table
if the instruction cache is not flushed. Once interrupts are enabled
any other required cache flushes can be ordered via the cache
manager.
2014-08-22 13:10:59 +02:00
Daniel Cederman
aed38189be score: Rename SMP broadcast message function
Change message type to unsigned long to match other SMP message functions.
2014-08-22 13:10:59 +02:00
Daniel Cederman
a68cc1bb10 score: Add function to send a SMP message to a set of CPUs 2014-08-22 13:10:58 +02:00
Christian Mauderer
d5f5432967 libchip/dwmac: Make PHY address user configurable
This patch allows the user to configure the PHY address for the DWMAC
driver by giving a pointer to a dwmac_user_cfg structure to network
stack via rtems_bsdnet_ifconfig::drv_ctrl.
2014-08-22 11:48:27 +02:00
Pavel Pisa
66f1ca64c8 bsp/tms570: disable huge memory demanding tests for internal RAM build variant.
BSP completes build with tests and debug enabled for all three variants now

  tms570ls3137_hdk
  tms570ls3137_hdk_intram
  tms570ls3137_hdk_sdram

Even that all enabled tests builds for internal RAM variant, many
of them are expected to fail on hardware because whole tests
including code, data and runtime work area demands has to fit
into 256 kB of RAM.
2014-08-21 10:56:13 -05:00
Pavel Pisa
46265063e3 bsp/tms570: implemented support functions to satisfy complete tests build requirements.
This patch enables to build all RTEMS tests for tms570ls3137_hdk_sdram
BSP variant in in default build. Debug build with --enable-rtems-debug set
has succeed for samples subset of tests as well.
2014-08-21 09:07:29 -05:00
Joel Sherrill
57871880b2 Add configuration to detect toolset has sigaltstack() prototype 2014-08-20 18:47:02 -05:00
Peter Dufault
dc661c87e1 mpc55xx/misc/flash_support.c: Properly flush cache when writing.
Also cleanup:
    * Remove un-needed interrupt disables.
    * Address errata "e989: FLASH: Disable Prefetch during programming and erase"
    * Use RTEMS_ARRAY_SIZE() macro instead of own macro.
2014-08-20 17:08:23 -05:00
Joel Sherrill
a7ec6fac9b or1k.t: Fix spelling errors 2014-08-20 15:49:42 -05:00
Hesham ALMatary
b08829228d Add new documentation section for OpenRISC CPU architecture. 2014-08-20 15:46:15 -05:00
Joel Sherrill
2ed97d94da libbsp/arm/acinclude.m4: Regenerate for tms570 2014-08-20 14:53:18 -05:00
Hesham ALMatary
fd5701587f Add new (first) OpenRISC BSP called or1ksim.
This BSP is intended to run on or1ksim (the main OpenRISC emulator).
Fixed version according to Joel comments from the mailing list.
2014-08-20 14:46:15 -05:00
Premysl Houdek
4407ee675c BSP for TMS570LS31x Hercules Development Kit from TI (TMS570LS3137)
Included variants:
  tms570ls3137_hdk_intram - place code and data into internal SRAM
  tms570ls3137_hdk_sdram - place code into external SDRAM and data to SRAM
  tms570ls3137_hdk - variant prepared for stand-alone RTEMS aplication
                      stored and running directly from flash. Not working yet.

Chip initialization code not included in BSP.
External startup generated by TI's HalCoGen was used	for
testing and debugging.

More information about TMS570 BSP can be found at
  http://www.rtems.org/wiki/index.php/Tms570

Patch version 2
  - most of the formatting suggestion applied.
  - BSP converted to use clock shell
  - console driver "set attributes" tested. Baudrate change working
Patch version 3
  - more formatting changes.
  - removed leftover defines and test functions
Todo:
  refactor header files (name register fields)
2014-08-20 13:44:23 -04:00
Pavel Pisa
0a66c1266f lpc24xx/lpc17xx: lpc24xx_pin_set_function() keep LPC4088 W type pin in digital mode for non-analog function.
The problem wit incorrect switching of pins into analog mode manifestes
on LPC4088 based board.

LPC4088 implements pin P1.17 (ENET_MDIO) as new W type (digital pin
with analog option). The pin was listed as D category on LPC1788
which does not have analog mode control bit. If analog option is
not explicitly switched off on LPC4088 then the pin does not work
as digital pin.

Code tested on LPC1788 and no problems has been observed even that
manual specifies the IOCON_ADMODE field as reserved and should
be written as zero. But even RTEMS lpc24xx_gpio_config sets this
bit unconditionally.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
2014-08-20 13:42:26 +02:00
Sebastian Huber
bba3507723 score: PR2179: Fix initially locked PI mutex 2014-08-20 08:17:49 +02:00
Kolja Waschk
3654667f77 rtems_termios_puts: Copy and write more than one char at once
Renamed startXmit(), nToSend is unsigned, just check FL_ORCVXOF, no (void) cast anymore, compute nToSend in single if/else if/else.
2014-08-18 18:39:44 -05:00
Hesham ALMatary
de62e5d861 Add or1k tick timer register definitions 2014-08-18 17:10:00 -05:00
Sebastian Huber
1a2d349776 arm: PR2186: Fix compile error 2014-08-14 14:27:40 +02:00
Joel Sherrill
700f97ea67 or1k/.../preinstall.am: Add missing file 2014-08-12 13:46:49 -05:00
Hesham ALMatary
94d45f6ffe Add support for OpenRISC - Fixed issues
This work is based on the old or32 port (that has been
removed back in 2005) authored by Chris Ziomkowski. The patch includes the
basic functions every port should implement like: context switch, exception
handling, OpenRISC ABI and machine definitions and configurations.
2014-08-12 13:40:45 -05:00
Sebastian Huber
6cdc090ff0 bsp/lpc24xx: Add LPC40XX variants 2014-08-12 19:08:37 +02:00
Sebastian Huber
8ae373235b arm: Add support for FPv4-SP floating point unit
This floating point unit is available in Cortex-M4 processors and
defined by ARMv7-M.  This adds basic support for other VFP-D16 variants.
2014-08-12 19:08:19 +02:00
Christian Mauderer
81329f9ecf bsp/altera-cyclone-v: Add RTC driver. 2014-08-11 08:01:26 +02:00
Christian Mauderer
3f9cd87d76 bsp/altera-cyclone-v: Add a simple I2C driver. 2014-08-11 08:01:26 +02:00
Christian Mauderer
1642d27e4c bsp/altera-cyclone-v: Add socal from hwlib.
Some of the headers from the hwlib need the files from the socal subdirectory.
2014-08-11 08:01:26 +02:00