summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2014-04-11posix: fix race condition between pthread_create and capture engineTill Strauman
Fix PR 2068: Reproducable crashes occur when using pthreads and the capture engine at the same time. 'pthread_create()' is the culprit. It creates a SCORE thread and then calls Thread_Start( ) without disabling thread-dispatching.
2014-01-14rtems_cache_invalidate_multiple_instruction_linesAleksandr Platonov
According with comment in rtems_cache_invalidate_multiple_instruction_lines(), final_address indicates the last address which needs to be invalidated. But if in while loop we got final_address == i_addr condition then loop breaks and final_address will not be invalidated.
2013-11-20sparc.t: Correct for V8/V9Joel Sherrill
2013-10-08SPI SD-Card: setup valid CRC-7 for STOP_TRANSMISSION command.Pavel Pisa
STOP_TRANSMISSION command is used to finish READ_MULTIPLE_BLOCK command and its format is regular command format. It requires valid CRC-7 to have effect at least on same cards types else it is ignored and attempt to issue next READ or WRITE commands results in illegal command condition (0x04) preceded by strange (0x3f) for tested card. Signed-off-by: Pavel Pisa <ppisa@pikron.com>
2013-10-08Backport of development SPI SD-card patches to RTEMS 4.10.Pavel Pisa
Arnout Vandecappelle: PR 1569/misc * libchip/i2c/spi-sd-card.c: Added CRC checks. PR 1576/misc * libchip/i2c/spi-sd-card.c: Enable CRC checks. PR 1567/misc * libchip/i2c/spi-sd-card.h, libchip/i2c/spi-sd-card.c: Fixed timeouts. PR 1579/misc * libchip/i2c/spi-sd-card.c: Gradually increasing sleep times when waiting for write to finish. PR 1580/misc * libchip/i2c/spi-sd-card.c: Use bigger chunks and yield processor while waiting for read data. PR 1586/misc * libchip/i2c/spi-sd-card.h, libchip/i2c/spi-sd-card.c: Add retries to SD card accesses. Signed-off-by: Pavel Pisa <ppisa@pikron.com>
2013-08-26score: PR2140: Fix _Thread_queue_Process_timeout()Sebastian Huber
The _Thread_queue_Process_timeout() operation had several race conditions in the event of nested interrupts. Protect the critical sections via disabled interrupts.
2013-08-26score: PR2140: _Thread_queue_Extract()Sebastian Huber
Return if the executing context performed the extract operation since interrupts may interfere.
2013-08-23libblock: PR2040: Avoid NULL pointer accessSebastian Huber
This partly reverts commit 08b9d534604fbf437743a9925ef28eb1b848510d. Avoid a NULL pointer access and perform the source segment erase if necessary.
2013-08-19bsp/csb336: Memory map update to support i.MX1 based PiMX1 as well.Pavel Pisa
CSB336 i.MX1/i.MXS memory map organization - SDRAM starts at address 0x08000000 but 2 MB are reserved for boot-block/loader (or other use) before RTEMS image origin/load address (that is kept from previous setup) - Caching of 30 MB of SDRAM used for RTEMS (start at 0x08200000) is changed to writeback mode which provides higher throughput. - The first 1 MB of RTEMS dedicated SDRAM is remapped to address 0 to provide area for ARM CPU exceptions table. - Internal registers and rest of the Flash (above 1 MB) are mapped one to one. Registers region is extended to 2 MB to cover eSRAM found on i.MX1 chip variant. - The first two megabytes of SDRAM unused by RTEMS are mapped with attributes to allow specific purposes. - the first MB (at address 0x08000000) is nocached to allow directly set some values read by booot-block after warm reset - the second MB (at address 0x08100000) is set for write-through caching. That allows to use memory for LCD frame-buffer without need to flush cache after each redraw. Signed-off-by: Pavel Pisa <pi@baree.pikron.com>
2013-08-19bsp/csb336: implement bsp_interrupt_vector_enable/disable.Pavel Pisa
Signed-off-by: Pavel Pisa <ppisa@pikron.com>
2013-08-19bsp/csb336: mc9328mxl correct AITC access in bsp_interrupt_dispatch.Pavel Pisa
The original version is missing void and result is that (*x >> 16) is optimized to ldh rX,[rY]. But it is not allowed/supported to access bus/address range used by AITC by other than 32 bit wide accesses and 16-bit access results in the data abort exception. The corrected version works on real hardware and is even more readable. Signed-off-by: Pavel Pisa <ppisa@pikron.com>
2013-05-16Add c++ guard to header.Daron Chabot
2013-01-07score: Fix _Objects_Shrink_information()Sebastian Huber
The chain iteration was wrong. The chain tail is not an object.
2013-01-07rtems: Critical fix for eventsSebastian Huber
Commit 4b45c1393ce4ee3e1c2762ef3145d2bd6b5b38da marked a test in _Event_Timeout() as debug only. This test is required also in non-debug configurations since otherwise state corruption can happen. A revised test sptests/spintrcritical10 checks the relevant sequences.
2012-12-06score: Critical fix for timer serverSebastian Huber
Under certain conditions it is possible that a call to _Watchdog_Adjust_to_chain() happens with a unit parameter value of zero (for example sptests/spintrcritical17). Remove superfluous checks that prevent an adjust to a chain of a watchdog chain which first element has a delta zero value.
2012-12-06tftpfs: PR1624: Fix parsing of hostnames and pathsDylan Maxwell
2012-10-10Remove stray '/'.Ralf Corsépius
2012-08-09Delete lingering bspopts.h.in fileGedare Bloom
2012-08-09Use http://www.rtems.org/bugzilla as bug-URL.Ralf Corsépius
2012-08-09libblock: Fix purge device tree traversalSebastian Huber
2012-05-02bsp/genmcf548x: Enable FPU in BSP startup codeSebastian Huber
2012-05-02bsp/genmcf548x: Fix BSP optionsSebastian Huber
2012-04-16libblock: PR2040: Fix recycle destination updateSebastian Huber
Check the availablity of a recycle destination segment only when it is necessary to avoid missing resycle source segment erasures.
2012-04-16libblock: PR2040: Add starvation thresholdSebastian Huber
Do not use the unavailable block count as the erased blocks starvation threshold. Use instead the block count of the largest segment. This improves the starvation resolution gain of available blocks.
2012-03-14PR2040: libtests/flashdisk01: New testSebastian Huber
2012-03-14PR2040: libblock: Flash disk starvations statisticSebastian Huber
2012-03-14PR2040: libblock: Flash disk documentationSebastian Huber
2012-03-14PR2040: libblock: Fix return statusSebastian Huber
2012-03-14PR2040: libblock: Avoid erased blocks starvationSebastian Huber
The compaction process needs erased blocks. It is only possible to erase an entire segment. Thus in order to make a progress we always need enough erased blocks to empty a used or available segment which can be erased in turn. A (possibly the worst case) lower bound of erased blocks is the block count of the largest segment. The number of unavailable blocks specified by the configuration will be used to determine the erase blocks starvation situation. The number of unavailable blocks must be greater than or equal to the number of blocks in the largest segment.
2012-03-14PR2040: libblock: Track number of erased blocksSebastian Huber
2012-03-14PR2040: libblock: Use segment control as parameterSebastian Huber
2012-03-14PR2039: Fix NULL pointer accessSebastian Huber
In case rtems_bdbuf_read() returns an error status, the block device buffer pointer will be set to NULL. In RFS the chain node of the block device buffer will be used for RFS purposes. We must not do this after an erroneous read.
2012-02-23PR 2026/filesystem - Fix semaphore attributesSebastian Huber
Semaphores of type RTEMS_SIMPLE_BINARY_SEMAPHORE are not suitable for a mutex. Use RTEMS_BINARY_SEMAPHORE with RTEMS_INHERIT_PRIORITY instead.
2012-02-17PR 2015 - LEON3: make SHM driver configurable using weak symbolsJoel Sherrill
PR 2015/bsps Since the configuration struct is always present one can let DATA initialize it to reduce footprint, at the same time it is made weak to let the user able to configure the SHM driver without editing the driver code. Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
2012-02-17Remove (Moved to git.rtems.org/data/git/rtems-crossrpms.git).Ralf Corsépius
2012-02-03PR 2001/shell - medit command argument parsing correctionJoel Sherrill
"medit" overran the argument list, choking on the NULL pointer following the last argument. Note that "medit" still only does byte-sized accesses, which limits its usefulness on most systems. Author: Werner Almesberger <werner@almesberger.net> Signed-off-by: Sebastien Bourdeauducq <sebastien@milkymist.org>
2012-02-02PR 2012 - mdump/wdump shell cmds handle length arg incorrectly; add ldump cmdJoel Sherrill
* libmisc/shell/main_mdump.c: Reworked to fix bugs in handling of the length argument and to provide an "ldump" command. This file now also supports the "wdump" command. In addition, an RTEMS API function called rtems_mdump() is provided to allow easy dumping from application code. * libmisc/shell/main_mwdump.c: Obsolete file. * libmisc/Makefile.am: Removed main_mwdump.c * libmisc/shell/shellconfig.h: Added "ldump" command. * shell/memory.t: Added documentation for the "ldump" command Signed-off-by: Ric Claus <claus@SLAC.Stanford.edu>
2012-02-02PR 2012 - mdump/wdump shell cmds handle length arg incorrectly; add ldump cmdJoel Sherrill
* libmisc/shell/main_mdump.c: Reworked to fix bugs in handling of the length argument and to provide an "ldump" command. This file now also supports the "wdump" command. In addition, an RTEMS API function called rtems_mdump() is provided to allow easy dumping from application code. * libmisc/shell/main_mwdump.c: Obsolete file. * libmisc/Makefile.am: Removed main_mwdump.c * libmisc/shell/shellconfig.h: Added "ldump" command. * shell/memory.t: Added documentation for the "ldump" command Signed-off-by: Ric Claus <claus@SLAC.Stanford.edu>
2012-02-02PR 1962/bsps - MVME162 Console Corrections and ImprovementsJoel Sherrill
* console/console.c: char_ready() was never returning true so console never processed input data * console/console.c: added printk() support to default device * include/bsp.h: Added #define for MOT_162BUG_VEC_ADDRESS * startup/bspclean.c: Modified to use MOT_162BUG_VEC_ADDRESS * startup/bspstart.c: Modified to use MOT_162BUG_VEC_ADDRESS * make/custom/mvme162.cfg: Modified to use "RTEMS_CPU_MODEL=68lc040" and "CPU_CFLAGS = -mcpu=68040 -msoft-float" so BSP will always work with all board variations. * README: Added notes on user required configuration changes and information about board models and variants * README.models: New file that contains a detailed list of MVME162 models and variants. Signed-off-by: Vic Hoover <victor.hoover.ctr@navy.mil>
2012-02-02PR 1998/networking - Move ftpd root initializationJoel Sherrill
From: Xiangfu <xiangfu@sharism.cc> Signed-off-by: Xiangfu <xiangfu@sharism.cc>
2012-02-02PR 2011/networking - GRETH: performance improvements and one bugfixJoel Sherrill
GRETH driver updated, 10-15% performance improvements for GBIT MAC, unnecessary RX interrupts not taken which under heavy load saves approx. 1500 interrupts/s, one task removed saving about 5kb memory and 1 bug solved. BUG: RX interrupt was enabled before the RX-daemon was created which could result in a faulty call to rtems_event_send. Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
2012-02-02PR 2011/networking GRETH: Moved print to remove potential deadlockJoel Sherrill
Deadlock may arise when the EDCL bug link is used to tunnel console output over Ethernet, when Ethernet is down one should avoid using console (only during debugging of LEON targets) Author: Marko Isomaki <marko@gaisler.com> Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
2012-02-02LEON3: change d-cache snoop detect implementationDaniel Hellstrom
PR 2010/bsps The previous code only checked if d-cache snooping was implemented, however snooping may be available but not enabled which may lead to driver bugs. Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
2012-02-02LEON3: CPU index intialization moved to bspstart.cJoel Sherrill
2009/bsps All LEON3/4 systems have a CPU-id, if on a single-CPU system the ID is always zero. On a multicore system it ranges from 0 to 15. The CPU index should always by updated even in a non-MP RTEMS OS since the CPU running RTEMS may not always be CPU0. For example when RTEMS runs on CPU1 and Linux on CPU0 in a mixed ASMP system. The old code executed within the IRQ controller initialization code makes no sense since the ASR register is a CPU register, it has nothing to do with AMBA initialization either. Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
2012-02-02LEON3: fix compiler warning in SHM driverDaniel Hellstrom
PR 2008/bsps Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
2012-02-02Add .git ignore. Remove .cvsignoreJoel Sherrill
2012-02-02Add .git ignore. Remove .cvsignoreJoel Sherrill
2012-02-02LEON3BSP MP: may wake one more CPU than expectedDaniel Hellstrom
The SHM code always wakes one CPU more that configured, however this has never been a problem since RTEMS will be running on all CPUs or only two cores were available. PR 2006/bsps Signed-off-by: Daniel Hellstrom <daniel@gaisler.com>
2011-12-13Upgrade to 4.10.24.10.2Joel Sherrill
2011-12-092011-12-09 Joel Sherrill <joel.sherrilL@OARcorp.com>Joel Sherrill
* math/init.c, mathf/init.c: Use DEVFS since we do have devices.