Commit graph

11161 commits

Author SHA1 Message Date
Jonas Olsson
01e36532c2 Add support for the CC13xx CPU
This commit:

* Moves all cpu files from cpu/cc26xx to cpu/cc26xx-cc13xx
* Bumps the CC26xxware submodule to the latest TI release
* Adds CC13xxware as a submodule
* Adds support for sub-ghz mode / IEEE 802.15.4g
* Splits the driver into multiple files for clarity. We now have the following structure:
  * A common module that handles access to the RF core, interrupts etc
  * A module that takes care of BLE functionality
  * A netstack radio driver for IEEE mode (2.4GHz)
  * A netstack radio driver for PROP mode (sub-ghz - multiple bands)

This commit also adds tick suppression functionality, applicable to all chips of the CC26xx and CC13xx families. Instead waking up on every clock tick simply to increment our software counter, we now only wake up just in time to service the next scheduled etimer. ContikiMAC-triggered wakeups are unaffected.

Laslty, this commit also applies a number of minor changes:
* Addition of missing includes
* Removal of stub functions
* Removal of a woraround for a CC26xxware bug that has now been fixed
2015-08-23 19:54:42 +01:00
Simon Duquennoy
04106a0d53 ND6: make sure the second parameter of uip_ds6_nbr_add is word-aligned, which is required as the parameter is directly accessed as uip_lladdr_t* (not as a byte array) 2015-08-20 17:06:03 +02:00
Ulf Knoblich
bfcea70831 Removed NULLRDC specific stuff from rf configuration as it is not the correct place to define it 2015-08-20 16:00:18 +02:00
Simon Duquennoy
a5e3faca5f Travis: upgrade mspgcc to 4.7.2 2015-08-20 10:09:45 +02:00
Antonio Lignan
6c6a1af70d Merge pull request #1202 from simonduq/fix-travis-icon
Fix Travis icon in README.md
2015-08-19 11:37:02 +02:00
Simon Duquennoy
7e0638b00f Travis icon in README.md: show build status of the current master rather than latest build status (can be any pull request) 2015-08-19 09:21:38 +02:00
Simon Duquennoy
eb0da7dfe9 Updated CONTRIBUTING.md to reflect Contiki's new merging policy 2015-08-18 22:06:56 +02:00
George Oikonomou
63bb46f01b Merge pull request #1174 from bkozak-scanimetrics/cc26xx_fix_read_frame_implementation
Cc26xx fix read frame implementation
2015-08-15 00:44:26 +01:00
Billy Kozak
feec05cdf2 CC26xx - fix misuse of len variable in read_frame
read_frame was misuing the packet length in the following ways:
- returning non-zero even if buf_len is too short for the packet
- truncating the length to buf_len if len is too long then using the
  truncated (i.e. wrong) length to index into the buffer
- memcpying too many bytes (used buf_len instead of real length)

This commit fixes all of this and adds some code to report
on packet length errors (to match with cc2538 driver).
2015-08-14 12:44:55 -06:00
Billy Kozak
ceb24f656e Improved style of read_frame
- moved variable declaration to top of function in accordance with the
  Contiki style guide
- made function flatter, reduced nesting to improve readability
2015-08-14 12:43:34 -06:00
Billy Kozak
547f8e7aaa Fixed race condition with rf cpu in read_frame
Fixed a race condition that could occur in read_frame because the
dataEntry is set to PENDING before we are finished reading from it.
2015-08-14 12:42:10 -06:00
Atis Elsts
b75f673801 RDC phase optimization: correct the behavior in case of memory allocation failure
phase_wait did not check whether queuebuf_new_from_packetbuf() returns NULL. This potentially causes send_packet to behave incorrectly; the proper packet would not be sent out (because queuebuf_to_packetbuf(NULL) is a no-op). Instead, whatever has been left in the packet buffer by its previous user will be sent out.
2015-08-14 16:37:00 +02:00
Atis Elsts
765ce0c22f Fix Rime attribute serialization in chameleon-bitopts.c for big endian systems 2015-08-14 16:16:46 +02:00
Oliver Schmidt
902b21a326 Merge pull request #1188 from oliverschmidt/master
Some finishing touch on the CBM retro targets.
2015-08-08 16:33:59 +02:00
Oliver Schmidt
757809196e Some finishing touch on the CBM retro targets. 2015-08-08 15:41:24 +02:00
Antonio Lignan
79e8121f05 Merge pull request #1187 from g-oikonomou/travis/fix-doxygen-ppa
Use a different LibreOffice ppa to install doxygen
2015-08-08 12:15:40 +02:00
George Oikonomou
8f57eb6c21 Use a different LibreOffice ppa to install doxygen
Up to now we were using the LibreOffice 4.3 ppa (ppa:libreoffice/libreoffice-4-4) to install doxygen. The LibreOffice Packaging team appear to have removed this ppa, resulting in our doxygen build failing.

This changes the ppa we use to LibreOffice 4.4.x.
2015-08-08 01:11:34 +01:00
Nicolas Tsiftes
a410f0cd23 Merge pull request #1179 from pablocorbalan/rpl-nbr-state
Changed RPL IPv6 NBR Callback Print Statement
2015-08-06 09:54:20 +02:00
Fabien Castanier
49b24e6f53 Modified the parameter name of clock_wait function 2015-08-05 13:59:08 +02:00
Pablo Corbalán
5db5524b7f Remove unneeded headers in sky-shell-exec 2015-08-04 20:39:09 +01:00
Pablo Corbalán
b1c3e929c5 Remove old unused light drivers 2015-08-04 20:39:09 +01:00
Pablo Corbalán
aa04f8afbf Changed RPL IPv6 NBR Callback print statement 2015-08-04 19:54:32 +01:00
Oliver Schmidt
5f6a672e23 Merge pull request #1184 from oliverschmidt/master
Adjusted retro target clock to "new" DNS resolver.
2015-08-04 15:39:18 +02:00
Oliver Schmidt
ca2552461e Adjusted retro target clock to "new" DNS resolver.
The DNS resolver requires 1/4 sec clock resolution. The retro targets had a 1/2 sec clock resolution (optimized for the 1/2 sec TCP timer) resulting in DNS resolver timeouts being 0. Therefore the retro target clock resolution is now increased to 1/4 sec.
2015-08-04 13:48:08 +02:00
Simon Duquennoy
dc4de9d001 Merge pull request #1161 from g-oikonomou/contrib/contikimac-sw-ack
Implement TX of S/W ACKs with ContikiMAC
2015-08-04 13:15:03 +02:00
Simon Duquennoy
6737e325bf Merge pull request #1181 from feshie/pr-fix-coap-size
Fix default CoAP header block2 size
2015-08-03 17:36:30 +02:00
Simon Duquennoy
bfba83ed16 galois_mul2 conditional-free implementation 2015-08-03 15:13:00 +02:00
George Oikonomou
195ada6668 Merge pull request #1107 from phoenix-frozen/cc2530-rf-const-warning
fix minor warning in cc2530-rf driver
2015-08-03 10:28:43 +01:00
George Oikonomou
cf4e191593 Merge pull request #1172 from tim-ist/tm_fix
[multicast] Do not forward every incoming TM ICMP
2015-08-03 10:26:39 +01:00
George Oikonomou
ca5a4db919 Merge pull request #1173 from bkozak-scanimetrics/cc26xx_enable_bad_crc_debug
CC26xx - Enable RX_NOK on DEBUG builds
2015-08-03 10:22:42 +01:00
Marco Grella
62c33260bd Modified structure to use a sub-module for platform APIs 2015-07-31 17:11:27 +02:00
Arthur Fabre
5403b2a211 Fix default CoAP header block2 size
When a client sends a CoAP request with no block2 size,
the default one would be set to REST_MAX_CHUNK_SIZE.
However, this is not guaranteed to be a power of 2.
This can lead to clients receiving a bigger payload than expected as
part of the header, and ending up with duplicated content.
Setting the default to COAP_MAX_BLOCK_SIZE,
which is guaranteed to be a power of 2, fixes this.
2015-07-29 16:37:09 +01:00
Marco Grella
711dd02a9c Improve UART IRQ management. 2015-07-29 12:55:30 +02:00
Nicolas Tsiftes
d5956d5c75 Merge pull request #1160 from g-oikonomou/contrib/contikimac-config
Make ContikiMAC more configurable
2015-07-28 03:20:32 +02:00
Marco Grella
bb08369b01 Regression tests fixes and Readme update. 2015-07-27 14:08:07 +02:00
George Oikonomou
414890be9e Merge pull request #1178 from jandrieu/patch-1
Clarified that a newline is needed for the echo
2015-07-27 00:19:24 +01:00
Joe Andrieu
e0f72b9545 Clarified that a newline is needed for the echo 2015-07-26 16:17:34 -07:00
Marco Grella
b61152bfa1 I/O libraries 2015-07-24 19:54:05 +02:00
Marco Grella
211d410d86 USE_SUBGHZ_BOARD fix in Makefile.compile-test 2015-07-24 18:19:46 +02:00
Marco Grella
b271a4a3c3 Updated README.md 2015-07-24 17:00:32 +02:00
Marco Grella
ceff03ab2f Updated README.md 2015-07-24 16:57:34 +02:00
Marco Grella
1116bcca2a Updated README.md 2015-07-24 16:44:19 +02:00
Marco Grella
86f35536a4 Added new stm32nucleo-spirit1 platform 2015-07-24 16:30:10 +02:00
Marco Grella
d87f6f67e2 Added new stm32nucleo-spirit1 platform 2015-07-24 16:23:13 +02:00
Billy Kozak
35919f6836 CC26xx - Enable RX_NOK on DEBUG builds
Enabled the RX_NOK interrupt, if DEBUG or CC26XX_DEBUG_CRC are set
true, for the purpose of monitoring packets with bad CRC
2015-07-20 10:47:06 -06:00
Timofei Istomin
b9aa88b504 [multicast] Do not forward every incoming TM ICMP
The Trickle Multicast ICMP packet handler was not resetting uip_len to zero,
so all incoming TM ICMP packets were forwarded overloading the network.
2015-07-17 20:04:15 +02:00
George Oikonomou
512f9984b6 Merge pull request #1170 from bkozak-scanimetrics/cc26xx_autoflush_bad_crc
CC26xx autoflush bad crc packets
2015-07-16 20:29:50 +01:00
Benoît Thébaudeau
6b76ead49c enc28j60: Prevent enc28j60_read() from running before init
This is a precaution in case enc28j60-ip64-driver.c is skipped.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2015-07-16 21:14:16 +02:00
Benoît Thébaudeau
b4c32954a6 enc28j60: Fix workaround for erratum #14
Only odd addresses may be programmed to the ERXRDPT registers, so
initialize them to RX_BUF_END instead of RX_BUF_START.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2015-07-16 21:14:15 +02:00
Benoît Thébaudeau
8615b77da0 enc28j60: Print the status vector in case of transmit error
This makes debugging easier.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2015-07-16 21:14:15 +02:00