Commit graph

9700 commits

Author SHA1 Message Date
Oliver Schmidt
8baf2d7b42 Merge pull request #536 from oliverschmidt/master
Copied 'contiki_arg[c|v]' from 'native' to the other desktop targets.
2014-01-24 03:41:42 -08:00
Oliver Schmidt
fc983e2e79 Copied 'contiki_arg[c|v]' from 'native' to the other desktop targets.
- On the retro targets support for 'contiki_arg[c|v]' is optional as accesing arg[c|v] is rather expensive.
2014-01-24 11:56:40 +01:00
Mariano Alvira
3724c01637 Merge pull request #534 from hexluthor/rl78-fixes
UART-related fixes for Renesas RL78
2014-01-23 13:45:52 -08:00
Ian Martin
1b61f1bb7b Add cpu/rl78/dev/uart1.h because some examples rely on it. 2014-01-22 18:42:24 -05:00
Ian Martin
a897426410 Increase the default baudrate to 38400 bps for RL78. 2014-01-22 18:42:18 -05:00
Ian Martin
00468a3f53 Fix buggy UART baudrate calculation in the RL78 UART driver. 2014-01-22 18:41:55 -05:00
George Oikonomou
10a73c9380 Fix PCAP packet header timestamp 2014-01-22 17:32:08 +00:00
Nicolas Tsiftes
2e69d024a5 Merge pull request #505 from adamdunkels/push/fix-the-fix-that-fixes-the-fix
Fix the bug in the IPv6 bugfix
2014-01-21 13:35:49 -08:00
Adam Dunkels
c8c7c4ae3a Add comments to the #else and #endifs to make it clearer to what #ifdef they belong. 2014-01-21 20:58:31 +01:00
Sebastian Schinabeck
86320d74ed Stopped to load plugins depending on simulations if there is no simulation 2014-01-21 15:02:46 +01:00
Oliver Schmidt
792d60f03e Merge pull request #522 from oliverschmidt/master
Added mouse support for the Atari.
2014-01-20 14:26:52 -08:00
Oliver Schmidt
510678bed0 Added mouse support for the Atari. 2014-01-20 22:51:40 +01:00
Oliver Schmidt
38cadabebb Merge pull request #521 from oliverschmidt/master
Add somewhat more support to use different mouse drivers.
2014-01-17 15:39:28 -08:00
Oliver Schmidt
a24865de72 Add somewhat more support to use different mouse drivers.
- The default mouse driver is now always named 'contiki.mou'.
- Alternative mouse drivers are present in the disk images.
- Users can select their mouse driver by renaming the files.
2014-01-17 23:45:59 +01:00
Oliver Schmidt
9c8302b56c Merge pull request #520 from oliverschmidt/master
Fixed some of the targets broken by changing the UIP_CONF_LLH_LEN default.
2014-01-17 14:11:49 -08:00
Oliver Schmidt
fb20cf5ee6 Added UIP_CONF_LLH_LEN. 2014-01-17 22:07:03 +01:00
Mariano Alvira
03e0c02fab Merge pull request #510 from hexluthor/adf7023-rl78
Add support for ADF7023 sub-GHz radio from Analog Devices and RL78 series MCU from Renesas
2014-01-16 05:24:14 -08:00
Ian Martin
7d3053bbc5 Remove hyphen from preprocessor symbol to fix compiler warning. 2014-01-10 16:31:05 -05:00
Ian Martin
85b439e33a Add eval-adf7xxxmb4z platform makefile. 2014-01-10 15:03:38 -05:00
Benoît Thébaudeau
9846216358 leds: Add the leds_set() function
The leds_set() function is added on top of leds_arch_set() in order to have a
means of displaying a pattern on a set of LEDs, while keeping the ENERGEST
information up to date, which would be missing with a direct call to
leds_arch_set().

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
2014-01-07 13:03:14 +01:00
Benoît Thébaudeau
7f48057b9e leds: Fix the API
The leds API did not work in some cases. E.g. with the following sequence:
  leds_off(LEDS_ALL);
  leds_toggle(LEDS_GREEN);
  leds_off(LEDS_ALL);
the green LED was remaining on after the last call.

This was caused by the toggle feature made synonymous with the invert feature,
although it is unrelated. leds_toggle() is indeed supposed to toggle an LED,
while leds_invert() is supposed to change the active level of an LED. However,
all users of leds_invert() actually meant leds_toggle(), and the invert feature
does not make sense in this module because it is not handy due to successive
calls to leds_invert() changing the intended behavior, and hardware active
levels should be managed in leds_arch_set() (e.g. by XORing the passed value
with a hardware-specific constant before setting the output levels of the pins).

Consequently, this change:
 - removes the leds_invert() function,
 - makes leds_toggle() behave as expected relatively to leds_off() / leds_on(),
 - sanitizes the code in the leds module.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
2014-01-07 13:02:41 +01:00
Ian Martin
174d4dd80c Adds support for ADF7023 sub-GHz radio from Analog Devices and RL78 series MCU from Renesas.
This example platform for this port is the EVAL-ADF7XXXMB4Z w/ radio
daughter cards:

    http://www.analog.com/en/evaluation/eval-adf7023/eb.html

See the platform readme for usage and platform information:

    https://github.com/contiki-os/contiki/tree/master/platform/eval-adf7xxxmb4z/readme.md

All files provided by Analog Devices for this port are released under
the same license as Contiki and copyright Analog Devices Inc. per
agreement between Redwire Consulting, LLC and Analog Devices Inc. (SOW 08122013)
2014-01-04 18:56:51 -05:00
Ian Martin
e90af44ca7 Merge ADF7023 driver from https://github.com/analogdevicesinc/no-OS 2014-01-04 17:38:26 -05:00
Ian Martin
6d36c83513 Merge SPI driver from https://github.com/analogdevicesinc/no-OS 2014-01-04 17:38:26 -05:00
Ian Martin
6a88905f9d Merge UART driver from https://github.com/msalov/rl78-samples-R5F100SLAFB 2014-01-04 17:38:26 -05:00
Ian Martin
d0abf415e7 Merge RL78 files from https://sourceware.org/git/?p=newlib.git 2014-01-04 17:38:26 -05:00
Dragos Bogdan
cfd554dc24 Move files. 2014-01-04 17:27:52 -05:00
Dragos Bogdan
fb64cb5e4c Uncrustify. 2014-01-04 17:27:51 -05:00
Dragos Bogdan
94d5d384e0 Move files. 2014-01-04 17:27:29 -05:00
Dragos Bogdan
1667c4f0de Uncrustify. 2014-01-04 17:27:29 -05:00
Maxim Salov
2668b17f52 Move files. 2014-01-04 17:27:24 -05:00
Maxim Salov
096ff72bd9 Uncrustify. 2014-01-04 17:27:24 -05:00
DJ Delorie
5115554247 Move/rename files. 2014-01-04 17:27:23 -05:00
Oliver Schmidt
f13316415f Merge pull request #509 from oliverschmidt/master
Now that all supported targets echo the Return key on gets() there's no more need to print \n's.
2013-12-26 07:59:08 -08:00
Oliver Schmidt
f6940903a0 Now that all supported targets echo the Return key on gets() there's no more need to print \n's. 2013-12-26 16:12:39 +01:00
Benoît Thébaudeau
fe4eb545c0 cc2538: Remove the unused vtable section
Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
2013-12-23 15:50:05 +01:00
Benoît Thébaudeau
37e73894f1 cc2538: Move SoC data to a dedicated section to save space
Some SoC data requires huge alignments. E.g., the µDMA channel control table has
to be 1024-byte aligned. This table was simply aligned to 1024 bytes in the C
code, which had the following consequences, wasting a lot of RAM:
 - As this table could be placed anywhere in .bss, there could be an alignment
   gap of up to 1023 bytes between the preceding data and this table.
 - The size of this table was also aligned to 1024 bytes, regardless of
   UDMA_CONF_MAX_CHANNEL, making this configuration option supposed to save RAM
   just useless.
 - .bss was also aligned to at least 1024 bytes, creating a huge alignment gap
   between .data and .bss.

Instead of relying on the compiler to force this alignment, and on the linker to
automatically place data, this change places carefully such SoC data in RAM
using the linker script. A dedicated section is created to place such SoC data
requiring huge alignments, and it is put at the beginning of the SRAM in order
to ensure a maximal alignment without any gap. In this way, the alignment of
.bss also remains normal, and the size of this table is not constrained by its
alignment, but only by its contents (i.e. by UDMA_CONF_MAX_CHANNEL).

In the case of the µDMA channel control table, the data is still zeroed by
udma_init() (instead of also being zeroed as part of .bss).

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
2013-12-23 15:06:13 +01:00
Benoît Thébaudeau
ab4b955f17 cc2538: Sort link input sections by alignment to optimize size
Normally, the linker does not sort files and sections matched by wildcards, so
they are placed in the order in which they are seen during link. If numerous
objects with different alignments are mixed, or if objects with unusually large
alignments are present, this very likely leads to a lot of space being wasted
because of accumulated alignment gaps.

This commit forces input sections to be sorted by alignment (unless this is
overridden by the linker script), which decreases the number and the size of
alignment gaps, thus saving space.

For a typical Contiki project, this change saves nearly 1 kiB, mainly in .bss.

Note that this behavior is only enabled if the SMALL make variable is set to 1,
because this makes more sense for a size optimization.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
2013-12-19 21:45:27 +01:00
Adam Dunkels
9e8733e57a Correct the operator in the comment so that it matches the actual #if 2013-12-18 08:35:06 +01:00
Adam Dunkels
9275322b51 Merge pull request #502 from adamdunkels/push/fix-the-ipv6-bugfix
Fix the IPv6 bugfix
2013-12-16 13:52:14 -08:00
Benoît Thébaudeau
e1147ec787 cc2538: Set the type of the .nrdata output section to NOLOAD
The .nrdata section is volatile, so its initialization must be controlled by the
application, and not be automatically done by the startup code. It should
neither be zeroed like .bss, nor be initialized from data in flash memory like
.data. This was already supposed to be the case, but the output section type of
.nrdata was not set to NOLOAD, causing the generated ELF .nrdata section header
to be of type PROGBITS instead of NOBITS, i.e. load data was generated to be
programmed in RAM, thus producing huge unprogrammable .bin files.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau@advansee.com>
2013-12-13 17:45:57 +01:00
Adam Dunkels
9114cd3215 Added an API for getting a callback when a ping reply is received. 2013-12-13 08:36:51 +01:00
Adam Dunkels
a8295404cc Merge pull request #498 from adamdunkels/push/contiki-3.x
Bump the version number in the development branch
2013-12-12 23:19:10 -08:00
Oliver Schmidt
942d4dae7b Merge pull request #501 from oliverschmidt/master
Have CBM DOS filetype of imported files match the one used by cc65.
2013-12-12 14:16:55 -08:00
Adam Dunkels
a6a081e67d Fixed a severe error in the bugfix: the conditional was reversed. The check must be if the TCP MSS is larger than the BUFSIZE and not the other way around. 2013-12-12 22:43:28 +01:00
Adam Dunkels
ef83850e63 Removed redundant #ifdef 2013-12-12 22:20:20 +01:00
Adam Dunkels
c0b3c87ba7 Make 0 the default link-layer header length, as far as uIP is concerned. Most currently used linke layers (specifically, 802.15.4) has adaptation layers that use separate buffers, so there is no need to reserve space in the uIP buffer. 2013-12-12 22:20:09 +01:00
Adam Dunkels
c7e0fa7152 Moved #defines so that UIP_TCPIP_HLEN and UIP_LLH_LEN are defined before they are used 2013-12-12 20:57:35 +01:00
Oliver Schmidt
63725eff36 Merge remote-tracking branch 'upstream/master' 2013-12-12 20:46:43 +01:00
Oliver Schmidt
3b2173e01f Have CBM DOS filetype of imported files match the one used by cc65.
CFS_WRITE implies O_TRUNC which is implemented on CBM DOS by deleting an
exsisting file. Hoewever this succeeds only if the CBM DOS filetype matches.

We need a working O_TRUNC in order to be able to overwrite the contiki.cfg
configuration file.

Note: Now it has be clarified why overwriting the configuration file started to
fail the CBM PFS (platform file system) can be activated for the recently added
ethconfig program.
2013-12-12 18:57:40 +01:00