summaryrefslogtreecommitdiffstats
path: root/c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Remove beagle old i2c codeSichen Zhao2017-06-143-633/+0
| | | | | | modify c/src/lib/libbsp/arm/beagle/Makefile.am modify c/src/lib/libbsp/arm/beagle/include/i2c.h delete c/src/lib/libbsp/arm/beagle/misc/i2c.c
* Remove excessive locking from cache operations.Alexei Pososin2017-06-141-35/+9
| | | | | | | | According to manual, the used operations (Clean Line by PA, Clean and Invalidate Line by PA, Cache Sync) are atomic and do not require locking. Update #3007.
* bsp: Fixes due to header file changesSebastian Huber2017-06-133-24/+37
| | | | Update #2833.
* bsp: Include missing <sys/param.h>Sebastian Huber2017-06-126-0/+6
| | | | Update #2833.
* bsp/beatnik: Fixes due to header file changesSebastian Huber2017-06-122-7/+7
| | | | Update #2833.
* i386: Support thread-local storage (TLS)Sebastian Huber2017-06-123-5/+11
| | | | Update #2468.
* bsp/psim: Include missing <sys/param.h>Sebastian Huber2017-06-091-0/+1
|
* if_fxp: Include missing <inttypes.h>Sebastian Huber2017-06-091-5/+6
| | | | Fix format warnings.
* Simplify TLS support in context switchSebastian Huber2017-06-092-2/+5
| | | | | | There is no need to save the thread pointer in _CPU_Context_switch() since it is a thread invariant. It is initialized once in _CPU_Context_Initialize().
* bsps/arm: Fix ARMv7-M interrupt suppportChristian Mauderer2017-06-071-2/+6
| | | | | | Enable/disable vector routines now check for a valid vector. Without these guards, the enable/disable vector routines will not work with the interrupt server.
* Do not include <sys/ioctl.h> in kernel-spaceSebastian Huber2017-06-076-6/+2
| | | | Update #2833.
* Move RTEMS-specific Termios API contentSebastian Huber2017-06-071-0/+2
| | | | | | | Remove obsolete support for OFILL, OFDEL, NLDLY, CRDLY, BSDLY, VTDLY, and FFDLY which is not present on FreeBSD and not implemented in Linux. Update #2833.
* network: Include missing <inttypes.h>Sebastian Huber2017-06-071-0/+1
| | | | Update #2833.
* ada-tests/spatcb01: New testSebastian Huber2017-06-026-0/+63
| | | | Update #2289.
* bsp/motorola_powerpc: Fix for Binutils 2.28+Sebastian Huber2017-06-016-0/+6
| | | | | | | | | | There are mismatched sections in the bootloader input: ld: Warning: ticker.exe uses hard float, ticker.ralf uses soft float ld: ticker.exe: compiled normally and linked with modules compiled with -mrelocatable ld: failed to merge target specific data of file ticker.exe Suppress this error explicitly.
* bsps/powerpc: Set output format in linker scriptSebastian Huber2017-06-011-1/+1
| | | | | | Set the proper output format in the linker script for the bootloader. Otherwise the generic linker is used since Binutils 2.28 which does not understand the PowerPC-specific relocations.
* Add support for IBM PowerPC 750 chip.Phong Pham2017-05-293-0/+6
| | | | Closes #3015.
* ada: Remove task notepad supportSebastian Huber2017-05-291-14/+0
| | | | Update #2493.
* ada: Update due to Clock Manager API changesSebastian Huber2017-05-297-12/+20
| | | | Update #2676.
* ada: Remove <rtems/debug.h> supportSebastian Huber2017-05-295-122/+0
| | | | Update #2477.
* build-system: Fix the targets support for the parallel build.Chris Johns2017-05-261-1/+1
|
* m32c/m32csim: Exclude linpack from the tests.Chris Johns2017-05-251-0/+5
| | | | Closes #3025.
* build-system: Parallel build all subdirs.Chris Johns2017-05-2426-59/+123
|
* arm/tms570: Update preinstall.am after bootstrap.Chris Johns2017-05-241-0/+4
|
* sparc: only define start if it is different from SYM(start)Jacob Hansen2017-05-141-0/+2
| | | | | | | | The SYM define concatenates the input with the compiler set __USER_LABEL_PREFIX__ define. This define appears to be '_' in GCC but empty in Clang. Therefore when compiling with Clang/LLVM 'SYM(start)' and 'start' defines the same symbol, and the compiler complains that the symbol is defined twice.
* sparc: Adjust assembly to improve compability with LLVMJacob Hansen2017-05-145-13/+13
| | | | | | | | | | | | | - All references of %0 changed to %g0 - 'call label,0' changed to 'call label'. According to the sparc specification call does not take any registers - '.seg "text"' changed to '.section ".text"' - the synonym stub is replaced with stb - the synonym stuh is replaced with sth
* leon, grtc: SMP support by using spin-locksDaniel Hellstrom2017-05-141-37/+54
|
* leon, grtc: updated overrun condition handlingDaniel Hellstrom2017-05-141-11/+33
| | | | | | | | The following functions now reports to the user that an overrun has occured by returning errno EIO: * grtc_read, on overrun and no more data in the DMA buffer * ioctl(GRTC_IOC_RECV), on overrun and no more frames in the DMA buffer * ioctl(GRTC_IOC_ISSTARTED), EIO is returned on overrun
* leon, gr1553bm: SMP support by using spin-locksDaniel Hellstrom2017-05-141-14/+39
|
* leon, gr1553bc: SMP support by using spin-locksDaniel Hellstrom2017-05-141-39/+84
| | | | | Since DMA buffers are managed by the user, responsibility is put on the user to cope with SMP in the application.
* leon, apbuart: remove old RAW UART driverDaniel Hellstrom2017-05-145-934/+1
| | | | | | | | This driver was initially intended for APBUART access on GRLIB PCI peripherals (AMBA-over-PCI). There are already many APBUART drivers for LEON. Instead of using this one the termios APBUART should work on AMBA-over-PCI systems with recent changes on LEON3, however that has not been tested yet.
* leon, grtm: SMP support by using spin-locksDaniel Hellstrom2017-05-141-83/+115
|
* leon, ahbstat: remove printf warningsDaniel Hellstrom2017-05-141-2/+2
|
* leon, pci-peripherals: SMP support by spin-locks and updated genirqDaniel Hellstrom2017-05-148-142/+412
|
* leon, genirq: SMP support for PCI peripheralsDaniel Hellstrom2017-05-142-42/+63
| | | | | | | | | | | | The common interrupt layer for GRLIB PCI perihperals is prepared for SMP support by this patch. The existing locking (interrupt disabling) is replaced by a new requirement on the user to implement locking before calling the genirq API. This approach avoids taking more locks than necessary. The split up of the locks also introduces that the user must allocate memory to describe ISR handlers, to avoid calling malloc()/free() while possessing a spin-lock and interrupts are globally disabled.
* leon: allow SMP boot from any CPUMartin Aberg2017-05-142-5/+14
|
* leon, grcan: removed unused txerror, rxerrorMartin Aberg2017-05-141-13/+0
|
* leon, grcan: fixed historical commentMartin Aberg2017-05-141-4/+3
|
* leon, grcan: semaphore reset count required after flushingDaniel Hellstrom2017-05-141-30/+32
| | | | | | | | | | | | It is also required to use semaphore release instead of flush when stopping or on BUSOFF/AHBERR condition. Otherwise a task just about to wait (taking the semaphore) could end up locked because the semaphore count is still the same. There was previously a scenario where the semaphore flush would not always make semaphore obtain to return in case of BUSOFF, AHBERROR or grcan_stop. It has to do with the rtems_semaphore_flush() not releasing the semaphore but just aborts any _current_ waiter.
* leon, grcan: split hw_stop() into hw and sw stopDaniel Hellstrom2017-05-141-0/+13
| | | | this is to avoid owning the spin-lock during semaphore operations.
* leon, grcan: RTEMS_NO_TIMEOUT on tx_semMartin Aberg2017-05-141-1/+1
|
* leon, grcan: redesigned bus-off and AHB error handlingMartin Aberg2017-05-142-154/+334
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When bus-off condition is detected by the ISR, it sets the started flag to STATE_BUSOFF. This is monitored by the user functions grcan_read() and grcan_write() each time they want to enable DMA or update interrupt mask. If they detect that ISR has detected bus-off then they will return either with an error or with the number of CAN messages processed. Future calls to functions which require STARTED mode will be rejected and grcan_isstarted() will return 0. The next call to grcan_stop() will do the transition from BUSOFF->STOPPED and the device can then be started again with grcan_start(). Similar to a bus-off condition, the AHB error condition detected by the ISR will trigger the same shut-down logic of the driver. The difference is that the state entered is STATE_AHBERR and the routines will return a different value to indicate AHB error state. This commit also fixes an issue where ISR was not always unregistered on close. User functions can cause these transitions: STATE_STOPPED -> STATE_STARTED (grcan_start) STATE_STARTED -> STATE_STOPPED (grcan_stop) STATE_BUSOFF -> STATE_STOPPED (grcan_stop, grcan_close) STATE_AHBERR -> STATE_STOPPED (grcan_stop, grcan_close) ISR can cause these transition STATE_STARTED -> STATE_BUSOFF (grcan_interrupt) STATE_STARTED -> STATE_AHBERR (grcan_interrupt) STATE_BUSOFF/AHBERR is entered from ISR on bus-off condition. At transition the ISR disables DMA, masks all interrupts and flushes semaphores. Other related updates: * Statistics are updated from the ISR. Update is now spin-locked to ensure a consistent user view. * The debug output has been updated to include state changes. * For read/write/flush, return error (-4) if driver aborted the operation due to bus-off. Likewise if abourted due to AHB error -5 is returned. * Collect bus-off statistics Related to the new BUSOFF and AHBERR states the API has been updated to reflect the current SW driver state. The isstarted() function has been replaced with get_state().
* leon, grcan: updated device name and use it for ISRDaniel Hellstrom2017-05-142-3/+36
|
* leon, grcan: fixed race on interrupt mask registerMartin Aberg2017-05-141-0/+14
| | | | | There was a potential read-modify-write race on the interrupt mask (imr) register between the ISR and user functions.
* leon, grcan: unregister interrupt handler at closeMartin Aberg2017-05-141-1/+5
|
* leon, grcan: protect statistics on copy to userMartin Aberg2017-05-141-0/+3
| | | | | Locking the stats structure when copying to user buffer ensures a consistent view to the user.
* leon, grcan: use RTEMS 4.12 SMP interrupt lockMartin Aberg2017-05-141-27/+44
|
* leon, grcan: consistent indentationMartin Aberg2017-05-142-620/+618
| | | | This commit does not contain any change of functionality.
* leon, grcan: function based user interfaceMartin Aberg2017-05-142-356/+436
| | | | | | | | This commit preserves all driver services, using a function based user interface instead of the I/O interface. The messages count parameter is now number of CAN messages instead of number of bytes.
* bsp/leon3: Cleaner namespace for LEON3 debug UARTMartin Aberg2017-05-143-21/+23
| | | | | | Prefix BSP specific symbols with BSP name: dbg_uart -> leon3_debug_uart debug_uart_index -> leon3_debug_uart_index