Commit Graph

13443 Commits

Author SHA1 Message Date
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
Isaac Gutekunst
370c09a1f4 Add STM32F4 HAL Files
The origin of this code is:
   + STM32CubeF4 V1.8.0 from http://www.st.com/web/en/catalog/tools/PF259243
2015-11-03 17:31:07 -06:00
Ben Gras
2502e26dda Leftover gpio function rename
Rename rtems_bsp_select_specific_io to rtems_gpio_bsp_select_specific_io.

Should've gone with 5c337d7. Fixes #2456.
2015-11-03 18:02:26 +01:00
Sebastian Huber
d65ed62b28 bsp/qoriq: Fix interrupt support for T series 2015-10-28 13:06:18 +01:00
Sebastian Huber
98df160cab bsp/qoriq: Add BMan, QMan and FMan to memory map 2015-10-28 13:06:17 +01:00
Sebastian Huber
f966d608e2 bsp/qoriq: Flush and invalidate L2 cache 2015-10-28 13:06:17 +01:00
Sebastian Huber
ac4f1718db bsp/qoriq: Invalidate L1 cache on boot processor 2015-10-28 13:06:17 +01:00
Sebastian Huber
3abfe7ca2a bsp/qoriq: Map intercom area only if necessary 2015-10-28 13:06:17 +01:00
Sebastian Huber
dd863f8955 bsp/qoriq: Add BMan and QMan portals to memory map 2015-10-28 13:06:14 +01:00
Sebastian Huber
9dab6ecaf0 bsp/qoriq: Increase non-cacheable region 2015-10-28 13:05:50 +01:00
Sebastian Huber
9fa9371021 bsp/qoriq: Drop M flag from device IO regions 2015-10-28 13:04:19 +01:00
Sebastian Huber
53c99b8ad1 bsps: Generalize .nocacheheap to .nocachenoload
Add ability to place data in a non-loadable cache-inhibited area.
2015-10-28 13:04:19 +01:00
Sebastian Huber
bc792bb3bd basdefs.h: Add and use RTEMS_PACKED 2015-10-26 09:13:19 +01:00
Sebastian Huber
f97536dcd3 basdefs.h: Add and use RTEMS_UNUSED 2015-10-26 09:13:19 +01:00
Sebastian Huber
c52568dcdb basdefs.h: Add and use RTEMS_DEPRECATED 2015-10-26 09:13:19 +01:00
Sebastian Huber
143696acbd basedefs.h: Add and use RTEMS_NO_RETURN 2015-10-26 09:13:19 +01:00
Sudarshan Rajagopalan
5c337d7e37 Fixes GPIO APIs Naming Convention and Comments
Closes #2435.
2015-10-21 17:34:12 +02:00
Ben Gras
6f6e5d758f libbsp/Makefile.am: gpio.h as preinstalled header
Also regenerate preinstall.am. Closes #2434.
2015-10-21 16:57:05 +02:00
Joel Sherrill
473294c5a2 moxiesim/configure.ac: Fix typo
updates 2254.
2015-10-20 18:07:15 -05:00
Joel Sherrill
7b07ac27e3 h8sim-testsuite.tcfg: Add fsdosfsname01
closes #2432.
2015-10-20 16:37:18 -05:00
Sebastian Huber
c07481c7df bsp/leon3: Fix Termios context usage
Only the context of the console device was used and this is wrong in
case more than one APBUART device is available.
2015-10-20 11:29:57 +02:00
Sebastian Huber
e29f1f551c bsp/qoriq: Use U-Boot provided FDT 2015-10-19 09:51:28 +02:00
Sebastian Huber
0b0969efc3 bsp/qoriq: Simplify initialization 2015-10-19 09:51:28 +02:00
Sebastian Huber
36b9f66861 bsp/qoriq: Initialize FPU on secondary thread 2015-10-19 09:51:28 +02:00
Sebastian Huber
2f5e3c72b1 bsp/qoriq: Add missing isync after mtmsr 2015-10-15 10:45:20 +02:00
Sebastian Huber
27390a29a5 bsps/arm: Add missing translation table entry
See also bc82094679.
2015-10-14 07:46:23 +02:00
Sebastian Huber
cf8e03388b bsp/qoriq: Add nocache heap 2015-10-08 13:35:27 +02:00
Sebastian Huber
bc82094679 bsps: Add .nocacheheap section
This avoids consumption of a loadable address space for the nocache
heap.
2015-10-08 13:34:40 +02:00
Sebastian Huber
707ecbe4ec bsp/qoriq: Add BMan and QMan Portals 2015-10-07 13:53:15 +02:00
Sebastian Huber
01531fb6a7 bsp/qoriq: Initilize FPU 2015-10-07 13:38:59 +02:00
Sebastian Huber
55c8d19d7b bsp/qoriq: Move BUCSR initialization 2015-10-07 09:52:04 +02:00
Sebastian Huber
f91fbbf4b8 bsps/i386: Interrupt server support 2015-09-30 15:30:09 +02:00
Sebastian Huber
258ad71e96 SMP: Fix and optimize thread dispatching
According to the C11 and C++11 memory models only a read-modify-write
operation guarantees that we read the last value written in modification
order.  Avoid the sequential consistent thread fence and instead use the
inter-processor interrupt to set the thread dispatch necessary
indicator.
2015-09-28 13:56:57 +02:00
Gedare Bloom
5458bff929 bootstrap: regenerate preinstall.am 2015-09-25 16:36:52 -04:00
Andre Marques
7aca0fefce RaspberryPi: Added I2C and SPI bus support.
Further documentation can be found in

https://devel.rtems.org/wiki/GSoC/2015/RaspberryPi_peripherals_and_SD_card

and test data (including sample user applications, device drivers and wiring schemes) can be found in

https://github.com/asuol/RTEMS_rpi_testing
2015-09-25 16:36:52 -04:00
Andre Marques
f7ea9579ad Added GPIO API sources to rpi Makefile 2015-09-25 16:36:52 -04:00
Andre Marques
a57b72ded9 Removed GPIO API from the libbsp/shared Makefile. 2015-09-25 16:36:52 -04:00
Sebastian Huber
808230add9 Upgrade to 4.11.99.0 2015-09-11 08:24:18 +02:00
Marcos Diaz
bebfc4209b 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:21:41 -05:00
Joel Sherrill
cf2f3834a3 lpc23xx_tli800: Add mdosfs_fsscandir01 to tests to avoid. Does not link. 2015-09-10 11:03:43 -07:00
Sebastian Huber
fc5e52b938 bsps/arm: Fix function definition
Close #2385.
2015-09-04 13:50:28 +02:00
Martin Galvan
7def219b84 various .h files: Add missing C++ extern wrappers
Updates #2405.
2015-09-03 11:28:04 -05:00
Ketul Shah
151e53feab Beagle: GPIO support (for BBB)
GPIO Driver Development for BeagleBone Black based on the generic GPIO API
2015-08-18 17:05:55 +02:00
Andre Marques
b09a578e8a Closes ticket #2390, and also updates the RPI implementation.
makes rtems_gpio_bsp_get_value return uint32_t.  Motivation: simplify
beagle gpio implementation for common gpio apio.
2015-08-18 02:26:48 +02:00
Andre Marques
61e7c698a4 Raspberry Pi implementation for the RTEMS GPIO API.
Added support for the new RTEMS GPIO API functions.

Test cases can be found in https://github.com/asuol/RTEMS_rpi_testing/tree/master/GPIO
2015-08-06 10:53:46 -04:00
Andre Marques
87f8b01f58 RTEMS GPIO API definition and implementation.
Changes relative to the previous patch set:

- Moved GPIO pin interrupts to rtems chains, instead of a local linked list;
- Restructured the pin tracking structure, separating the interrupt information for each pin meaning that a pin without any interrupt enabled only requires 8 bytes, while keeping interrupt information (handling information, handler chain control, ...) requires 24 additional bytes (total of 32 bytes per pin with interrupts enabled);
-  Added support for 'parallel' pin function assignment, allowing the function assignment to be set for multiple pins in a single GPIO hardware call. If a BSP does not support this feature it becomes a sequence of individual calls per pin. Also added support for GPIO pin groupings, allowing to write and read byte data to a series of pins which behave as a single entity;
- Added bank tracking structure to maintain the bank lock and bank level interrupt information (threaded/normal handling, interrupt counter);
- Changed GPIO settings to BSP defined constants, reducing dynamic memory allocation;
- Switched interrupt tasks for a rtems interrupt server, with the possibility of using normal interrupts (user handlers being called within ISR context).
2015-08-06 10:53:37 -04:00