Commit graph

2804 commits

Author SHA1 Message Date
Antonio Lignan bc2ff5b352 Merge pull request #1838 from alignan/pull/fix-tmp102-calc
Zoul: fix TMP102 value conversion
2016-08-26 00:00:59 +02:00
Antonio Lignan 61e8a174db Merge pull request #1828 from alignan/pull/z1-libraries-cleanup
Z1: cleaned up non-required libraries from builds and moved SENSORS d…
2016-08-25 10:54:17 +02:00
Antonio Lignan 32385b2910 Zoul: fix TMP102 value conversion 2016-08-24 16:34:02 +02:00
Antonio Lignan 26c4a81331 Z1: cleaned up non-required libraries from builds and moved SENSORS declaration to its own file 2016-08-24 16:05:38 +02:00
Antonio Lignan 8cc1870663 Zoul: generic servo driver 2016-08-24 14:27:41 +02:00
Michael LeMay c276081150 galileo: Add process to perform DHCP configuration
This patch adds a process that is started automatically to request DHCP
configuration.  It also moves the IP configuration ahead of autostart processes
in case some autostart process depends on the IP configuration.
2016-08-23 13:16:39 -07:00
Michael LeMay 4181179985 galileo: Add support for Gen. 1 pinmux and GPIO
This patch adds support for IO pinmuxing and GPIO on first generation
Intel Galileo boards.
2016-08-23 13:02:39 -07:00
Michael LeMay b17a936bf7 galileo: Add board-level abstraction layer for GPIO
This patch adds a HAL for GPIOs so that users of the API can specify
board-level IO pin numbers rather than CPU-level pin numbers.
2016-08-23 13:02:36 -07:00
Michael LeMay 2912559061 galileo: Revise pinmux API to be more intuitive
This patch replaces the pinmux APIs that require users to look up an arbitrary
function number for the desired function of each pin.  The replacement API
functions have intuitive names and permit users to pass board-level IO port
numbers.  The API functions internally convert those to CPU-level port numbers
when necessary.  Furthermore, when configuring a pin to be a digital input or
output, those API functions also perform the corresponding configuration
operation on the CPU-level GPIO port.  The revised APIs halt when users attempt
to configure a currently-unsupported GPIO, specifically those in the GPIO_SUS
port range and those implemented on the expander chip EXP2.  This also means
that such ports are left unconfigured during initialization, whereas the
pinmuxing for them was setup by the old implementation.
2016-08-23 13:02:32 -07:00
Michael LeMay 3043f3956c galileo: Simplify pinmux configuration
This patch refactors the pinmux configuration code for Intel Galileo to simplify
it. This patch also corrects an off-by-one error in how the pin number is
checked in galileo_pinmux_set_pin.
2016-08-23 12:39:21 -07:00
Michael LeMay 6a3ce86e10 galileo: Add general protection exception handler
This patch adds a general protection exception handler that prints a
message indicating the faulting instruction and the error code. This is
useful when debugging general protection exceptions.
2016-08-23 11:34:32 -07:00
Antonio Lignan 6947fc7381 Merge pull request #1826 from alignan/pull/crossval-fix
Zoul: fixed voltage divider relationship
2016-08-17 17:33:07 +02:00
George Oikonomou 6f44fb8c44 Merge pull request #1783 from g-oikonomou/bugfix/cc13xx/contikimac-timings
Adjust ContikiMAC timings for CC13xx PROP mode
2016-08-17 14:06:07 +01:00
Antonio Lignan cb42bafbfb Merge pull request #1756 from g-oikonomou/contrib/cc26xx/new-ccxxwares
Update to latest TI CC13xxware/CC26xxware
2016-08-16 15:44:41 +02:00
Antonio Lignan 0a02f0ac7c Zoul: fixed voltage divider relationship 2016-08-16 14:24:13 +02:00
George Oikonomou 39e8435141 Add 460800 baud rate support to Z1 2016-08-12 01:23:50 +01:00
George Oikonomou d7028652fe Remove legacy sniffer configuration: zoul 2016-08-12 01:23:50 +01:00
George Oikonomou 35c37f356c Remove legacy sniffer configuration: openmote-cc2538 2016-08-12 01:23:50 +01:00
George Oikonomou 4a4b3a344d Remove legacy sniffer configuration: cc2538dk 2016-08-12 01:23:50 +01:00
George Oikonomou 07f984eec2 Remove legacy sniffer references: Docs 2016-08-12 01:23:50 +01:00
George Oikonomou dbd4f630fd Remove built-in sniffer support: CC13xx PROP mode 2016-08-12 01:23:49 +01:00
George Oikonomou 0de1dc1025 Remove built-in sniffer support: CC2530 2016-08-12 01:23:49 +01:00
George Oikonomou 1a4947499c Merge pull request #1819 from bthebaudeau/cc2538-en-32k-xtal
CC2538: Use the 32.768-kHz crystal if present
2016-08-11 23:48:04 +01:00
George Oikonomou 47265c9305 Merge pull request #1813 from arurke/cc26xx_cc13xx_i2c_fixes
CC26xx/CC13xx fix for burst TX followed by burst RX
2016-08-11 23:47:42 +01:00
Benoît Thébaudeau 9e03df6cb7 CC2538: Use the 32.768-kHz crystal if present
Enable the 32.768-kHz crystal on all the CC2538 platforms where it is
present in order to get a better time accuracy.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2016-08-11 23:49:03 +02:00
Benoît Thébaudeau ae5205f9e2 doxygen: Fix orphan modules
Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2016-08-10 04:56:15 +02:00
Andreas Urke 8128986ccd Remove unecessary bool 2016-08-09 22:56:53 +02:00
Andreas Urke e1359519ab Fix i2c multiple write bug, as reported by Ron Segal: https://sourceforge.net/p/contiki/mailman/message/34633862/ 2016-08-09 22:56:28 +02:00
Nicolas Tsiftes 2e4c6eef54 Merge pull request #1804 from mdlemay/docker
galileo: Add support for containerized build environment
2016-08-09 15:19:28 +02:00
Nicolas Tsiftes 956497a672 Merge pull request #1805 from mdlemay/ipv6-link-stats
galileo: Build link-stats.c when IPv6 is enabled
2016-08-08 11:39:42 +02:00
Michael LeMay bde8eb35ae x86, galileo: Fix UART system call authorization initialization
This patch fixes UART system call authorization initialization (when
protection domain support is enabled) to only initialize the system call
entrypoint and authorization data structures once, prior to per-port
setup. Previously, if two UARTs were configured, the setup procedure for
the second UART would erase the system call authorization for the
first (console) UART, resulting in a crash upon the next attempt to
perform console output.
2016-08-04 16:09:44 -07:00
Michael LeMay 31ad67abd7 x86: Support configurable UART baud rate
This patch extends the Intel Quark X1000 SoC UART initialization API to
accept a numeric baud rate specification.
2016-08-03 07:58:51 -07:00
Michael LeMay e50b73c9b1 galileo: Add support for containerized build environment
This patch adds a Dockerfile for building a container configured as a
build environment for Intel Galileo boards.  This patch also provides
documentation for using the containerized build environment.  Finally, it
streamlines the instructions for booting Contiki on Galileo and includes
other documentation refinements.
2016-08-02 20:54:41 -07:00
Michael LeMay 836fa4d6fa galileo: Build link-stats.c when IPv6 is enabled
This is required by the IPv6 implementation in Contiki OS.
2016-07-31 17:03:42 -07:00
Sumankumar Panchal 6dfd358821 TSCH port for CC2538 based platforms. 2016-07-22 09:38:25 +05:30
George Oikonomou 4495d14702 Make ROM bootloader configurable through contiki- or project-conf.h 2016-07-17 00:26:52 +01:00
George Oikonomou 01590088d3 Update to latest CCxxwares: Srf06+EM drivers 2016-07-17 00:26:52 +01:00
George Oikonomou f6437b6086 Update to latest CCxxwares: Sensortag drivers 2016-07-17 00:26:52 +01:00
George Oikonomou 5de7b1bbac Update to latest CCxxwares: Launchpad drivers 2016-07-17 00:26:51 +01:00
George Oikonomou c42cb2b0cb Update to latest CCxxwares: common drivers 2016-07-17 00:26:51 +01:00
George Oikonomou c87e579b06 Adjust ContikiMAC timings for CC13xx PROP mode
#1684 slightly varied RF startup time and, as a result, threw ContikiMAC timing configuration off. This manifests itself with very poor CC13xx PROP mode radio performance, as documented in #1747.

This pull fixes this bug by slightly increasing ContikiMAC's inter-packet interval. This gives the receiver a little more time to respond with an ACK to unicast frames.

Fixes #1747
2016-07-17 00:04:07 +01:00
George Oikonomou dcad5e7e3f Merge pull request #1727 from g-oikonomou/contrib/cc26xx/trng
Add CC13xx/CC26xx TRNG Support
2016-07-16 23:34:53 +01:00
George Oikonomou fe571c7dc3 Merge pull request #1754 from atiselsts/enhancement/cc26xx_reduced_guard_time
CC26xx: change default TSCH guard time to 1.8ms
2016-07-16 19:47:16 +01:00
Atis Elsts 081ec100a4 TSCH: add RADIO_DELAY_BEFORE_DETECT to rx guard time when waiting for a packet to be received 2016-07-16 18:08:41 +01:00
Antonio Lignan 0d0e726b38 Merge pull request #1764 from alignan/pull/zoul-dht22
Added DHT22 sensor to Zoul-based platforms
2016-07-15 12:50:34 -05:00
Robert Olsson a8aa778b31 Removed unused file platform/avr-rss2/dev/ds18b20.c 2016-07-15 13:17:40 +02:00
Marko Gucanin 1fc9bbe315 added { } 2016-07-08 16:25:34 +02:00
Marko Gucanin 1a1d17143b return from exception handler if E_EXC_SYSCALL is generated 2016-07-06 16:28:47 +02:00
Marko Gucanin 74d04562df Revert "removed exception handler for SYSCALL, causing an infinite loop after calling vAHI_SwReset()"
This reverts commit c4def60cdd.
2016-07-06 15:45:15 +02:00
Oliver Schmidt 98a795b967 Merge pull request #1730 from groessler/something_to_pull
Some 6502 target changes
2016-07-06 09:17:39 +02:00
Marko Gucanin c4def60cdd removed exception handler for SYSCALL, causing an infinite loop after calling vAHI_SwReset() 2016-07-05 16:44:24 +02:00
Antonio Lignan d5e2a779d4 Added DHT22 sensor to Zoul-based platforms 2016-07-04 18:00:09 +02:00
Antonio Lignan 6360a09cc7 Merge pull request #1726 from feshie/pr-zoul-motes-flash-fix
zoul: Add support for flashing to multiple devices
2016-06-30 12:13:41 +02:00
Antonio Lignan 17d784ead3 Merge pull request #1745 from alignan/pull/z1-contiki-conf
Minor changes to z1/contiki-conf.h
2016-06-30 09:47:16 +02:00
Atis Elsts b6617f17c5 CC26xx: always request HF crystal oscillator at radio on() 2016-06-29 16:41:33 +03:00
George Oikonomou 91255f5a81 Merge pull request #1711 from xukai871105/master
One fix to sensorTag board_i2c.c
2016-06-28 23:55:02 +01:00
Atis Elsts 1e4141b589 CC26xx: change default TSCH guard time to 1.8ms 2016-06-29 01:14:12 +03:00
George Oikonomou 3a105f2141 Disable CC2650_FAST_RADIO_STARTUP by default
`CC2650_FAST_RADIO_STARTUP` is required for TSCH, but it currently breaks ContikiMAC. We set the default value to the one that will work with the default choice of RDC.

Fixes #1744
2016-06-27 17:20:26 +01:00
Arthur Fabre ab1652648e zoul: Add support for flashing to multiple devices
This adds support for flashing to multiple devices, by implementing the
$MOTES option used by the Z1.
This replaces the $PORT interface, as it only allowed flashing to one
device at a time, and the $MOTES interface was still used for other
tasks (such as getting a list of connected devices).

A foreach loop is used to dynamically create an upload rule per device
that needs to be flashed.
The "main" upload rule depends on the device specific ones.
This allows for parallel flashing.

The PORT variable can still be sued for backwards compatibility.

Changed the MOTES variable that makes a $(shell) call to not be
recursively expanded.
2016-06-27 11:23:45 +01:00
Antonio Lignan 108e43b103 Made configuration parameters easily overridable to be consistent with Travis CI tests 2016-06-25 23:17:26 +02:00
Antonio Lignan 99822545c5 Added BOARD_STRING to the Z1 platform 2016-06-24 23:58:32 +02:00
Antonio Lignan 0034322fe0 Made configuration parameters easily overridable from project-conf.h (without having to undef first) 2016-06-24 23:54:08 +02:00
Antonio Lignan 1002b7ffee Fixed spacing 2016-06-24 23:36:40 +02:00
Antonio Lignan 442e1be391 Moved project-conf.h inclusion to the top of contiki-conf.h 2016-06-24 23:34:23 +02:00
Christian Groessler c26085ec8c Some 6502 target changes
- platform/atarixl/Makefile.atarixl: put two more objects into high memory
- platform/atarixl/contiki-conf.h: define WWW_CONF_WGET_EXEC
- tools/6502/Makefile: add 'clean' target; remove unused CONTIKI define
2016-06-17 16:42:50 +02:00
Nicolas Tsiftes a8989f9f1c Merge pull request #1724 from nvt/coffee-simplify
Coffee: minor enhancements
2016-06-15 18:56:10 +02:00
George Oikonomou adfeaa5500 Add missing include 2016-06-15 10:31:55 +01:00
Nicolas Tsiftes 5010309005 Make the I/O semantics functionality in Coffee unconditional so that the API becomes consistent across platforms.
Change certain CPP conditionals into C conditionals, which should be possible for the compiler to optimize at runtime. This makes the source code easier to read.
2016-06-14 21:08:00 +02:00
Atis Elsts 3a99639294 cc26xx: implement CC2650_FAST_RADIO_STARTUP option, required for TSCH 2016-06-14 00:54:33 +03:00
Atis Elsts 3ff8aa8ad8 srf06-cc26xx: add node_id variable 2016-06-14 00:54:32 +03:00
Atis Elsts f99511f494 srf06-cc26xx: add default TSCH configuration for the platform 2016-06-14 00:54:32 +03:00
George Oikonomou 4b67e21d2e Merge pull request #1714 from alignan/pull/add-relay
Added generic relay driver for the zoul-based platforms
2016-06-13 19:45:46 +01:00
Simon Duquennoy 4fd8f67053 Merge pull request #1715 from sumanpanchal/zoul-tsch
TSCH port for Zolertia ReMote/Zoul.
2016-06-13 09:03:16 +02:00
Sumankumar Panchal 373fda46f7 TSCH port for Zolertia ReMote/Zoul. 2016-06-12 16:37:01 +05:30
Benoît Thébaudeau 9845973971 cc2538: Print SoC information upon startup
If STARTUP_CONF_VERBOSE is enabled, print SoC information upon startup.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2016-06-11 23:23:38 +02:00
xukai bd0716b044 Merge remote-tracking branch 'contiki-os/master' 2016-06-10 12:54:59 +08:00
Antonio Lignan 092f0e62fe Added generic relay driver for the zoul-based platforms 2016-06-09 15:53:25 +02:00
Simon Duquennoy ed11320dc3 Platform cooja: provision 300 links for RPL non-storing mode 2016-06-08 14:02:46 +02:00
xukai a1ea6d311f Fix i2c bug in sensortag flatform. 2016-06-08 15:09:00 +08:00
Antonio Lignan ee0b02c819 Merge pull request #1684 from g-oikonomou/contrib/cc26xx/aux-ctrl-and-adc
Add CC13xx/CC26xx AUX controller module, ADC support, ALS driver and example
2016-06-07 14:36:28 +02:00
Antonio Lignan b3faefe602 Merge pull request #1433 from mdlemay/x86-mm
X86 memory management
2016-06-05 13:49:49 +02:00
Antonio Lignan c746ca105a Merge pull request #1705 from simonduq/pr/nrf52dk-rtimer-diff
Platform nrf52dk: use RTIMER_CLOCK_DIFF instead of RTIMER_CLOCK_LT
2016-06-03 21:59:25 +02:00
Simon Duquennoy 64679642f2 Saving ROM and RAM 2016-06-03 16:44:06 +02:00
Simon Duquennoy 752fef9e42 Added link-stats and nbr-table to avr-ravenusb makefile 2016-06-03 15:46:05 +02:00
Oliver Schmidt 0151a7c27e Merge pull request #1706 from oliverschmidt/master
Make use of new cl65 option --print-target-path.
2016-06-03 15:13:08 +02:00
Simon Duquennoy 1afaae3fd7 nrf52dk: enable 32bit rtimer 2016-06-03 14:14:28 +02:00
Oliver Schmidt ae0c5f0dd0 Make use of new cl65 option --print-target-path.
The new cl65 option --print-target-path allows to get rid of CC65_HOME altogether.
2016-06-03 13:30:25 +02:00
Simon Duquennoy dca929cd07 Platform nrf52dk: use RTIMER_CLOCK_DIFF instead of RTIMER_CLOCK_LT 2016-06-03 13:26:08 +02:00
Simon Duquennoy 26bf33c762 Merge pull request #1550 from thomas-ha/tsch-cc2538-port
Port of TSCH for CC2538
2016-06-02 21:33:55 +02:00
Antonio Lignan 7dd2f1144b Disabled rtimer redefinition, removed outdated address print and timer-test from regression tests 2016-06-02 10:50:22 +02:00
Antonio Lignan 34af72c047 Merge pull request #1609 from simonduq/pr/net-debug
Added net-debug.[ch] to provide debug functions even in the non-IP case
2016-06-01 23:52:34 +02:00
Antonio Lignan 6fc4e2535c Merge pull request #1665 from g-oikonomou/contrib/cc26xx-bsl
Consolidate .upload for all CC26xx/CC13xx boards and add login make target
2016-06-01 23:37:29 +02:00
Antonio Lignan c742d07803 Merge pull request #1695 from alignan/pull/fix-remote-pinout
Fixed CC2538/PIC labels being swapped
2016-06-01 23:34:42 +02:00
Antonio Lignan acf13a4e0d Merge pull request #1606 from OpenMote/master
Adapted OpenMote-CC2538 sensor drivers to Contiki sensor API.
2016-06-01 23:15:27 +02:00
Antonio Lignan 9e1c378919 Merge pull request #1469 from wbober/nrf52dk-pr
Add support for nRF52 DK platform
2016-06-01 23:11:39 +02:00
Antonio Lignan f065971efc Merge pull request #1619 from simonduq/pr/tsch-rtimer16-fix
Fix bug in TSCH for platforms with 16-bit rtimer
2016-06-01 23:03:50 +02:00
Antonio Lignan 4334990e16 Merge pull request #1686 from bthebaudeau/unified-cfs-coffee-examples
Unified CFS/Coffee examples
2016-06-01 22:00:13 +02:00
Antonio Lignan 429699d421 Merge pull request #1666 from g-oikonomou/contrib/cc1310-lp
Add support for the CC1310 LaunchPad (LAUNCHXL-CC1310)
2016-06-01 15:41:44 +02:00
Antonio Lignan 10601b2e5c Fixed CC2538/PIC labels being swapped 2016-06-01 14:28:53 +02:00
Pere Tuset 2b3cab18f4 Run uncrustify through ADXL346 driver. 2016-06-01 11:11:21 +02:00
Benoît Thébaudeau 0079b78966 zoul: Make it possible to override COFFEE_CONF_SIZE
The projects need to be able to override it with project-conf.h.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2016-05-30 23:05:14 +02:00
George Oikonomou 2ec9c8ccf0 Add ALS support for Srf06 + CC13xx/CC26xxEM
This provides an example on how to use the CC13xx / CC26xx ADC
2016-05-29 15:05:13 +01:00
Antonio Lignan de64ed3975 Fixed typo 2016-05-24 10:50:20 +02:00
George Oikonomou c5bea81bb6 Merge pull request #1530 from herjulf/avr-rss2
Adding AtMegaXXRFR2 support and avr-rss2 platform
2016-05-15 20:38:50 +01:00
Robert Olsson 958dcf06f7 Remove wsnbridge. Let's focus sniffing efforts on sensniff. 2016-05-15 17:43:09 +02:00
Robert Olsson a11cfa10b4 Removed unneeded file for avr-rss2 sniffer 2016-05-15 16:36:19 +02:00
Robert Olsson 868f100366 Fix compilation warning in co2_sa_kxx-sensor.c 2016-05-15 16:23:29 +02:00
George Oikonomou 80efd730ae Extend the flash driver to support the MX25R1635F
According to the CC1310LP design files, the flash on it is the same as the flash on the CC2650 LP (MX25R8035F 8Mbit). However, the flash on some CC1310 LPs reportedly identifies itself as the 16Mbit one (MX25R1635F). Instruction sets are identical, we simply need to tell the driver to recognise this part's Device ID.
2016-05-14 20:34:08 +01:00
George Oikonomou 06f4463996 Extend documentation to include the CC1310 LaunchPad 2016-05-14 20:32:17 +01:00
George Oikonomou 099a933c90 Add support for the CC1310 LaunchPad 2016-05-14 20:32:17 +01:00
George Oikonomou cd5a0ef291 Consolidate .upload for all CC26xx/CC13xx boards
The block that controls the `.upload` target is unnecessarily replicated in multiple sub-board Makefiles. This was originally done because the SmartRF and the Launchpad can be programmed with the c2538-bsl script, whereas the sensortag cannot.

This commit moves the `cc2538-bsl` / `.upload` target logic to the top level cpu Makefile (`cpu/cc26xx-cc13xx/Makefile.cc26xx-cc13xx`). Board makefiles simply set the make variable `BOARD_SUPPORTS_BSL` to 1 to signal that they can be programmed by the BSL script. If `BOARD_SUPPORTS_BSL` is not equal to 1, trying to use the `.upload` target will return an error message.

For example:

```
$ make BOARD=sensortag/cc2650 cc26xx-demo.upload
using saved target 'srf06-cc26xx'
This board cannot be programmed with the ROM bootloader and therefore does not support the .upload target.
```
2016-05-14 19:30:53 +01:00
Robert Olsson 3c19e870f1 Moving the avr-rss2 platform examples to the global examples
location as suggested by the maintainers.
2016-05-14 12:05:19 +02:00
Pablo Corbalán 5bc158fa75 Add upload script to Makefile.launchpad 2016-05-13 23:06:33 +01:00
Nicolas Tsiftes eeff8bf970 Merge pull request #1656 from STclab/pr/platform-readme-update
Update to stm32nucleo-spirit1 platform README file.
2016-05-12 16:49:16 +02:00
Thomas 4870f9e8f3 Fix for IPv6 compilation and linkage errors
Two errors have been spotted, when IPv6 is enabled in the ravenusb
Project-Makefile:
#CONTIKI_NO_NET=1
CONTIKI_WITH_IPV6=1

The compile error results from a variable name mismatch in cdc_task.c
The variable 'r' is undeclared and should be renamed to 'route'

The linker also fails with 'undefined references'
This has been mediated by adding 'core/net' to Modules in the
Project-Makefile.
2016-05-09 18:18:28 +02:00
Marco Grella d9fd19eb2f Update to stm32nucleo-spirit1 platform README file. 2016-05-05 16:44:07 +02:00
Jens Dede 43fb479c9d Fix broken include 2016-05-02 18:57:48 +02:00
Antonio Lignan bea58c15bd Merge pull request #1485 from g-oikonomou/contrib/cc2650/launchpad
Add support for the CC2650 LaunchPad (LAUNCHXL-CC2650)
2016-04-29 11:13:05 +02:00
Simon Duquennoy bb5e5d5c6b TSCH: use RTIMER_CLOCK_DIFF to compute estimated drift, fixing a bug that would occur on 16-bit rtimer platforms 2016-04-27 14:13:33 +02:00
Simon Duquennoy abf08a7167 Added net-debug.[ch] to provide debug functions even in the non-IP case 2016-04-26 16:08:10 +02:00
Simon Duquennoy 90b886aa71 Csma: comply with IEEE 802.15.4 2016-04-25 08:52:48 -06:00
Pere Tuset 70d94133ea Updated OpenMote example and platform. 2016-04-25 01:50:23 +02:00
Michael LeMay 73774def6b x86, galileo: Add sample non-driver protection domain
This patch adds a simple non-driver protection domain sample to serve
as an example for defining other non-driver protection domains.  It
simply performs a ping-pong test of protection domain switching
latency during boot, including optional accesses to a private metadata
region, and prints out the results.
2016-04-22 08:16:43 -07:00
Michael LeMay 4cdb7ba9b6 x86: Add TSS-based protection domain support
This patch extends the protection domain framework with an additional
plugin to use Task-State Segment (TSS) structures to offload much of
the work of switching protection domains to the CPU.  This can save
space compared to paging, since paging requires two 4KiB page tables
and one 32-byte page table plus one whole-system TSS and an additional
32-byte data structure for each protection domain, whereas the
approach implemented by this patch just requires a 128-byte data
structure for each protection domain.  Only a small number of
protection domains will typically be used, so
n * 128 < 8328 + (n * 32).

For additional information, please refer to cpu/x86/mm/README.md.

GCC 6 is introducing named address spaces for the FS and GS segments
[1].  LLVM Clang also provides address spaces for the FS and GS
segments [2].  This patch also adds support to the multi-segment X86
memory management subsystem for using these features instead of inline
assembly blocks, which enables type checking to detect some address
space mismatches.

[1] https://gcc.gnu.org/onlinedocs/gcc/Named-Address-Spaces.html
[2] http://llvm.org/releases/3.3/tools/clang/docs/LanguageExtensions.html#target-specific-extensions
2016-04-22 08:16:39 -07:00
Nicolas Tsiftes 6ae1b4ab66 Merge pull request #1463 from MichaelKlemm/FixUsingAtmega128RFA1
Fixed using target AVR ATmega128RFA1
2016-04-21 14:30:35 +02:00
Pere Tuset d9f4d97a41 Adapted OpenMote-CC2538 sensor drivers to Contiki sensor API. 2016-04-19 22:41:40 +02:00
Simon Duquennoy de51dd5c30 Merge pull request #1598 from mguc/jn516x_llsecinit_ccm-star
JN516x NETSTACK_LLSEC.init and ccm-star fix
2016-04-19 17:27:15 +02:00
Simon Duquennoy ba72f0a131 Merge pull request #1422 from kkrentz/packetbuf-cleanup
packetbuf cleanup
2016-04-19 17:23:47 +02:00
George Oikonomou 040bada378 Merge pull request #1590 from OpenMote/master
Add OpenMote-CC2538 platform and examples.
2016-04-18 21:26:15 +01:00
Pere Tuset 3e00ea55d1 Updated the OpenMote-CC2538 platform and examples. 2016-04-18 16:48:48 +02:00
kkrentz 6fb6fd5bb9 packetbuf: No more splitting of header and data 2016-04-15 03:12:40 -07:00
Marko Gucanin d8db093eb2 renamed ccm-star.c to jn516x-ccm-star.c, adapted Makefile accordingly 2016-04-14 16:55:48 +02:00
Marko Gucanin f1110bf6df removed NETSTACK_LLSEC.init 2016-04-14 16:52:32 +02:00
Antonio Lignan 8f064511d3 Merge pull request #1213 from joakimeriksson/dao_ack_handling
End-to-End DAO and DAO ACK handling for Contiki RPL.
2016-04-11 18:53:43 +02:00
Pere Tuset 1d3c37d6da Add OpenMote-CC2538 platform and examples. 2016-04-11 12:35:02 +02:00
Toni Lozano a81b4007b0 Allow to use up to 6xADC channels (now hardcoded), disabling the user button
(PA3) if ADC6 is enabled
2016-04-04 10:48:43 +02:00
Marko Gucanin 1818700bde JN516x clock module sign error fix 2016-03-31 13:51:03 +02:00
thomas-ha bc2f1b5a2a update delay constants 2016-03-29 10:24:38 +02:00
Oliver Schmidt 7a5249b066 Added a Contiki version of the CBM exec() system file; it uses PFS instead of POSIX.
It reduces the webbrowsers' size by 735 bytes.
2016-03-28 20:03:47 +02:00
Oliver Schmidt 4f28289df2 Added a pfs_remove() function and a pfs_seek() stub to the Commodore platforms.
- "Normalized" some Assembly code.
- Implemented CFS_APPEND in pfs_open().
- Made CFS_WRITE work in VICE's virtual disk/file system.
2016-03-28 14:07:35 +02:00
Joakim Eriksson ee97dc4bcd tuned configuration for rpl-collect and micaz platform 2016-03-26 09:45:39 +01:00
Joakim Eriksson 37c5f741e9 removed viztool usage of learned-from routing state that was removed 2016-03-26 09:45:37 +01:00
Michael LeMay 3908253038 x86: Add support for (paging-based) protection domains
This patch implements a simple, lightweight form of protection domains
using a pluggable framework.  Currently, the following plugin is
available:

 - Flat memory model with paging.

The overall goal of a protection domain implementation within this
framework is to define a set of resources that should be accessible to
each protection domain and to prevent that protection domain from
accessing other resources.  The details of each implementation of
protection domains may differ substantially, but they should all be
guided by the principle of least privilege.  However, that idealized
principle is balanced against the practical objectives of limiting the
number of relatively time-consuming context switches and minimizing
changes to existing code.

For additional information, please refer to cpu/x86/mm/README.md.

This patch also causes the C compiler to be used as the default linker
and assembler.
2016-03-21 17:18:06 -07:00
George Oikonomou de2ecf8e3a Document that LaunchPads can be programmed with cc2538-bsl 2016-03-21 00:00:38 +00:00
Michael LeMay 93126b57bb x86, galileo: Use IMRs to restrict DMA
This patch configures Isolated Memory Regions (IMRs) to block DMA to
code and data regions that do not contain any data that needs to be
DMA-accessible.
2016-03-17 08:35:49 -07:00
Michael LeMay 58a00b7c23 x86, galileo: Add driver for Isolated Memory Regions (IMRs)
The Intel Quark X1000 SoC includes support for Isolated Memory Regions
(IMRs), which are specified using range registers and associated
control registers that are accessible via the message bus.  This patch
adds a driver for accessing those registers.
2016-03-17 08:35:49 -07:00
Michael LeMay 25c07613c2 x86: Add driver for message bus
The Intel Quark X1000 SoC includes a message bus that is accessible
via PCI configuration registers.  It communicates to various SoC
components such as the Isolated Memory Region (IMR) registers and the
Remote Management Unit.  This patch adds a driver for accessing the
message bus.
2016-03-17 08:35:48 -07:00
Nicolas Tsiftes 9ab327090c Merge pull request #1444 from mdlemay/galileo-always-init-gpio
galileo: Enable I2C and GPIO interrupt sharing and centralize their initialization
2016-03-14 20:09:40 +01:00
Nicolas Tsiftes 862e43d9b0 Merge pull request #1523 from Zolertia/pull/z1-apify-sensors
Adapt Z1 on-board sensors to Contiki's API
2016-03-14 17:10:46 +01:00
Simon Duquennoy 1ffbafeaa6 Merge pull request #1375 from myrfy001/myrfy001-patch-1
off_t changed to signed to stay the same as POSIX
2016-03-14 16:42:13 +01:00