1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2024-12-29 04:50:03 +01:00
Commit Graph

23416 Commits

Author SHA1 Message Date
Gaëtan Harter
1292d96feb
makefiles/murdock.inc.mk: change policy to run tests by default
By default if a test is available and not blacklisted it will be run by
murdock.

This will move from a whitelisting everything that works, to
blacklisting what fails. This way, failing tests will be easier to
track instead of being silently just not run.

It could even allow introducing failing tests before a fix is available.
2019-08-21 12:49:26 +02:00
Gaëtan Harter
1e6ac08423
murdock: only set test is enabled if there are tests
Only set `TEST_ON_CI_ENABLED` if the application has tests.
Currently `TEST_ON_CI_WHITELIST` was only set if there were tests.

This is a pre-step to have `TEST_ON_CI_WHITELIST` being `all` by
default.
2019-08-21 12:49:26 +02:00
Gaëtan Harter
084c6f739d
tests/lwip: disable failing test
The test fails on both murdock and on my machine due to the process
exiting directly.

pexpect.exceptions.EOF: End Of File (EOF). Exception style platform.
2019-08-21 12:49:24 +02:00
Gaëtan Harter
1f11843623
tests/pkg_fatfs_vfs: disable tests that need setup
The test need a manual setup that cannot currently be done in CI.
2019-08-21 12:49:00 +02:00
Gaëtan Harter
f7176f425f
tests/gnrc: disable tests that need setup and root
Disable running tests that need a setup and run with root as they cannot
currently be run in CI.
2019-08-21 12:46:51 +02:00
Gaëtan Harter
12d4b71c31
tests/socket_zep: define TEST_ON_CI_BLACKLIST
HACK, the test currently fails in CI for 'native' due to binding issue
2019-08-21 12:40:40 +02:00
Gaëtan Harter
095268a33a
tests/netstats_l2: run the test in CI
HACK, blacklist native as it fails to create a tun interface in murdock.
2019-08-21 12:40:40 +02:00
Gaëtan Harter
622fe2c28f
tests/pthread_rwlock: run the test in CI
HACK, the test currently fails in CI for `native` due to `utf-8` handling.
HACK, the test implementation can fail due being de-scheduled during printf.
2019-08-21 12:40:40 +02:00
d6356bdc08
Merge pull request #11692 from maribu/fmt_table
sys/fmt: Added submodule fmt_table for printing tables
2019-08-20 22:18:54 +02:00
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
a84de4225d
examples,tests: Add msba2 to BOARD_PROVIDES_NETIF 2019-08-20 17:05:09 +02:00
Juan I Carrano
a4a1dc4dfe
Merge pull request #11771 from cladmi/pr/make/remove_riot_version_override
Makefile.include: remove RIOT_VERSION_OVERRIDE
2019-08-20 16:54:24 +02:00
Juan I Carrano
d2970332fc
Merge pull request #12009 from cladmi/pr/application/board_equal/bug
dist/tools/build_system_sanity_check: check BOARD set as ?=
2019-08-20 16:52:21 +02:00
Juan I Carrano
f08e0d315e
Merge pull request #12030 from cladmi/pr/docker/allow_defining_from_env
makefiles/docker.inc.mk: allow setting more things from environment
2019-08-20 16:50:45 +02:00
Marian Buschsieweke
f33b963ef4
tests: Added test for the cc110x driver
The test application provides:
- RIOT's basic network utilities such as `ping6`
- A custom `cc110x` shell command that can be used print the low level device
  and driver state. This is mostly useful for debugging.
2019-08-20 16:40:15 +02:00
Marian Buschsieweke
ccf713c5ad
drivers/cc1xxx_common: L2 netstats & cleanups
- Added required logic to provide correct L2 netstats when the module
  netstats_l2 is used.
- Refactored code to use gnrc_netif_hdr_set_netif() over manually setting the
  pid to ease future refactoring.
2019-08-20 16:40:00 +02:00
Marian Buschsieweke
137c2c0adf
boards: Added cc110x params for MSB-A2 & MSB-IoT 2019-08-20 16:38:49 +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
Kevin "Tristate Tom" Weiss
fa81295988
Merge pull request #8838 from cladmi/pr/big/cleanup/add_flashfile
Makefiles: add support to generate both `.hex` and `.bin` file and add FLASHFILE variable
2019-08-20 16:06:29 +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
Marian Buschsieweke
18bc0ce5fc
tests/driver_ltc4150: Use new fmt_table API 2019-08-20 14:33:15 +02:00
Marian Buschsieweke
26d73116f6
sys/fmt: Added submodule fmt_table
print_col_u32_dec() / print_col_s32_dec() can be used to print an
uint32_t / int32_t as a column of the given width
2019-08-20 14:32:49 +02:00
Peter Kietzmann
f0272ed262
Merge pull request #12005 from haukepetersen/fix_nrfmin_doc
cpu/nrf5x: fix bitrate doc for nrfmin driver
2019-08-20 08:31:29 +02:00
552e425b66
Merge pull request #12029 from gschorcht/cpu/esp32/newlib_fix
cpu/esp32: fix newlib usage for stdio functions
2019-08-19 17:27:19 +02:00
Gaëtan Harter
89a92c551f
makefiles/docker.inc.mk: allow adding docker make arguments
Allow defining make arguments when called in docker.

It would be the same as adding to `DOCKER_OVERRIDE_CMDLINE` but have a
consistent naming.
2019-08-19 17:00:08 +02:00
Gaëtan Harter
8b90a51524
makefiles/docker.inc.mk: allow adding to docker ENV and OVERRIDE args
This allows passing other arguments as environment variables in
DOCKER_ENVIRONMENT_CMDLINE and as command line override in
DOCKER_OVERRIDE_CMDLINE without using the automatic detection.

This will allow passing USEMODULE to docker as its value is usually set
in an application Makefile so has its origin changed.
2019-08-19 16:59:46 +02:00
Gaëtan Harter
e83966c80f
makefiles/docker.inc.mk: allow setting DOCKER_ENV_VARS from environment
This allows setting other variables that should be exported to the
docker build.

As for other variables, they must still be unmodified before parsing
`docker.inc.mk` to be exported.
2019-08-19 16:46:22 +02:00
Gaëtan Harter
ce8d10c945
makefiles: end of 'FLASHFILE' transition phase
* Remove the transition documentation.
* assert that FLASHFILE is now defined
2019-08-19 16:30:10 +02:00
Gaëtan Harter
4ebf3dcb7c
makefiles: update FLASHFILE possible values
Update the documentation to say it can also be 'ELFFILE'
The first version was setting it to EFLFILE by default but the default
behavior was removed to prevent hiding errors.

It can also be overwritten for application specific needs, like when
using 'riotboot'.
2019-08-19 16:30:10 +02:00
Gunar Schorcht
bf331bd54b cpu/esp32: use printf/puts from newlib
Initializing the stdio file descriptors in global reent structure with newlib fake stdio file descriptors led to the problem that newlib stdio functions printf and puts were not working since they can't operate on these fake stdio file descriptors. Therefore, this initialization was removed. Now, the real stdio file descriptors as created automatically by newlib are used. Specific functions `printf`, `puts`, `getchar`and `putchar` are not required any longer and are removed now.
2019-08-19 15:14:32 +02:00
Gunar Schorcht
87cd181f56 cpu/esp32: use always newlib_syscalls_default
Modules newlib and newlib_syscalls_default are now used by default. Conditional compilations for MODULE_NEWLIB_SYSCALLS_DEFAULT as well as alternative code are removed completely.
2019-08-19 15:13:53 +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
b683205098
Merge pull request #12026 from gschorcht/cpu/esp32/printf_puts_fix
cpu/esp32: fixes printf and puts
2019-08-19 11:45:03 +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
Gunar Schorcht
6a378f71a0 cpu/esp32: fixes printf and puts
printf and puts used ets_printf before. Unfortunately, ets_printf adds an additional \r for each \n which is not consistent with other RIOT platforms. As a result some automatic tests failed. Therefore, both functions write now character-wise directly to the UART interface.
2019-08-17 11:34:20 +02:00
Marian Buschsieweke
59f0064075
Merge pull request #12023 from MrKevinWeiss/pr/stm/i2c1/endianess
cpu/stm32: Fix 16 bit reg endianness for i2c_1
2019-08-16 15:33:42 +02:00
MrKevinWeiss
b0c05431f7 cpu/stm32: Fix 16 bit reg endianess for i2c_1
Since i2c_1 i2c_write_regs is cpu specific reg endianess must be swapped there
Change reg from little endian to big endian
2019-08-16 15:04:13 +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
Francisco
5653004d52
Merge pull request #11875 from cladmi/pr/test_utils/sync
test_utils_interactive_sync: add a helper for synchronizing tests
2019-08-15 19:12:11 +02:00
Juan Carrano
2946f4b192 tests/shell: Test cancelling a line with ctrl-C.
Send garbage, cancel it and issue a valid command. No errors should
ocurr.
2019-08-15 17:40:17 +02:00
Juan Carrano
3f46863426 tests/shell: use tuple instead of dictionary in test scripts.
Python dictionaries are not guaranteed to be ordered until version
3.7. In 3.6 they are ordered too, but that is an implementation
detail. riotdocker seems to be using 3.5.

As it stands now, it would not be a problem if the test commands
are run in a random order, except that:

- It would result in non-reproduceable tests.
- It hinders testing other functionality, such as exiting the shell.
2019-08-15 17:13:42 +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
Juan Carrano
cdfece682f tests/shell: Use socat as the RIOT_TERMINAL.
For test scripts, a terminal that does not modify the input and output
streams, configured without local echo, is preferred as it ensures the
test setup is introducing as little noise as possible.
2019-08-15 17:12:54 +02:00
Gaëtan Harter
ac8a6cf3a3
tests/libfixmath: use test_utils_interactive_sync
Replace the 'xtimer_sleep' hack to prevent flooding at startup to use
test_utils_interactive_sync for synchronizing.
2019-08-15 12:30:59 +02:00
Gaëtan Harter
4c209ab8d7
tests/libfixmath: explicitly import ARRAY_SIZE definition
ARRAY_SIZE is implicitly imported by "xtimer.h" which will be removed of
this file.
2019-08-15 12:30:37 +02:00
Gaëtan Harter
ed27d3b68b
tests/posix_time: use test_utils_interactive_sync
Use test_utils_interactive_sync for synchronizing test instead of the
custom 'getchar' handling.
2019-08-15 12:26:28 +02:00