This fixes a regression from https://github.com/RIOT-OS/RIOT/pull/20443
which does cause the modules to re-appear in the side panel, but under
the name "Topics" rather than "Modules".
This contains minor changes to ease maintaining the document (e.g.
by using reference-style links so that an URL needs to be updated
only in a single place) and adds explicit anchors to ease linking to
a certain section.
This commit introduces a more robust GPIO mocking mechanism by utilizing
a 2-dimensional array. Each element of the array holds a gpio_mock_t
structure describing a pin's attributes such as value, mode, flank,
interruption callback, and callback argument.
This enhancement allows for the arbitrary simulation of GPIOs across
various microcontroller architectures using the current API, while
maintaining consistency through the use of the GPIO_PIN macro.
Additionally, it should be noted that only the maximum number of ports
and maximum number of pins can be altered according to the context.
The implemented API in gpio_mock.c remains rudimentary, providing no
validation but fulfilling the required functions. However, it remains
customizable as all its functions are marked as weak.
Signed-off-by: Gilles DOFFE <g.doffe@gmail.com>
This commit changes the link about supported boards in the README from the wiki page to the RIOT-OS website.
Since the wiki is not up to date.
See also [this pull request](https://github.com/RIOT-OS/riot-os.org/pull/109/files) that fixed the same link on the website.
This patch removes a largely redundant block of conditional includes.
The removed includes are moved into the family specific headers so that
the more specific headers may override defaults defined in the shared
headers.
The Cargo.lock of rust_riotmodules_standalone should explicitly list all
versions of software that would ever be pulled in by enabling RIOT
modules backed by a Rust crate. That way, the Cargo.lock file will not
spontaneously change because the software is being built with a
different set of modules enabled.
This did not happen before, because while the optional dependencies
could all be selected on the command line, they were not visible as
possible features to `cargo update`, and were thus not encoded in the
Cargo.lock file.