This is one way we can support out of tree board definitions. Basically
all this needs is a board definition in the application source directory
that follows the same structure we have in the main Zephyr tree (also
allowing multiple custom boards). An application tree would look like
this for example:
boards/
CMakeLists.txt
prj.conf
README.rst
src/
with boards following the same structure as in Zephyr:
.
├── boards
│ └── x86
│ └── arduino_101
│ ├── doc
│ │ └── img
│ └── support
└── src
To use this, you need to specify the BOARD_ROOT variable on the command
line when building:
cmake -DBOARD=<board name> -DBOARD_ROOT=<path to boards> ..
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Courtesy of thomsten on IRC, add a link to a handy RTT viewer written in
Python and cross-platform.
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
Describe how to disable the UART console to avoid unexpected
redirections that will prevent the console output to go through RTT.
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
This patch adds documentation on the design and implementation of stack
objects for architectures which utilize MPU backed stack and memory
protection.
Signed-off-by: Andy Gross <andy.gross@linaro.org>
We want to support other toolchain not based on GCC, so the variable is
confusing, use ZEPHYR_TOOLCHAIN_VARIANT instead.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Add a new zephyr-env.cmd that mirrors the functionality of zephyr-env.sh
but on Windows platforms. It sets ZEPHYR_BASE to the location of the
script.
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
Correct 2 items in the Windows Getting Started doc:
* dtc-msys2 is now an upstream Chocolatey package
* Add instructions to clone and build Ninja for MSYS2
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
This patch updates information pertaining to userspace related security
features. Some of these have been added to releases and this needs to
be shown in the document.
Signed-off-by: Andy Gross <andy.gross@linaro.org>
Aligned sanitycheck command line options in doc
with the actual ones.
+
Minor fix in --coverage description.
Signed-off-by: Alberto Escolar Piedras <alpi@oticon.com>
The net_buf unit tests were doing some pretty hacky stuff with
defining a dummy _net_buf_pool_list variable to fulfil the linker
magic that happens with a real build. Until now the code got lucky in
that the simple net_buf_alloc() tests didn't depend on
_net_buf_pool_list being valid, however with the coming redesign even
net_buf_alloc will require proper setup of this.
Since the unit tests were extremely minimal, and not testing anything
beyond what tests/net/buf already tests, just remove them for now.
Signed-off-by: Johan Hedberg <johan.hedberg@intel.com>
When the Kconfig BOOTLOADER_MCUBOOT is selected, an overlay to place the
image at the slot0 location is required. In order to avoid having to do
this manually for all samples when targetting MCUboot, include the logic
inside the dts.cmake script to prepend a new common.dts file that then
conditionally includes mcuboot.overlay.
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
This package is not needed for building on fedora and currently causes
dependency issue with the fedora package manager, so remove it.
Fixes#6013
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Elevate prominence of some items buried in the services list that are
significant changes introduced in the last few releases.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Remove thread from memory domain API (k_mem_domain_remove_thread())has
only one argument which is thread ID as per the implementation whereas
documentation says there has to be two arguments, memory domain and
thread ID.Memory domain argument is not required as a thread belongs
to single memory domain at any point in time. Also memory domain
initialisation function (k_mem_domain_init()) should accept only 3
arguments i.e, memory domain name, number of parts and array of
pointers to the memory domain, instead of 4.
Signed-off-by: Spoorthi K <spoorthi.k@intel.com>
In a scenario where a platform harbours multiple interrupts to the
extent the core cannot support it, an interrupt controller is added
as an additional level of interrupt. It typically combines several
sources of interrupt into one line that is then routed to the parent
controller.
Signed-off-by: Rajavardhan Gundi <rajavardhan.gundi@intel.com>
Intro page update to list the features and major changes that
happened in the last year
fixes#5136
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Issue #5996 mentions the need for a shell feature that is somewhat
implemented already, but not documented: the "kernel" module has
commands to display information about the kernel version, uptime,
cycles, threads, and stacks, so add that to the subsystem/shell doc.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
This patch changes the manner in which we collect DTS overlay files so
that they comply with the same approach taken for configuration fragment
files (.conf).
Additionally it also documents the usage of those files in the
Application Developer Guide.
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
Added noprompt command to shell. It will disable printing
the prompt.
For the native port, when feeding commands from a file or
pipe the prompt reprinting after each command (without echoing)
just confuses the user.
Signed-off-by: Alberto Escolar Piedras <alpi@oticon.com>
The expected order for heading levels in our ReST documents is # for H1,
* for H2, = for H3, and - for H4. Some documents snuck in without
following this guideline.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
The existing docs immediately dive into the details without providing
the user with any kind of high level overview or description of the
threat model.
Signed-off-by: Andrew Boie <andrew.p.boie@intel.com>
This documentation is needed for developers who are porting new boards.
Fixing #5577
Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
Rework the Application Development Primer so that it describes the
differences between UNIX and Windows builds and uses Ninja by default,
in order to be compatible with all of them.
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
In order to be able to document the build on Windows and UNIX
systems, slight variations are required on the app commands
that are used throughout the documentation system.
This includes getting rid of the prompt symbol and providing commands
for both UNIX and Windows operating systems.
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
Since QEMU currently requires Linux or macOS to run, use "unix" as a
host OS for those documenting the build with it.
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
In order to properly support documenting building on both UNIX and
Windows, a new "host-os" option has been added to the Python script,
alongside with a switch to ninja as the default generator.
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
Since we're switching to ninja as a default generator for CMake, require
the ninja package as part of the requirements on macOS.
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
The new native Windows development environment no longer relies on MSYS2
or WSL at all. Instead it uses a standard Command Prompt and Windows
native tools. Document the installation and setup process in order to be
able to compile and develop.
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
The jquery provided by Sphinx 1.5.5 has a bug dealing with the
coordinates returned for offset().top for empty <span> tags, generated
by Sphinx for intra-document labels used to create hyperlink anchor
targets. As reported in PR #5591, some browsers (chrome for example)
don't scroll to the right spot in the document when we link to these
intra-document label points. jquery v3.1.2 fixes this. (When Sphinx
updates the jquery included in its release, we can remove our copy that
is overriding the copy installed in the generated output by Sphinx.)
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Document USB Vendor and Product IDs and their intended usage.
Set the Vendor and Product IDs and define the USB bcdDevice
Device Descriptor Device Release Number to be the binary
coded decimal representation of the Zephyr major and minor
kernel version number.
Signed-off-by: Patrik Flykt <patrik.flykt@intel.com>
Instead of wildcards we now are using environment variables to set the
path to Kconfig files for board and architecture. This break
documentation generation for Kconfig variables.
Using the env variables, we now set the path to what it used to be to
restore previous behavior.
Also, when something like this happens in the future, we should abort on
doc creation failure.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
Modern windows tools will properly handle windows or linux line endings
so remove the warning about windows tools.
Signed-off-by: David B. Kinder <david.b.kinder@intel.com>
Certain parts of Zephyr require Unix-style line-endings. To make sure
the line endings are not converted to Windows-style line-endings we
explicitly specify core.autocrlf=false when cloning.
This fixes#5557
Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
Fix broken links in getting_started. We now use "Implicit Hyperlink
Targets" instead of :ref:. I don't know why :ref: wasn't working.
Signed-off-by: Sebastian Bøe <sebastian.boe@nordicsemi.no>
Do not list unsupported doxygen options in the config file, those cause
the doc building process to fail on some systems.
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
This updates GAP, GATT, SM, L2CAP ICS values according to following
documents:
GAP.ICS.5.0.2
SM.ICS.5.0.0
GATT.ICS.5.0.1
L2CAP.ICS.5.0.1
Signed-off-by: Mariusz Skamra <mariusz.skamra@codecoup.pl>
Checking for TERM being undefined before doing tput with colors is not
enough; if TERM is defined as 'dumb', this thing also behaves dumbly.
In fact, the whole trying to do colors thing is dumb and causes all
kinds of headache in corner cases, so just wrap anything smelling like
color in a check for TERM being undefined or 'dumb' and be done with
it.
It shall take care of different automation mechanisms that don't
invoke 'make htmldocs' from a user console.
Signed-off-by: Inaky Perez-Gonzalez <inaky.perez-gonzalez@intel.com>
The APPLICATION_BASE variable in the example Kconfig file was copied
in from an (out of tree) application which relied on it during the
Kbuild days, but it's actually not needed by the CMake build system
and should be removed.
Signed-off-by: Marti Bolivar <marti@opensourcefoundries.com>
Some users might want to inherit their already existing Windows
environment variables into the MSYS2 system. This note explains how to
achieve this.
Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
When running on jenkins and other automation environment, TERM will
not be defined and thus tput errors out.
Signed-off-by: Inaky Perez-Gonzalez <inaky.perez-gonzalez@intel.com>