1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2025-01-18 12:52:44 +01:00
Commit Graph

6225 Commits

Author SHA1 Message Date
Peter Kietzmann
11b4bab101
Merge pull request #10340 from maribu/cc110x_rewrite
drivers/cc110x: Complete rewrite from scratch
2019-08-20 17:58:21 +02:00
Marian Buschsieweke
88cf6cb46f
sys/auto_init/netif: Increased cc110x stack size
With the increase of the message queue size from 8 to 16 in
946b06e4f0, the default stack became too small.
This changes the stack size to grow with the message queue size.
2019-08-20 16:38:49 +02:00
Marian Buschsieweke
972367432a
drivers/cc110x: Rewrite of the cc110x driver
The cc110x driver has been re-written from scratch to overcome the limitations
of the old driver. The main motivation of the rewrite was to achieve better
maintainability by a detailed documentation, reduce the complexity and the
overhead of the SPI communication with the device, and to allow to
simultaneously use transceivers with different configuration regarding the used
base band, the channel bandwidth, the modulation rate, and the channel map.

Features of this driver include:

- Support for the CC1100, CC1101, and the CC1100e sub-gigahertz transceivers.
- Detailed documentation of every aspect of this driver.
- An easy to use configuration API that allows setting the transceiver
  configuration (modulation rate, channel bandwidth, base frequency) and the
  channel map.
- Fast channel hopping by pre-calibration of the channels during device
  configuration (so that no calibration is needed during hopping).
- Simplified SPI communication: Only during start-up the MCU has to wait
  for the transceiver to be ready (for the power regulators and the crystal
  to stabilize). The old driver did this for every SPI transfer, which
  resulted in complex communication code. This driver will wait on start up
  for the transceiver to power up and then use RIOT's SPI API like every other
  driver. (Not only the data sheet states that this is fine, it also proved to
  be reliable in practise.)
- Greatly reduced latency: The RTT on the old driver (@150 kbps data rate) was
  about 16ms, the new driver (@250 kbps data rate) has as RTT of ~3ms
  (depending on SPI clock and on CPU performance) (measured with ping6).
- Increased reliability: The preamble size and the sync word size have been
  doubled compared to the old driver (preamble: 8 bytes instead of 4,
  sync word: 4 byte instead of 2). The new values are the once recommended by
  the data sheet for reliable communication.
- Basic diagnostic during driver initialization to detect common issues as
  SPI communication issues and GDO pin configuration/wiring issues.
- TX power configuration with netdev_driver_t::set() API-integration
- Calls to netdev_driver_t::send() block until the transmission has completed
  to ease the use of the API (implemented without busy waiting, so that the
  MCU can enter lower power states or other threads can be executed).
2019-08-20 16:32:11 +02:00
benpicco
20dec77e39
Merge pull request #11999 from nmeum/pr/gnrc_tcp_mark_update
net/gnrc/tcp: fix invalid read
2019-08-20 15:37:17 +02:00
benpicco
f483988ae9
Merge pull request #12001 from nmeum/pr/gnrc_tcp_memory_leak
gnrc_tcp: Fix memory leak, potential DOS
2019-08-19 14:42:13 +02:00
Marian Buschsieweke
615e25f319
drivers: Removed driver for CC110x transceivers
- Removed cc110x driver
- Updated all makefiles
- Kept both board specific configurations and support for it in RIOT's
  upper layers, so re-implementations don't need to start from zero
2019-08-19 12:56:47 +02:00
Vincent Dupont
5a953a2137
Merge pull request #11991 from gschorcht/cpu/stp32_common/can/auto-init-cleanup
sys/auto_init/can: cleanup for STM32 CAN controller driver
2019-08-19 09:40:36 +02:00
913614ef04
Merge pull request #11004 from jcarrano/shell_cancel_line_ctrl-c
sys/shell: cancel current line on CTRL-C.
2019-08-16 13:00:33 +02:00
Sebastian Meiling
226ace7bb6
Merge pull request #9852 from bergzand/pr/rpl/fix_debug_hdrs
gnrc_rpl: remove DEBUG from header files
2019-08-16 11:27:48 +02:00
b33ee93d22
gnrc_rpl: remove DEBUG from header files
This conflicts with the DEBUG setting in C files that include these
headers making it impossible to enable the DEBUG setting in these C
files.
2019-08-16 10:11:41 +02:00
Juan Carrano
fa9337d73c sys/shell: cancel current line on CTRL-C.
CTRL-C cancels the current line, similar to how getty works.

This is useful if one is using a dumb terminal to communicate with
a node, as it saves having to repeatedly type backspace to discard the
current line. It also helps when connecting to an already running node,
as one does not know what is on the line buffer, the safest thing to do
is to begin by sending a ctrl-C.

This is a suggestion of @benemorius.
2019-08-15 17:13:42 +02:00
Gaëtan Harter
027426793c
test_utils_interactive_sync: add a helper for synchronizing tests
Add an implementation that waits for 's' to print 'START' and return.
If 'r' is given is prints 'READY' to allow querying for state.

The help and answered string have to be different to not match the other.
Using puts/getchar was smaller than using `stdio_read/stdio_write` on the
example I tested with `esp32`.
2019-08-15 12:26:28 +02:00
Marian Buschsieweke
c225636966
Merge pull request #10555 from gschorcht/irq_handler
sys: single interrupt handler thread for interrupts in modules with blocking functions
2019-08-13 15:08:53 +02:00
Gunar Schorcht
82e020fb81 sys/irq_handler: single interrupt handler thread
Single thread for handling interrupts that may trigger blocking  functions and therefore may only be called in thread context.
2019-08-13 14:49:10 +02:00
Sören Tempel
c6df2064af gnrc_tcp: Fix memory leak 2019-08-12 23:14:15 +02:00
Sören Tempel
9e91d21625 net/gnrc/tcp: fix uninitialized memory access
From the gnrc_pktbuf_mark documentation:

	    It's not guaranteed that `result->data` points to the
	    same address as the original `pkt->data.

Thus it should be necessary to update the `hdr` pointer.
2019-08-12 22:04:35 +02:00
Sören Tempel
3396743bab gnrc_pktbuf: fix typo (guaranteeed → guaranteed) 2019-08-12 22:00:14 +02:00
Juan I Carrano
b48afd6375
Merge pull request #11807 from JulianHolzwarth/pr/xtimer_mutex_lock_timeout/first_fix_improvements
sys/xtimer/xtimer.c: _mutex_timeout() cleanup
2019-08-09 19:23:16 +02:00
Gunar Schorcht
ba00269dc9 sys/auto_init/can: cleanup for STM32 CAN controller
Initialization code for module `can_stm32` is obsolete since the STM32 CAN controller driver isn't a module anymore.
2019-08-09 18:23:05 +02:00
JulianHolzwarth
c1f58186cb xtimer/xtimer.c: sched_switch instead of yield
because of pr #11759: not all boards check for is_in_irq when thread_yield_higher
2019-08-09 17:29:40 +02:00
JulianHolzwarth
1bcb4fcc5f xtimer/xtimer.c: _mutex_timeout improvements
Only yields and change threads status when thread was removed from mutex list.
2019-08-09 17:29:40 +02:00
JulianHolzwarth
a321dfc51d xtimer/xtimer.c: ensure modifing mutex is done with interrupt disabled
if xtimer_set spins the callback is executed in the thread context.

comment to explain irq_disable
and when this line could be removed
(when xtimer stops executing the callback funtion from thread context)
2019-08-09 17:28:54 +02:00
Francisco
56a6e5d53e
Merge pull request #11933 from miri64/shell/fix/check-sender
shell_commands: check ICMPv6 echo reply sender
2019-08-09 16:27:39 +02:00
Martine Lenders
c12bd5edb1
Merge pull request #11938 from miri64/shell_commands/enh/now-id
shell_commands/ping6: mix-in current time into ID
2019-08-09 12:56:54 +02:00
Francisco
fde50372c3
Merge pull request #11837 from miri64/gnrc_netif/enh/inter-tx-wait
gnrc_netif: allow for wait of minimum time between sends
2019-08-09 10:53:26 +02:00
Martine Lenders
488c47cbf3 gnrc_netif: allow for wait of minimum time between sends 2019-08-09 10:21:42 +02:00
Martine Lenders
af5bf360a0
Merge pull request #11575 from miri64/posix_socket/fix/init-uninit-fields
posix_socket: initialize uninitialized fields
2019-08-08 15:56:48 +02:00
Martine Lenders
3bcb1ee2ef posix_socket: initialize uninitialized fields 2019-08-08 15:03:28 +02:00
Kevin "Bear Puncher" Weiss
10a2794c8e
Merge pull request #11970 from miri64/gnrc_ipv6/fix/check-source-for-send
gnrc_ipv6: check validity of preconfigured source on send
2019-08-08 13:39:47 +02:00
Martine S. Lenders
7f2cc4f0b3 gnrc_ipv6: check validity of preconfigured source on send
If an address was pre-configured by the upper layer its validity is
currently ignored. It is neither checked if the address is on the
interface at all nor is it checked if it is valid.

This change provides a fix for that by checking both facts.
2019-08-08 13:16:28 +02:00
Hauke Petersen
02df6ab13f
Merge pull request #11000 from miri64/gnrc_sixlowpan_frag/new/vrb
gnrc_sixlowpan_frag: initial import of the VRB
2019-08-07 17:33:01 +02:00
Martine Lenders
a06b84dbcd
Merge pull request #11965 from pokgak/credman-add-credential-type-docs
credman: add documentation for enum credman_type_t
2019-08-07 16:33:03 +02:00
Martine Lenders
1f1ff16e3c gnrc_sixlowpan_frag: include VRB in normal GC 2019-08-07 16:19:36 +02:00
Martine Lenders
26a526eaee gnrc_sixlowpan_frag: initial import of the VRB
VRB = virtual reassembly buffer
2019-08-07 16:18:19 +02:00
Aiman Ismail
0c542f6605 credman: add documentation for enum credman_type_t 2019-08-07 14:00:39 +02:00
Juan I Carrano
ff57a904e3
Merge pull request #10271 from mtausig/aes_rv
Fix return value of aes_init for keys of incorrect length
2019-08-07 13:26:25 +02:00
Mathias Tausig
66edeeb9c6 crypto: aes_init(): Fail correctly when called with bad key length
A proper error code is returned if a key with unsupported (either by the implementation or the AES algorithm) length is passed to aes_init.
This fixes Issue #10175
2019-08-07 11:02:16 +02:00
Mathias Tausig
0352c7406d crypto: Fix code style 2019-08-07 11:02:16 +02:00
Benjamin Valentin
9311e05fcf sys/arduino: reduce scope of adc_line_state
This makes cppcheck happy.
2019-08-06 19:43:54 +02:00
Benjamin Valentin
0c98b79e2f sys/shell: reduce scope of variable 'entry' 2019-08-06 19:43:54 +02:00
Benjamin Valentin
9279733ed2 sys/shell: remove superfluous explicit cast 2019-08-06 19:43:54 +02:00
Benjamin Valentin
e8dc1119b8 sys: make use of ARRAY_SIZE macro 2019-08-06 19:43:54 +02:00
e352b54a9b
net/gnrc/tcp: remove duplicate net_gnrc_tcp group definitions 2019-08-05 16:57:37 +02:00
f922df8c99
net/gnrc/sock: remove duplicate net_gnrc_sock group definition 2019-08-05 16:57:37 +02:00
998fd6bcc9
sys/pthread: deduplicate pthread group definition 2019-08-05 16:57:36 +02:00
9e9ef3293d
sys/sha1: deduplicate sys_hashes_sha1 group definition 2019-08-05 16:57:36 +02:00
Martine Lenders
4139370a87
Merge pull request #11952 from PeterKietzmann/pr_ccnl_update_and_bump
pkg/ccn-lite: bump version and adapt shell functions accordingly
2019-08-05 10:27:43 +02:00
Ken Bannister
c8e87e7854
Merge pull request #11787 from miri64/gcoap/enh/backoff-config
gcoap: allow for retransmission backoff to be turned off
2019-08-02 06:40:07 -04:00
Ken Bannister
28317019fc
Merge pull request #11784 from miri64/gcoap/fix/ack-variance-0
gcoap: don't call random_uint32_range() when COAP_ACK_VARIANCE=0
2019-08-02 05:10:45 -04:00
Cenk Gündoğan
89c3c4e20e shell/ccn-lite: type fixes 2019-08-02 10:37:47 +02:00