Commit Graph

472 Commits

Author SHA1 Message Date
Gerard Marull-Paretas
38b1f7a15e doc: move extensions to _extensions
Move all Sphinx related content to folders prefixed with an underscore.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-03-31 10:39:48 +02:00
Gerard Marull-Paretas
87659aa71b doc: board_porting: fix code block language
Language of the sample dts was not specified.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-03-29 15:40:57 -04:00
Daniel Leung
7ce8c77650 doc: guides: x86: how to specify extra page mappings
This adds to page on the x86 virtual memory about how to specify
extra page table mappings during build.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2021-03-28 08:30:06 -04:00
Carles Cufi
f938cc427e doc: contribute: Rework the process for external code inclusion
As per the agreements in the Process Group Meeting, rework the procedure
to include external code so that it reflects the reality of Zehyr today
with the choice between modules and integration into the main tree, and
decouple the non-Apache v2.0 license side of the question from the
process from importing 3rd-party code.

Signed-off-by: Carles Cufi <carles.cufi@nordicsemi.no>
2021-03-26 14:48:48 +01:00
Kumar Gala
9f67d1c741 doc: board_porting: Remove unneeded zephyr_include_directories
Remove zephyr_include_directories from example in docs as its not
needed.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2021-03-25 07:23:36 -04:00
Kumar Gala
7d35a8c93d kernel: remove arch_mem_domain_destroy
The only user of arch_mem_domain_destroy was the deprecated
k_mem_domain_destroy function which has now been removed.  So remove
arch_mem_domain_destroy as well.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2021-03-18 16:30:47 +01:00
Martí Bolívar
6479073853 doc: west: west init --mr changes for v0.10.1
See release notes for details.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-03-17 12:50:33 -05:00
Martí Bolívar
696e0da1a5 doc: west: remove some unnecessary 'master' usages
Although a project's default revision is still "master", we can change
some examples around to refer to "main" branches instead, in keeping
with the changes we're making for Zephyr more generally.

We cannot change the default project revision away from "master" in
west v0.10.x, because that would be a schema change. That will have to
wait for v0.11.0.

However, in the meantime, we are making some inclusive language
changes related to 'west init', because the --mr option is not
governed by a schema. These will be documented in the next commit.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-03-17 12:50:33 -05:00
Daniel Leung
f0a4b5beb2 doc: guides: virtual memory on x86
This adds a new page as a developer guide about virtual memory
on x86.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2021-03-16 15:03:44 -04:00
Martí Bolívar
85b6a28f7d doc: coding_guidelines: replace a whitelist replacement
Nothing in the tree is using the "passlist" term in the "blocklist /
passlist" pair. However, west is using "blocklist / allowlist" already
in a released version.

Recommend blocklist/allowlist instead of blocklist/passlist to avoid
having to add yet another possible replacement, since nothing is using
passlist right now.

Note that blocklist/allowlist is in widespread use throughout many
projects, including Chrome.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-03-12 09:23:54 -05:00
Martí Bolívar
d494ee4fb2 doc: west: 0.10.0 and 0.9.1 release notes
Combining these since they are related.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-03-11 11:08:25 +01:00
Martí Bolívar
287ff22106 doc: west: bump 'manifest: version:' docs
Adjust these for 0.10. This version parses differently as a string vs.
as a float. Document that quoting the value avoids the issue. Make
some other adjustments and improvements for clarity.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-03-11 11:08:25 +01:00
Marc Herbert
0d8a2bc820 doc: west: submodule 'name' is optional after west 0.9.0
See west commit 02444d058335

Signed-off-by: Marc Herbert <marc.herbert@intel.com>
2021-03-11 11:08:25 +01:00
Martí Bolívar
11f62ec49d doc: west: touch up remotes documentation
Try to make it a bit clearer.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-03-11 11:08:25 +01:00
Martí Bolívar
86990a7d9e doc: west: projects list is optional in v0.10
Document this fact.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-03-11 11:08:25 +01:00
Martí Bolívar
1f813bc7a3 doc: west: document west 0.10 group-filter + import behavior
The west 0.9 documentation for group-filter states:

    Only the top level manifest file’s manifest: group-filter:
    value has any effect. The manifest: group-filter: values in any
    imported manifests are ignored.

This turns out to have been a mistake, because all users who import a
manifest which makes some projects inactive will have to also manually
disable the same groups just to get the same default list of projects.

Example manifest fragments showing the issue:

   # my/west.yml
   manifest:
     projects:
       - name: upstream
         import: true

and:

   # upstream/west.yml
   manifest:
     group-filter: [-disabled-group]
     projects:
       - name: i-want-this
       - name: i-do-not-want-this
         groups:
         - disabled-group

As written, my/west.yml will include 'i-do-not-want-this' as an
active project.

This kind of leaky faucet has proven to be an unintuitive and poor
user experience. Users expect to get the default projects without
having to copy the group-filter for everything they import.

We can't reverse this behavior without pushing out a new schema
version, however: manifest schema 0.9, and therefore west 0.9.x, is
doomed to this bad behavior.

What we'll do to move past this is create a new schema version 0.10
that does the right thing, document the 0.10 behavior, and discourage
combining these two features in west 0.9.x.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-03-11 11:08:25 +01:00
Martí Bolívar
42df0ad925 doc: west: clean up manifest import details
Move the content related to handling imports that refer to multiple
files handled to right after the ordered list which defines the order
that manifests are imported. The current placement at the end of this
docs section was poorly chosen.

Create subsections for how projects and extensions are decided in the
final resolved manifest.

The project revisions in the top level example manifest fragment are
not important here. Remove them for clarity.

The top level manifest file need not be named west.yml now; adjust
accordingly.

This is prep work for adding a new subsection for group-filter.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-03-11 11:08:25 +01:00
Martí Bolívar
87c9c0cb2c doc: west: fix incorrect docs related to imports
The documentation suggests that 'west update PROJECT' can be done if
PROJECT is defined from some imported manifest. That's actually not
true. Fix it.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-03-11 11:08:25 +01:00
Martí Bolívar
5f8de51aed doc: west: move 'manifest imports' to bottom of manifest.rst
This diff is deceptively complicated. No text is being added or
removed; the only thing that's being done is that the entire 'Manifest
Imports' section is being moved down below the groups and submodules
sections.

This is prep work for a later commit which will document revised
semantics for mixing 'import' with 'group-filter'. This will make
'group-filter' values compose across imports, so it will be useful to
have documentation for group and group-filter before documentation for
imports. That will let us document the way they work together within
the 'Manifest Imports' section without using concepts that haven't yet
been defined.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-03-11 11:08:25 +01:00
Anas Nashif
cd1c2ab6ba samples: move testing -> subsys/testsuite
Move testsuite related items under subsys/testsuite.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2021-03-09 17:48:18 -05:00
Kumar Gala
b9ed2d33fd drivers: spi: Remove unused Kconfig symbols
Remove SPI_[0-8] and SPI_[0-8]_OP_MODES Kconfig symbols as no driver
uses them anymore.  We also cleanup board and sample code to remove
use of these symbols.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2021-03-09 04:53:46 -05:00
Julien Massot
3be1c120ad doc: tracing: add ram backend
This add documentation on how to use the tracing ram backend.

Signed-off-by: Julien Massot <julien.massot@iot.bzh>
2021-03-06 07:33:59 -05:00
Torsten Rasmussen
3a58b45ced cmake: board_check_revision() also accepts a list of valid revisions
To remove the need of empty config files, the `board_check_revision()`
now accepts a list of valid revisions.

As example:
```
board_check_revision(
  FORMAT MAJOR.MINOR.PATCH
  VALID_REVISIONS 0.1.0 0.5.0 0.10.0
)
```

The code is still compatible with the `<board>_<revision>.conf` changes
so that if different revisions of a board has Kconfig differences, then
there is no need to also specify the list of valid revisions.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2021-03-04 12:58:43 +01:00
Martí Bolívar
e54ac1d9fe doc: devicetree: bindings: fix outdated info
Inferred bindings (already mentioned above) make some text lower down
a bit inaccurate. Fix it up.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-03-03 08:18:10 -06:00
Kumar Gala
4aac908973 devicetree: add DT_NODE_FULL_NAME()
This macro returns a node's name with unit-adddress, given its node
identifier.

The node name is useful information for the user to utilize for debug
information, similar to DT_NODE_PATH, or DT_LABEL.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2021-02-25 19:24:08 -06:00
Andreas Düring
1ff7a8435b doc: Add Zephyr update instructions to beyond-gsg
Add explicit instructions on how to update the Zephyr
source code. For a beginner, it might not be obvious
how to do that. "west update" sounds like it'd do that,
which is not the case, however.

Signed-off-by: Andreas Düring <gh@duering-andreas.de>
2021-02-23 11:30:51 +01:00
Martí Bolívar
ae2836e867 doc: west: make it clearer how to override the default runner
Though BOARD_FLASH_RUNNER and BOARD_DEBUG_RUNNER are documented in the
debug host tools page, these variables are important enough to deserve
mention in the section dedicated to choosing a runner. Make it so.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-02-23 10:24:01 +01:00
Peter Bigot
d554d34137 device: add post-process of elf file to manage device handles
Following the idiom used for system calls, add script support to read
the initial application binary to identify which devices are defined,
and to use their offset in the device array as their unique handle
rather than the externally-defined ordinal from devicetree.  The
device dependency arrays are updated to use these handles.

Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
2021-02-19 15:46:16 -05:00
Ioannis Glaropoulos
2573f4b99c tests: remove nrf5340 PDK boards from test .yml files
Remove references to the nRF5340 PDK boards
from samples and tests .yml files.

Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
2021-02-15 07:59:43 -05:00
Lauren Murphy
2620cefc8e doc: fix typo in modules
Fixes typo in modules documentation.

Signed-off-by: Lauren Murphy <lauren.murphy@intel.com>
2021-02-10 20:34:23 -05:00
Martí Bolívar
b9ae1f6718 doc: west: improve troubleshooting for west update
Recommend curl -v or ssh -v.

Suggested-by: Marc Herbert <marc.herbert@intel.com>
Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-02-10 08:53:39 -05:00
Martí Bolívar
1803ddf54e doc: west: clean up example workspace
Suggested-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-02-10 08:53:39 -05:00
Martí Bolívar
0d0e472b8f doc: improve docs on building without west
Make it more obvious what needs to happen by spelling out the
commands.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-02-10 08:53:39 -05:00
Martí Bolívar
2f6c315f4f doc: improve manifest key docs
Create tables and Sphinx sections for the sub-keys of a manifest.

List the subsections in the same order they are documented.

This makes it easier to jump around in the document from the table of
contents and see what's in each subkey.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-02-10 08:53:39 -05:00
Martí Bolívar
f6958322cc doc: add missing docs for 'west zephyr-export'
Something should have been added to zephyr-cmds.rst when this
extension was added.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-02-10 08:53:39 -05:00
Martí Bolívar
e795a2bcaf doc: update west's workspaces.rst for 2.5
We haven't updated the example revisions in the alternate topologies
sections in a while. Update these for the upcoming 2.5 release.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-02-10 08:53:39 -05:00
Martí Bolívar
353efd04b1 doc: west: move advanced content out of 'basics'
With the documentation for west 0.9, the 'basics' page is completely
out of control. Reorganize it so it fits in a few pages, moving many
details out into other pages for the truly curious.

As part of this, create new pages for built-in commands (built-in.rst)
and esoteric details about workspaces (workspaces.rst).

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-02-10 08:53:39 -05:00
Martí Bolívar
673474b020 doc: clean up west index
Rename the 'basics' page to basics.rst, adding a redirect for the old
title.

Rearrange some other index pages to improve the flow:

- Put relatively stale content in moving-to-west.rst to the bottom. I
  expect pepole have either moved west or are choosing not to.

- Promote the release notes page higher up, since that seems more
  important.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-02-10 08:53:39 -05:00
Peter Bigot
b7da2e258f doc: inclusive language: reference I2C status issue
Status of addressing inclusive language concerns is embedded into the
coding guidelines.  Add a link to the corresponding issue for I2C.

Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
2021-02-09 13:59:17 -05:00
Peter Bigot
0866cbcd6c doc: coding guidelines: add an anchor for inclusive language guideline
Documentation for subsystems that use offensive terms by standard may
need to reference this section as justification for their continued
and new use.

Signed-off-by: Peter Bigot <peter.bigot@nordicsemi.no>
2021-02-09 13:59:17 -05:00
Torsten Rasmussen
2bf26ecf4d cmake: modules: remove Zephyr module duplicates from ZEPHYR_MODULE_NAMES
This allows users to overrule a module from command line.
As example, the Zephyr build system loads the module FOO from
`modules/FOO`, but user has a custom FOO locally at `custom/FOO` and
would like to use this module instead of manifest specified.

If user does `-DZEPHYR_EXTRA_MODULES=custom/FOO` the following error
will be seen:
```
The binary directory

  build/modules/FOO

is already used to build a source directory.  It cannot be used to build
source directory

  custom/FOO

Specify a unique binary directory name.
```

Removing duplicates from the list allows a user to use
`-DZEPHYR_EXTRA_MODULES=custom/FOO` and thus replace `modules/FOO` for
the current build.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2021-02-03 16:58:28 -05:00
Maureen Helm
3b4d2fcab9 doc: Add inclusive language coding guideline
Adds a new inclusive language coding guideline that prohibits
introducing new usage of offensive terms like master/slave and
blacklist/whitelist.

Adds a skeleton table that documents existing usage of offensive terms
and conversion status in affected subsystems. This table is incomplete
and needs to be filled in by subsystem maintainers.

Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2021-02-02 22:53:54 -05:00
Torsten Rasmussen
562717422d doc: dts: improve the DTS overlay file description for board revisions
Improve the DTS overlay description by adding information that a
`boards/<BOARD>_<REVISION>.overlay` will be merged with
`boards/<BOARD>.overlay` if both files exists.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2021-02-02 14:02:13 -05:00
Martí Bolívar
ac9fde5be6 doc: west reserves refs/west/
These Git refs are used by west as a scratch space. Let that be known,
but don't make any other guarantees.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-01-28 08:23:52 -05:00
Martí Bolívar
ed4d218abe doc: west: release notes for 0.9.0
The main new features are submodule support and project groups.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-01-28 08:23:52 -05:00
Martí Bolívar
fbcdb7e554 doc: west: API changes for 0.9.0
These are minimal.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-01-28 08:23:52 -05:00
Martí Bolívar
43a7f71332 doc: west: update schema version
West 0.9 has a new schema version; document it and fix a missed update
from 0.8. Whoops.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-01-28 08:23:52 -05:00
Martí Bolívar
8725ba8ae3 doc: west: add submodules
West 0.9, now with submodules!

This is a new feature which allows you to incorporate a project's Git
submodules into the workspace.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-01-28 08:23:52 -05:00
Martí Bolívar
a4bb1faec5 doc: west: add project groups
This is a new feature that allows you to associate projects with
groups, then force west to ignore a subset of the projects list by
disabling project groups. This can be selectively overridden via
configuration file to make west stop ignoring the projects within an
individual workspace.

An example use case is to define a project whose Git repository
requires credentials to pull. Putting such a project in a group named
"foo" and disabling group "foo" would make "west update" ignore the
project unless the user specifically configures the workspace to allow
"foo". After that, "west update" will pull the project as usual.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-01-28 08:23:52 -05:00
Martí Bolívar
560f685213 doc: west has moved to allowlist/blocklist
The west manifest import feature now uses the terms "allowlist" and
"blocklist" instead of "whitelist" and "blacklist", respectively.

The old terms are still supported by the tool for compatibility, but
the docs for this feature are going to use the new terms exclusively.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2021-01-28 08:23:52 -05:00