Commit graph

10724 commits

Author SHA1 Message Date
Benoît Thébaudeau
ee3ee049e4 cc2538: Set the entry point to the CCA
No entry point was defined, so it defaulted to the beginning of the
.text output section where the vector table is located by default in
Contiki. Actually, the vector table may be located elsewhere, and the
ROM-based boot loader first reads the CCA to find the vector table.

Consequently, this commit sets the entry point to the CCA, which fixes
both the entry point and the initial symbol reference, so this commit
also removes the now-unneeded "__used__" and "KEEP" keywords from the
CCA.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2015-11-19 01:18:34 +01:00
Benoît Thébaudeau
96dd24836c cc2538: Use &vectors instead of flash/.text start address
The current CC2538 linker script in Contiki places the vector table at
the beginning of the flash memory / .text output section. However, this
location is arbitrary (the only requirement is that the vector table is
512-byte aligned), and custom linker scripts may be used with Contiki,
which means that Contiki may be used with a vector table placed
elsewhere. Thus, using the flash/.text start address in the CCA and as
the default NVIC VTABLE value was wrong.

This commit rather uses the address of the vectors[] array from
startup-gcc.c, which makes it possible to freely move around the vector
table without breaking anything or having to use a custom startup-gcc.c
and to configure the NVIC driver for that. Moreover, referencing the
vectors[] array naturally prevents it and its input section from being
garbage-collected by the linker, so this commit also removes the
now-unneeded "used" and "KEEP" keywords from the vector table.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2015-11-19 01:18:33 +01:00
Benoît Thébaudeau
a191fcdb84 cc2538: nvic: Simplify VTABLE configuration
The only thing needed for VTABLE is the absolute address of the vector
table. Splitting it between code/SRAM base and offset complicates things
and brings nothing.

Consequently, this commit merges the NVIC VTABLE configurations into a
single one giving the vector table absolute address.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2015-11-19 01:18:33 +01:00
Benoît Thébaudeau
efb4b858e2 cc2538: Define the flash memory organization
Define the flash memory page and word sizes. These definitions are
grouped with the flash lock bit page and CCA definitions, so flash-cca.h
is renamed to flash.h.

Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2015-11-19 01:18:33 +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
George Oikonomou
513d8bc9d5 Merge pull request #1382 from simonduq/pr/compile-test-fix
Compile-test: show make variables in log output
2015-11-18 17:41:47 +00:00
Nicolas Tsiftes
500a74a057 Merge pull request #1378 from simonduq/pr/rpl-dao-delay-naming
RPL: clearer naming and documentation of DAO delay constants
2015-11-18 17:56:35 +01:00
Simon Duquennoy
b9281e2faa Compile-test: show make variables in log output 2015-11-18 17:39:42 +01:00
Simon Duquennoy
33f8db0dd3 RPL: clearer naming and documentation of DAO delay constants 2015-11-18 14:06:18 +01:00
Oliver Schmidt
9bb3a3a235 Merge pull request #1377 from oliverschmidt/master
Build the webserver as done in tools/6502/Makefile.
2015-11-17 21:49:17 +01:00
Oliver Schmidt
9dac1edae9 Build the webserver as done in tools/6502/Makefile. 2015-11-17 21:08:25 +01:00
Nicolas Tsiftes
e642dfc671 Merge pull request #1311 from arurke/dis-config
Add configuration of DIS start delay and interval in RPL conf.
2015-11-17 17:48:18 +01:00
Nicolas Tsiftes
b3b22756b7 Merge pull request #1327 from nfi/compile-test-with-make-variables
Add option to specify make variables for regression compile tests
2015-11-17 17:25:51 +01:00
Niclas Finne
43d26d9d83 Moved STM32W_CPUREV to the relevant compile regression test 2015-11-17 15:07:47 +01:00
Niclas Finne
2dd75d8384 Added option to specify make variables in the compile regression test 2015-11-17 15:07:04 +01:00
Nicolas Tsiftes
a161dc2959 Merge pull request #1365 from simonduq/pr/warning-free-no-frag
sicslowpan.c: warning-free compilation even with fragmentation disabled
2015-11-11 13:24:14 +01:00
Simon Duquennoy
586f4a4ae3 sicslowpan.c: warning-free compilation even with fragmentation disabled 2015-11-11 11:46:18 +01:00
Simon Duquennoy
729c4f9cf1 Merge pull request #1364 from simonduq/pr/last-warnings
Last compiler warnings
2015-11-10 15:50:11 +01:00
Simon Duquennoy
b5141f165c www.c: Explicitly declare itoa as it is non-standard and not necessarily in stdlib.h 2015-11-10 14:38:22 +01:00
Simon Duquennoy
4c52b87ac1 Ported jn516x slip-bridge to new uip_fallback_interface 2015-11-10 09:30:36 +01:00
Simon Duquennoy
dacef46b03 wget.c: replace deprecated gets with safe fgets 2015-11-10 09:09:31 +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
George Oikonomou
59fc38543e Merge pull request #1362 from JelmerT/bugfix/cc26xx_readme
Small correction to cc26xx readme
2015-11-09 09:10:51 +00: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
a63efe947f Merge pull request #1233 from adamdunkels/pr/26xx-13xx-fixes
CC26xx/CC13xx fixes
2015-11-09 08:33:58 +00:00
Oliver Schmidt
70dce80932 Merge pull request #1355 from oliverschmidt/master
Several minor adjustments.
2015-11-04 20:31:59 +01: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
Oliver Schmidt
8e9da827c0 Several minor adjustments. 2015-11-03 22:09:24 +01:00
Nicolas Tsiftes
139f427458 Merge pull request #1337 from tsparber/pr-ccittcrc-crlf
CCITT_CRC.java Change line endings from CRLF to LF
2015-11-02 14:00:51 +01:00
Nicolas Tsiftes
2e07e1fc48 Merge pull request #1329 from tsparber/serialdump-fix-warnings
Fix serialdump.c warnings (clang)
2015-11-02 13:59:21 +01:00
Andreas Urke
857d69a338 Remove stray stars in comments 2015-11-02 13:23:40 +01:00
Andreas Urke
8159297bfd Add configuration of DIS interval and DIS start delay to rpl-conf.h
Make a define for configuration of DIS start delay and move it + existing DIS interval conf into RPL-conf.h
2015-11-02 13:23:33 +01: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
George Oikonomou
54648591ee Explicitly send CMD_ABORT in prop mode before powering down 2015-11-01 22:53:35 +00:00
Oliver Schmidt
0105454524 Merge pull request #1349 from oliverschmidt/master
Log web browser page attributes free memory left.
2015-11-01 22:11:26 +01:00
Oliver Schmidt
0303944d0c Log web browser page attributes free memory left.
After page loading has finished the number of free bytes left for page attributes is logged. It turns out that "usual" pages tend to get along with ~800 bytes while i.e. the Google search pages use all of the 2000 bytes of page attribute memory allocated by default (because of the long URLs with many parameters). So it seems that reducing this default isn't exactly the best way to reduce memory consumption...
2015-11-01 21:22:19 +01:00
Oliver Schmidt
9962d0720a Merge pull request #1347 from oliverschmidt/master
Removed CC_FASTCALL.
2015-11-01 19:36:07 +01: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
Oliver Schmidt
19cb3227ca Merge pull request #1346 from oliverschmidt/master
Client requested close takes precedence over server initiated close.
2015-11-01 16:34:40 +01:00
Oliver Schmidt
1066bb1a0b Client requested close takes precedence over server initiated close.
When the client has already called webclient_close() it doesn't expect to have webclient_datahandler(NULL, 0) called just because the connection was closed by the server "at the same time". Rather it expects to always have webclient_closed() called.

Calling webclient_datahandler(NULL, 0) instead of webclient_closed() means that the web browser shows "Done" in the status line instead of "Stopped". So the user is mislead to think that he has already seen all of the page.

Note: webclient_close() is called by the client during newdata() so the already existing check for WEBCLIENT_STATE_CLOSE further above doesn't help.
2015-11-01 15:34:09 +01:00
Oliver Schmidt
185be73014 Just some minor optimizations. 2015-11-01 15:18:29 +01:00
Oliver Schmidt
692fbf5422 Merge pull request #1343 from oliverschmidt/master
Added 80 column IRC client / web browser for the C64.
2015-10-31 15:18:10 +01:00
Oliver Schmidt
8082ddac41 Adjusted tests to recent changes.
The email and ftp programs aren't relevant anymore so support for them was removed from the cc65 builds. The explicit 80 column programs were added. The 80 colum web browser and Telnet server are built for all cc65 platforms as they are the largest and as such show best code increase issues.
2015-10-31 12:36:37 +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
a70b97764a Merge pull request #1342 from oliverschmidt/master
Adjusted cc65 constructor to recent cc65 change.
2015-10-29 23:12:28 +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
Tommy Sparber
d817540f19 CCITT_CRC.java Change line endings from CRLF to LF
and remove trailing whitespaces.
2015-10-29 22:54:12 +11:00