Commit graph

85,247 commits

Author SHA1 Message Date
Kamil Gawor
0843ef1cfa bluetooth: host: Fix reading current PHY when using extended advertising
The current PHY is read only when automatic PHY
update procedure is enabled, 2M PHY is supported and
extended advertising is enabled and this is done after
application is notified about connection. This leads
to invalid connection info PHY data which always returns
1M PHY because when using extended advertising the connection
can be established on different PHY and host does not read
this value from the controller in most cases. In order to
have a current PHY value updated we need to read it in
connection complete event before the user application
is notified about connection.

Signed-off-by: Kamil Gawor <Kamil.Gawor@nordicsemi.no>
2022-06-05 14:48:14 +02:00
Andrzej Puzdrowski
0b9f0a45ab manifest: MCUboot update
bring fix from mcu-tools/mcuboot:

- espressif:esp32: Move app entry point call back to
  iram_loader_seg region

fixes #45349
fixes #46093

Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
2022-06-05 14:48:08 +02:00
Peter Marheine
95fb984f0b driver: i2c: npcx: prevent sleep during I2C transactions
Deep Sleep mode stops SMB module clocks which could interrupt ongoing
I2C transactions, so have the I2C driver acquire a PM lock at the
beginning of a transaction and release it at the end in order to ensure
the module remains active.

Signed-off-by: Peter Marheine <pmarheine@chromium.org>
Signed-off-by: Jun Lin <CHLin56@nuvoton.com>
2022-06-05 14:47:58 +02:00
Dominik Ermel
2453e4de00 samples/mgmt/mcumgr: Remove info on BT tiny configuration
The BT tiny configuration has been removed some time ago,
but documentation has been still referencing it.

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2022-06-05 14:47:50 +02:00
Daniel DeGrasse
2675fb4ce3 drivers: gpio: pca95xx: do not write to output regs if pin is input
Remove unconditional write to PCA95xx output registers in setup_pin_dir,
and only write to output registers if selected pin is configured as
an output.

Fixes #45774

Signed-off-by: Daniel DeGrasse <daniel.degrasse@nxp.com>
2022-06-05 14:47:41 +02:00
Dominik Ermel
e15523d198 mgmt/mcumgr/lib: Use flash_img_bytes_written to check context
The commit replaces direct access to flash_img_context, for the
purpose of checking how much data has been written, with call
to the flash_img_bytes_written.

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2022-06-05 14:47:35 +02:00
Hu Zhenyu
59357998d1 test: Remove the TC_XXX macro in tests/arch/arm/arm_runtime_nmi
As the test case is using ztest framework, so the TC_XXX macro
is never needed.

Signed-off-by: Hu Zhenyu <zhenyu.hu@intel.com>
2022-06-05 14:47:28 +02:00
Hu Zhenyu
312ed2526f test: Enable the GPIO tests on mec172xevb_assy6906
Enable testcases under tests/drivers/gpio/gpio_basic_api
To run in twister, "-X gpio_loopback" parameter is needed

Signed-off-by: Hu Zhenyu <zhenyu.hu@intel.com>
2022-06-05 14:47:21 +02:00
Carlo Caione
01305942f6 ipc: static_vrings: Support DT-defined buffer size
Recently OpenAMP introduced the possibility to set the sizes for TX and
RX buffers per created instance. Expose this also to Zephyr users by
using a DT property "zephyr,buffer-size".

For the sake of simplicity use the same DT property to set the buffer
size for both TX and RX buffers.

Signed-off-by: Carlo Caione <ccaione@baylibre.com>
2022-06-05 14:46:18 +02:00
Georgij Cernysiov
70003e8eb0 dts: bindings: mpu: add PPB and IO regions
Extends #43119 with PPB and IO values of
`memory-region-mpu`.

That allows MPU region definition with
PPB or IO attributes in the DTS.

Signed-off-by: Georgij Cernysiov <geo.cgv@gmail.com>
2022-06-05 14:46:11 +02:00
Arsen Eloglian
d4c1c1ebef ssp: SSCR reset - hardware specific flow
hardware specific flow using bit 20 (SSCR2_SFRMEN)  for reset

Signed-off-by: Arsen Eloglian <ArsenX.Eloglian@intel.com>
2022-06-05 14:45:59 +02:00
Gerard Marull-Paretas
3a2921dab0 device: make all struct device members mutable
All `struct device` members except name, config and api are marked as
read-only references. This means that, in practice, a `struct device`
can only be initialized statically.

Device constness happens because `Z_DEVICE_DEFINE` defines `struct
device` as `const`. This means that one can't modify any field of a
`struct device` anyway, so constifying struct members doesn't add much
value, if any (unless I'm missing something).

This patch makes all `struct device` references mutable, so that no
assumptions on how `struct device` is used are made. In the future, one
could e.g. dynamically allocate devices and assign any of the device
fields at runtime.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2022-06-05 14:45:51 +02:00
Yuriy Vynnychek
e36d481893 drivers: flash: Improve Telink B91 Flash Write and Erase APIs
- Fixed from Flash to Flash write issue (added heap usage).
- Speed up Flash Erase operation (based on erase size).

Signed-off-by: Yuriy Vynnychek <yura.vynnychek@telink-semi.com>
2022-06-05 14:45:38 +02:00
Yuriy Vynnychek
76c80fbada boards: riscv: tlsr9518adk80d: Enable GPIO and HEAP_MEM_POOL
- Enable GPIO by default to be consistent with other vendors,
Some samples also require GPIO driver to be enabled by default.
- Enable HEAP_MEM_POOL usage. The heap memory is used by Flash
driver during from flash to flash write operation.

Signed-off-by: Yuriy Vynnychek <yura.vynnychek@telink-semi.com>
2022-06-05 14:45:38 +02:00
Herman Berget
c3c7b54ccf Bluetooth: Host: Option for disabling of ATT auto retry
The automatic elevation of security and retry of ATT requests interferes
with some tests that expect authentication failures.

Affecting GATT/CL/GAR/BI-42-C

Signed-off-by: Herman Berget <herman.berget@nordicsemi.no>
2022-06-05 14:45:32 +02:00
Alperen Sener
12e57d414c tests/bluetooth/tester: Set mesh message cache size to 10
MESH/NODE/RLY/BI-02-C case requires cache size of 10

Signed-off-by: Alperen Sener <alperen.sener@nordicsemi.no>
2022-06-05 14:45:24 +02:00
Mahesh Mahadevan
d801323e23 drivers: hyperflash: Use write-block-size property
Use the write-block-size devicetree property instead
of a #defined value

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2022-06-05 14:45:18 +02:00
Mahesh Mahadevan
2cab43cb83 dts: add erase/write block sizes for nxp hyperflash
Add write and erase block size for Hyperflash devices

Signed-off-by: Mahesh Mahadevan <mahesh.mahadevan@nxp.com>
2022-06-05 14:45:18 +02:00
Yuriy Vynnychek
3960bf598c Bluetooth: samples: peripheral_sc_only support for tlsr9518adk80d
Provided sample support for Telink tlsr9518adk80d board.
Set CONFIG_BT_TINYCRYPT_ECC=n (supported by BLE controller).

Signed-off-by: Yuriy Vynnychek <yura.vynnychek@telink-semi.com>
2022-06-05 14:45:10 +02:00
Yuriy Vynnychek
d0e07b6552 west.yml: updated hal_telink to new commit (BLE controller)
Updated hal_telink to new commit with B91 BLE controller suport.

Signed-off-by: Yuriy Vynnychek <yura.vynnychek@telink-semi.com>
2022-06-05 14:45:10 +02:00
Yuriy Vynnychek
6301947d5a boards: riscv: tlsr9518adk80d: B91 Bluetooth HCI driver support
Provided basic support for Telink B91 Bluetooth HCI driver.

Signed-off-by: Yuriy Vynnychek <yura.vynnychek@telink-semi.com>
2022-06-05 14:45:10 +02:00
Yuriy Vynnychek
49d873603c soc: riscv: telink_b91: B91 BLE controller support (linker aes_data)
Introduced new aes_data linker section used by B91 BLE controller.

Signed-off-by: Yuriy Vynnychek <yura.vynnychek@telink-semi.com>
2022-06-05 14:45:10 +02:00
Yuriy Vynnychek
cca221e928 drivers: bluetooth: hci: introduce new Telink B91 HCI driver
Telink B91 Bluetooth HCI driver basic support.

Signed-off-by: Yuriy Vynnychek <yura.vynnychek@telink-semi.com>
2022-06-05 14:45:10 +02:00
Herman Berget
5febfac02c Bluetooth: Allow support for Multiple Variable Length Read without EATT
EATT is not a requirement for the Multiple Variable Length Read
procedure, but previously one had to enable CONFIG_BT_EATT to enable
support for it.

Signed-off-by: Herman Berget <herman.berget@nordicsemi.no>
2022-06-05 14:44:58 +02:00
Loic Poulain
9b3e6042d9 wifi: eswifi: Fix socket offload TCP server
- The listen callback was not implemented.
- EOF packet not reported
- accept cb was broken

Signed-off-by: Loic Poulain <loic.poulain@linaro.org>
2022-06-05 14:44:46 +02:00
Loic Poulain
8923fc3186 wifi: eswifi: Implement listen helper
The listen helper will be used by eswifi socket offload layer.

Signed-off-by: Loic Poulain <loic.poulain@linaro.org>
2022-06-05 14:44:46 +02:00
Loic Poulain
2bcd469ca2 wifi: eswifi: Fix missing peer addr family on TCP connect
The sin_family was not filled properly.

Signed-off-by: Loic Poulain <loic.poulain@linaro.org>
2022-06-05 14:44:46 +02:00
Guo Lixin
fe7858bba1 tests: remove unused harness config
logging.log_syst.mipi_syst is written in ztest framework, now it has
a good method to test automatically, no need to configure the harness
as console any more, so remove it.

Signed-off-by: Guo Lixin <lixinx.guo@intel.com>
2022-06-05 14:44:35 +02:00
Szymon Janc
44a9b174b7 MAINTAINERS: Add sjanc for Bluetooth host and audio
This will help with review process.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2022-06-05 14:44:28 +02:00
Szymon Janc
0b536a779c CODEOWNERS: Add sjanc for Bluetooth host paths
This will help with review process.

Signed-off-by: Szymon Janc <szymon.janc@codecoup.pl>
2022-06-05 14:44:28 +02:00
Mariusz Skamra
36c8324add tests: audio: Fix audio direction in test
This fixes direction that shall be BT_AUDIO_DIR_SOURCE in this
particular case.

Signed-off-by: Mariusz Skamra <mariusz.skamra@codecoup.pl>
2022-06-05 14:44:21 +02:00
Mariusz Skamra
33991f2dde Bluetooth: audio: Expose API methods to change the available contexts
This exposes API methods to change the available context types.

Signed-off-by: Mariusz Skamra <mariusz.skamra@codecoup.pl>
2022-06-05 14:44:21 +02:00
Mariusz Skamra
893f49ea88 Bluetooth: audio: Build PACS only if Sink or Source enabled
This fixes Kconfig that allowed to build PACS without support for sink
or source PACS. Few conditionals that no longer apply were removed.
Enabling ASCS support in specific direction enables related PACS
support.
Since PACS does `depends on` anything, it's safe to make use of `select`
statement.

Signed-off-by: Mariusz Skamra <mariusz.skamra@codecoup.pl>
2022-06-05 14:44:21 +02:00
Mariusz Skamra
20f47505d0 Bluetooth: audio: Remove unused bt_audio_capability struct member
This removes unused context member from bt_audio_capability.

Signed-off-by: Mariusz Skamra <mariusz.skamra@codecoup.pl>
2022-06-05 14:44:21 +02:00
Mariusz Skamra
eddfc89ebf Bluetooth: uuid: Rename PACS Available Contexts UUID define
This renames the UUID to follow the same naming scheme as for
BT_UUID_PACS_SUPPORTED_CONTEXT.

Signed-off-by: Mariusz Skamra <mariusz.skamra@codecoup.pl>
2022-06-05 14:44:21 +02:00
Carlo Caione
3e92f11d1f riscv: Optimize t* registers usage
In preparation for the support of RV32E optimize a bit the t* registers
usage limiting that to t{0-2}.

Signed-off-by: Carlo Caione <ccaione@baylibre.com>
2022-06-05 14:44:06 +02:00
Damian Krolik
74e4ac0883 nvs: implement NVS cache
The NVS data lookup time grows linearly with the number of
allocation table entries to walk through, meaning that if
some data pair in the NVS changes frequently, access to
other data pairs that change rarely can take a lot of time.

It is particularly visible when the NVS is used as the
settings backend since the backend needs to perform multiple
NVS reads to find a requested key.

Implement a simple cache that stores an address of the most
recent ATE for all NVS IDs that fall into the given cache
position. CRC8/16 is used as a hash function used to
distribute NVS IDs across the cache entries.

The cache entries are only invalidated when an NVS sector
is erased as part of the garbage collector task.

Signed-off-by: Damian Krolik <damian.krolik@nordicsemi.no>
2022-06-05 14:43:59 +02:00
TOKITA Hiroshi
cb88f7dc65 boards: riscv: longan_nano: Migrate to new SD subsystem
Modify sdhc configuration to fit new SD subsystem.

Signed-off-by: TOKITA Hiroshi <tokita.hiroshi@gmail.com>
2022-06-05 14:42:53 +02:00
Marcin Niestroj
14ca35b859 modem: quectel-bg9x: remove unwanted space after comma in AT cmd
Remove unwanted space in AT+QICSGP command just after comma and before
password.

Signed-off-by: Marcin Niestroj <m.niestroj@emb.dev>
2022-06-05 14:42:46 +02:00
Maximilian Deubel
3530fc088b ADXL362: Add DTS properties for low-power modes
This patch adds DTS properties for using wake-up mode
and the autosleep function to the ADXL362 driver.

Signed-off-by: Maximilian Deubel <maximilian.deubel@nordicsemi.no>
2022-06-05 14:42:40 +02:00
Eduardo Montoya
e6f3b8a296 net: openthread: fix wrong configuration
Fix wrong OpenThread config.

Signed-off-by: Eduardo Montoya <eduardo.montoya@nordicsemi.no>
2022-06-05 14:42:33 +02:00
Gerhard Jörges
d99827f0a5 shell: suppress newlines on boot when promt is an empty string
If the user sets the default_prompt to an empty string no newlines will
be printed during boot.

Signed-off-by: Gerhard Jörges <joerges@metratec.com>
2022-06-05 14:42:26 +02:00
Joakim Andersson
63a65bead0 samples: tfm_integration: Set TF-M profile type to none.
Set the TF-M profile type to none for TF-M integration samples.
If the default profile has been set to something else these samples may
fail.

Signed-off-by: Joakim Andersson <joakim.andersson@nordicsemi.no>
2022-06-05 14:42:20 +02:00
Jay Vasanth
b22b206438 driver: i2c: MEC15xx: improve debug logging
Add extra parameters for logging to improve debugging

Signed-off-by: Jay Vasanth <jay.vasanth@microchip.com>
2022-06-05 14:42:11 +02:00
Jay Vasanth
fad437973c driver: i2c: mec15xx: recover from error for LAB
For lost arbitration error condition add recover from
error logic to reset the i2c controller

Signed-off-by: Jay Vasanth <jay.vasanth@microchip.com>
2022-06-05 14:42:11 +02:00
Kamil Piszczek
53b70dc012 samples: mcumgr: smp_svr: increase dfu throughput over Bluetooth
Adjusted Bluetooth parameters that have an impact on MTU and DLE
negotiation during a connection.

Enabled the Packet Reassembly feature from mcumgr libraries in the SMP
Server sample with the Bluetooth transport configuration. This change
should increase the overall throughput of the DFU process over
Bluetooth.

Signed-off-by: Kamil Piszczek <Kamil.Piszczek@nordicsemi.no>
2022-06-05 14:29:42 +02:00
Emil Gydesen
0eb5b3ac03 Bluetooth: Shell: Add gatt notify-mult command
Add GATT command to test the bt_gatt_notify_multiple
function.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2022-06-05 14:29:33 +02:00
Andriy Gelman
0fc92370fa drivers: uart_xmc4xxx: Remove unnecessary cast
The compiler will perform an implicit cast from unsigned char to uint16_t.

Signed-off-by: Andriy Gelman <andriy.gelman@gmail.com>
2022-06-05 14:29:26 +02:00
Andriy Gelman
aa91500aee drivers: uart_xmc4xxx: Check that receive buffers have data in poll_in
As per XMCLib documentation we need to check that data has been received
before reading the buffers.

Fixes test_uart_poll_in test in tests/drivers/uart/uart_basic_api.

Signed-off-by: Andriy Gelman <andriy.gelman@gmail.com>
2022-06-05 14:29:26 +02:00
Andriy Gelman
4c2ff6dc2f drivers: uart_xmc4xxx: Don't recast to uint16_t* when returning value
Casting to uint16_t* can cause an unaligned usage fault when c is not
aligned to 2 bytes and can unintentionally overwrite data when c has a 1
byte memory size. Also there's no need to cast to uint16_t* because
returned words are 8-bit characaters as setup in the configuration.

Fixes the following usage fault error in tests/drivers/uart/uart_basic_api:
START - test_uart_poll_in
Please send characters to serial console
E: ***** USAGE FAULT *****
E:   Unaligned memory access
E: r0/a1:  0x00000000  r1/a2:  0x2000078f  r2/a3:  0x0c00453c
E: r3/a4:  0x00000000 r12/ip:  0x00000000 r14/lr:  0x0c003de5
E:  xpsr:  0x41000000
E: Faulting instruction address (r15/pc): 0x0c003de4
E: >>> ZEPHYR FATAL ERROR 0: CPU exception on CPU 0
E: Current thread: 0x20000118 (unknown)
E: Halting system

Signed-off-by: Andriy Gelman <andriy.gelman@gmail.com>
2022-06-05 14:29:26 +02:00