Commit graph

85,247 commits

Author SHA1 Message Date
Ryan Erickson
67598965fb lwm2m: software management: Fix URI value not being written
Create the URI resource when creating the object if
PULL support is enabled.

URI write callback should be post-write instead to ensure
the URI value is updated for the resource.

Signed-off-by: Ryan Erickson <ryan.erickson@lairdconnect.com>
2022-05-27 15:45:14 -07:00
Robert Lubos
0516d75d84 net: ethernet: Add Kconfig option to forward unrecognized EtherType frames
Add Kconfig option to the Ethernet L2 which allows to forward frames
with unknown EtherType further into the stack. This can be useful for
packet sockets, where further frame processing is application dependent.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2022-05-27 15:40:29 -07:00
Robert Lubos
eddb6c8111 net: sockets: packet: Remove obsolete TODO
It turns out that all of the items listed under TODO section for packet
socket implmeentation has been adressed over time, threfore remove the
obsolete TODO.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2022-05-27 15:40:29 -07:00
Robert Lubos
3cd88c72b1 tests: net: sockets: Update packet socket tests
Fix the existing DGRAM packet socket test. The test will now specify
LL destination address and protocol type. Also, update the fake ethernet
device send handler, so that it sets the packet network interface
corretly, so that the packet is not rejected at Ethernet L2.

Additionally, add two additional test cases verifying datagram packet
sockets. Fist test will exchange packet between RAW and DGRAM socket,
making sure that net stack forwards/removes L2 header correctly. The
second test verifies that it's possible to recieve a packet on both RAW
and DGRAM socket, making sure the received data has correct format.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2022-05-27 15:40:29 -07:00
Robert Lubos
96cc85146d net: conn: Add proper processing of DGRAM packet sockets
Datagram AF_PACKET sockets were not processed properly by the net stack.
Instead of receving a packet already processed L2, and thus with L2
header trimmed, it was receiving a raw, unprocessed packet.

Fix this by calling net_packet_socket_input() for the second time, after
L2 has processed the packet. An updated connection handler module will
forward the packet correctly based on the corresponding socket type and
packet L2 processing status.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2022-05-27 15:40:29 -07:00
Robert Lubos
4e38ddb3ec net: pkt: Add flag indicating if pkt has already been processed by L2
Add a new flag, indicating if packet has already been processed by L2 or
not. This can be used with AF_PACKET sockets, to select a proper socket
type for currently processed packet.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2022-05-27 15:40:29 -07:00
Robert Lubos
5ab0d54f79 net: context: Improve packet socket interface selection on sendto()
Currently, the packet socket implementation in net_context required that
netowrk interface to transmit the packet to was set on every sendto()
call. This spoils the whole idea of binding a socket. Fix this, by
checking first if the net_conext is already bound to a particular
interface, and if so, do not throw an error in case sll_ifindex field is
not a valid interface.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2022-05-27 15:40:29 -07:00
Keith Packard
d1dc3e823a samples/soc_flash_nrf: Fix printf usage with off_t values
off_t is often unsigned long, which means printf needs to use %lx. Insert
a cast in case the value is unsigned int.

Signed-off-by: Keith Packard <keithp@keithp.com>
2022-05-27 15:34:34 -07:00
Keith Packard
ced4ff29ea tests/c_lib: Set _GNU_SOURCE for qsort_r test
qsort_r is a GNU addition, so we need to #define _GNU_SOURCE to ensure
the prototype is defined in the header file.

Signed-off-by: Keith Packard <keithp@keithp.com>
2022-05-27 15:34:34 -07:00
Keith Packard
623a6d972b tests/mem_alloc: Eliminate alloc warnings. Define _BSD_SOURCE
We need to keep gcc from complaining about large calloc/malloc/realloc
sizes as that's what we're testing.

Define _BSD_SOURCE so that libraries sharing the glibc convention (like
newlib and picolibc) for controlling the API level visible to applications
will declare reallocarray(3), which is an OpenBSD extension to the C
library.

Signed-off-by: Keith Packard <keithp@keithp.com>
2022-05-27 15:34:34 -07:00
Keith Packard
d24e975a71 tests/kernel/common: Include errno_private.h
This ensures that we have a definition of z_errno in case
that isn't pulled in with errno.h

Signed-off-by: Keith Packard <keithp@keithp.com>
2022-05-27 15:34:34 -07:00
Keith Packard
b6f51c70e2 tests/spi_loopback: Fix buffer sizes to avoid buffer overflow
The initialized test buffers tx_data and tx2_data were not given a
specific size, but were initialized with one more byte than the
uninitialized buffers they get copied to. As a result, the memcpy found
a buffer overflow. Fix this by setting the source buffer sizes to match
the destination.

Signed-off-by: Keith Packard <keithp@keithp.com>
2022-05-27 15:34:34 -07:00
Keith Packard
b7313f85fe subsys/img_mgmt: Add zephyr/toolchain.h for STRINGIFY [v2]
Somehow two files in subsys/mgmt/mcumgr/lib/cmd/img_mgmt/src ended up
using STRINGIFY but nothing in their include path ended up pulling in
zephyr/toolchain/common.h. Include that via zephyr/toolchain.h.

v2:
	Use non-internal zephyr/toolchain.h header

Signed-off-by: Keith Packard <keithp@keithp.com>
2022-05-27 15:34:34 -07:00
Martí Bolívar
013a0034c9 cmake: modules: deprecate civetweb
This module has gone unmaintained and we do not have the resources to
respond to bug reports for it.

The TSC has decided to deprecate it for Zephyr v3.1 and remove it
entirely in Zephyr v3.2 unless a maintainer volunteers to keep this
module up to date and fix bugs.

This commit generates a warning at CMake time if this module is
compiled in. The warning will appear in the cmake output in the same
place that deprecated board or SoC warnings would.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2022-05-27 15:32:31 -07:00
Martí Bolívar
dcec8d028a cmake: add a mechanism for deprecating modules
We currently have mechanisms for deprecating both boards and SoCs.
However, we lack one for deprecating modules. This is inconvenient,
because we would like to do exactly that.

Handle this in a simple way by adding a new CMake file in the modules
directory which is responsible for warning the user about any
deprecated modules they may be using. See the source code comments for
more details about the approach.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2022-05-27 15:32:31 -07:00
Emil Gydesen
0813966545 Bluetooth: GATT: Remove use of BT_GATT_ATTRIBUTE macro for discover results
The macro was remove for the GATT discover callbacks,
as only 2 out of 5 parameters for
BT_GATT_ATTRIBUTE were used.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2022-05-27 15:29:36 -07:00
Michal Sieron
7b601b7f50 dts: riscv: litex-vexriscv: Fix clock node address
Also change its register indentation from spaces to tabs

Signed-off-by: Michal Sieron <msieron@internships.antmicro.com>
2022-05-27 15:27:11 -07:00
Michal Sieron
dc98691c97 drivers: i2s: i2s_litex: Calculate offsets from DT
To support both 8-bit and 32-bit Control/Status register variants, register
offsets need to be calculated from device tree.

Updated register data in device tree to the 32-bit CSR variant.
Renamed defines to be similar to other LiteX drivers.

Changed frequencies in clock-outputs nodes, so i2s/litex sample works.

Signed-off-by: Michal Sieron <msieron@internships.antmicro.com>
2022-05-27 15:27:11 -07:00
Michal Sieron
17a2c6d647 drivers: ethernet: eth_liteeth: Update driver
Correct width when accessing LITEETH_RX_LENGTH register.

Also update register data in device tree to the 32-bit CSR variant.

Signed-off-by: Michal Sieron <msieron@internships.antmicro.com>
2022-05-27 15:27:11 -07:00
Michal Sieron
e088d05159 drivers: i2c: i2c_litex: Use LiteX HAL
LiteX HAL should be used when accessing Control/Status registers to provide
compatibility between different data widths of CSRs.

Signed-off-by: Michal Sieron <msieron@internships.antmicro.com>
2022-05-27 15:27:11 -07:00
Michal Sieron
9f6c531da0 drivers: spi: spi_litespi: Update driver registers
Make driver take register info from device tree so it can work with both
8-bit and 32-bit CSRs.

Signed-off-by: Michal Sieron <msieron@internships.antmicro.com>
2022-05-27 15:27:11 -07:00
Michal Sieron
f45acb7d5f dts: riscv: litex-vexriscv: Update for 32-bit CSRs
Use register addresses and sizes from 32-bit CSR version

Signed-off-by: Michal Sieron <msieron@internships.antmicro.com>
2022-05-27 15:27:11 -07:00
Andrzej Puzdrowski
95d867e8ed drivers/flash/nrf_qspi_nor: fix for missing device deactivation.
anomaly_122_init() and anomaly_122_uninit() procedures implement
proper activate and deactivate procedures which are required for
achieve low power consumption.
The real workaround for the anomaly is buried inside hal function
nrf_qspi_disable() is called indirectly by the anomaly_122_uninit().

Therefore anomaly_122_init/uninit should be called for any
nrf QSPI device.

This patch renames functions and make call to them mandatory.
This fixes increased power consumtion issue on nRF53 device when
qspi was used.

Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
2022-05-27 15:23:12 -07:00
Andrzej Puzdrowski
afceecb2d3 manifest: MCUboot update
bring fixes from mcu-tools/mcuboot

- disables CONFIG_USB_DEVICE_REMOTE_WAKEUP as it is unsupported by MCUboot
- fix CONFIG_MCUBOOT_INDICATION_LED usage
- bootutil: zephyr: Fix not including tinycrypt path when needed
- bootutil: zephyr: Fix not linking with mbedtls when needed
- boot: zephyr: add Kconfig for arm cortex-m that implements a cache

Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
2022-05-27 15:21:57 -07:00
Dominik Ermel
38e554846a mgmt/mcumgr/lib: Improve CONFIG_IMG_MGMT_VERBOSE_ERR description
The description suggested logging information while it never
was the case: it was about adding additional "rsn":value pair
to an SMP response.

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2022-05-27 15:21:24 -07:00
Filip Kokosinski
b68730d02f boards/arm/96b_wistrio: fix GPIO initialization code
GPIO_OUTPUT_INIT_HIGH and GPIO_OUTPUT_INIT_LOW don't initialize pin
directions. Use correct initialization values.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2022-05-27 15:20:59 -07:00
Fabio Baltieri
93f20d7a7a include: add zephyr/ on script generated #include
Fix few script generated #include that needed the zephyr/ prefix.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2022-05-27 15:20:27 -07:00
Fabio Baltieri
e24314f10f include: add more missing zephyr/ prefixes
Adds few missing zephyr/ prefixes to leftover #include statements that
either got added recently or were using double quote format.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2022-05-27 15:20:27 -07:00
Dominik Ermel
26b59d6d17 doc/release-notes: Add mcumgr note on fixing MGMT_ERR_ENOMEM issue
The commit adds release notes on fixing github issue 44535,
which describes problem with incorrect use of MGMT_ERR_ENOMEM when
MGMT_ERR_EMSGSIZE should have been used.

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2022-05-27 15:19:16 -07:00
Vinayak Kariappa Chettimada
192e2a8f94 Bluetooth: Controller: Fix Data Length Request Cmd parameter checking
Fix Data Length Request CMD parameter checking to not
restrict invalid maximum Tx time values. This addresses
conformance test cases that provide maximum Tx time values
of 2128 us when not supporting Coded PHY in the Controller
implementation.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2022-05-27 15:19:06 -07:00
Vinayak Kariappa Chettimada
ad1aae29e5 tests: Bluetooth: EDTT: Fix incorrectly disabled legacy LLCP tests
Fix incorrectly disabled tests that had been passing on
legacy LLCP implementation in the Controller.

Regression introduced in commit f023b5f611 ("Bluetooth:
controller: push topic branch to main").

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2022-05-27 15:19:06 -07:00
Kevin Townsend
5d72b5b1a4 samples: tfm: Add fixed PID to custom partition
As per 'Adding Secure Partition' in the TF-M documentation,
every secure partition must have a unique 32-bit partition ID.

If no value is provided, one will be auto-allocated by the
TF-M build system, but this can lead to unpredictable behaviour
in some cases. One example is key derivation where the partition
ID is used as part of the key derivation inputs. Different builds
can results in different PID values being assigned, resulting
in inconsistent key derivation output.

To avoid these problems, this commit sets a fixed PID as a
best pratice.

A value of 1000 has been set to place it within the
'PSA and user Partitions' range (256 - 2999) described in the
documentation.

Signed-off-by: Kevin Townsend <kevin.townsend@linaro.org>
2022-05-27 15:18:01 -07:00
Fabio Baltieri
33cc6827ba modules: rpi_pico: fix boot_stage2 generation when using Makefiles
RPi Pico second stage bootloader generation seems to fail when using
Makefiles with:

gmake[2]: *** No rule to make target 'bootloader/boot_stage2.S'...

Changing the ExternalProject_Add byproduct to the actual generated file
and not the .S seems to fix the problem.

Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
2022-05-27 11:58:37 -07:00
Mateusz Sierszulski
9906db8e64 boards: doc: Update information about generating litex_vexriscv SoC
This commit updates information about running ZephyrOS on litex_vexriscv
SoC. It also add information about generating bitstream with
Zephyr on LiteX VexRiscv and LiteX SoC Builder.

Signed-off-by: Mateusz Sierszulski <msierszulski@antmicro.com>
Co-authored-by: Jagoda Szwedyk <jszwedyk@antmicro.com>
2022-05-27 11:56:55 -07:00
Carlo Caione
accc73b56b riscv: Remove unused defines.
Silly cleanup. Remove unused defines.

Signed-off-by: Carlo Caione <ccaione@baylibre.com>
2022-05-27 11:56:21 -07:00
Dino Li
5a1c084447 driver/serial: ns16550: set NS16550 as default variant
This add UART_NS16550_VARIANT_16550 configuration inside the choice
of UART_NS16550_VARIANT_NS16750 and UART_NS16550_VARIANT_NS16950.
The configuration is enabled by default to make NS16550 device to get
correct FIFO size configuration (16 bytes).

fixes #45783

Signed-off-by: Dino Li <Dino.Li@ite.com.tw>
2022-05-27 11:55:31 -07:00
Maureen Helm
4049ccf621 doc: release: Add sensor release notes for v3.1.0
Added comments about new drivers, bug fixes, and enhancements made to
sensor drivers since the last release.

Signed-off-by: Maureen Helm <maureen.helm@intel.com>
2022-05-27 11:54:22 -07:00
Daniel Leung
b5509cb234 tests: log_api: workaround QEMU crashing on qemu_leon3
When running twister during logging.log2_api_immediate_printk_cpp
on qemu_leon3, it reports unexpected eof even though the tests
reported successful. This results in twister reporting the test
being failed due to "unexpected eof".

When running it using west build, QEMU quits immediately after
printing PROJECT EXECUTION SUCCESSFUL instead of simply waiting
there for Ctrl-A X.

So workaround this by changing the main stack size to 4096.

Related to #46056

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2022-05-27 11:45:58 -07:00
Jonathan Rico
d3138c937f Bluetooth: host: don't timeout when reconfiguring an l2cap channel
The request timer started on the first l2cap channel when doing an MTU
reconfiguration has to be stopped when the response is received. Else the
channel will get into a bad state.

Signed-off-by: Jonathan Rico <jonathan.rico@nordicsemi.no>
2022-05-27 16:03:33 +02:00
Stephanos Ioannidis
735ddeb4a8 tests: newlib: thread_safety: Add min. RAM constraint for stress tests
This commit adds a separate minimum RAM constraint for the thread-
safety stress tests because they have a significantly higher RAM
usage compared to the basic functional tests.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-05-26 15:11:43 -07:00
NingX Zhao
1bc003ad6a tests: net: Adjusting the memory buffer for ETH
The net cases failed to run on sam_e70b_xplained
platform because failed to reserve data net buffers,so
adjusting the memory buffer to fix this.

Fixes #42857

Signed-off-by: NingX Zhao <ningx.zhao@intel.com>
2022-05-26 13:39:11 -07:00
Evgeniy Paltsev
48fd41a599 doc: coverage: fix coverage report generation instruction
Fix build step to enable CONFIG_COVERAGE_DUMP, otherwise
we won't get coverage data dump required for next step.

Signed-off-by: Evgeniy Paltsev <PaltsevEvgeniy@gmail.com>
Signed-off-by: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
2022-05-26 13:14:27 -07:00
Dominik Ermel
19259ab7db mgmt/mcumgr/lib: Fix image list command crashing when no device
It is possible, in case of two application images, to have no access
to one of devices of the secondary image.
When asserts are enabled, such situation causes crash even though the
image list command can handle it with no problem.
The commit removes the assert and adds additional swap type:
IMG_MGMT_SWAP_TYPE_UNKNOWN to indicate situations where it was
not possible to obtain swap type from boot_util.

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2022-05-26 13:08:35 -07:00
Kevin Townsend
54b2fc0774 doc: release-notes: Added note on TF-M 1.6.0
Add a note on the update to TF-M 1.6.0 and MbedTLS 3.1.

Signed-off-by: Kevin Townsend <kevin.townsend@linaro.org>
2022-05-26 13:06:43 -07:00
Stephanos Ioannidis
6448546553 timing: Fix symbol extern for C++
This commit adds `extern "C"` to `timing.h` so that C function names do
not get mangled when including this header file from a C++ source file.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-05-26 13:02:53 -07:00
Gerson Fernando Budke
f4e0cc76b9 doc: release: 3.1: Add notes about Atmel
Add 3.1.0 release notes for Atmel.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2022-05-26 13:02:40 -07:00
Gerson Fernando Budke
5b606cde65 doc: release: 3.1: Add notes about Gigadevice
Add 3.1.0 release notes for Gigadevice.

Signed-off-by: Gerson Fernando Budke <nandojve@gmail.com>
2022-05-26 13:02:40 -07:00
Andrei-Edward Popa
ca6aa62309 doc: releases: added reset controller in release notes 3.1
added reset controller in release notes 3.1

Signed-off-by: Andrei-Edward Popa <andrei.popa105@yahoo.com>
2022-05-26 13:02:19 -07: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
Stephanos Ioannidis
4b111c1ee8 Revert "modules: zcbor: kconfig: Disallow ZCBOR_VERBOSE with MINIMAL_LIBC"
This reverts commit 619fce9e0f now that
the missing PRIuFAST32 and PRIxFAST32 macros are defined by the minimal
libc.

Signed-off-by: Stephanos Ioannidis <root@stephanos.io>
2022-05-26 17:38:50 +02:00