Commit graph

45 commits

Author SHA1 Message Date
Al Semjonovs
4858d995c6 gpio: Include GPIO_KEYS in documentation
Add gpio_keys_interface to GPIO documentation

Signed-off-by: Al Semjonovs <asemjonovs@google.com>
2023-01-04 10:36:00 +01:00
Carlo Caione
c464a962e1 cache: Add documentation
To disambiguate the Kconfig options available to the user.

Signed-off-by: Carlo Caione <ccaione@baylibre.com>
2022-12-13 16:31:42 +00:00
Declan Snyder
62abf16530 doc: board porting: Add clarifications
Clarify:
- Board directory name does not need to match board name
- Give example of multi board directory

Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
2022-12-07 14:23:32 +00:00
Gerard Marull-Paretas
e0c8de1e39 drivers: regulator: fixed: simplify implementation
Remove regulator-fixed-sync specialization, create a single driver that
is always synchronous. The asynchronous part is rarely/never used, so
let's keep things simple for now.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2022-11-30 15:49:30 +01:00
Gerard Marull-Paretas
cfbff7896e dts: bindings: pinctrl: place pincfg-node props at root level
Since we can include other binding files at any level (child,
grand-child, etc.) it makes no sense to maintain two copies of pinctrl
props definitions (pincfg-node/pincfg-node-group). Instead,
pincfg-node.yaml defines props at root level, and it is included where
needed, either child-binding or grandchild-binding.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2022-11-24 09:36:20 +01:00
Aaron Massey
5fa1abf1cb fuel_gauge: Add basic stub API doc.
Add a short stub doc as a placeholder for future documentation on the fuel
gauge API.

Signed-off-by: Aaron Massey <aaronmassey@google.com>
2022-11-19 17:56:05 -05:00
Evgeniy Paltsev
85076baf7b ARC: update port status
Update ARC port status page about XY DSP support for EM (WIP)
and single-thread kernel support added.

Signed-off-by: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
Signed-off-by: Evgeniy Paltsev <PaltsevEvgeniy@gmail.com>
2022-11-05 19:57:17 +01:00
Henrik Brix Andersen
f8a88cdb27 drivers: can: use flags fields for can_frame and can_filter structs
The can_frame and can_filter structs support a number of different flags
(standard/extended CAN ID type, Remote Transmission Request, CAN-FD format,
Bit Rate Switch, ...). Each of these flags is represented as a discrete bit
in the given structure.

This design pattern requires every user of these structs to initialize all
of these flags to either 0 or 1, which does not scale well for future flag
additions.

Some of these flags have associated enumerations to be used for assignment,
some do not. CAN drivers and protocols tend to rely on the logical value of
the flag instead of using the enumeration, leading to a very fragile
API. The enumerations are used inconsistently between the can_frame and
can_filter structures, which further complicates the API.

Instead, convert these flags to bitfields with separate flag definitions
for the can_frame and can_filter structures. This API allows for future
extensions without having to revisit existing users of the two
structures. Furthermore, this allows driver to easily check for unsupported
flags in the respective API calls.

As this change leads to the "id_mask" field of the can_filter to be the
only mask present in that structure, rename it to "mask" for simplicity.

Fixes: #50776

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2022-10-25 16:32:10 +02:00
Sam Hurst
76730da1a2 doc: add API documentation for USB-C VBUS Driver
This commit adds the USB-C driver API documentation in peripherals section
of the reference guide. The USB-C VBUS API is declared experimental.

Signed-off-by: Sam Hurst <sbh1187@gmail.com>
2022-10-22 18:38:35 -04:00
Tomasz Moń
5c42b42116 doc: Add missing kconfig option prefix
Kconfig options have to be prefixed with :kconfig:option: in order to
appear as links in generated html output.

Signed-off-by: Tomasz Moń <tomasz.mon@nordicsemi.no>
2022-10-13 13:16:06 -04:00
Erwan Gouriou
bd6a25a661 doc: porting: shields: Provide guidelines for nodelabel
In order to avoid device definitions conflicts when compiling shields
description with boards embedding similar devices, nodelabels of devices
in shield's devicetree file should differ from the nodelabels used in
board's devicetree file.
The form to be used was discussed in #50040 and agreed to be as
<device>_<shield_name>.

Update shields documentation to make it an explicit rule.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2022-10-03 10:16:57 +02:00
Erwan Gouriou
656382e7a4 doc: porting: shields: Update instructions for nodelabel definitions
Update requirements regarding board connectors compatibility now that
dtc versions prior to 1.4.2 can't be used anymore (current required
version is 1.4.6).

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2022-10-03 10:16:57 +02:00
Stephanos Ioannidis
4cf129e13b doc: peripherals: i2c: Fix incorrect hyperlink references
This commit fixes incorrect external hyperlink references.

Signed-off-by: Stephanos Ioannidis <stephanos.ioannidis@nordicsemi.no>
2022-09-29 12:20:14 +02:00
Stephanos Ioannidis
2352f7470b doc: peripherals: tcpc: Fix incorrect hyperlink references
This commit fixes incorrect external hyperlink references.

Signed-off-by: Stephanos Ioannidis <stephanos.ioannidis@nordicsemi.no>
2022-09-29 12:20:14 +02:00
Henrik Brix Andersen
8a2b26a004 doc: hardware: peripherals: canbus: controller: add start/stop calls
Add calls to can_stop()/can_start() to the CAN controller documentation
code snippet.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2022-09-13 16:06:50 +00:00
Daniel Leung
16b22fa46a doc: i3c: add a few bits about the new I3C API
This adds a fews bits about the newly introduced I3C API
for I3C controller.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2022-09-09 17:42:33 -04:00
Henrik Brix Andersen
795280e2a2 samples: drivers: can: rename the CAN counter sample
Rename the CAN controller "counter" sample to make room for more CAN
related samples.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2022-09-06 09:56:57 +02:00
Gerard Marull-Paretas
a202341958 devices: constify device pointers initialized at compile time
Many device pointers are initialized at compile and never changed. This
means that the device pointer can be constified (immutable).

Automated using:

```
perl -i -pe 's/const struct device \*(?!const)(.*)= DEVICE/const struct
device *const $1= DEVICE/g' **/*.c
```

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2022-08-22 17:08:26 +02:00
Henrik Brix Andersen
13c75417ba drivers: can: remove z prefix from public CAN API types
Remove the "z" prefix from the public CAN controller API types as this
makes them appear as internal APIs.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2022-08-18 10:19:29 +02:00
Daniel Leung
fa79a7b1df doc: porting/arch: add two funcs for MMU enabling
Two more functions are needed for MMU enabling on a new
architecture, so add them to the porting guide.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2022-08-09 12:27:21 +02:00
Thomas Stranger
cbd79250e3 doc: add api documentation for w1 driver
This commit adds the w1 driver API documentation in peripherals section
of the reference guide.
The 1-Wire API is declared as unstable in the API overview.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2022-07-05 23:06:45 +02:00
Ederson de Souza
a6a9a35d0a doc/hardware/arch: Add RISC-V information
This is just a stub with bits of information about RISC-V support on
Zephyr, that can and should be improved over time.

Signed-off-by: Ederson de Souza <ederson.desouza@intel.com>
2022-07-02 14:16:39 +02:00
Tom Burdick
88ca215eed i2c: Update API terminology
Updates the API and types to match updated I2C terminology. Replaces master
with controller and slave with target.

Updates all drivers to match the changed macros, types, and API signatures.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2022-06-29 17:51:31 +02:00
Tom Burdick
19f8ba6a04 docs: i2c: Documentation terminology updated
The i2c terminology has been updated as such master is now controller,
and slave is now target. Updates all doc comments and doc pages to use
updated terminology. Does not change types or API definitions.

Signed-off-by: Tom Burdick <thomas.burdick@intel.com>
2022-06-29 17:51:31 +02:00
Gerard Marull-Paretas
c62e5bc4fc doc: board_porting: remove pinmux example
Pinmux should no longer happen in board C files since the addition of
the pinctrl API, so remove such guidelines from the board porting
guidelines.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2022-06-06 15:39:50 -07:00
Mark Holden
44c388fb33 coredump: drivers: Add coredump device
Add a pseudo device diver with device tree bindings for coredump.
The device tree bindings exposes memory address/size values to be
included in any dump. And the driver exposes an API to add/remove
dump memory regions at runtime.

Signed-off-by: Mark Holden <mholden@fb.com>
2022-06-05 14:28:34 +02:00
Andrei-Edward Popa
d82c10f197 include: drivers: changed API function names for reset controller
assert API function needed to be changed because of newlib assert
macro name conflict

Signed-off-by: Andrei-Edward Popa <andrei.popa105@yahoo.com>
2022-05-26 13:02:19 -07:00
Yasushi SHOJI
bc35b1340c doc: uart: Make sure uart_poll_in is non-blocking
The documentation has wrongly stated that the function uart_poll_in() is
also a blocking function.  The uart_poll_out() is indeed a blocking
function but uart_poll_in() has never been since day one.

Make it clear that the uart_poll_in() is a NON-blocking function, and
uart_poll_out() IS a blocking.

This fixes #45468.

Signed-off-by: Yasushi SHOJI <yashi@spacecubics.com>
2022-05-13 10:03:31 -07:00
Mahesh Mahadevan
e3b15691e9 doc: Add MIPI API as an Experimental API
Add support for MIPI API

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2022-05-12 09:26:50 -05:00
Evgeniy Paltsev
dd60d800d0 doc: ARC: update ARC HW & tools support status
List of the changes:
 * add info about ARCv3 32bit HS5x which support has been
   upstreamed recently
 * mark HS6x MWDT toolchain support as Y

Signed-off-by: Evgeniy Paltsev <PaltsevEvgeniy@gmail.com>
Signed-off-by: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
2022-05-12 09:22:30 +02:00
Henrik Brix Andersen
18890828b8 drivers: can: split CAN classic and CAN-FD syscalls
Split CAN classic and CAN-FD syscalls into two:
- can_set_timing() -> can_set_timing() + can_set_timing_data()
- can_set_bitrate() -> can_set_bitrate() + can_set_bitrate_data()

Fixes: #45303

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2022-05-11 10:47:54 +02:00
Gerard Marull-Paretas
40c59da65c doc: hardware: pinctrl: inform about /omit-if-no-ref/
Update the documentation to inform about /omit-if-no-ref/ when using the
node-based approach.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2022-05-05 14:33:06 -05:00
Daniel DeGrasse
8dc3d510b8 doc: peripherals: add documentation for SDHC peripheral
add documentation for SDHC peripheral driver.

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2022-04-29 14:21:36 -05:00
Aleksandar Markovic
d95c126961 doc: Fix link to soc/arm/common/cortex_m/arm_mpu_regions.c
Corect link to source file arm_mpu_regions.c.

Signed-off-by: Aleksandar Markovic <aleksandar.markovic.sa@gmail.com>
2022-04-21 18:35:16 -04:00
Aleksandar Markovic
7af3b8cbb3 doc: Fix links to Zephyr include directory on Github
At some recent point, directory <zephyr-root>/include was moved to
<zephyr-root>/include/zephyr. However, links from documentation to
Zephyr source on Github were not updated. Update them now.

Signed-off-by: Aleksandar Markovic <aleksandar.markovic.sa@gmail.com>
2022-04-21 18:35:16 -04:00
Jordan Yates
bd40865aca doc: arch: semihost: fix broken link
Fix a broken link in the documentation added in #44358.

Signed-off-by: Jordan Yates <jordan.yates@data61.csiro.au>
2022-04-21 11:37:15 -04:00
Yuval Peress
41e7f30d0f include: update documentation to use zephyr/ prefix
Issue #41543

Signed-off-by: Yuval Peress <peress@google.com>
2022-04-21 07:40:54 -05:00
Jordan Yates
f2d80c1b11 doc: guides: semihost: added
Add a guide section on how to use semihosting with an example code
section on opening a file to read data from it.

Signed-off-by: Jordan Yates <jordan.yates@data61.csiro.au>
2022-04-21 13:04:52 +02:00
Aleksandar Markovic
8a32b05905 doc: Fix spelling errors in .rst files
Fix spelling errors in assorted .rst files. The errors were found
using a tool called 'codespell'.

Signed-off-by: Aleksandar Markovic <aleksandar.markovic.sa@gmail.com>
2022-04-19 11:48:26 +02:00
Jaska Uimonen
783a96a71b drivers: add new audio dai driver interface
The DAI (digital audio interface) API is a high level audio driver
abstraction. It provides support for the standard I2S (SSP), DMIC, HDA
and SDW backends. The API has a config function with bespoke data
argument for device/vendor specific config. There are also optional
timestamping functions to get device specific audio clock time.

Signed-off-by: Jaska Uimonen <jaska.uimonen@linux.intel.com>
2022-04-14 11:42:08 -04:00
Anas Nashif
0e727cf5a9 doc: get rid of reference section
Move last remaining items from reference section to the appropriate new
section in the new structure.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2022-04-07 16:35:19 +02:00
Anas Nashif
7ad2f76720 doc: remove guides and split content
Remove the old guides section and move all remaining items into new
sections.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2022-04-07 16:35:19 +02:00
Anas Nashif
b40344bf4b doc: move hardware emulator docs to hardware section
HW emulation goes under hardware support.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2022-04-07 16:35:19 +02:00
Anas Nashif
fdf3a430ad doc: move pinctrl to hardware support
Move pinctrl guides and APIs into hardware section.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2022-04-07 16:35:19 +02:00
Anas Nashif
df033b28de doc: create new Hardware Support section
Add new hardware section and move all related content from old
structure.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2022-04-07 16:35:19 +02:00