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

579 Commits

Author SHA1 Message Date
1e8528d6e8
cpu/mips: remove use of export for LINKFLAGS 2020-01-02 09:48:46 +01:00
68210feb54
Merge pull request #12972 from fjmolinas/pr_boardsdir_riotboard
Makefile.include: default to RIOTBOARD when BOARD not in BOARDSDIR
2019-12-31 10:51:27 +01:00
Francisco Molina
cacdd56348 makefiles/info-global.inc.mk: RIOTBOAR as BOARDSDIR fallback 2019-12-30 17:15:08 +01:00
Francisco Molina
18444ac99a makefiles/boards.inc.mk: include BOARDSDIR and RIOTBOARD 2019-12-30 17:14:20 +01:00
Cenk Gündoğan
0d9d496618
Merge pull request #12913 from leandrolanzieri/pr/kconfig_include_config
makefiles/kconfig: Include configuration symbols to build system
2019-12-19 16:04:05 +01:00
Leandro Lanzieri
707ad8d083 makefiles/kconfig: Include configuration symbols
If the generated configuration file is present include it. That way one
can check if certain symbols are being configured using Kconfig.
2019-12-19 15:35:21 +01:00
Martine S. Lenders
e1ae44b536
gnrc_sixlowpan_frag_stats: actualize pseudo-module
Having the definitions sit in the `net/gnrc/sixlowpan/frag.h` header
does not make much sense, when using Selective Fragment Forwarding
(and the fragmentation buffer already includes a
`net/gnrc/sixlowpan/frag/stats.h` header), so they are moved to their
own header. Since with this change it makes more sense to have the
statistics stored in their own sub-module, the pseudo-module is also
actualized.
2019-12-18 15:45:03 +01:00
Sebastian Meiling
737635573a makefiles: add export for OS variable
Export the OS variable for proper multi-OS support.
Currently only needed by 'pkg/jerryscript')
2019-12-18 10:07:55 +01:00
Sebastian Meiling
5eee821f6e makefiles: move exports to vars.inc.mk 2019-12-18 10:07:50 +01:00
Gaëtan Harter
418bcfb95d
makefiles: deprecate 'RIOTBOARD' for 'BOARDSDIR'
Replace using 'RIOTBOARD' by 'BOARDSDIR' to define external boards.
2019-12-16 15:35:05 +01:00
Gaëtan Harter
1427ef998f
makefiles/vars.inc.mk: document BOARDSDIR as external boards directory
Replace using 'RIOTBOARD' by 'BOARDSDIR' to define external boards.
2019-12-16 15:35:05 +01:00
Gaëtan Harter
c26710ac7e
makefiles/docker: handle mounting 'BOARDSDIR'
Handle setting 'BOARDSDIR' when building in docker.
2019-12-16 15:35:04 +01:00
Gaëtan Harter
41a891f284
tools: use 'BOARDSDIR' for the boards directory
Replace uses of 'RIOTBOARD' by 'BOARDSDIR' for tools.
2019-12-16 15:35:04 +01:00
Gaëtan Harter
90692ac92b
makefiles: use 'BOARDSDIR' for the boards directory in compilation
Replace uses of 'RIOTBOARD' by 'BOARDSDIR' during the compilation.
2019-12-16 15:35:04 +01:00
Gaëtan Harter
f76a2d201e
Makefile.include: introduce 'BOARDSDIR' for boards directory
Introduce a new variable 'BOARDSDIR' to use when referencing the base
boards directory.

This is a transition to allow defining external boards while still using
the `RIOT/boards` directory for like `boards/common` for example through
'RIOTBOARD'.
2019-12-16 15:35:04 +01:00
Leandro Lanzieri
b674710ae5 makefiles/kconfig: Add symbols for used packages 2019-12-13 15:21:16 +01:00
Martine Lenders
7b13781cd2
Merge pull request #12625 from miri64/gnrc_sock/enh/async-support
gnrc_sock: provide asynchronous event implementation
2019-12-09 12:39:58 +01:00
Sebastian Meiling
6e53e28a3a
Merge pull request #11943 from pokgak/sock_dtls_impl
pkg/tinydtls: add DTLS sock API implementation
2019-12-05 15:47:49 +01:00
Sebastian Meiling
f08fba1563 makefiles/suit: replace GNU cp -t with UNIX cp
UNIX `cp` command does not have the `-t` option like its GNU variant.
Hence, it usage breaks building RIOT e.g. on FreeBSD.
2019-12-05 09:13:20 +01:00
Leandro Lanzieri
1655001d85 makefiles: Add Kconfig related targets and dependencies
- The autoconf.h header file, generated with the current Kconfig
  configurations, is added as a build dependency.

- autoconf.h depends on the proper tool (genconfig) and a Kconfig.dep
  which contains the dependencies for the given application and board,
  this is generated from $(USEMODULE).

- The menuconfig target is added, to allow the configuration of modules
  using the Kconfig system.
2019-12-04 15:23:51 +01:00
96d90201ad
Merge pull request #11843 from fjmolinas/pr_tests_riotboot_py
tests/riotboot: migrate to full python test script
2019-12-02 18:28:14 +01:00
Francisco Molina
12761934bc tests/riotboot: migrate to full python test script 2019-12-02 17:27:35 +01:00
Cenk Gündoğan
07c84a4fc3
Merge pull request #12840 from leandrolanzieri/pr/makefiles_remove_ccache_basedir
makefiles: Generate proper dependency files when using ccache
2019-12-02 11:40:36 +01:00
Ken Bannister
353c0e91d0
Merge pull request #11036 from leandrolanzieri/pr/pkg/wakaama_rework
pkg/wakaama: Add basic LWM2M client implementation
2019-11-29 16:21:05 -05:00
Leandro Lanzieri
c52ad2df9e pkg/wakaama: Add LwM2M Client implementation 2019-11-29 20:31:41 +01:00
Francisco Molina
b14b5f3e67 makefiles/suit.v4.inc.mk: avoid basename in notify recipe 2019-11-29 15:03:14 +01:00
Leandro Lanzieri
d868c9c5c3 makefiles: Do not set CCACHE_BASEDIR environmental variable
When CCACHE_BASEDIR variable is set, ccache rewrites absolute paths into
relative paths before computing the hash that identifies the compilation
for all the paths under that directory.

The problem is that those paths are also used when the compiler is
called, so the generated dependency files (*.d) will have a relative
path to the object files, and thus, it will not match our rule for
compiling (we use absolute paths). As dependency files define the
targets this way, any change on its dependencies (e.g. an included
header file) will not re-trigger a build.
2019-11-28 15:40:22 +01:00
pokgak
0eaf0b23df pseudomodules: add sock_dtls 2019-11-28 13:54:06 +01:00
ea716e69e0
Merge pull request #12806 from maribu/atmega-fix-reset
tools/avrdude: Fix `make reset` with bootloader
2019-11-25 16:44:52 +01:00
benpicco
7f40b13d05
Merge pull request #12697 from maribu/stm32-programmer
boards: Common STM32 programmer/debugger/serial config
2019-11-25 15:27:22 +01:00
Marian Buschsieweke
f44dd00276
tools/avrdude: Fix make reset with bootloader
The generic approach of calling avrdude to perform a reset with `make reset`
does also work on board with a bootloader, but only if no other process is
also accessing the serial (e.g. via `make term`). `make test` first accesses
the serial and then performs `make reset` to not miss any output on the serial.
This however blocks when `make reset` also wants to access that serial.

As workaround, `make reset` is no only provided if the ATmega device is not
programmed via bootloader. Normally, those boards reset anyway upon `make term`,
which allows `make test` to work normally again.
2019-11-25 14:39:25 +01:00
Martine Lenders
95c6a785de
Merge pull request #12695 from leandrolanzieri/pr/dist/tools/add_kconfiglib
dist/tools: Add Kconfiglib
2019-11-25 11:51:02 +01:00
Francois Berder
4a31f94cfc many typo fixes
Signed-off-by: Francois Berder <18538310+francois-berder@users.noreply.github.com>
2019-11-23 22:39:07 +01:00
Marian Buschsieweke
16ee7aed32
Merge pull request #11350 from maribu/ina2xx
drivers/ina220: Changed to comply with RIOT's driver design goals & SAUL adaption
2019-11-22 23:36:50 +01:00
benpicco
09f647eee2
Merge pull request #12693 from maribu/neopixel-atmega
drivers: Added WS281x RGB LED driver for ATmega platform
2019-11-22 22:36:36 +01:00
Marian Buschsieweke
f424421f79
drivers: Renamed ina220 --> ina2xx
The INA219 has the exact same interface as the INA220 (including values and
semantics of the configuration register). Thus, this driver can be used for
both. The ina220 has been renamed to ina2xx to reflect this and pseudo modules
for the ina220 and ina219 have been added.
2019-11-22 19:53:51 +01:00
Hauke Petersen
b7f33bd84f drivers/bmx280: significant driver rework
bugs fixed:
- move global variables into device descriptor
- guard bus access (use acquire and release)

added functionality:
- enable SPI mode

structural improvements:
- reduce stack usage
- simplify the driver's structure
- centralize bus access code
- use assertions
- cleanup includes
- use shortcuts for bus access

style changes:
- fix line length
- cleanup and improve doxygen
- unify pointer notation (char *var over char* var)
- unify (error) return messages
- use `#ifdef MODULE_BME280` instead of `#if defined(BME..)`
- unify debug messages -> using `[bmx28] x: msg` scheme
2019-11-22 14:04:37 +01:00
Leandro Lanzieri
b642f2ea23 dist/tools: Add kconfiglib
Kconfiglib is a Kconfig implementation in Python 2/3.
See https://github.com/ulfalizer/Kconfiglib
2019-11-19 17:46:38 +01:00
a5785cdf9c
tools/serial.inc.mk: Support miniterm.py
miniterm.py is a simple terminal program that is included with pyserial.
This means that it is available wherever pyterm can work. It allows raw
access, does line translation and passes through special characters.

Co-authored-by: Juan Carrano <j.carrano@fu-berlin.de>
2019-11-19 15:07:32 +01:00
Marian Buschsieweke
1ed1906023
drivers/ws281x: Added driver for RGB LEDs
Added driver for the WS2812/SK6812 RGB LEDs often sold as NeoPixels, which due
to their integrated RGB controller can be chained to arbitrary length and
controlled with a single GPIO.
2019-11-18 22:45:24 +01:00
b4da3b464f make: pass BLOBS to makefiles/application.inc.mk
For regular modules, adding files to BLOBS is sufficient to create the
corresponding headers.

Application modules are different, as they use a minimal makefile
(makefiles.application.inc.mk) to build, thus application level
variables are not available.

This commit makes Makefile.include pass BLOBS to the application
Makefile as APPLICATION_BLOBS, and application.inc.mk use that variable
as value for BLOBS.

The indirection is necessary so submakefiles (e.g., those visited by
DIRS) do not hard override BLOBS.
2019-11-18 17:53:48 +01:00
a100c1c0ea makefiles/blob.inc.mk: introduce blob -> hdr utility makefile 2019-11-18 17:53:47 +01:00
fjmolinas
05782d1495 makefiles/tools/jlink.inc.mk: DEBUG_ADAPTER_ID as JLINK_SERIAL
- export JLINK_SERIAL for required targets
2019-11-18 13:04:42 +01:00
Marian Buschsieweke
135a37a4d1
makefiles/tools: Allow make reset via avrdude
In order to flash AVR devices, avrdude needs the ability to reset them:
Those using a bootloader will only enter it after a reset, and those programmed
via ISP also need a reset to enter ISP mode.

Sadly, avrdude has no option to reset the board. But running it without commands
will read and print the boards identification and fuse settings. For this, as
reset is needed. This commit uses this side-effect reset to implement make reset
for all AVR based boards
2019-11-17 14:46:48 +01:00
27e8caf3f3
Merge pull request #12526 from kaspar030/fix_fe310_default_optimization
cpu/fe310: change default optimization to "-Os"
2019-11-15 13:10:13 +01:00
Francisco
2adc5a23c2
Merge pull request #12361 from haukepetersen/add_nimble_autoconn
pkg/nimble: add simple BLE connection manager: autoconn
2019-11-14 14:02:24 +01:00
Hauke Petersen
004eb5e0b6 pkg/nimble: add 'autoconn' connection manager 2019-11-13 12:59:35 +01:00
Hauke Petersen
ca7578073a drivers: add support for QMC5883L mag sensors 2019-11-13 12:56:26 +01:00
Marian Buschsieweke
327060ca40
makesfiles/boards: Added common programmer config
Added common configuration for the programmer, debugger and serial for STM32
based boards.
2019-11-12 19:43:42 +01:00
Leandro Lanzieri
62b6e5e6ff makefiles/modules: Add note regarding 'IS_USED' macro. 2019-11-11 12:53:18 +01:00