Commit graph

53684 commits

Author SHA1 Message Date
Sylvio Alves
4303cfdb3c hal: esp32: driver changes to allow HAL update
hal_espressif repository was updated from esp-idf v4.2
to esp-idf v4.3 to allow latest Espressif chips integration.
As a consequence, it added a few changes in drivers
and peripherals. To maintain bisectability, changes in this
PR cannot be split. Here are some details:

wifi: update linker script by adding libphy and new attributes.

spi: update some APIs and fixed missing wait_idle check

west.yml: esp32: update hal to new version

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2021-07-07 15:01:16 -04:00
Maureen Helm
b2b38903a7 soc: arm: nxp_imx: Link Segger RTT/SystemView sections in DTCM if chosen
Configures Segger RTT and SystemView data linker sections to DTCM by
default on i.MX RT SoCs if there is a zephyr,dtcm chosen node in
devicetree. This fixes a build warning in
samples/subsys/shell/shell_module for the mimxrt1170_evk_cm7 and
mimxrt1170_evk_cm4 platforms, which don't currently have a zephyr,dtcm
chosen node.

Note that there are runtime issues with Segger RTT and SystemView on
this board that need further debug, but submitting this patch now to
address nightly CI failures.

Signed-off-by: Maureen Helm <maureen.helm@nxp.com>
2021-07-07 14:30:14 -04:00
Gerard Marull-Paretas
cc2f0e9c08 pm: use enum for device PM states
Move all PM_DEVICE_STATE_* definitions to an enum. The
PM_DEVICE_STATE_SET and PM_DEVICE_STATE_GET definitions have been kept
out of the enum since they do not represent any state. However, their
name has not been changed since they will be removed soon.

All drivers and tests have been adjusted accordingly.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-07-07 14:13:12 -04:00
Sylvio Alves
59d07b0247 linker: esp32: Add missing iterable sections
This fixes missing PPP iterable and adds all
common-rom.ld iterables.

ESP32 and esptool does not support more then 16 segments, which
blocks including common iterables section as is.

This partially reverts commit ad0bf94f77

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2021-07-07 12:37:39 -04:00
Sylvio Alves
98108d9d71 linker: tweak link iterable with padding
This adds a new Z_LINK_ITERABLE_ALIGNED option that includes
alignment.

Main reason is to avoid repeting ALIGN() calls for every
iterable needed on ESP32 linker script.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2021-07-07 12:37:39 -04:00
Damian Krolik
bf3c6e7ba4 manifest: update openthread
Regular OpenThread upmerge to bring in a fix for a possible
infinite loop and support for DNS service subtypes.

Signed-off-by: Damian Krolik <damian.krolik@nordicsemi.no>
2021-07-07 07:47:52 -05:00
Andrzej Głąbek
ad0e3a40e8 samples: subsys: task_wdt: Minor corrections in config and doc
Use the actual minimum timeout used by the sample for task watchdog
channels (100 ms) as the configuration value for the fallback hardware
watchdog, to avoid unnecessary executions of the timer handler.

Add missing indentation in the documentation of the sample so that
the console output is rendered correctly.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2021-07-07 07:44:22 -05:00
Andrzej Głąbek
df1125a58c task_wdt: Fix the way the kernel timer is used
Do not use periodic executions of the timer handler, as in certain
circumstances (the fallback hardware watchdog used, one or more
task_wdt channel activated but none of them being ever fed) this
would lead to no callback/reset being executed for any channel.
Instead, schedule the next timeout from the timer handler function
when the function is executed for the dummy background channel or
for a channel that was deleted.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2021-07-07 07:44:22 -05:00
Robert Lubos
fe6e017649 tests: net: coap: Extend existing tests with additional checks
Make sure that internal CoAP packet fields are set correctly after
packet creation/parsing.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2021-07-07 07:40:55 -05:00
Robert Lubos
b369156e28 net: lwm2m: Fix how payload offset is calculated
Instead of manually computing payload offset, let the CoAP library do
the work, and use the payload pointer returned by the
`coap_packet_get_payload()` function instead.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2021-07-07 07:40:55 -05:00
Robert Lubos
0bc4e7619b net: coap: Fix coap_packet_get_payload function
The function did not work correct for packets generated with Zephyr
APIs, as `max_len` holds the entire buffer size, not the actual packet
size.

Additionally, unify how Payload Marker is handled in the calculation -
currently the coap parsing function adds it to the `opt_len` field,
which is counter-intuitive.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2021-07-07 07:40:55 -05:00
Robert Lubos
78e84eb3e7 net: coap: Adjust offset value after packet parsing
It is important that offset is set in the same manner, regardless of the
origin packet - it should indicate the final packet length in both
cases, when the packet is generated on the Zephyr side with CoAP APIs,
and when it's parsed from the UDP datagram. This allows for functions
like `coap_packet_get_payload()` to work correcty in both cases.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2021-07-07 07:40:55 -05:00
Marcin Niestroj
66766581c9 drivers: wifi: esp_at: notify send() caller about pending close
If stream socket is marked as pending close, make sure that send()
caller gets notified about it, so that application layer can decide to
stop trying to send anything more.

Signed-off-by: Marcin Niestroj <m.niestroj@grinn-global.com>
2021-07-07 08:25:34 -04:00
Marcin Niestroj
1ab0848eab drivers: wifi: esp_at: close stream socket after failure to send
So far send errors were silently ignored. This is okay for
UDP (datagram) sockets, as there is no guarantee that packets will
actually be sent successfully. In case of TCP (stream) stream sockets
however, application layer expects network stack to send requested data
as stream, without losing any part of it.

In case of send errors on stream sockets mark that socket to be closed
and stop sending any subsequent network packets, so that data stream
won't have any holes.

Signed-off-by: Marcin Niestroj <m.niestroj@grinn-global.com>
2021-07-07 08:25:34 -04:00
Mahesh Mahadevan
c3567c6f33 tests: arch: arm_irq_vector_table: Update to run on MXRT685
Fix for Issue#35658.
Update the custom vector table to add the OS Event timer
interrupt which is used on RT685 as the kernel system timer

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2021-07-07 08:25:06 -04:00
Chih Hung Yu
0ef77d4ea4 kernel: Fix negative mutex lock_count value
If you try to unlock an unlocked mutex, it will incorrectly
succeeds and decreases the lock count to -1.

Fixes #36572

Signed-off-by: Chih Hung Yu <chyu313@gmail.com>
2021-07-06 19:19:41 -04:00
Krishna Mohan Dani
4c38ca1625 drivers/flash: stm32: Gets maximum erase time from device tree
This commit removes the huge if condition section and is
replaced with DT APIs to get the maximum erase time of a
stm32 flash from dtsi.

Signed-off-by: Krishna Mohan Dani <krishnamohan.d@hcl.com>
2021-07-06 19:02:19 -04:00
Krishna Mohan Dani
ea9d21e39d dts/arm: Adding max-erase-time element to dtsi
This commit adds max-erase-time element which holds the
maximum erase time of a sector or page or half-page for
all the series of stm32.

Signed-off-by: Krishna Mohan Dani <krishnamohan.d@hcl.com>
2021-07-06 19:02:19 -04:00
Krishna Mohan Dani
21c74c6a50 dts/bindings: Adding max-erase-time for dt usage
This commit defines max-erase-time element inside flash-controller
to be part of device tree.

Signed-off-by: Krishna Mohan Dani <krishnamohan.d@hcl.com>
2021-07-06 19:02:19 -04:00
Vinayak Kariappa Chettimada
b81cecf8df Bluetooth: Controller: Use define for offset unit and SCA calculation
Use defines for offset unit and for calculation of Periodic
Advertising window widening using clock accuracy value.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2021-07-06 18:51:51 -04:00
Vinayak Kariappa Chettimada
6684af11b9 Bluetooth: Controller: Fix clock accuracy calculation scanning Aux PDU
Fix clock accuracy value used in the calculation of window
widening applied when scanning for auxiliary PDU.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2021-07-06 18:51:51 -04:00
Sidhdharth Yadav
2022240fea samples: drivers: nucleo_l552ze_q: Configuring ADC sample application
This commit configures ADC sample application using overlay. The ADC
sample has been tested in nucleo_l552ze_q platform.

Signed-off-by: Sidhdharth Yadav <sidhdharth.yadav@hcl.com>
2021-07-06 18:03:22 -04:00
Sidhdharth Yadav
de35942887 samples: drivers: stm32l562e_dk: Configuring ADC sample application
This commit configures ADC sample application using overlay. The ADC
sample has been tested in stm32l562e_dk platform.

Signed-off-by: Sidhdharth Yadav <sidhdharth.yadav@hcl.com>
2021-07-06 18:03:22 -04:00
Sidhdharth Yadav
24977d41c5 tests: drivers: STM32: Enabling ADC tests in nucleo_l552ze_q
This commit enables test_adc to build and run in nucleo_l552ze_q
platform.

Signed-off-by: Sidhdharth Yadav <sidhdharth.yadav@hcl.com>
2021-07-06 18:03:22 -04:00
Sidhdharth Yadav
63114b5365 tests: drivers: STM32: Enabling ADC tests in stm32l562e_dk
This commit enables test_adc to build and run in stm32l562e_dk
platform.

Signed-off-by: Sidhdharth Yadav <sidhdharth.yadav@hcl.com>
2021-07-06 18:03:22 -04:00
Sidhdharth Yadav
bdf425cd5c drivers: adc: Adding CONFIG_SOC_SERIES_STM32L5X in stm32l5 series
Allowing ADC to build in stm32l5 series.

Signed-off-by: Sidhdharth Yadav <sidhdharth.yadav@hcl.com>
2021-07-06 18:03:22 -04:00
Sidhdharth Yadav
bfa5427b12 boards: arm: nucleo_l552ze_q: Enabling ADC support in device tree
This commit enables ADC support in nucleo_l552ze_q platform in
device tree.

Signed-off-by: Sidhdharth Yadav <sidhdharth.yadav@hcl.com>
2021-07-06 18:03:22 -04:00
Sidhdharth Yadav
c691b50420 boards: arm: stm32l562e_dk: Enabling ADC support in device tree
This commit enables ADC support in stm32l562e_dk platform in
device tree.

Signed-off-by: Sidhdharth Yadav <sidhdharth.yadav@hcl.com>
2021-07-06 18:03:22 -04:00
Sidhdharth Yadav
d5d3be5f83 dts: arm: STM32: Enable ADC1 & ADC2 support in stm32l5 in dtsi
This commit adds ADC1 & ADC2 support in dtsi for stm32l5 series.

Signed-off-by: Sidhdharth Yadav <sidhdharth.yadav@hcl.com>
2021-07-06 18:03:22 -04:00
Aurelien Jarno
2a96cc0347 drivers: adc: STM32: fix support for internal voltage reference source
Commit c045cbd336 added support for internal voltage reference source,
but in practice only the temp sensor is supported. Fix that.

Also change the code to keep the existing paths so that VREFINT and
TEMPSENSOR can be used at the same time.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2021-07-06 18:01:57 -04:00
Pavlo Hamov
6a1416d0c2 soc: arm: cc32xx: Override Reboot implementation
Support cold, hot reboots. Cold will reboot all periherals

Signed-off-by: Pavlo Hamov <pasha.gamov@gmail.com>
2021-07-06 15:22:39 -05:00
Tomasz Michalec
becfed481e drivers: i2c: emul: Link emulators to correct bus
Fix i2c emulated bus initialisation code to use children of specific i2c
bus DTS node instead of first i2c bus instance.

Signed-off-by: Tomasz Michalec <tm@semihalf.com>
2021-07-06 15:19:40 -05:00
Evgeniy Paltsev
fbc9fbf92f ARC: save/restore accumulator registers on all ARCv2 HS CPUs by default
Accumulator registers (ACCL, ACCH) are used on HS CPUs not only
in case of FPU usage but also in case of MPY usage. We enable MPY
for all ARCv2 HS in commit
18a24c3f6 ARC: gcc-m-cpu: use -mcpu=archs as a default for ARCv2 HS
but we didn't enable accumulator registers management.

Let's enable accumulator registers save/restore on all ARCv2 HS CPUs
by default.

Signed-off-by: Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com>
Signed-off-by: Evgeniy Paltsev <PaltsevEvgeniy@gmail.com>
2021-07-06 15:17:26 -05:00
Watson Zeng
c6fcdc24ac arch: arc: update ARConnect ICD select mask when new cpu come online
The ARConnect Inter-core Debug Unit (ICD) provides additional
debug assist features in multi-core scenarios. It's useful to halt
other cores when one core is halted.

Before we program ICD in master core(core 0) initial stage, add
all cores to mask. so we need to make sure other slave cores have
launched and in running mode before we enable ICD in master core.

If we launch master core first, then launch slave cores by master
core conditionally, in this scenario, it's not OK.

Let's update arc connect debug (ARConnect ICD) select mask
when new slave core come online by slave core self, instead of
use hardcoded select mask.

Signed-off-by: Watson Zeng <zhiwei@synopsys.com>
2021-07-06 15:10:39 -05:00
Dario Binacchi
c3a067e841 drivers: adc: stm32: fix f3x series
The patch fixes driver compile errors and ADC management for the f3x
series. It was developed and tested for the stm32f373 variant.

Tested-by: Dario Binacchi <dariobin@libero.it>
Signed-off-by: Dario Binacchi <dariobin@libero.it>
2021-07-06 15:08:04 -05:00
Fabio Baltieri
c32a96af6a boards: nucleo_wl55jc: enable power management support
Enable lptim1 and configure the suspend power state for nucleo_wl55jc.

Signed-off-by: Fabio Baltieri <fabio.baltieri@gmail.com>
2021-07-06 09:51:22 -04:00
Fabio Baltieri
2fc87f961b soc: stm32wl: add power management support
This adds power management support for the STM32WL series.

Suspend-to-idle is mapped to the three stop states (wake up from any
EXTI, including LPTIM), and soft-off can trigger either standby or
shutdown (wake up in reset).

Signed-off-by: Fabio Baltieri <fabio.baltieri@gmail.com>
2021-07-06 09:51:22 -04:00
Fabio Baltieri
9c82898127 drivers: stm32_lptim_timer: add support for STM32WL series
Add the lptim1 device node definition and enable the corresponding
exti interrupt in sys_clock_driver_init().

Signed-off-by: Fabio Baltieri <fabio.baltieri@gmail.com>
2021-07-06 09:51:22 -04:00
5d55730cf6 libc: minimal: add size optimized string functions
The current implementations of memcpy and memset are optimized for
performance and use a word based loop before the byte based loop.

Add a config option that skips the word based loop. This saves 120
bytes on the Cortex-M0+ which is worthwhile on small apps like a
bootloader.

Enable by default if SIZE_OPTIMIZATIONS is set.

Signed-off-by: Michael Hope <mlhx@google.com>
2021-07-06 07:40:38 -04:00
Anas Nashif
395b0c3a24 Revert "Bluetooth: samples: Add ISO connected benchmark sample"
This reverts commit 94338c1640.

This is currently failing in CI.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2021-07-05 21:56:09 -04:00
Anas Nashif
0898388080 Revert "drivers: ieee802154: configure IE header injection for nRF5"
This reverts commit bde592e91a.

This is causing build failures. Original PR #36008.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2021-07-05 18:54:35 -04:00
Piotr Pryga
c1cff75589 samples: Bluetooth: df_tx: Add information about nRF5340 to README.rst
Add information about support of nRF5340 SOC in the sample
README.rst.

Signed-off-by: Piotr Pryga <piotr.pryga@nordicsemi.no>
2021-07-05 14:46:49 +03:00
Piotr Pryga
cd71b07d89 samples: Bluetooth: df: Move BLE controller conf into board specific file
Move configuration related with BLE controller into board specific file.
That is required to allow building the sample for nRF5340 where BLE
controller is not part of the sample image.

Signed-off-by: Piotr Pryga <piotr.pryga@nordicsemi.no>
2021-07-05 14:46:49 +03:00
Piotr Pryga
8237c21c1a samples: Bluetooth: df_rx: Add information about nRF5340 to README.rst
Add information about support of nRF5340 SOC in the sample
README.rst.

Signed-off-by: Piotr Pryga <piotr.pryga@nordicsemi.no>
2021-07-05 14:46:11 +03:00
Piotr Pryga
a25764b19c samples: Bluetooth: df_tx: Add config for support the nRF52820
Add required configuration and DTS overlay for support the nRF52820 SOC.

Signed-off-by: Piotr Pryga <piotr.pryga@nordicsemi.no>
2021-07-05 14:36:39 +03:00
Kamil Piszczek
bd7d28ef7d bluetooth: services: hrs: use template for logging configuration
Use template for logging configuration in Bluetooth HR service.

Signed-off-by: Kamil Piszczek <Kamil.Piszczek@nordicsemi.no>
2021-07-05 14:34:25 +03:00
Kamil Piszczek
dd5a0d1997 bluetooth: services: hrs: add characteristic permission config
Added a configuration of characteristic access permissions for
Bluetooth Heart Rate service.

Signed-off-by: Kamil Piszczek <Kamil.Piszczek@nordicsemi.no>
2021-07-05 14:34:25 +03:00
Chris Pearson
52837aaa49 Bluetooth: samples: Correct "Heart Rate" comment
This is a simple comments fix. This sample code is for the
"Health Thermometer Service", but at one location the comments read
"Heart Rate Service".

The change replaces "Heart Rate" with "Health Thermometer".

Signed-off-by: Chris Pearson <ctpearson@gmail.com>
2021-07-05 14:33:27 +03:00
Tim Lin
91a6b286c9 ITE: drivers/i2c: it8xxx2: add mutex lock
Add mutex lock to prevent race conditions.

Signed-off-by: Tim Lin <tim2.lin@ite.corp-partner.google.com>
2021-07-03 08:03:10 -04:00
Gerson Fernando Budke
fe505d3d5e boards: arm: cy8ckit_062_ble: Move shared to common
Move shared resources from m0 to common.  This enable shared hardware
definition between the two cpu cores.

Signed-off-by: Gerson Fernando Budke <gerson.budke@atl-electronics.com>
2021-07-02 22:50:29 -04:00