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

414 Commits

Author SHA1 Message Date
Kevin "Tristate Tom" Weiss
1b1c902dd3
Merge pull request #12022 from JannesVolkens/tmp00x
driver/tmp00x: make tmp006 more generic
2019-08-23 13:26:09 +02:00
Jannes
90c4ef04ef driver/tmp00x: Change tmp006 to tmp00x and add tmp007
Rename TMP006 to TMP00x
Add TMP007 sensor support to TMP00X
Change uint8_t reg to uint16_t
Add to doxygen documentation group
Expose compile time configurations
Move defines from .c to .h
Change double to float, because double is not needed
Add TMP007 register information
2019-08-23 12:11:16 +02:00
Gaëtan Harter
e1357c1499
makefiles/docker.inc.mk: allow disabling color in docker
When compiling with CC_NOCOLOR=1, color were still used when
printing during compilation with `BUILD_IN_DOCKER=1`.
2019-08-22 11:20:58 +02:00
Gaëtan Harter
4516905c0f
makefiles/info-global.inc.mk: bug: honor DEFAULT_MODULE$
The parsing for info-boards-supported was completely ignoring default
modules.
2019-08-21 17:57:30 +02:00
Gaëtan Harter
8c0120acd5
makefiles/info-global.inc.mk: bug: handle FEATURES_CONFLICT value
The value must be saved from the original value to allow restoring it.

This has currently no impact on 'info-boards-supported' as it is
currently ignored.
2019-08-21 17:16:32 +02:00
Juan I Carrano
507444ee44
Merge pull request #12010 from cladmi/pr/makefiles/info_global/disable_module
makefiles/info-global.inc.mk: bug: fix DISABLE_MODULE_GLOBAL value
2019-08-21 17:15:02 +02:00
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
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
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
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
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
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
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
2689bb0366
makefiles/info-global.inc.mk: bug: fix DISABLE_MODULE_GLOBAL value
The value must be saved from the original value to allow restoring it.

This has currently no impact as 'makefiles/defaultmodules.inc.mk'
and 'DISABLE_MODULE' are ignored in this parsing.
2019-08-14 17:35:08 +02:00
Gaëtan Harter
7d10da832a
makefiles/buildtest: always execute 'buildtest' loop on host machine
This remove executing buildtest `for` loop in docker.

When building completely in docker, 'buildtest' would hide issues when
the host toolchain would be used when doing `make all` directly.
It has the consequence that it now starts a container for each
compilation which is slower.

The previous behavior can be reproduced by using

    BUILD_IN_DOCKER=1 make buildtest-indocker

A side effect is also that now `BUILDTEST_MAKE_REDIRECT` would work when
doing `buildtest` with docker.
2019-08-14 17:02:34 +02:00
Gaëtan Harter
a048001e96
makefiles/buildtest: add a buildtest-indocker
Add a 'buildtest-indocker' that forces executing 'buildtest' for loop
completely inside the container.
It prevents starting one container per compilation wich is slower but
it could hide errors where the host toolchain would be used

It is currently equivalent to `buildtest` but will change when the
`buidtest` handling will be move outside of `BUILD_IN_DOCKER`.

Display an error when executed without BUILD_IN_DOCKER=1.
2019-08-14 17:02:35 +02:00
Gunar Schorcht
d84f75b4d0 cpu/atmega_common: activate wrapper functions when linking 2019-08-12 23:22:23 +02:00
Gaëtan Harter
e04850b27b
Makefile.include: remove RIOT_VERSION_OVERRIDE
RIOT_VERSION is not used for building a specific RIOT version anymore
since #10543. The variable can now be used directly.
Add deprecation warning.
2019-08-12 16:28:19 +02:00
Leandro Lanzieri
959c55b03f
Merge pull request #11906 from cladmi/pr/makefiles/uniflash/config_variables
uniflash.inc.mk: add variables for configuration files
2019-07-26 17:10:22 +02:00
Martine Lenders
2d1eda550a
Merge pull request #11881 from cladmi/pr/git_version
makefiles: Introduce GIT_VERSION and use it for RIOT_VERSION
2019-07-26 13:36:45 +02:00
Gaëtan Harter
78b1ff35a1
uniflash.inc.mk: add variables for configuration files
Refactoring to use common variables for the configuration files.

This will allow overwriting the files more easily from outside.
2019-07-24 15:17:42 +02:00
Gaëtan Harter
2d5ed4f849
cortexm.inc.mk: remove deprecated USE_NANO_SPECS
It was replaced by using directly the `newlib_nano` module.
2019-07-22 16:54:06 +02:00
Gaëtan Harter
21649b2cb3
makefiles/git_version.inc.mk: deferred GIT_VERSION definition
Move git version evaluation to a separate file.

The definition has been updated it to a deferred only definition.
This way git is not called when GIT_VERSION is not used.
2019-07-22 12:00:45 +02:00
Gaëtan Harter
b62488eb61
makefiles: documentation for BINFILE
Document `BINFILE` in the same ways as `HEXFILE`.
The file does not need to be exported so no reason to do it though.

It also adds it in the `info-build` output in the same way as `HEXFILE`.
2019-07-16 12:05:00 +02:00
Gaëtan Harter
065f85cf47
makefiles/vars.inc.mk: update documentation for HEXFILE
HEXFILE is not overwritten to be sometimes a '.bin' file anymore.
Its format can now be documented as an 'intel hex' file.
2019-07-16 12:05:00 +02:00
b4557eae16 make: riotboot: add $APP_VER to image file names 2019-07-15 13:38:37 +02:00
4546469e7b make: riotboot: ensure epoch in APP_VER is evaluated once 2019-07-15 13:38:37 +02:00
aaa187e871 riotboot: always link both slot .elf when linking
This enables "make test" and "make test-murdock" to rely on both images being
present and thus execute without re-compiling.
2019-07-15 11:30:49 +02:00
6b2727c693 make/riotboot: allow slot image creation without compiling 2019-07-15 11:30:49 +02:00
Francisco
827d2d9333
Merge pull request #11697 from kaspar030/pr/murdock_allow_multiple_files_for_test_job
murdock: allow multiple files to be sent along with a test job
2019-07-14 14:54:00 +02:00
a214ba493d murdock: allow multiple files to be sent along with a test job
Previously, this was hard-coded to allow one file, hard-coded to be
called "flash file".
This commit allows multiple files to be specified via adding them to the
TEST_EXTRA_FILES variable. All files will be stored in the worker's
application bin directory.

Also, the existence check has been removed, as dwqc bails out on missing
file anyways.
2019-07-13 11:57:53 +02:00
6c895e1484
Merge pull request #11743 from cladmi/pr/ci/add_test_blacklist
murdock: introduce 'TEST_ON_CI_BLACKLIST'
2019-07-12 13:56:31 +02:00
bb71e979f3 riotboot: set FLASHFILE to RIOTBOOT_EXTENDED_BIN
... if the riotboot feature is used.

Previously, even an application that had "FEATURES_REQUIRED += riotboot"
set would still flash the non-riotboot binary on "make flash".
This is usualy not what the user wants.

This commit set's the FLASHFILE variable to the combined "riotboot
bootloader + slot0 + empty slot1" binary. This has the effect that make
all, flash and flash-only will compile and/or flash a working riotboot
setup.

tests/riotboot and tests/riotboot_flashwrite now default to flashing the
riotboot-extended binary. tests/riotboot was previously configured to
use the riotboot-combined binary. This has been changed in order to not
behave differently than how usual riotboot applications do.
2019-07-08 16:33:01 +02:00
Gaëtan Harter
5c0ba89e81
makefiles/vars.inc.mk: update doc on CPU/CPU_MODEL definition
Part of moving CPU/CPU_MODEL definition to Makefile.features to have it
available before Makefile.include.
2019-07-01 17:23:14 +02:00
cladmi
168cb62ba5
makefiles/info-global.inc.mk: Reset CPU/CPU_MODEL value when reading deps
Part of moving CPU/CPU_MODEL definition to Makefile.features to have it
available before Makefile.include.
2019-07-01 17:23:14 +02:00
Juan I Carrano
50ea0d822c
Merge pull request #11664 from cladmi/pr/make/variables_lazy_evaluation
makefiles/utils/variables: add functions to help managing variables
2019-06-28 17:11:29 +02:00
Gaëtan Harter
2c5eeca47a
makefiles/utils: function to memoize a variable evaluation
This allow deferring a variable evaluation to its usage but still
benefit from only evaluating it once on multiple uses.
2019-06-28 11:34:43 +02:00
Gaëtan Harter
fcf8c4782d
makefiles/utils: function to export variables for a target
This allows exporting variables only for some target.
It will allow not exporting variables when not needed, and so prevent
unnecessary evaluation.
2019-06-28 11:33:54 +02:00
Gaëtan Harter
559b22911c
makefiles/murdock.inc.mk: remove flashfile hack
Setting FLASHFILE is now done for all boards requiring it.
2019-06-27 15:14:23 +02:00
Sebastian Meiling
4f5ce88ba6
Merge pull request #7421 from OTAkeys/pr/dev_urandom
devfs: add /dev/urandom and /dev/hwrng
2019-06-26 21:33:32 +02:00
Gaëtan Harter
45a318269d
murdock: introduce 'TEST_ON_CI_BLACKLIST'
Introduce a variable to set that a test is blacklisted.

This is a move toward enabling tests by default and adding a blacklisting
reason instead for a board instead of not whitelisting them which hides
the problem.

Currently, a test should be both whitelisted and blacklisted at the same
time to have a meaning. It is planned to whitelist all by default in
an upcoming pull request.
2019-06-25 18:57:03 +02:00
Gaëtan Harter
5d2c57f858
murdock: refactor handling of TEST_ON_CI_WHITELIST
Refactor the handling to use a variable to store if a test is enabled.
Add a 'test-on-ci-enabled' target that test if the test on ci is enabled.

This is a first commit before changing the behavior.
2019-06-25 18:56:53 +02:00
Kevin "Bear Puncher" Weiss
b076d856ab
Merge pull request #11709 from cladmi/pr/dfu/flashfile
boards/dfu-util: use FLASHFILE for boards using dfu-util
2019-06-24 10:59:14 +02:00
df10aa3b59
make: add stdio_ethos pseudo-module, dependent to stdin 2019-06-23 22:16:03 +02:00
7d4a98a075
make: introduce stdin pseudomodule 2019-06-20 15:56:44 +02:00