Commit graph

56,286 commits

Author SHA1 Message Date
Andrzej Puzdrowski
1e4529a7a3 drivers/eeprom/eeprom_emulator: fix mutex usage with rambuf
In the eeprom read operation, when rambuf was available
mutex was not unlocked after the read. Consequence of that is
that device was blocked after that read for incoming operations.

This commit fixes the issue

Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
2021-07-26 19:29:23 -04:00
Mulin Chao
68bda35b32 driver: pmc: npcx: replace pmc offset macros with inline functions.
This CL replaces offset macros of pmc 'multi-registers' such as
PWDWN_CTLn with internal inline functions for better readability.

Signed-off-by: Mulin Chao <mlchao@nuvoton.com>
2021-07-26 19:26:52 -04:00
Mulin Chao
66dc1482e7 driver: scfg: npcx: replace scfg offset macros with inline functions.
This CL replaces offset macros of scfg 'multi-registers' such as DEVALTn
and LV_GPIO_CTLn with internal inline functions for better readability.

Signed-off-by: Mulin Chao <mlchao@nuvoton.com>
2021-07-26 19:26:52 -04:00
Daniel Wong
14f09a3b00 doc: application: Document west outside workspace
Document that using west outside of a west workspace needs
ZEPHYR_BASE to be set. If this is not set, the instructions
on the "Application Development" page don't work.

Previously, "Getting Started Guide" and "Application Development"
pages told you to run `zephyr-env.sh/zephyr-env.cmd` which would
set ZEPHYR_BASE, but this was removed in Zephyr 2.3.0

Signed-off-by: Daniel Wong <drojfjord@gmail.com>
2021-07-26 12:31:19 -04:00
Andrzej Puzdrowski
f6641d70d5 drivers/eeprom/eeprom_emulator: fix mutex usage with rambuf
In the eeprom read operation, when rambuf was available
mutex was not unlocked after the read. Consequence of that is
that device was blocked after that read for incoming operations.

This commit fixes the issue

Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
2021-07-26 12:27:22 -04:00
Scott Worley
6b3749d2ff Microchip: MEC172x Add aggregated interrupt driver
Add driver implementation and header files for a MEC172x
aggregated interrupt driver. Enable the parent(ECIA) node
to have the driver initialize interrupt hardware for use.
Enable child nodes for those GIRQs used for aggregation.
Refer to chip documention for the list of GIRQs restricted
to aggregation and those which support direct mode.
Add chip level device tree node for MEC172x EC interrupt
aggregator parent and GIRQ children. Each child node contains
a list of sources representing the source bit position in the
GIRQ registers.
Add DT bindings for ECIA and GIRQ nodes.
Add build file(s) and configuration items for the MEC172x ECIA
aggregated interrupt driver. Add and enable the MEC172x interrupt
driver on the MEC172x evaluation board(EVB). Enable parent node to
initialize ECIA hardware. Child nodes are left disabled until a
future driver needs them.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2021-07-26 12:24:52 -04:00
Oliver Yang
d5af33eaf0 drivers: clock_control: stm32h7: fix comment mistake 'bansk'
Change comment word 'bansk' to 'banks'.

Signed-off-by: Oliver Yang <cameledyang@pm.me>
2021-07-26 12:23:41 -04:00
Fabio Baltieri
532a85ccd9 tests: net: dns-sd: add a test case for setup_dst_addr
Add a test case for mdns setup_dst_addr.

Signed-off-by: Fabio Baltieri <fabio.baltieri@gmail.com>
2021-07-26 10:46:50 -04:00
Fabio Baltieri
c25b04bfd3 net: mdns: set the correct type of dst addr
Check for the address family of the packet when setting the multicast
destination address used in the response. Current code checks either the
query type or the stack configuration, which can result in setting the
wrong type of address for the frame.

Signed-off-by: Fabio Baltieri <fabio.baltieri@gmail.com>
2021-07-26 10:46:50 -04:00
Fabio Baltieri
1d500f075c net: dns_sd, mdns: add few missing strdup
Add few missing log_strdup found when running the mdns code with
debugging enabled.

Signed-off-by: Fabio Baltieri <fabio.baltieri@gmail.com>
2021-07-26 10:46:50 -04:00
Emil Lindqvist
0e8c04a9ee settings: fs: check directory presence before attemp to create it
In order to avoid to generate warning log message from
file system, first check if directory exists before trying to
create it.

Signed-off-by: Emil Lindqvist <emil@lindq.gr>
2021-07-26 10:44:42 -04:00
Emil Lindqvist
1e9f1231fe logging: fs: treat absent file on stat as no error
There are multiple reasons to want to find out if file or
directory exists, for example to create it. Stating and
finding out it doesn't exist should not cause an LOG_ERR call as
this gives information to the user in a normal call case.

Fixes #35718

Signed-off-by: Emil Lindqvist <emil@lindq.gr>
2021-07-26 10:44:42 -04:00
Maksim Drachov
3f0394b830 samples: net: adjusted Kconfig settings for pocket and tcp samples
This change ensures a succesful built on both examples

Signed-off-by: Maksim Drachov <maksim.drachov@outlook.com>
2021-07-26 15:30:38 +02:00
Vinayak Kariappa Chettimada
9a1b5c68f5 Bluetooth: Controller: Explicitly check previous auxiliary PDU for ADI
To be consistent in how order header flags are handled when
updating the common header format fields, explicit check
for ADI flag in previous auxiliary PDU buffer.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2021-07-26 15:30:04 +02:00
Vinayak Kariappa Chettimada
ad8f4d368a Bluetooth: Controller: Remember last used DID for each SID
Remember last used DID for each SID, so that DID value used,
when updating the advertising PDU fields, change between
consecutive changes to PDU fields.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2021-07-26 15:30:04 +02:00
Vinayak Kariappa Chettimada
a919e1ba40 Bluetooth: Controller: Make Extended Advertising DID unique
Make the Extended Advertising DID value updated to be unique
for every new advertising set created.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2021-07-26 15:30:04 +02:00
Vinayak Kariappa Chettimada
194a9674b8 tests: Bluetooth: bsim: Verify AD Data backup
Verify that AD Data when switching to Legacy Directed, and
restore it when switching back to Legacy Non-Directed
Advertising mode.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2021-07-26 15:29:55 +02:00
Vinayak Kariappa Chettimada
d19476c3c2 Bluetooth: Controller: Fix corrupt AD data after directed advertising
Fix corrupt AD data used after directed advertising by
storing a backup of the AD data before switching to directed
advertising. Restore back the AD data with switching to non-
directed advertising.

The fix also addresses AD data backup when switching between
Legacy and Extended Advertising.

Fixes #18850.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2021-07-26 15:29:55 +02:00
Vinayak Kariappa Chettimada
4e6357e549 Bluetooth: Controller: Resolve AdvA in AUX_CONNECT_RSP PDU
Add implementation to resolve AdvA in the received
AUX_CONNECT_RSP PDU before generating the connection
complete.

Signed-off-by: Vinayak Kariappa Chettimada <vich@nordicsemi.no>
2021-07-26 15:29:41 +02:00
Affrin Pinhero
295808a052 board/arm stm32: SDMMC support for stm32l496g_disco
This commit adds support for SDMMC driver, Which
was missing. THi commit will solveserror SDMMC init
error on stm32l496g_disco boards.

Signed-off-by: Affrin Pinhero <affrin.pinhero@hcl.com>
2021-07-26 15:29:34 +02:00
Affrin Pinhero
166a13b1bf board/arm STM32: SDMMC support for stm32f746g_disco
This commit adds support for SDMMC driver,
Which was missing. THi commit will solves
error SDMMC init error on STm32F746G_DISCO
boards.

Signed-off-by: Affrin Pinhero <affrin.pinhero@hcl.com>
2021-07-26 15:29:34 +02:00
Piotr Mienkowski
e7c630861a samples: counter/alarm: add support for Atmel SAM boards
Add support for sam_e70_xplained, sam_v71_xult based on TC0 counter.

Note: TC module is a 16-bit counter. Even with slow, 32768 Hz input
clock the time span counted by the driver is short.

Signed-off-by: Piotr Mienkowski <piotr.mienkowski@gmail.com>
2021-07-26 05:13:40 -04:00
Piotr Mienkowski
1145986096 drivers: Add Atmel SAM counter (TC) Driver
Add basic counter driver based on Timer Counter (TC) module for Atmel
SAM family.

Remarks:
- The driver is not thread safe.
- The driver does not implement guard periods.
- The driver does not guarantee that short relative alarm will trigger
  the interrupt immediately and not after the full cycle / counter
  overflow.

Tested on Atmel SMART SAM E70 Xplained board

Origin: Original

Signed-off-by: Piotr Mienkowski <piotr.mienkowski@gmail.com>
2021-07-26 05:13:40 -04:00
Piotr Mienkowski
1d199ca5ac drivers: qdec_sam: align naming of TcChannel in TC
Change naming of TC_CHANNEL to TcChannel in Tc struct to align with
a new convention used by samv71, samv71b series.

Signed-off-by: Piotr Mienkowski <piotr.mienkowski@gmail.com>
2021-07-26 05:13:40 -04:00
Piotr Mienkowski
ca9938b32f manifest: update hal_atmel
Update to include the commits:
- patch: same70, samv71: Add TC waveform/capture mode registers
- patch: same70, same70b: Align naming of TcChannel in TC

Signed-off-by: Piotr Mienkowski <piotr.mienkowski@gmail.com>
2021-07-26 05:13:40 -04:00
Thomas Stranger
95b7385bf1 drivers: entropy: stm32: don't use zero value
According to the Reference Manual of several series(G0,L5,WL,WB,...)
RNG_DR register value should only be used if it is different from 0:
"Because when it is the case a seed error occurred between RNG_SR
polling and RND_DR output reading (rare event)."

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2021-07-26 04:36:56 -04:00
Thomas Stranger
95c3916c60 drivers/entropy: stm32 add seed error recovery
This commit introduces an automatic recovery procedure in cases an
entropy source error was detected.
- On Series with soft reset support a soft rest is executed.
- On Series w/o soft reset support the pipeline is cleared by reading
  the RNG_DR 12 times.

With this changes the check for seed errors uses SEIS flag instead
of the SECS flag.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2021-07-26 04:36:56 -04:00
Flavio Ceolin
d45a0e1919 pm: Fix weak linkage symbols
Define SoC hooks as weak symbols so this way applications can
overwritten them defining strong symbols.

The problem is that currently SoCs are defining these interfaces as
strong symbol inhibiting the possibility of applications bring their
own implementation.

Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
2021-07-26 04:31:54 -04:00
Flavio Ceolin
96d5a58a46 tests: profiling: Remove unnecessary stubs
It is not necessary to implement stubs for system pm functions.

Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
2021-07-26 04:31:54 -04:00
Flavio Ceolin
dd54a8daed pm: Avoid weak function clash
SoC hooks are defined as weak functions for the case where they are
not implemented by a SoC. The problem that may happen is when an
application define it as weak as well. In this case, no compilation
error is issued but the version that will be used depends on the build
order. Just remove the weak placeholder implementation.

Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
2021-07-26 04:31:54 -04:00
Emil Gydesen
7d07a941fa Bluetooth: samples: Add ISO broadcast benchmark sample
Adds a sample that measures packet loss and BIG sync
statistics.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2021-07-25 08:56:00 -04:00
Leonard Pollak
9bea9d2ef2 doc: boards: arm: Seeeduino XIAO added i2c to docs
This adds documentation for the i2c interface on the
Seeeduino XIAO.

Signed-off-by: Leonard Pollak <leonardp@tr-host.de>
2021-07-25 06:24:21 -04:00
Leonard Pollak
732990a180 boards: arm: Seeeduino XIAO enable i2c
This board has the capability to use SERCOM2 as an i2c
interface on pins 8 and 9.
This adds the neccessary pinmux settings and devicetree
node.

Tested with the i2c shell module.

Signed-off-by: Leonard Pollak <leonardp@tr-host.de>
2021-07-25 06:24:21 -04:00
Ruibin Chang
21f0f958fe ITE drivers/ite_it8xxx2_timer: re-write ite timer driver
Re-write ite timer driver.

Signed-off-by: Ruibin Chang <ruibin.chang@ite.com.tw>
2021-07-24 21:26:49 -04:00
Ruibin Chang
78ef5ace6a ITE drivers/intc_ite_it8xxx2: correct logic operation
Interrupt polarity register don't support rising and
falling edge triggered at the same time, so I correct
logic operation to match this.

Signed-off-by: Ruibin Chang <ruibin.chang@ite.com.tw>
2021-07-24 21:26:49 -04:00
Ruibin Chang
aba4e68e91 ITE boards/it8xxx2_evb/defconfig: use default clock setting
Use default system clock setting 32768 in
soc/riscv/risc-ite/it8xxx2/Kconfig.

Signed-off-by: Ruibin Chang <ruibin.chang@ite.com.tw>
2021-07-24 21:26:49 -04:00
Ruibin Chang
97d2d7317c ITE soc/riscv/ite/it8xxx2/Kconfig: correct hw clock freq
Correct SYS_CLOCK_HW_CYCLES_PER_SEC and
SYS_CLOCK_TICKS_PER_SEC to match our real setting value
for precise timing.

Signed-off-by: Ruibin Chang <ruibin.chang@ite.com.tw>
2021-07-24 21:26:49 -04:00
Aurelien Jarno
0cd3daacba usb: truncate the most significant part of the serial number
When the Hardware Information Driver (HWINFO) provides a device ID
longer than the configured USB serial number, truncate the most
significant part instead of the least significant part. The lower part
is usually having more entropy, e.g. on STM32.

Fixes #34550

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2021-07-24 21:26:06 -04:00
Yuval Peress
eadca02251 espi: npcx: Add missing includes to header
Add the missing includes to make the header more portable. It currently
requires other headers to be included before it.

Signed-off-by: Yuval Peress <peress@chromium.org>
2021-07-23 16:26:44 -04:00
Erwan Gouriou
732adf3789 west.yml: hal_stm32: Update STM32 HCI lib to v1.9.0
Update STM32WB HCI lib based on STM32Cube package V1.9.0

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2021-07-23 16:26:17 -04:00
Emil Obalski
36cf484640 mcumgr: smp: Fix NULL pointer reference
SMP implementation across bt/udp does not check
if allocation of the buffer was successful.
If the buffer is not granted an error shall be
returned.

This patch fixes BUS FAULT issue when NULL
pointer is referenced.

Signed-off-by: Emil Obalski <emil.obalski@nordicsemi.no>
2021-07-23 16:25:47 -04:00
Thomas Stranger
a498ede0d7 doc: stm32wl and stm32l5 boards: update supported features
This commit updates the supported features of stm32l5 and stm32wl boards
to match the devicetree configuration.
- add link to board defconfig and board.dts
- sort supported features table alphabethically by interface.

Additionally CRYP peripheral is added as supported feature to the
mikroe_mini_m4_for_stm32 board documentation.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2021-07-23 16:25:27 -04:00
Thomas Stranger
bedfb00d02 samples: crypto: change config to run test sample.drivers.crypto.stm32
The test sample.drivers.crypto.stm32 was built only for the stm32 crypto
driver (build_only: true).
This commit changes the configuration to run the test and adds regex for
the supported modes.
Additionally integration_platform native_posix is removed from the
crypto.stm32 test configuration, such that stm32 targets built in CI.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2021-07-23 16:25:27 -04:00
Thomas Stranger
091df2b598 samples: drivers.crypto.stm32 test: use filter instead of allow list
This commit uses filter instead of allow list for the
sample.drivers.crypto.stm32 test case.
As a result the ci test is not only built on mikroe_mini_m4_for_stm32,
but also on lora_e5_dev_board, nucleo_wl55jc and stm32l562e_dk.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2021-07-23 16:25:27 -04:00
Thomas Stranger
035fefcd64 samples: drivers: crypto: add support for stm32 with aes peripheral
This commit adds support for stm32 socs with aes peripheral in the
crypto sample.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2021-07-23 16:25:27 -04:00
Thomas Stranger
809b7c76d3 boards: nucleo_wl55jc and lora_e5_dev_board enable aes
This commit enables aes support for nucleo_wl55jc and
lora_e5_dev_board.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2021-07-23 16:25:27 -04:00
Thomas Stranger
5f7c696e97 dts: stm32wl: add definitions for the aes peripheral
This commit adds a dt node for the hw aes accelerator of the wl series.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2021-07-23 16:25:27 -04:00
Thomas Stranger
768b75ab71 dts: stm32g0: add definitions for the aes peripheral
This commit adds dt definitions for the hw aes accelerator
on stm32g0 Series.
The accelertor is available on the following socs:
stm32g041, stm32g061, stm32g081, and stm32g0c1.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2021-07-23 16:25:27 -04:00
Thomas Stranger
010d020aef boards: stm32l562e_dk enable aes peripheral
This commit enables the hw aes accelerator on the stm32l562_dk.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2021-07-23 16:25:27 -04:00
Thomas Stranger
18d99fb523 dts: stm32l5: introduce aes peripheral
This commit adds a dt node for the hw aes accelerator of the
stm32l5 series.

The stm32l562Xe.dtsi file now includes the newly created
stm32l562Xe.dtsi with the additional aes definitions instead of the
stm32l552Xe.dtsi file.

Signed-off-by: Thomas Stranger <thomas.stranger@outlook.com>
2021-07-23 16:25:27 -04:00