Commit graph

85,247 commits

Author SHA1 Message Date
Roman Dobrodii
59b6c84e1f dts/arm/silabs: IADC support for EFR32BG27
Enable IADC for EFR32BG27 and add support for this board to
tests/drivers/adc_api test.

Signed-off-by: Roman Dobrodii <rdobrodii@antmicro.com>
2023-04-25 12:21:03 +02:00
Keith Packard
dc3f1d7d62 lib/cpp: Allow REQUIRES_FULL_LIBCPP to be selected by applications
Add a prompt to the Kconfig symbol so that applications can select this in
to guide C++ standard library selection towards configurations which
provide a complete implementation.

Signed-off-by: Keith Packard <keithp@keithp.com>
2023-04-25 06:20:49 -04:00
Emil Gydesen
303bcfdcb7 Bluetooth: Shell: Add testcases for AUDIO_RX and TX disabled
Add configurations where CONFIG_BT_AUDIO_TX and CONFIG_BT_AUDIO_RX
are disabled.

Fixes issues found in the BT shell implemented caused by these
configurations.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2023-04-25 12:20:38 +02:00
Emil Gydesen
2c5a249fdd Bluetooth: BAP: Add guard before accessing qos->latency
The qos->latency is not available for broadcast sink-only
builds.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2023-04-25 12:20:38 +02:00
Emil Gydesen
32e8392400 Bluetooth: BAP: Move TX guard to not cover verify funcs
Move the BT_AUDIO_TX guard so that it does not cover the
verification functions for valid_codec and qos, as they
are also relevant for receivers to verify what remote
devices send.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2023-04-25 12:20:38 +02:00
Erwan Gouriou
1ea132d95d drivers: ethernet: stm32: Set API V2 as default
Set STM32CubeHAL ethernet version in use as V2 by default, on series
supporting it (H7, F7, F4). Not yet available on F2 series.

Add a choice symbol to explicit V1 version as deprecated.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2023-04-25 12:20:30 +02:00
Roman Dobrodii
b9a5d0d644 boards/arm/efr32_thunderboard: MCUboot led, button
Add mcuboot DT aliases for LED and button. These can be used by MCUboot
when recovery mode entrance via GPIO is enabled.

Signed-off-by: Roman Dobrodii <rdobrodii@antmicro.com>
2023-04-25 12:20:20 +02:00
Roman Dobrodii
7969deb83c dts/arm/silabs: update partition definitions
- To link image loadable by MCUboot, zephyr,code-partition
must be set in the DTS.
- Move partition definitions from SoC DTS to the board DTS.
- Remove scratch partition since MCUboot does not recommend to use it.
- Increase bootloader partitions to 48K to fit recent MCUboot.

Signed-off-by: Roman Dobrodii <rdobrodii@antmicro.com>
2023-04-25 12:20:20 +02:00
Roman Dobrodii
563cc014dd soc/arm/silabs/bg2x: enable flash driver
It is enabled by default if Device Tree includes a flash controller,
and disabled otherwise. SoC defconfig should not touch it.

Signed-off-by: Roman Dobrodii <rdobrodii@antmicro.com>
2023-04-25 12:20:20 +02:00
Hein Wessels
6c934ab247 net: ip: only define socklen_t if not already defined
There is a chance that a previous declaration exists of socklen_t
through the unistd.h header. Luckily that header defines a macro
when it defines the type. This commit therefore uses that define to
know if the type has already been declared or not, similar to what
unistd.h does.

Closes #57195

Signed-off-by: Hein Wessels <heinwessels93@gmail.com>
2023-04-25 12:19:59 +02:00
Brandon Del Bel
5beb86865e drivers: ethernet: sam0: Fix receive buffer initialization
The SAM GMAC driver is not utilizing the entire receive buffer, causing
large packets to be dropped. Fix it by setting Receiver Packet Buffer
Memory Size Select to Full (RXBMS = 3) in the GMAC_DCFGR register.

Fixes #55701

Signed-off-by: Brandon Del Bel <delbel@umn.edu>
2023-04-25 12:19:52 +02:00
Dmitrii Golovanov
6ec39dca6b net: ZWP timeout explicit type on bit shift calculation
Fix tcp_send_zwp() retransmission timeout calculation to avoid sign
extension on bit shift operation: the uint16_t value was implicitly
promoted to 32-bit signed type with sign extension to uint64_t.

Signed-off-by: Dmitrii Golovanov <dmitrii.golovanov@intel.com>
2023-04-25 12:19:45 +02:00
Marc Herbert
16880cc381 scripts: gen_handles: silence "should it be static?" warnings
Some compilers and static analyzers warn when non-static (globals) are
not declared in some .h file. Tweak the generated code and add an
`extern` declaration before each device handle definition to make it
look it was declared in a (non-existent) .h file.

This makes the code a bit longer but it is already generated and very
repetitive anyway.

In the typical SOF configuration this silences about 150 sparse
warnings; as many as device handles.

Signed-off-by: Marc Herbert <marc.herbert@intel.com>
2023-04-25 12:19:33 +02:00
Kumar Gala
1a5d47ef6d modem: wncm14a2a: fix warning with isalpha/isdigit
When building with arm-clang we get warnings of the type:

wncm14a2a.c:828:14: error: array subscript is of type
			   'char' [-Werror,-Wchar-subscripts]:
                } else if (isalpha(c2) != 0) {
                           ^~~~~~~~~~~

Fix this by adding explicit casts to (int) when callinng isalpha()
or isdigit().

Signed-off-by: Kumar Gala <kumar.gala@intel.com>
2023-04-25 12:19:21 +02:00
Kumar Gala
48cd295a7f armstdc: add limits.h header
Add limits.h header that defines PATH_MAX as this is not defined
by the toolchain headers.

The value of 256 for PATH_MAX is based on how it is set in
lib/libc/minimal/include/limits.h.

Signed-off-by: Kumar Gala <kumar.gala@intel.com>
2023-04-25 12:18:55 +02:00
Kumar Gala
64c0ac2acb tests: http_server: Add missing zephyr_iterable_section
As the test uses iterable sections, we need to utilize
zephyr_iterable_section for targets that need linker script
generation like arm-clang.

So add zephyr_iterable_section() for the ROM sections that the
testcases utilizes.

Signed-off-by: Kumar Gala <kumar.gala@intel.com>
2023-04-25 12:18:42 +02:00
Roman Dobrodii
e343a51290 boards/arm/efr32_thunderboard: fix defconfig: REGULATOR, SI7210
Modify defconfig logic for BG2x Thunderboard:
- Board's defconfig will enable CONFIG_REGULATOR only if
CONFIG_SI7210 is enabled.
- CONFIG_SI7210 is enabled if CONFIG_SENSOR is set by the app.

Signed-off-by: Roman Dobrodii <rdobrodii@antmicro.com>
2023-04-25 12:18:34 +02:00
Keith Packard
1a830e2af6 tests/sprintf: Remove tests with NULL FILE pointer
The C language says that use of a NULL FILE pointer with stdio functions is
undefined behavior. Let's just remove them instead of expecting the minimal
C library to exhibit a specific behavior in this case.

This also avoids problems when not using -ffreestanding as in that case,
the C compiler may generate warnings, or even cause undefined behavior on
its own.

Signed-off-by: Keith Packard <keithp@keithp.com>
2023-04-25 06:18:26 -04:00
Keith Packard
25b2db74e0 libc/minimal: Add -fno-builtin option
This ensures that the compiler won't end up recognizing patterns in code
that map to known built-in functions, like noticing that the memcpy
implementation looks a lot like a memory copy operation that could be
replaced by a call to ... memcpy.

When built with -ffreestanding, this has no effect as that option always
enables -fno-builtin.

Signed-off-by: Keith Packard <keithp@keithp.com>
2023-04-25 06:18:26 -04:00
Keith Packard
bc2075e31b libc/minimal: Use CODE_UNREACHABLE in abort()
This allows this function to build without -ffreestanding for testing.

Signed-off-by: Keith Packard <keithp@keithp.com>

fixup
2023-04-25 06:18:26 -04:00
Keith Packard
27b7ace9fd libc/minimal: Create "real" functions for putc and putchar
When gcc is building without -fno-builtin, it will optimize calls like
printf("\n") into a call to putchar('\n'), but it won't use a static inline
in that case, instead insisting on a real function.

To make this a bit easier, adopt the usual C library practice of making
putc and putchar macros instead of static inline functions. There's no loss
of typechecking as the parameters are directly passed to underlying
functions with the same parameter types.

Signed-off-by: Keith Packard <keithp@keithp.com>
2023-04-25 06:18:26 -04:00
Vinayak Kariappa Chettimada
4fab10d0a1 doc: connectivity: Bluetooth: Controller SoC peripheral usage
Document the Controller SoC peripheral requirements for
Nordic Semiconductor SoCs.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2023-04-25 12:13:19 +02:00
Vinayak Kariappa Chettimada
7d81692fd9 doc: connectivity: Bluetooth: Add initial Controller sections
Add initial Controller architecture and design sections.
These are images contributed by Zephyr member companies and
collected over the various Face-to-Face meetings we have
been hold in the past years of Bluetooth Low Energy
Controller implementation.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2023-04-25 12:13:19 +02:00
Mariusz Skamra
6a92ebfc8e drivers: i2c: rv32m1: Fix compilation errors
This fixes compilation errors caused by using invalid macro parameters.

Signed-off-by: Mariusz Skamra <mariusz.skamra@codecoup.pl>
2023-04-25 08:55:57 +00:00
Gerard Marull-Paretas
d2917610a5 doc: release-notes: inform about SPI CS changes
Inform about the cs field change in struct spi_config. Also mention what
drivers must use from now on.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2023-04-24 21:29:55 +02:00
Gerard Marull-Paretas
1e0028ae3d drivers: spi: add spi_cs_is_gpio(_dt) helpers
Add spi_cs_is_gpio(_dt) helpers to check whether SPI CS is controlled by
GPIO or not. This both improves code readability and isolates SPI
internals.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2023-04-24 21:29:55 +02:00
Gerard Marull-Paretas
3f2c2d4130 drivers: spi: make SPI dt-spec macros compatible with C++
As of today it is not possible to use SPI dt-spec macros in C++,
something known and documented. The main reason is because `cs` property
is initialized using a compound literal, something not supported in C++.
This PR takes another approach, that is to not make `cs` a pointer but a
struct member. This way, we can perform a regular initialization, at the
cost of using extra memory for unused delay/pin/flags if `cs` is not
used.

Fixes #56572

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2023-04-24 21:29:55 +02:00
Gerard Marull-Paretas
1cf1994686 tests: mec15xxevb_assy6853: qspi: make module vars static
Make some module variables static, limiting their scope and guaranteeing
zero-initialization. This allows to remove some redundant code as well.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2023-04-24 21:29:55 +02:00
David Leach
cba6856933 nxp: hal: update to SDK 2.13.1 plus
Code updates:

- SDK 2.13.1
- Fix SEMC_ConfigureDBI bug
- Link nxp_adsp_imx8m board with MIMX8ML8 device

Signed-off-by: David Leach <david.leach@nxp.com>
2023-04-24 14:10:09 -05:00
Krzysztof Kopyściński
f428a93eba Tests: Bluetooth: Mesh: Add BLOB Transfer on LPN/Friend node BSIM tests
Tests if BLOB Client running on Friend Node can execute BLOB Transfer
with multiple LPNs running BLOB Server.

Signed-off-by: Krzysztof Kopyściński <krzysztof.kopyscinski@codecoup.pl>
2023-04-24 19:52:22 +02:00
Krzysztof Kopyściński
34eeddc624 Tests: Bluetooth: Mesh: extract LPN callbacks from test_friendship.c
This allows to establish friendship in othem tests outside of friendship
ones using same callbacks. This allows to avoid code duplication for
other tests that require friendship.

Signed-off-by: Krzysztof Kopyściński <krzysztof.kopyscinski@codecoup.pl>
2023-04-24 19:52:22 +02:00
Filip Kokosinski
0f00c1ecc9 boards/arm/mm_{feather,swiftio}: declare missing zephyr,flash chosen
This commit declares the missing `zephyr,flash` chosen field. Without
this, any Zephyr app is unable to compile properly for these boards.

This appeared after 48214e86b0.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2023-04-24 09:45:18 -05:00
Chen Xingyu
1939a46629 drivers: led: shell: Correct command help of set_brightness
The help text indicates the range of value is 0-255, while the actual
maximum value acceptable is 100.

This commit updates the text to accurately reflect the acceptable
value range for the set_brightness API.

Signed-off-by: Chen Xingyu <hi@xingrz.me>
2023-04-24 16:29:30 +02:00
Georges Oates_Larsen
fdaeabfdb6 net: conn_mgr: Fix event definitions
conn_mgr events cannot be used due to mistake in event definitions.

Fix these definitions so that events can be used.

Also patch hole in test coverage that allowed this in the first
place.

Signed-off-by: Georges Oates_Larsen <georges.larsen@nordicsemi.no>
2023-04-24 16:29:01 +02:00
Filip Kokosinski
a01dc33ef1 tests/drivers/adc/adc_api: add efr32xg24_dk2601b.overlay
This file adds the board overlay file for the `efr32xg24_dk2601b` board
to enable the `drivers.adc` test on this board.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2023-04-24 09:22:21 -05:00
Filip Kokosinski
480d199227 boards/arm/efr32xg24_dk2601b: enable IADC
This commit enables the `adc0` node in the `efr32xg24_dk2601b`
devicetree file.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2023-04-24 09:22:21 -05:00
Filip Kokosinski
fa711d03ed dts/arm/silabs/efr32mg24: add IADC support
This commit adds the `adc0` node to the EFR32MG24 devicetree file.

Signed-off-by: Filip Kokosinski <fkokosinski@antmicro.com>
2023-04-24 09:22:21 -05:00
Gerard Marull-Paretas
f6061a5ea0 drivers: sensor: lm77: use DT_ANY_INST_HAS_PROP_STATUS_OKAY
Replace custom macrology that was checking if any instance had the
int_gpios property with DT_ANY_INST_HAS_PROP_STATUS_OKAY.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2023-04-24 09:21:36 -05:00
Gerard Marull-Paretas
8605a8700c tests: lib: devicetree: test DT_ANY_INST_HAS_PROP_STATUS_OKAY
Add test coverage for the recently introduced
DT_ANY_INST_HAS_PROP_STATUS_OKAY.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2023-04-24 09:21:36 -05:00
Gerard Marull-Paretas
44ec128e8b devicetree: introduce DT_ANY_INST_HAS_PROP_STATUS_OKAY
Add a new macro, DT_ANY_INST_HAS_PROP_STATUS_OKAY that given a property
name, evaluates to 1 if any enabled instance of `DT_DRV_COMPAT` has the
property or to zero if it hasn't.

This macro can be useful in the context of drivers to optimize
resources.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2023-04-24 09:21:36 -05:00
Pawel Osypiuk
4b7f156403 IPC: rpmsg: Changed method of checking bounded endpoints
Initially that was checked by presence of name and now is changed
to check the flag.

Signed-off-by: Pawel Osypiuk <pawelosyp@gmail.com>
2023-04-24 15:45:09 +02:00
Lucas Tamborrino
9eef7996b9 drivers: hwinfo: esp32xx: implements get_reset_cause
Add support for all esp32xx boards and implements
get_reset_cause.

Signed-off-by: Lucas Tamborrino <lucas.tamborrino@espressif.com>
2023-04-24 15:44:31 +02:00
Hein Wessels
9ea250a445 samples: net: sockets: sntp_client: build for native_posix
Extend the sample to be built with native_posix
prevent issues like #57133 in the future. Also extends the qemu
build to build a "raw" configurationw without POSIX_API or
NET_SOCKETS_POSIX_NAMES.

Signed-off-by: Hein Wessels <heinwessels93@gmail.com>
2023-04-24 09:23:17 -04:00
Hein Wessels
2689e16670 net: sntp: support building without NET_SOCKETS_POSIX_NAMES
Fixes the compiler error that occurs when attempting to build
the SNTP library with CONFIG_NET_SOCKETS_POSIX_NAMES=n, while
using native_posix.

Closes #57133

Co-authored-by: Chris Friedt <cfriedt@meta.com>
Signed-off-by: Hein Wessels <heinwessels93@gmail.com>
2023-04-24 09:23:17 -04:00
Daniel Mangum
63e7f106ea docs(build): fix typo of in CONFIG_GEN_ISR_TABLES description
Fixes misspelling of `scans` in the description of `CONFIG_GEN_ISR_TABLES`
in the build system documentation.

Signed-off-by: Daniel Mangum <georgedanielmangum@gmail.com>
2023-04-24 13:36:28 +02:00
Krzysztof Kopyściński
0a55ec8d52 Bluetooth: Mesh: Add callback for received beacons
This adds callbacks for Secure and Private Network Beacons.
SNB callbacks are called after `secure_beacon_authenticate` ends
with success, and Private Beacon callback after Private Beacon
payload is decrypted succsessfully.

Signed-off-by: Krzysztof Kopyściński <krzysztof.kopyscinski@codecoup.pl>
2023-04-24 13:36:12 +02:00
Ryan McClelland
e01a5c52ca soc: mps3: add pmu defines for cmsis
The mps3 soc is missing PMU defines required for CMSIS. This
adds the defines __PMU_PRESENT and __PMU_NUM_EVENTCNT
enabling the api for the PMU.

Signed-off-by: Ryan McClelland <ryanmcclelland@meta.com>
2023-04-24 13:36:03 +02:00
Roman Dobrodii
f9e2d064c4 drivers/entropy/entropy_gecko_trng: support BG27
Add TRNG support for BG27, which has slightly different register
definitions in HAL, compared to BG22.

Signed-off-by: Roman Dobrodii <rdobrodii@antmicro.com>
2023-04-24 13:35:46 +02:00
Roman Dobrodii
56c38bd75d boards/arm/efr32_thunderboard: add Si7210 sensor
Enable Si7210 hall & temp sensor on BG22 and BG27 thunderboards.

Signed-off-by: Roman Dobrodii <rdobrodii@antmicro.com>
2023-04-24 13:35:36 +02:00
Georgij Cernysiov
d641be7fc8 runners: stm32cubeprogrammer: fix program files path for win x64
The '%ProgramFiles%' is not guaranteed to be 'C:\Program Files' on
Windows x64.

The value will be 'C:\Program Files (x86)' if the west is executed by
32-bit Python.

To correct the issue '%ProgramW6432%' must be used.

Signed-off-by: Georgij Cernysiov <geo.cgv@gmail.com>
2023-04-24 13:35:26 +02:00