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

937 Commits

Author SHA1 Message Date
chrysn
2eeda9a1ca makefiles: Pass explicit float mode to clang
The assumption that clang defaults to hard-float on ARM architectures
does not hold on Debian systems where [set-correct-float-abi].
As setting the flags that are implied on most systems does no harm, the
flags for the selected hard- or soft float behavior are now set
independently of the toolchain.

[set-correct-float-abi]: https://salsa.debian.org/pkg-llvm-team/llvm-toolchain/-/blob/10/debian/patches/26-set-correct-float-abi.diff

Closes: https://github.com/RIOT-OS/RIOT/issues/15026
2020-09-25 11:02:29 +02:00
Francisco
ad9e35c445
Merge pull request #14436 from bergzand/pr/suit/ietf_v7
SUIT: Upgrade to draft-ietf-suit-manifest-09
2020-09-24 21:57:24 +02:00
401f8eb9bd
dist/tools/suit: Update suit tooling to IETF-v7 compliance 2020-09-24 21:15:13 +02:00
Juergen Fitschen
c3a20f8fb8 sys/evtimer: introduce ZTIMER_MSEC as timer backend 2020-09-24 11:30:26 +02:00
Francisco
07f0745015
Merge pull request #15063 from leandrolanzieri/pr/kconfig/fix_missing_out_config
makefiles/kconfig: fix dependencies for out.config target
2020-09-24 10:57:44 +02:00
Francisco
2cfb4f49cb
Merge pull request #14799 from maribu/waspmote-pro
boards/waspmote: Fix timer config
2020-09-24 09:33:17 +02:00
Marian Buschsieweke
d5c0e30a11
boards/waspmote: Fix timer config
- Set XTIMER_HZ to something that is actually possible to generate with one
  of the available clock dividers from the core frequency
- Use xtimer_on_ztimer if xtimer is used and not ztimer_xtimer_compat is used
    - This is needed because xtimer is simply not compatible with any of the
      possible clock frequencies of this board
2020-09-23 20:12:06 +02:00
Leandro Lanzieri
4fbbb94bff
makefiles/kconfig: fix dependencies for out.config target
Kconfig.dep depends on FORCE, so it is always generated when compiling
with Kconfig under normal conditions. Whan TEST_KCONFIG=1 is set, this
file is no longer a dependency for out.config. So when cleaning the
'bin' directory, out.config has no direct dependencies that force its
rebuilding (the generated directory is order only). This causes the file
not to be produced when calling `TEST_KCONFIG=1 make clean all`.

This PR changes the dependency on the 'generated' directory to a direct
dependency when `CLEAN` is set and leaves it as order-only when not.
This allows to generate out.config only when needed by not depending on
FORCE.
2020-09-23 09:49:44 +02:00
Marian Buschsieweke
d9e495fe83
build system: use riscv-none-elf as triplet
Use riscv-none-elf instead of legacy riscv-none-embed as target triplet for
RISC-V development. However, if ricsv-none-elf is not present, try
riscv64-unknown-elf and riscv-none-embed instead. If the legacy riscv-none-embed
is used, a warning is printed.
2020-09-15 11:18:33 +02:00
Francisco Molina
c6b837b99e
makefiles/info-global.inc.mk: add initial default modules inclusion 2020-09-14 19:01:33 +02:00
Cenk Gündoğan
0d0bc91553
Merge pull request #14754 from leandrolanzieri/pr/no_archives
build system: link object files
2020-09-10 09:36:29 +02:00
Francisco
f08e65cd0c
Merge pull request #14981 from maribu/target-arch
build system: Overwrite TARGET_ARCH per arch
2020-09-09 09:10:52 +02:00
Francisco
cb6b65e7ff
Merge pull request #14886 from miri64/gnrc/fix/circ-deps
gnrc: remove circular module dependencies
2020-09-09 09:06:28 +02:00
Marian Buschsieweke
7c1949341e
build system: Overwrite TARGET_ARCH per arch
Add `TARGET_ARCH_<ARCH>` for each architecture (e.g. `TARGET_ARCH_CORTEX` for
Cortex M) to allow users to overwrite the target triple for a specific arch
from ~/.profile or ~/.bashrc (or the like) without overwriting it for all others
as well.
2020-09-08 22:28:41 +02:00
Martine S. Lenders
07bcae2613
gnrc_sixlowpan_router: remove pseudo-module
It has no real purpose other than pulling in `gnrc_ipv6_router` as a
dependency, which is already done in other places (or by pulling in its
dependencies).
2020-09-08 12:53:28 +02:00
Leandro Lanzieri
e80bb4b3dc
makefile: add a check for real modules 2020-09-04 15:01:16 +02:00
Leandro Lanzieri
29b81e4b40
makefiles/bindist: copy object files and use .bin to compare 2020-09-04 15:01:15 +02:00
Leandro Lanzieri
81cb769cad
makefiles: avoid building archives when compiling 2020-09-04 15:01:10 +02:00
benpicco
7dfbfd4f50
Merge pull request #14948 from benpicco/feat/puf_sram
features_modules: include puf_sram if used
2020-09-04 14:41:40 +02:00
Benjamin Valentin
3dbe468c14 features_modules: include puf_sram if used 2020-09-04 13:48:59 +02:00
Jose Alamos
8b8218276e makefiles/pseudomodules: add ieee802154_radio_hal pseudomodule 2020-09-03 18:20:49 +02:00
Cenk Gündoğan
538155c344
Merge pull request #14904 from leandrolanzieri/pr/kconfig/change_prefix_convention
treewide: modify Kconfig symbol prefixes
2020-09-01 15:57:06 +02:00
benpicco
61334d55d6
Merge pull request #14840 from benpicco/picolibc_unbuffered
picolibc: only enable stdout buffering for CDC ACM, ethos, semihosting & SLIP
2020-09-01 15:15:01 +02:00
Benjamin Valentin
c94860d8fc makefiles/stdio: enable stdout buffering for CDC ACM, ethos, semihosting
CDC ACM, ethos, Semihosting and SLIP all benefit from sending data out
in larger chunks and will benefit from stdout buffering.

`stdio_rtt` does have an internal TX buffer, so we don't need to do any
buffering on top.

With plain UART there was a slight advantage *without* buffering when
testing with `tests/periph_uart_nonblocking` (with the non-blocking feature
disabled).

Since the removal of the buffering saves us some RAM and ROM, disable it by
default there.

This will be different with DMA enabled UARTs.
2020-09-01 12:05:48 +02:00
Francisco
c11a06224c
Merge pull request #14856 from jhaand/master
Updated stlink makefile to use OpenOCD's single configuration file.
2020-09-01 09:03:53 +02:00
Jannes
f3e934988c drivers/stm32_eth: add 'NETDEV_EVENT_LINK_UP' event 2020-08-31 20:50:47 +02:00
Jelle Haandrikman
f18d3f5663
dist/tools/openocd/stlink: handle new and old Openocd version 2020-08-31 17:34:25 +02:00
Leandro Lanzieri
d25fc243c4
treewide: change prefix for generated Kconfig symbols.
This changes the prefixes of the symbols generated from USEMODULE and
USEPKG variables. The changes are as follow:

   KCONFIG_MODULE_ => KCONFIG_USEMODULE_
   KCONFIG_PKG_ => KCONFIG_USEPKG_
   MODULE_ => USEMODULE_
   PKG_ => USEPKG_
2020-08-31 09:37:09 +02:00
Benjamin Valentin
28d40eae6f picolibc: enable multiple heaps
We can simply re-use the same code from newlib.
2020-08-24 20:45:05 +02:00
Benjamin Valentin
ea27064d21 picolibc: make stdout buffering optional 2020-08-24 18:49:36 +02:00
Keith Packard
8c67544e7d picolibc: USE_MODULE += printf_float for float printf/scanf code [v2]
This makes RIOT use the integer-only printf/scanf code by default and
includes a new make parameter to select the full floating point
version. This saves about 6kB of text space when building hello-world
for the microbit board.

Signed-off-by: Keith Packard <keithp@keithp.com>

----

v2:
	Use USEMODULE=printf_float instead of separate parameter
2020-08-24 08:26:16 -07:00
c5079270c9 docker: Add picolibc build flag 2020-08-24 08:26:16 -07:00
79d733a1af picolibc: glue sbrk to heap start/end [v2]
---
v2:
	Squash fixes in
2020-08-24 08:26:16 -07:00
ff3bee24b9 picolibc: Provide integration into the build system [v3]
Support for picolibc as alternative libc implementation is added with
this commit. For now only cortex-m CPU's are supported.

Enable via PICOLIBC=1

---
v2:
	squash fixes in

v3:
	Remove picolibc integer printf/scanf stuff from sys/Makefile.include,
	it gets set in makefiles/libc/picolibc.mk

fixup for dependency
2020-08-23 13:12:57 -07:00
Simon Brummer
5d67daebb2 evtimer: add mbox support 2020-08-21 15:19:22 +02:00
99365873fd
Merge pull request #14355 from kaspar030/develhelp_stack_guard
cpu/cortexm_common: use mpu stack guard if DEVELHELP is enabled
2020-08-18 14:32:22 +02:00
b93b972074
Merge pull request #14753 from fjmolinas/pr_info_boards_supported_conflicts
makefiles/info-global.inc.mk: include FEATURES_CONFLICTS
2020-08-18 10:37:20 +02:00
43d6c4147a features_modules: cortexm_mpu -> mpu_stack_guard 2020-08-18 10:26:21 +02:00
Francisco
f4a2148642
Merge pull request #14776 from leandrolanzieri/pr/makefiles/openocd/use_jtag_iotlab
makefiles/openocd-adapters/iotlab: default to JTAG transport
2020-08-18 09:32:21 +02:00
Benjamin Valentin
7ceb3f0a68 netdev: add netdev_register() to keep track if netdev IDs
It is desireable to have a way to identify network devices.
This should be independent from the type of netdev, so a common identifier is needed.

Base this on the driver ID and the index in the configuration struct.
This way we achive unique IDs that stay consistent for any firmware flashed on a board.
2020-08-17 22:50:18 +02:00
benpicco
22d3bf7c51
Merge pull request #14594 from maribu/stm32-eth-cleanup
cpu/stm32: Clean up / fix periph_eth
2020-08-17 21:16:27 +02:00
Marian Buschsieweke
8d8af31e39
driver/stm32_eth: Integrate into periph_eth
The stm32_eth driver was build on top of the internal API periph_eth, which
was unused anywhere. (Additionally, with two obscure exceptions, no functions
where declared in headers, making them pretty hard to use anyway.)

The separation of the driver into two layers incurs overhead, but does not
result in cleaner structure or reuse of code. Thus, this artificial separation
was dropped.
2020-08-17 20:29:33 +02:00
Leandro Lanzieri
3c7174cfc5
makefiles/openocd-adapters/iotlab: default to JTAG transport 2020-08-17 17:47:24 +02:00
Cenk Gündoğan
f64511ddb5
Merge pull request #14626 from leandrolanzieri/pr/kconfig/test_modules_kconfig
kconfig: introduce migration test in CI
2020-08-13 14:11:00 +02:00
Francisco Molina
8ab8d04e9b
makefiles/info-global.inc.mk: include FEATURES_CONFLICTS
If there are FEATURES_CONFLICTING consider the application not
supported for the BOARD.
2020-08-13 09:29:34 +02:00
fabian18
1fca10c486 drivers/at86rf2xx: SPI AES security module 2020-08-12 17:18:00 +02:00
Leandro Lanzieri
180ee6efc9
makefiles: introduce KCONFIG_ADD_CONFIG variable
This holds a list of .config files to be merged. For more details see
kconfig.mk.
2020-08-12 12:22:42 +02:00
Leandro Lanzieri
01454188e8
Makefile.include: introduce TEST_KCONFIG switch
This switch allows to test the module dependency modelling during the
Kconfig migration. When set, it will use the symbols prefixed with
CONFIG_MOD_ defined by Kconfig as the list of modules to compile.
2020-08-12 12:22:41 +02:00
Francisco
4ba791fcb9
Merge pull request #14724 from fjmolinas/pr_cc2538_makefile.include
boards: use common Makefile.include for cc2538 boards
2020-08-11 11:29:35 +02:00
Francisco Molina
75dbad847c
makefiles/tools/cc2538-bsl.inc.mk: specify BAUD for reset 2020-08-11 09:57:09 +02:00
Cenk Gündoğan
132b7328e3
make: kconfig: use fixdep to enable incremental compilation 2020-08-11 09:47:32 +02:00
Cenk Gündoğan
f49eb4305c
dist: tools: import fixdep from linux 2020-08-10 12:17:59 +02:00
Leandro Lanzieri
4803793418
makefiles/kconfig: refactor targets and remove merged.config
Instead of the merged.config file, menuconfig operates directly on
out.config, which also is the destination of the merge of multiple
configuration sources.

Also, this introduces the autoconf.h.d file to track the Kconfig
dependencies and re-trigger the build of the header when any of the
Kconfig files change.
2020-08-07 18:17:38 +02:00
Leandro Lanzieri
9c10580ba4
dist/tools/kconfiglib: introduce own genconfig.py tool
This tool unifies multiple functionalities needed by the Kconfig
integration into one tool.
2020-08-07 18:17:37 +02:00
Marian Buschsieweke
90f5d21092
Merge pull request #12457 from kaspar030/update_msp430
cpu/msp430: update to modern gcc/ELF/newlib toolchain
2020-08-05 17:46:07 +02:00
Martine Lenders
b9a4a5ead7
Merge pull request #14664 from miri64/make/feat/termlog
Makefile.include: add capability to log `make term` to file
2020-08-05 17:45:07 +02:00
08c50947cc cpu/msp430_common: move newlib default module decl to Makefile.dep 2020-08-05 14:32:58 +02:00
a0aeeb5ff4 cpu/msp430: update to modern gcc & newlib 2020-08-05 14:29:00 +02:00
Benjamin Valentin
871f51dca6 openocd-adapters/raspi.inc.mk-fix: fix typo
Somehow a space has sneaked in here, breaking the variable expansion.
2020-08-04 19:04:39 +02:00
Martine S. Lenders
6532459010
Makefile.include: add capability to log make term to file 2020-08-04 14:42:50 +02:00
benpicco
52bf3096cf
Merge pull request #14480 from benpicco/openocd-adapters_swd
openocd-adapters: select transport based on adapter
2020-08-04 11:37:32 +02:00
Cenk Gündoğan
4517e27837
Merge pull request #14684 from leandrolanzieri/pr/kconfig/optimize_integration
makefiles/kconfig.mk: remove duplicate calls to merge_config and cleanups
2020-08-04 11:21:06 +02:00
Benjamin Valentin
0d59e7dc6e makefiles/tools/openocd-adapters: default to SWD, but make it configurable 2020-08-04 10:36:39 +02:00
benpicco
77be30dee6
Merge pull request #14613 from benpicco/openocd-buspirate
makefiles/buspirate: add Bus Pirate as Debug Adapter
2020-08-03 15:34:49 +02:00
Benjamin Valentin
1a04425d7b makefiles/buspirate: add Bus Pirate as Debug Adapter
Flash with PROGRAMMER=openocd DEBUG_ADAPTER=buspirate
2020-08-03 14:10:42 +02:00
Leandro Lanzieri
cf779a7241
makefiles/kconfig.mk: Remove duplicate calls to merge_config 2020-08-03 12:26:05 +02:00
Leandro Lanzieri
6a5c7744cb
makefiles/kconfig.mk: include KCONFIG_OUT_CONFIG always
This allows to include KCONFIG_OUT_CONFIG file in Makefile
unconditionally, which means that `make clean all` is allowed when using
Kconfig.

For this, the recipe for `clean` is guarded with `MAKE_RESTARTS` so
the BINDIR folder is not removed once Make restarts scanning the files.
2020-07-31 13:55:33 +02:00
benpicco
7e4b3d0f40
Merge pull request #14653 from Nishchay-sopho/drivers/sdp3x_#14603
driver/sdp3x: Resolved irq pin code used even if irq pin not connected
2020-07-31 01:22:02 +02:00
nagrawal
7cc4f2b79b driver/sdp3x: Resolved irq pin code used even if irq pin not connected
irq_pin check when multiple sensors connected with or without irq pin
2020-07-30 16:35:35 +02:00
Leandro Lanzieri
788ae39e73
Merge pull request #14645 from cgundogan/pr/kconfig/sync-deps
kconfig: make sync-deps flag accessible
2020-07-29 16:55:32 +02:00
Cenk Gündoğan
53eb1efe1b kconfig: make sync-deps flag accessible 2020-07-29 15:33:07 +02:00
Martine Lenders
0e3aa2fff5
Merge pull request #14632 from benpicco/netif_single
gnrc_netif: replace GNRC_NETIF_SINGLE with gnrc_netif_single pseudo-module
2020-07-28 17:56:51 +02:00
Benjamin Valentin
0c06694f72 gnrc_netif: replace GNRC_NETIF_SINGLE with gnrc_netif_single pseudo-module 2020-07-28 13:59:20 +02:00
Marian Buschsieweke
057aae1d04
makefiles/vars.inc.mk: Export FEATURES_USED
This is needed so that features used can be reliably be accessed.
2020-07-23 20:18:33 +02:00
Benjamin Valentin
96c67b0fa5 drivers/soft_uart: add software based UART implementation 2020-07-14 22:51:59 +02:00
Martine S. Lenders
4f243c52ea
pkg/emb6: remove deprecated package
Deprecation was noted in 7cf1bab2e6
2020-07-11 02:18:17 +02:00
benpicco
0bf3a2e279
Merge pull request #14476 from ML-PA-Consulting-GmbH/fix/20200706__sdcard_spi_auto_init
drivers/sdcard_spi: remove auto-init
2020-07-10 15:53:17 +02:00
c8b0f972df
makefiles/tools: add common bossa makefile 2020-07-10 11:56:11 +02:00
Daniel Lockau
0d3dc120ef drivers/sdcard_spi: remove auto-init 2020-07-09 08:50:53 +02:00
MrKevinWeiss
04630d20ba sys/shell: Add optional hooks for shell commands
Introduce optional user shell_post_readline_hook, shell_pre_command_hook, shell_post_command_hook.
Enable with USEMODULE=shell_hooks.
Calls user implemented *_hook functions if defined.
If implementation does not exist, nothing happens.

The intent is to make profiling of the shell command timings easier.

Test provided in tests/shell with USEMODULE=shell_hooks.
2020-07-07 17:00:38 +02:00
Leandro Lanzieri
f85f2e7b62
Merge pull request #14433 from cgundogan/pr/make_cleanups
make: use $(MAKE) instead of direct `make` call
2020-07-03 13:42:04 +02:00
Cenk Gündoğan
7aa499d5f1 make: use $(MAKE) instead of direct make call 2020-07-03 12:03:06 +02:00
c7189cfe99
makefiles/sam0: only fail on missing device with explicit targets 2020-07-03 10:24:40 +02:00
Francisco
41888674a4
Merge pull request #14385 from aabadie/pr/make/appdeps_export
boards/mips: remove use of APPDEPS, un-export globally APPDEPS
2020-07-01 09:13:35 +02:00
Francisco
1004fb3f83
Merge pull request #13382 from chrysn-pull-requests/usb-check-unification
usb: Warn on test-ID usage in a unified location
2020-06-30 13:30:14 +02:00
Leandro Lanzieri
955efd85ff
drivers/at: Add at_urc_isr module to process URCs upon arrival 2020-06-30 11:41:13 +02:00
chrysn
85d7042732 usb Kconfig: Provide explicit defaults
See-Also: https://github.com/RIOT-OS/RIOT/pull/13382#discussion_r380506106
2020-06-30 10:51:42 +02:00
chrysn
a181c0dbcd usb: Use separate Makefile for configuration and checks 2020-06-30 10:51:40 +02:00
Gunar Schorcht
028c0d4b3c
Merge pull request #14353 from fjmolinas/pr_reorder_makefiles_cleanup
Makefile: use normal conditionals
2020-06-30 09:59:02 +02:00
Francisco Molina
e98341da93
Makefile: use normal conditionals 2020-06-29 22:40:29 +02:00
benpicco
f372beb405
Merge pull request #12363 from maribu/dfplayer
drivers/dfplayer: New driver for the DFPlayer Mini MP3 player
2020-06-28 23:24:36 +02:00
Marian Buschsieweke
d2f3cafa45
sys/auto_init: Added auto-init for multimedia
Added auto-init hook for multimedia device drivers
2020-06-28 21:06:14 +02:00
df51ff7617
makefiles/vars.inc.mk: don't export APPDEPS globally 2020-06-28 12:14:31 +02:00
Gunar Schorcht
660a852935 drivers: add netdev driver for ATWINC15x0 WiFi module 2020-06-26 12:33:38 +02:00
e3f6c0f340 core: make idle thread optional 2020-06-25 16:02:28 +02:00
Francisco
a665fcc542
Merge pull request #14123 from jue89/fix/ztimer_pseudomodules
ztimer: relocate PSEUDOMODULES definitions
2020-06-24 22:56:07 +02:00
Benjamin Valentin
a653667172 makefiles/boards/sam0.inc.mk: dap: use OpenOCD for debugging
ebdg can only be used for flashing, we still have to use OpenOCD for
debugging.

fixes #14328
2020-06-24 16:06:12 +02:00
499cd934a2
makefiles/vars.inc.mk: export NM and RANLIB variables 2020-06-24 11:01:01 +02:00
080d5caa17
makefiles/toolchain: don't export all variables
There are already exported globally in vars.inc.mk
2020-06-24 11:00:54 +02:00
df58141e15
Makefile.include: don't define GITCACHE and GIT_CACHE_DIR globally 2020-06-23 14:54:25 +02:00