Commit graph

9992 commits

Author SHA1 Message Date
Nicolas Tsiftes 1698c439c5 Merge pull request #359 from g-oikonomou/trickle-timer-stop
Add a method to stop running trickle timers
2013-09-30 05:47:23 -07:00
George Oikonomou 060b00c4b5 Use TRICKLE_TIMER_IS_STOPPED in trickle_timer_stop() 2013-09-30 12:37:03 +01:00
George Oikonomou 2957d44ff8 Merge pull request #352 from lab11/cc2538-spi-driver
Added SPI driver for CC2538
2013-09-28 13:25:17 -07:00
Brad Campbell e2af903d05 Added SPI driver for CC2538
This uses the core/dev/spi.h header and implements the spi_init()
function and the various macros for SPI operation. ssi.h contains all of
the register locations and information.

This implementation is not very versatile, mostly because I don't how to
make it flexible in the contiki system. It supports pin muxing for the
four spi pins, but other than that picks sensible defaults.

The SPI macros (like SPI_READ()) are defined in
cpu/cc2538/spi-arch.h. In order to use the SPI driver, add the following
includes to your project:

    #include "spi-arch.h
    #include "dev/spi.h"
2013-09-27 17:46:15 -04:00
Adam Dunkels bf7edf6c4c Merge pull request #354 from lab11/core-net-fixes
Small fixes to networking files
2013-09-26 23:43:07 -07:00
Nicolas Tsiftes 43b5425493 Cleaned up various fragments and fixed a compilation error that occured when switching metric container.
Fixed a wrapping problem in the ETX EWMA calculation.

Corrected the multiplier of the link metric, and simplified the configuration
so that the user does not need to specify the multiplier.
2013-09-23 15:58:42 +02:00
George Oikonomou 995a9c92d9 Only schedule a trickle interval doubling for running timers 2013-09-16 11:53:39 +01:00
George Oikonomou fa7219d0b8 Add a way to determine whether a trickle timer is running 2013-09-16 11:53:39 +01:00
Adam Dunkels 50395666fc Merge pull request #341 from ismb-pert/fix-lladdr
Fixed fail to build from source due to a bad &nbr->lladdr
2013-09-14 03:24:12 -07:00
George Oikonomou d646f3daf5 Merge pull request #342 from zwuh/patch-trickle-lib
Typo and file mode fix for Trickle library, typo fix in uipopt.h
2013-09-13 02:46:26 -07:00
Oliver Schmidt 4772455a9a Merge pull request #358 from oliverschmidt/master
Optimized 6502 Ethernet drivers.
2013-09-12 14:38:31 -07:00
Oliver Schmidt 2263c1aa55 - Optimized LAN91C96 driver for speed and size.
- Speed: The primary byte copy loops are reduzed to the bare minimum by adjusting the base pointer 'ptr' and loop register 'y' in such a way that the 'y' overflow matches the low byte of the loop size.

- Introduced a loop for setting the MAC address.

Additional minor fix:

- Properly start self modification with first location.
2013-09-12 23:32:26 +02:00
Oliver Schmidt ea08635ca4 Optimized CS8900A driver for speed and size.
- Speed: The primary byte copy loops are reduzed to the bare minimum by adjusting the base pointer 'ptr' and loop register 'y' in such a way that the 'y' overflow matches the low byte of the loop size.

- Size: Factored out all repeated code into subroutines. Introduced a loop for setting the MAC address.

Additional minor changes:

- Activate frame reception as last step of initialization after CS8900A configuration.

- Properly set internal address bits used by the CS8900A.
2013-09-12 23:32:25 +02:00
George Oikonomou eb33d5e4c5 Merge pull request #353 from lab11/cc2538-gpio
Updates to CC2538 GPIO
2013-09-12 00:59:39 -07:00
George Oikonomou f31aac7e1c Merge pull request #355 from lab11/cc2538dk-conf-defines
Add conf checks to CC2538dk conf file
2013-09-12 00:27:52 -07:00
Brad Campbell 766fc5a174 Add conf checks to CC2538dk conf file
Allows for specific apps to control more settings of the platform.
2013-09-11 21:43:13 -04:00
Brad Campbell 982ca0fb46 Updates CC2538 GPIO
1. Fixes two of the comments to GPIO macros. They were copied but not
updated.
2. Adds SET and CLR macros for controlling GPIO pins.
2013-09-11 21:39:56 -04:00
Zhen-Huan Hwang e75dacb5fa 1. Added a missing '&' in lib/trickle-timer.h
2. Removed executable permissions of lib/trickle-timer.c & .h
2013-09-11 18:31:06 +03:00
Zhen-Huan Hwang b5815e8509 Fixed a typo in net/uipopt.h 2013-09-11 18:30:31 +03:00
Oliver Schmidt 810f770e49 Merge pull request #356 from oliverschmidt/master
Allow text screen memory to be aligned to 0x2000.
2013-09-10 12:01:09 -07:00
Oliver Schmidt 17bbded894 Allow text screen memory to be aligned to 0x2000. 2013-09-10 20:59:19 +02:00
Brad Campbell bc762b6dd6 Small fixes to networking files
1. Added #include header
2. Fixed #defines that weren't updated
3. Small change to comment that now points to correct RFC section
2013-09-09 20:48:11 -04:00
Oliver Schmidt 55686d7ca2 Merge pull request #351 from oliverschmidt/master
Removed unnecessary code from resolver.
2013-09-09 12:36:59 -07:00
Oliver Schmidt c4bba3e89a Removed unnecessary code from resolver. 2013-09-09 21:35:51 +02:00
Gianfranco Costamagna 2afea590f7 Fixed fail to build from source due to a bad "&nbr->lladdr" reference 2013-09-06 22:11:19 +02:00
Ari Suutari 35c7314093 Fix UDP statistics. 2013-09-05 20:37:01 +03:00
Oliver Schmidt 0e66cad448 Merge pull request #346 from oliverschmidt/master
Initialize tcpip process before resolver process.
2013-09-01 11:56:39 -07:00
Oliver Schmidt 6fc83cf601 Initialize tcpip process before resolver process.
Since introduction of mDNS (f145c17039)
the resolver process initialization depends on the tcpip process
already being initialized (because of the call to udp_new()).
2013-09-01 20:53:51 +02:00
Oliver Schmidt ce7f350ba9 Merge pull request #345 from oliverschmidt/master
Removed unnecessary code from resolver.
2013-09-01 11:29:17 -07:00
Oliver Schmidt e0ddea2a17 Removed unnecessary code from resolver. 2013-09-01 20:23:11 +02:00
Adam Dunkels 592b6b3385 Merge pull request #343 from g-oikonomou/travis-disable-ipv4
Disable the IPv4 travis job
2013-08-31 02:25:44 -07:00
George Oikonomou 90e27e4839 Disable the IPv4 travis job 2013-08-30 10:39:59 +01:00
Adam Dunkels fff769af1f Merge pull request #318 from cetic/fix-rpl-hbh-1st-hop
Inserts missing IPv6 Hop-By-Hop RPL Option at first hop
2013-08-21 00:37:36 -07:00
Fredrik Österlind e6bd0490fd Merge pull request #336 from cmorty/MSPSim_Log
Add MSPSim Logging
2013-08-20 01:51:16 -07:00
Moritz 'Morty' Strübe 2b5f3bc6bd Add MSPSim Logging 2013-08-20 10:43:32 +02:00
Sébastien Dawans 78e807403c Inserts missing IPv6 Hop-By-Hop RPL Option at first hop 2013-08-19 21:40:24 +02:00
Adam Dunkels a07d332339 Merge pull request #288 from simonduq/neighbor-table
New neighbor tables
2013-08-19 12:01:55 -07:00
Adam Dunkels 86e247025a Removed debugging printout that came before a local variable declaration, which seems to have broken sdcc 2013-08-19 17:48:33 +02:00
Adam Dunkels 2af2478166 A set of RPL regression tests that the RPL network is able to survive the replacement of one node. The different tests test different placements of the moving node, with a varying number of hops from the root 2013-08-19 17:48:33 +02:00
Adam Dunkels 4cfefe80e4 A RPL regression test that tests that the network survives a random rearrangement 2013-08-19 17:48:33 +02:00
Adam Dunkels 241a4e0100 A RPL regression test that tests that a RPL network survives a temporary root loss 2013-08-19 17:48:33 +02:00
Adam Dunkels 6d386ffc8d A RPL regression test that tests DAO routes going towards the sink and then down 2013-08-19 17:48:32 +02:00
Adam Dunkels b1e6890b32 Re-enabled the large network RPL test 2013-08-19 17:48:32 +02:00
Adam Dunkels bfd7e5f25b Fixed a few bugs in the route handling code. While bughunting, rewrote parts of the code to make its intention clearer. Also added a bunch of comments to make the logic of the code more evident. 2013-08-19 17:48:32 +02:00
Adam Dunkels 8dc4e46968 Check if the nexthop neighbor for a given route has disappeared. If so, we drop the route too. If we happen to be the RPL root, we also initiate a global repair as the neighbor may moved. 2013-08-19 17:48:32 +02:00
Adam Dunkels d0a939afb0 Bugfix: must multiply with ETX divisor to turn into fixed-point format. 2013-08-19 17:48:32 +02:00
Adam Dunkels 4d0ecaae02 Make sure our parent's IP address isn't NULL. 2013-08-19 17:48:32 +02:00
Adam Dunkels e5a6565137 Loop detection via DAO: if we get a DAO from a parent, that parent thinks we are its parent. We poison it and recalulate our parents. 2013-08-19 17:48:32 +02:00
Adam Dunkels 34119b7ef2 Poor man's loop reparation: reset the DIO timer and hope the neighbor learns a better route. 2013-08-19 17:48:32 +02:00
Adam Dunkels d830e9df3f Implement forwarding error handling: if a packet changes direction, we set the FWD_ERR flag. If we see the FWD_ERR flag, we drop the route that we sent it to. If we are the root node, we also initiate a global repair. 2013-08-19 17:48:31 +02:00