Rather than hardcoding the human readable full names of the archs in the
board catalog, we now retrieve them dynamically from the archs.yml file.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Shield authors can now indicate an optional list of hardware features
that the shield supports, in the form of the same kind of "binding type"
already used for boards.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
The hw feature generation takes a long time. The HW_FEATURES_TURBO_MODE
option completely disables hw feature generation. Add a new option
HW_FEATURES_VENDOR_FILTER to be able to selectively enable hw feature
generation only for a given list of vendors. This option is useful
when working on board documentation pages.
Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
Declare the dts and binding files used for the supported hardware
directive as dependencies of doc pages that use them.
Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
Delete the MAX44009 sensor sample as it's fully generic and does nothing
that's not already in light_polling sample.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Make the recently added `title` attribute in dt bindings available
in the board catalog used by the board supported hardware directive.
Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
Commit 38b8790 introduced a pretty bad regression for boards without
revisions. Fix by correctly checking for actually undefined revisions
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Use runners.yaml from build metadata to gather info regarding board
supported runners, store the info in the board catalog, and allow
to display it as a table in a board's doc page using the
.. zephyr:board-supported-runner:: directive.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Add a 'title' keyword to the binding to provide a short
description of the binding, while 'description' serves as
the long description.
Signed-off-by: James Roy <rruuaanng@outlook.com>
Boards that have sysbuild enabled in Twister will have the build folder
for the hello_world sample in a subfolder, so update the code
accordingly.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
This show a nice widget to switch between the various board targets and
see their respective list of supported features.
The original HTML content of the page is preserved and JavaScript code
"patches" the page on-the-fly. This is so that the actual HTML content
(that e.g. search engines see) is complete and indexable (as well as to
provide useful information for folks who might have JavaScript disabled
altogether).
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Revision might be `0` so update the condition to not inadvertently
exclude boards with such revision number.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
The board revision should appear right after board name, not after the
qualifiers as was previously done.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Boards might have local bindings for which generating links using the
dtcompatible role doesn't work -- update the code accordingly so that
we can still provide a description of these custom bindings in the table
of supported features (but with no hyperlink).
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Skip "zephyr,xxx" compats when collecting data for the new Supported
Features table, since they don't represent hardware features.
Signed-off-by: Abderrahmane JARMOUNI <git@jarmouni.me>
Previous implementation was unneccesarily complex, and cutting of
words such as "802.15.4" to "802.".
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Update the gen_board_catalog.py logic to also capture lineno for
each devicetree node. Use that info in the supported hardware list to
create clickable elements that directly take the user to the
corresponding line in the devicetree file on Github.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Improve the board supported hardware feature catalog generation and
`.. zephyr:board-supported-hw` directive:
- Differentiate on-chip vs on-board hardware features
- Added count information when a given IP (compatible) appears multiple
times.
- Show okay *and* disabled features
- Improve table layout and readability
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Introduce a new directive for displaying hardware features supported by
a board, using information available in the devicetree.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Add a new hardware features filter to the board catalog that allows
users to filter boards based on their supported hardware capabilities.
The features are extracted from the devicetree files and organized by
binding type.
Key changes:
- Extract hardware feature descriptions from devicetree bindings
- Add HW_FEATURES_TURBO_MODE option to skip feature generation for
faster builds (similar to DT_TURBO_MODE)
- Add tag-based UI for filtering boards by hardware features
The feature can be disabled for faster documentation builds using
-DHW_FEATURES_TURBO_MODE=1 or by using 'make html-fast'.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Add a CLI argument for specifying individual files to be added to the
parsing. This is useful for downstream users that wish to import files
such as `bindings/spi/spi-device.yaml`, without also pulling in all the
associated SPI controllers.
Signed-off-by: Jordan Yates <jordan@embeint.com>
The API directory really isn't the best place for shell
documentation, which isn't API.
Created a new directory for Bluetooth shell documentation
and moved the ISO and LE Audio docs in there.
The existing bluetooth-shell.rst file was also split into
several new files, so that it follows the same structure.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Fixes: #69548
Support extending an existing board with new board variants.
This commit introduces the following changes to allow a board to be
extended out-of-tree.
The board yaml schema is extended to support an extend field which
will be used to identify the board to be extended.
A board 'plank' can be extended like this:
> board:
> extend: plank
> variants:
> - name: ext
> qualifier: soc1
For the rest of the build system this means that there is no longer a
single board directory.
The existing CMake variable BOARD_DIR is kept and reference the
directory which defines the board.
A new CMake variable BOARD_DIRECTORIES provides a list of all
directories which defines board targets for the board.
This means the directory which defines the board as well as all
directories that extends the board.
Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
For easier recognition PHYTEC boards have been prefixed with the SoC name.
As the new hardware model includes the SoC and cpu, this prefixing is not
needed anymore. All PHYTEC eval boards have an individual and unique name
and can be found easily via this name.
Signed-off-by: Jonas Remmert <j.remmert@phytec.de>
For easier recognition PHYTEC boards have been prefixed with the SoC name.
As the new hardware model includes the SoC and cpu, this prefixing is not
needed anymore. All PHYTEC eval boards have an individual and unique name
and can be found easily via this name.
Signed-off-by: Jonas Remmert <j.remmert@phytec.de>
hwmv2 established a convention that boards live in a folder named after
the vendor prefix.
RAK Wireless boards apparently missed the memo :)
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Boards under a folder that doesn't directly match a vendor prefix
incorrectly end up being categorized as "zephyr" since that's the only
prefix that is eventually found when navigating up the folder hierarchy.
This commits treats boards in the "others" and "native" folders as
special cases and associates them to an "Unknown/Other" category.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
This might be a leftover from a previous version but this is basically
silencing all Sphinx logs when generating the catalog from Sphinx -- not
good!
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
This makes dictionary entries from the boards catalog more
self-contained as the name of the board is now included in the entry.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Small change to the way image are stored in the catalog so that we know
where the source image is rather than anticipating on the final path
after build has happened. This allows to potentially reference the
source image from e.g. directives.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Store soc(s) information for each board in the catalog, as
well as populate a tree structure for the full list of
family->series->soc.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Now that we have full_name available in board.yml, stop trying
to "guess" full/commercial name of the board based on its
documentation.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
This commit adds support for generating an interactive catalog of all
the supported boards that can be included in the documentation using
the `.. zephyr:board-catalog::` directive.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
When generating the documentation pages for the devicetree bindings, add
a link to the .c file implementing the corresponding driver, or folder
likely to contain the driver implementation, using heuristics to
determine the most likely location of the driver sources.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Group all Enjoydigital board samples in samples/boards/enjoydigital to
keep samples/boards/ organized by vendor
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Group all Google board samples in samples/boards/google to
keep samples/boards/ organized by vendor
Added zephyr-code-sample directive to twinkie sample
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Group all Intel board samples in samples/boards/intel to
keep samples/boards/ organized by vendor
Added missing code-sample directive to the code relocation sample.
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Group all Quicklogic board samples in samples/boards/quicklogic to
keep samples/boards/ organized by vendor
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Group all STM32 board samples in samples/boards/st to
keep samples/boards/ organized by vendor
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
Group all Microchip board samples in samples/boards/96boards to
keep samples/boards/ organized by vendor
Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>