Benoît Thébaudeau
19fd7a3551
Use additive offsets
...
OR-ing an offset to a base address instead of adding it is dangerous
because it can only work if the base address is aligned enough for the
offset.
Moreover, if the base address or the offset has a value unknown at
compile time, then the assembly instructions dedicated to 'base +
offset' addressing on most CPUs can't be emitted by the compiler because
this would require the alignment of the base address against the offset
to be known in order to optimize 'base | offset' into 'base + offset'.
In that case, the compiler has to emit more instructions in order to
compute 'base | offset' on most CPUs, e.g. on ARM, which means larger
binary size and slower execution.
Hence, replace all occurrences of 'base | offset' with 'base + offset'.
This must become a coding rule.
Here are the results for the cc2538-demo example:
- Compilation of uart_init():
* before:
REG(regs->base | UART_CC) = 0;
200b78: f446 637c orr.w r3, r6, #4032 ; 0xfc0
200b7c: f043 0308 orr.w r3, r3, #8
200b80: 2200 movs r2, #0
200b82: 601a str r2, [r3, #0 ]
* now:
REG(regs->base + UART_CC) = 0;
200b7a: 2300 movs r3, #0
200b7c: f8c4 3fc8 str.w r3, [r4, #4040 ] ; 0xfc8
- Size of the .text section:
* before: 0x4c7c
* now: 0x4c28
* saved: 84 bytes
Signed-off-by: Benoît Thébaudeau <benoit.thebaudeau.dev@gmail.com>
2015-03-28 17:28:15 +01:00
Nicolas Tsiftes
c76316adf2
Merge pull request #990 from alignan/sht25
...
Removed duplicated condition in sht25 configuration
2015-03-12 16:00:53 +01:00
Antonio Lignan
64fd000e5d
Removed duplicated condition in sht25 configuration
2015-03-11 14:25:23 +01:00
George Oikonomou
c169b3e3bb
Merge pull request #845 from alignan/fix_region
...
Changed code region to any
2015-03-10 22:04:38 +00:00
George Oikonomou
15fe97ebc9
Merge pull request #989 from alignan/sht25
...
Added Z1 SHT25 sensor
2015-03-10 22:04:07 +00:00
Antonio Lignan
1af29a5beb
Added SHT25 sensor
2015-03-10 15:33:58 +01:00
Nicolas Tsiftes
2734c97234
Merge pull request #914 from cetic/pr-always-send-no-path-dao
...
Send no-path DAO only when the dag has a preferred parent
2015-03-06 14:33:07 +01:00
George Oikonomou
0ba7f8df52
Merge pull request #951 from hrzr/master
...
Make the CC2538DK button sensor clearer to work with
2015-02-28 15:14:53 +00:00
George Oikonomou
9fcb7f721f
Merge pull request #978 from nvt/cc2420-rf-api
...
Implement set/get of the CCA threshold for CC2420
2015-02-26 14:08:17 +00:00
Nicolas Tsiftes
f9e5e24cf4
Merge pull request #895 from simonduq/rpl-single-dag
...
Do not use rpl_add_dag when RPL is used with a single dag per instance
2015-02-26 11:41:24 +01:00
Nicolas Tsiftes
bfd2a90e08
Merge pull request #933 from alessandrelli/coap-observe-client
...
Erbium: client-side support for CoAP Observe
2015-02-26 10:06:58 +01:00
George Oikonomou
a3b664d574
Merge pull request #974 from jonnteolsson/cc26xx-contrib
...
New platform: Texas Instruments CC26xx
2015-02-25 23:39:40 +00:00
Jonas Olsson
8bf35f9e4a
Add cc26xx travis tests
2015-02-25 13:16:27 +01:00
Jonas Olsson
fe6bbef69d
Add CC26xx build artifacts to .gitignore
2015-02-25 13:16:07 +01:00
Jonas Olsson
0f567e499f
Add CC26xx examples
2015-02-25 13:15:35 +01:00
Jonas Olsson
c9071b6952
Add CC26xx common platform files
2015-02-25 13:12:20 +01:00
Jonas Olsson
b385933fa8
Add SensorTag CC2650 files
2015-02-25 13:11:09 +01:00
Jonas Olsson
c7d85c3ea5
Add Srf06EB + CC26xx EM files
2015-02-25 13:10:26 +01:00
Jonas Olsson
5e5e9b92fd
Add CC26xx CPU files
2015-02-25 13:09:56 +01:00
Daniele Alessandrelli
b6e716233a
er-coap-example: add example for client-side CoAP observe
2015-02-24 22:48:12 +01:00
Daniele Alessandrelli
799e9350a0
er-coap: add client-side support for CoAP Observe
...
Client-side support for CoAP observe is not compiled by default. To enable it, the COAP_OBSERVE_CLIENT macro must be defined equal to 1.
2015-02-24 22:46:48 +01:00
Nicolas Tsiftes
0c7d261465
Merge pull request #971 from g-oikonomou/doxygen-expand-macros
...
Expand Macros when Building Docs
2015-02-24 12:45:52 +01:00
George Oikonomou
76d8956a02
Adjust warning count in the doxygen travis job
2015-02-22 16:39:49 +00:00
George Oikonomou
938cd5c689
Expand macros when building docs
2015-02-22 16:39:49 +00:00
Mikhail Gaivoronskii
3f2869824c
Uncrustified platform/cc2538dk/dev/button-sensor.c
2015-02-20 21:53:33 +05:00
Nicolas Tsiftes
a785405b36
Make it possible to set and get the CC2420's CCA threshold through the extended radio API.
2015-02-19 11:26:43 +01:00
George Oikonomou
5e25ca9bf5
Merge pull request #965 from jonnteolsson/mqtt-contrib
...
Mqtt contrib
2015-02-17 22:37:56 +01:00
Jonas Olsson
2bb7fcc0cb
Fixed doxygen formatting
2015-02-17 16:11:45 +01:00
Jonas Olsson
4fb2bd410f
Add title to doxygen group
2015-02-17 16:07:37 +01:00
Jonas Olsson
303f4a41fc
Add Travis test for the MQTT demo
2015-02-17 16:02:55 +01:00
Jonas Olsson
6112ec54d3
Add MQTT demo for the cc2538dk platform
2015-02-17 15:58:50 +01:00
Jonas Olsson
1e92211613
Add MQTT 3.1 engine
2015-02-17 13:44:29 +01:00
Nicolas Tsiftes
f504b4dd17
Merge pull request #964 from nvt/coffee-code-style
...
Fix some code style issues in Coffee.
2015-02-17 11:50:17 +01:00
Nicolas Tsiftes
da04ec74ed
Corrected some code style issues in Coffee.
2015-02-17 11:02:06 +01:00
Nicolas Tsiftes
e58aae1dcd
Merge pull request #950 from patoman007/master
...
Fix: Misconfigurations to compile for avr-zigbit platform
2015-02-17 09:41:20 +01:00
Nicolas Tsiftes
6e3119234b
Merge pull request #961 from g-oikonomou/mcast-documentation
...
Tidy-up multicast documentation
2015-02-17 09:05:11 +01:00
Nicolas Tsiftes
d57634d417
Merge pull request #936 from skaterdude/master
...
Update rpl.c and uip.c (in ipv4)
2015-02-17 09:03:55 +01:00
Nicolas Tsiftes
cafffb446d
Merge pull request #958 from kshpylon/master
...
change value of RPL_DIO_MOP_MASK
2015-02-17 08:59:32 +01:00
Nicolas Tsiftes
080de75c87
Merge pull request #959 from g-oikonomou/cc2538-doc
...
Improve CC2538 documentation
2015-02-17 08:50:18 +01:00
George Oikonomou
b91e883b46
Merge pull request #963 from jimparis/aducrf101-fix-travis
...
Fix and re-enable Travis build for ev-aducrf101mkxz
2015-02-17 00:56:22 +01:00
Jim Paris
fba2e2020a
Re-enable ev-aducrf101mkxz travis tests
2015-02-16 14:52:29 -05:00
Jim Paris
d350aa4dd7
Fix aducrf101 builds with GCC 4.9+
...
Mixing LTO and libraries requires the use of gcc-ar instead of ar.
See https://gcc.gnu.org/wiki/LinkTimeOptimizationFAQ?action=recall&rev=5#ar.2C_nm_and_ranlib
2015-02-16 14:52:05 -05:00
Fredrik Österlind
468e94809a
Merge pull request #954 from TheGeorge/master
...
Fix: Cooja HC packet analyzer fix for SAC and DAC fields
2015-02-16 17:43:12 +01:00
Andreas Löscher
a4206273a5
Fixed HC analyser for SAC and DAC fields
2015-02-16 13:58:36 +01:00
George Oikonomou
65c1b667a5
Adjust doxygen travis test error count
2015-02-16 10:26:11 +01:00
George Oikonomou
6bd8bb05f6
Improve wording
2015-02-16 10:17:58 +01:00
George Oikonomou
72914369e8
Re-structure CC2538 doxygen module hierarchy
2015-02-16 10:17:58 +01:00
George Oikonomou
8751e55c94
Improve wording, fix warnigs in the SSI/SPI docs
2015-02-16 10:17:58 +01:00
George Oikonomou
a93a8912c2
Clarify GPIO read and write macros
2015-02-16 10:17:57 +01:00
George Oikonomou
a34a2e5ad8
Remove obsolete/unused doxygen group
...
The group is defined within the cpu files themselves, so this definition simply resulted in a 2nd CC2538 group, which was empty
2015-02-16 10:17:57 +01:00