Commit graph

2534 commits

Author SHA1 Message Date
Jesus Sanchez-Palencia f14f9aba41 galileo: Initial support for Intel Galileo Platform
This patch adds the initial support for Intel Galileo Platform. It
contains the minimum set of code required to boot a dummy Contiki
image.

For Galileo initial support, we implemented a linker script, a minimal
bootstrap code, a set of stubbed functions required by newlib, and a
very simple main() function. Moreover, we also define some header files
and macros required by Contiki.

To build applications for this platform you should first build newlib
(in case it wasn't already built). To build newlib you can run the
following command:
$ platform/galileo/bsp/libc/build_newlib.sh

Once newlib is built, you can build applications. To build applications
for Galileo platform you should set TARGET variable to 'galileo'. For
instance, building the hello-world application should look like this:
$ cd examples/hello-world/ && make TARGET=galileo

This will generate the 'hello-world.galileo' file which is a multiboot-
compliant [1] ELF image. This image can be booted by any multiboot-
complaint bootloader such as Grub.

Finally, this patch should be used as a guideline to add the initial
support for others platforms based on x86 SoCs.

[1] https://www.gnu.org/software/grub/manual/multiboot/multiboot.html
2015-12-21 08:06:14 -02:00
Jesus Sanchez-Palencia c9897fe9b0 galileo: Add BSP files
This patch creates the platform/galileo/bsp directory. This directory
contain all files related to Galileo's Board Support Package (BSP). For
now, the BSP consists of libc and bootloader.

Within the BSP directory, we have the scripts build_newlib.sh and build_
grub.sh. These scripts provide an easy and quick way to build the newlib
and the grub for the Galileo platform.
2015-12-21 08:06:14 -02:00
Jesus Sanchez-Palencia 3a26d9dbc7 x86: Only add elfloader-x86.c to the platforms using it
Currently there are only one platform using CPU x86: Cooja. The
elfloader-x86.c is rather a POSIX implementation, so the Galileo port
won't use it for now. This patch fixes this by moving this source file to
be included by the platforms using it instead of the cpu's Makefile.
2015-12-21 08:06:14 -02:00
Joakim Eriksson e4744d1e59 fixed make login for Zoul on MAC 2015-12-19 10:28:30 +01:00
Antonio Lignan 5e14c22c98 Add support for the RE-Mote on-board power management feature 2015-12-18 16:20:30 +01:00
Antonio Lignan 834f965c95 Added support for the RE-Mote on-board Real Time Clock Calendar (RTCC) 2015-12-16 18:43:33 +01:00
Simon Duquennoy cc58384b40 jn516x: remove temporary adjustements for compilation in a 802.15.4e-free Contiki 2015-12-07 11:51:50 +01:00
Atis Elsts d79ce957a1 Adaptive time synchronization for TSCH 2015-12-07 11:51:41 +01:00
Simon Duquennoy 20c97367a9 Adding definitions required for TSCH to the sky and z1 platforms 2015-12-04 15:21:53 +01:00
Simon Duquennoy bc17cdca2c Merge pull request #1408 from simonduq/pr/jn516x-update
JN516x: tickless clock, power saving update, 32 kHz rtimer
2015-12-03 14:59:53 +01:00
Simon Duquennoy 3ff44f77b9 jn516x: added sleep modes, support for 32kHz rtimer, and tickless clock 2015-12-03 13:57:19 +01:00
George Oikonomou 27835eee2c Merge pull request #1399 from alignan/pull/pwm-driver
Added PWM driver for the Zolertia Zoul module and CC2538 platforms
2015-12-02 15:39:52 +00:00
Simon Duquennoy ebc8d9fb1c Merge pull request #1344 from tsparber/fix-doxygen
doxygen: Fixed all warnings
2015-11-30 22:07:15 +01:00
Harald Pichler 67ed80e9fe move defines to servo.h 2015-11-28 18:45:15 +01:00
Cristiano De Alti 2e78558964 AVR platforms: use 32 bit clock_time_t. 2015-11-28 10:18:22 +01:00
Nicolas Tsiftes 6def22b3c5 Merge pull request #1376 from sumanpanchal/wismote-uart1-dma
Wismote : Direct memory access using UART.
2015-11-26 11:08:43 +01:00
Antonio Lignan 37fcb927be Added PWM driver for the Zolertia Zoul module and CC2538 platforms 2015-11-25 23:56:29 +01:00
Marco Grella 65e1fed1bc Added contacts for stm32nucleo-spirit1 platform. 2015-11-25 12:56:42 +01:00
Marco Grella e47c69c170 Merge remote-tracking branch 'upstream/master' into stm32nucleo-spirit1 2015-11-25 12:36:01 +01:00
Antonio Lignan bea4ff164d Changed Makefile.zoul as done in previous BSL commit 2015-11-24 21:27:56 +01:00
Antonio Lignan 0775de9732 Fixed really big test value leftover 2015-11-24 21:15:34 +01:00
Antonio Lignan aa9eb5264f Fixed warning related to gpio_callback_t type 2015-11-24 21:15:34 +01:00
George Oikonomou 8727fef05b Fix code style: platform/zoul 2015-11-24 21:15:34 +01:00
Antonio Lignan afa5ab1ae4 Updated README 2015-11-24 21:15:34 +01:00
Antonio Lignan daa3ce415c Fixed typos 2015-11-24 21:15:33 +01:00
Antonio Lignan 27fd1a5eb8 Updated RE-Mote revision A support and cleaning up Zolertia platforms 2015-11-24 21:15:33 +01:00
George Oikonomou e75bdd00e7 Remove duplicate block and define the argument of -a using $(shell) 2015-11-24 13:10:10 +00:00
Jelmer Tiete 1efeda4283 Added the PORT make variable to the cc2538dk and Remote makefile. Fixed bug in these makefiles on OSX introduced in #1162 2015-11-23 11:28:34 -08:00
Jelmer Tiete 715946ece3 Restructured cc26xx readme, included use of .upload and PORT variable. Added sleepy demo example to examples section. 2015-11-23 11:09:06 -08:00
Jelmer Tiete 9a8e749f6f Updated cc26xx Readme to mention serial upload script 2015-11-23 11:09:05 -08:00
Jelmer Tiete d01d53978c Removed forced upload speed for the RE-MOTE platform 2015-11-23 11:09:05 -08:00
Jelmer Tiete 97095c8bb5 Updated makefiles of srf06 platform to support uploading via cc2538-bsl script 2015-11-23 11:07:19 -08:00
George Oikonomou 41ea0308a3 Merge pull request #1390 from tsparber/fix-doxygen-whitespace
Cleanup some trailing spaces and convert tabs to spaces
2015-11-22 11:53:01 +00:00
Simon Duquennoy ba8552555a Merge pull request #1389 from simonduq/pr/update-jn516x
JN516x: minor fixes
2015-11-21 12:12:55 +01:00
Simon Duquennoy 673d1d103b JN516x: minor fixes 2015-11-21 10:23:15 +01:00
Benoît Thébaudeau 5d98cb71e2 cc2538: Add support for Coffee
Coffee is placed by default at the beginning of the flash memory, right
before the firmware. This avoids the memory gaps that there could be
before and after Coffee if it were placed after the firmware, because it
is unlikely that the end of the firmware is aligned with a flash page
boundary, and the CCA is not flash-page-aligned. Thanks to that, Coffee
is also always in the same flash area if its size remains unchanged,
even if the firmware changes, which makes it possible to keep the Coffee
files when reprogramming the firmware after a partial flash erase
command.

The default configuration of Coffee is set to use sensible values for a
typical usage on this SoC, i.e. for sensor data logging.

The default size of Coffee is set to 0 in order not to waste flash if
Coffee is unused.

COFFEE_CONF_CUSTOM_PORT can be defined to a header file to be used with
"#include" in order to override the default CC2538 port of Coffee. This
makes it possible to use Coffee with an external memory device rather
than with the internal flash memory, without having to alter the Contiki
files.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2015-11-19 01:22:58 +01:00
Benoît Thébaudeau cbcf1262d6 cc2538: upload: Support .bin not starting at beginning of flash
Depending on the linker script, the generated .bin file may start beyond
the beginning of the flash memory. However, no target address was passed
to cc2538-bsl.py by the upload make target, so it used the beginning of
the flash memory in all cases.

The load address of the lowest loadable output section is now passed to
cc2538-bsl.py. The start address of the .text output section or the
address of the _text symbol could have been used too, but this would not
have been compatible with all the possible custom linker scripts.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2015-11-19 01:22:58 +01:00
Benoît Thébaudeau 790c253d6d cc2538: Define and use device features
Define the available CC2538 devices and their features, and use them to
define the linker script memory regions. The .nrdata output section is
now always defined in order to trigger an error if it is used but no
memory is available for it. The CC2538 device used by Contiki is made a
configuration option, the CC2538SF53 device being the default.

This makes more sense than defining the flash memory address and size as
configuration options like previously, all the more not all values are
possible and all the features are linked by each device.

This change also makes it possible to:
 - use the correct SRAM parameters for the CC2538NF11,
 - know at build time if the AES, SHA, ECC and RSA hardware features are
   available on the selected CC2538 device.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2015-11-19 01:18:33 +01:00
Tommy Sparber 938a425949 Cleanup trailing spaces and convert tabs to spaces
This commit removes trailing spaces and converts
tabs to spaces in all files affected by fix-doxygen PR.
2015-11-18 11:09:43 +11:00
Tommy Sparber 938d17576b doxygen: Fix many warnings
This commit fixes nearly all of the reported doxygen warnings.

I tried to not clutter the log with removed trailing spaces.
Removed whitespace and converted tab/spaces for all files affected by this commit
are in a separate branch.
2015-11-18 11:07:58 +11:00
suman_panchal 8d139222f6 Wismote : Direct memory access using UART. 2015-11-17 20:26:43 +05:30
Marco Grella 7e7c201c40 Updated radio parameters (in the submodule repo), to have more radio range. 2015-11-11 18:50:38 +01:00
Marco Grella 267d51acee Modified radio parameters to increase communication range. 2015-11-11 13:53:58 +01:00
Marco Grella 527903ee10 Added default BOARD value to let regression tests compile for any platform. 2015-11-11 13:48:38 +01:00
Marco Grella 41f9ca08e2 Merge with updated master. 2015-11-11 13:42:35 +01:00
Simon Duquennoy fbd78a7e3b Merge pull request #1293 from simonduq/pr/fix-warnings
Fix a number of compiler warnings and enable -Werror in Travis
2015-11-10 08:49:11 +01:00
Jelmer Tiete 7b4a9c8410 Small correction to cc26xx readme, code block in list was not propperly indented 2015-11-09 01:01:21 -08:00
George Oikonomou 3aa4547327 Merge pull request #1257 from bkozak-scanimetrics/cc26xx_fully_turnoff_radio
CC26xx - fully shutdown the rf-core & abort rx op
2015-11-04 15:45:05 +00:00
Antonio Lignan 6037e269a8 Merge pull request #1336 from sumanpanchal/z1-uart0-dma
Zolertia Z1: Direct memory access using UART.
2015-11-02 08:47:08 +01:00
George Oikonomou 984b8cd631 Configure ContikiMAC timings for CC13xx sub-ghz operation
This is required so that ContikiMAC will keep working correctly after the recent change that also turns off the RF analog part during duty cycling.
2015-11-01 23:21:04 +00:00
Oliver Schmidt 1639b712bb Removed CC_FASTCALL.
CC_FASTCALL was introduced many years ago for the cc65 tool chain. It was never used for another tool chain. With a798b1d648 the cc65 tool chain doesn't need CC_FASTCALL anymore.
2015-11-01 18:10:17 +01:00
suman_panchal 35cc40563e Zolertia Z1: Direct memory access using UART. 2015-10-31 11:45:13 +05:30
Oliver Schmidt 5443c740e9 Added 80 column IRC client / web browser for the C64.
Recently support for 80 column CONIO based on 320x200 graphics was added to the cc65 C library for the C64. This change leverages this for the IRC client and the web browser. Because not everybody prefers this 'soft80' display with its small 4x8 charbox the 40 column programs are still available as before (with the new programs called 'irc80' and 'webbrowser80').
2015-10-30 16:48:00 +01:00
Oliver Schmidt fb5d0b7ef0 Made 80 column display a cc65 application attribute.
So far 80 column display was an attribute of a cc65 platform. Now each cc65 application can ask for 80 column display by defining WITH_80COL. Of course this is ignored by platforms incapable of 80 column display.

I see three types of application:

* Applications not benefitting from 80 column at all and in fact looking better with 40 column display. These are now using 40 column display. Examples: ethconfig, ipconfig

* Applications taking advantage of 80 column display if it is available without drawbacks. These stay as they were. Examples: Telnet server, web server, wget

* Applications needing 80 column display so urgently that it is likely desirable even if the display becomes harder to read. These come now in both flavors allowing the user to choose. Examples: IRC, web browser

Note: This change doesn't actually introduce any 80 column display with drawbacks. This if left to a subsequent change.
2015-10-30 12:42:58 +01:00
Oliver Schmidt 634db88fe0 Adjusted cc65 constructor to recent cc65 change.
With 0ee9b2e446 cc65 constructor may not use the BSS anymore.
2015-10-29 22:25:48 +01:00
Oliver Schmidt 5024468c2f Rearranged ATARI memory usage.
The cc65 memory map for the ATARI XL has two holes so the linker needs hints which object files go where. Source changes lead to object file size changes requiring now and then to rearrange the object files.
2015-10-28 12:22:43 +01:00
Marco Grella e261cda8dc Compilation flags update: BOARD=ids01a4/5 SENSORBOARD=iks01a1 2015-10-27 12:12:59 +01:00
Nicolas Tsiftes 17714c2111 Merge pull request #1299 from sumanpanchal/wismote-nodeid-burn-restore-frm-xmem
Burn and restore node id using external flash of Wismote
2015-10-26 18:41:28 +01:00
suman_panchal 5a07279c4f Burn and restore node id using external flash of Wismote 2015-10-24 18:24:38 +05:30
Benoît Thébaudeau bf41de1be5 Merge pull request #1078 from drandreas/cc2538-crypto
cc2538: Add PKA drivers, ECC algorithms and examples
2015-10-21 11:24:35 +02:00
Simon Duquennoy 4edfb3671f Merge pull request #1315 from simonduq/pr/fix-jn516x-uart-printf
jn516x uart-driver.c: use DBG_vPrintf instead of printf.
2015-10-20 15:57:12 +02:00
Simon Duquennoy 810036e4f3 jn516x uart-driver.c: use DBG_vPrintf instead of printf. Issue https://github.com/contiki-os/contiki/issues/1314 2015-10-20 14:56:51 +02:00
Simon Duquennoy 2daa3d7377 Merge pull request #1269 from tadodotcom/tmp-uip-fallback-iface
More flexibility for the fallback interface
2015-10-20 11:33:14 +02:00
Simon Duquennoy c13274c550 jn516x platform: fix compiler warnings to enable -Wall -Werror compilation 2015-10-20 10:11:45 +02:00
Simon Duquennoy 7d55e89563 jn516x: enable -Wall 2015-10-20 10:11:43 +02:00
Adam Dunkels d48cf89e9b Fixed compiler warnings for the AVR platforms 2015-10-20 10:11:42 +02:00
Adam Dunkels c1ed924c67 Spell fix in function name 2015-10-20 10:11:38 +02:00
Simon Duquennoy aec8af25c0 jn516x: added WERROR 2015-10-20 10:11:22 +02:00
Simon Duquennoy 5ac4c2c867 Target cooja: fixed funciton prototype of uip_driver_send 2015-10-20 10:11:18 +02:00
Simon Duquennoy b0f21747e1 Target cooja: added missing declaration of simlog_char 2015-10-20 10:11:17 +02:00
Simon Duquennoy 43adbbf6f9 Target cooja: added missing includes 2015-10-20 10:11:16 +02:00
Simon Duquennoy 7328ee51ef micaz: added missing include 2015-10-20 10:11:14 +02:00
Simon Duquennoy 2533265d30 eval-adf7xxxmb4z: declare node_id only when needed 2015-10-20 10:11:13 +02:00
Simon Duquennoy 45af3adab4 exp5438: do not use char as array index 2015-10-20 10:11:04 +02:00
Simon Duquennoy 1957ecd94a exp5438: removed unused vairable 2015-10-20 10:10:18 +02:00
Simon Duquennoy c796ab418f exp5438: added missing include 2015-10-20 09:38:25 +02:00
Simon Duquennoy 2007863922 mbxxx: fix printf format 2015-10-20 09:37:26 +02:00
Simon Duquennoy fcd0302d02 mbxxx contiki-main.c: include uip-debug, as uip_debug_lladdr_print is used in main 2015-10-20 09:37:25 +02:00
Simon Duquennoy 16dd3af1e6 mbxxx temperature-sensor: remove unused variable 2015-10-20 09:37:24 +02:00
Simon Duquennoy 921a3c8a7b native platform: removed unused variable 2015-10-20 09:37:19 +02:00
Simon Duquennoy 10bd49a71a Merge pull request #756 from sieben/dos2unix
dos2unix fix
2015-10-18 20:26:07 +02:00
AntiCat d631270af4 cc2538: Add PKA drivers, ECC algorithms and examples 2015-10-18 20:14:17 +02:00
kkrentz c865982df5 JN516x: Call LLSEC.init instead of LLSEC.bootstrap 2015-10-15 00:41:12 -07:00
Simon Duquennoy bfeff0488d Port JN516x ccm-star implementation to new ccm_star_driver interface 2015-10-14 09:20:44 -07:00
Konrad Krentz b522c042ec llsec: Replaced bootstrap function with a simple init function 2015-10-14 08:21:40 -07:00
Oliver Schmidt 1b2028f1e0 Merge pull request #1302 from oliverschmidt/master
Removed mouse pointer initialization.
2015-10-09 22:22:07 +02:00
Marco Grella fc65757114 License headers and code style fixes. 2015-10-09 19:40:39 +02:00
Oliver Schmidt 43ac818dd2 Removed mouse pointer initialization.
Now the cc65 C library for CBM takes care of this.
2015-10-09 19:35:31 +02:00
Vladimir Pouzanov fee4476605 Fixed detection of windows-native 2015-09-29 10:36:18 +01:00
Simon Duquennoy 6d4f50e53a Merge pull request #1282 from farcaller/nativenet
Basic NETSTACK_CONF_RADIO based on kernel 802.15.4
2015-09-28 19:30:38 +02:00
Simon Duquennoy 2231cc9b0f Merge pull request #1266 from drugo72/avr-revival
AVR revival: new battery and temperature sensors and er-rest-example for the Raven
2015-09-28 17:52:26 +02:00
Mariano Alvira 94daacd244 Merge pull request #817 from SmallLars/econotag-ecc
Addet ECC functions on elliptic curve secp256r1.
2015-09-28 09:45:11 -05:00
Mariano Alvira ff7129dc53 Merge pull request #881 from drugo72/avr-fixes
Avr fixes
2015-09-28 09:41:21 -05:00
Vladimir Pouzanov bd1b7d9814 Fixed linuxradio compilation issues with native and minimal-net 2015-09-28 12:48:01 +01:00
Vladimir Pouzanov 4c8618e6ba Extracted linuxradio device name to contiki-conf 2015-09-28 12:48:00 +01:00
Vladimir Pouzanov 52c90519d9 Fixed missing #includes and restricted linuxradiodrv compilation to linux 2015-09-28 12:48:00 +01:00
Vladimir Pouzanov 867368b929 Basic NETSTACK_CONF_RADIO based on kernel 802.15.4 2015-09-28 12:47:11 +01:00
Simon Duquennoy f9537b6355 Merge pull request #1219 from simonduq/jn516x-port
NXP JN516x Platform
2015-09-25 12:09:52 +02:00
Lars Schmertmann 17ff3bb466 Added ECC functions on elliptic curve secp256r1 2015-09-24 14:11:20 +02:00
Simon Duquennoy bd7d45080d Added NXP JN516x platform 2015-09-23 14:38:31 +02:00