Commit graph

53762 commits

Author SHA1 Message Date
Andrzej Kaczmarek
1e02d400e2 Bluetooth: controller: Optimize lll_adv_pdu_and_extra_data_alloc
This function is the same as lll_adv_pdu_alloc except it also allocates
extra data at the end - it can just use lll_adv_pdu_alloc call to avoid
extensive c&p.

Signed-off-by: Andrzej Kaczmarek <andrzej.kaczmarek@codecoup.pl>
2021-07-10 12:44:33 -04:00
Andrzej Kaczmarek
5af3e39574 Bluetooth: controller: Add helper to allocate new pdu_adv
This adds helper to always allocate advertising PDU either from memory
pool or pdu_free queue and does not reuse existing PDU in adv_pdu.

Signed-off-by: Andrzej Kaczmarek <andrzej.kaczmarek@codecoup.pl>
2021-07-10 12:44:33 -04:00
Andrzej Kaczmarek
67bfb2fb56 Bluetooth: controller: Fix PKT_AC_US macro
Advertising channel packets do not have MIC, there's no need to have
extra parameter which always has to be set to 0 anyway.

Signed-off-by: Andrzej Kaczmarek <andrzej.kaczmarek@codecoup.pl>
2021-07-10 12:44:33 -04:00
Kevin Townsend
703021a78a boards: arm: nrf9160dk_nrf9160: Rename NS target
This commit updates the NS board variant from
`nrf9160dk_nrf9160ns` to `nrf9160dk_nrf9160_ns`
to maintain consistency across zephyr.

Signed-off-by: Kevin Townsend <kevin.townsend@linaro.org>
2021-07-10 12:44:02 -04:00
Kevin Townsend
b8c9dc169e boards: arm: nrf5340dk_nrf5340: Rename NS target
This commit updates the NS board variant from
`nrf5340dk_nrf5340_cpuappns` to `nrf5340dk_nrf5340_cpuapp_ns`
to maintain consistency across zephyr.

Signed-off-by: Kevin Townsend <kevin.townsend@linaro.org>
2021-07-10 12:44:02 -04:00
Kevin Townsend
15e8f635d8 boards: arm: v2m_musca_s1: Rename NS target
This commit update the NS board variant from
`v2m_musca_s1_nonsecure` to `v2m_musca_s1_ns` to maintain
consistency across zephyr.

Signed-off-by: Kevin Townsend <kevin.townsend@linaro.org>
2021-07-10 12:44:02 -04:00
Kevin Townsend
ccc595836a boards: arm: v2m_musca_b1: Rename NS target
This commit update the NS board variant from
`v2m_musca_b1_nonsecure` to `v2m_musca_b1_ns` to maintain
consistency across zephyr.

Signed-off-by: Kevin Townsend <kevin.townsend@linaro.org>
2021-07-10 12:44:02 -04:00
Kevin Townsend
257f6b532c boards: arm: mps2_an521: Rename NS target
This commit update the NS board variant from `mps2_an521_nonsecure`
to `mps2_an521_ns` to maintain consistency across zephyr.

Signed-off-by: Kevin Townsend <kevin.townsend@linaro.org>
2021-07-10 12:44:02 -04:00
Kevin Townsend
58638563b5 boards: arm: bl5340_dvk: Rename NS target
This commit update the NS board variant from `bl5340_dvk_cpuappns`
to `bl5340_dvk_cpuapp_ns` to maintain consistency across zephyr.

Signed-off-by: Kevin Townsend <kevin.townsend@linaro.org>
2021-07-10 12:44:02 -04:00
Krishna Mohan Dani
728ff9d267 tests/drivers: nucleo_l552ze_q: uart_async_api test
This commit configures usart3 to use dma in uart_async_api test
on nucleo_l552ze_q platform.

Signed-off-by: Krishna Mohan Dani <krishnamohan.d@hcl.com>
2021-07-10 12:43:19 -04:00
Krishna Mohan Dani
ae085082d1 tests/drivers: stm32l562e_dk: uart_async_api test
This commit configures usart3 to use dma in uart_async_api test
on stm32l562e_dk platform. Short pin2(PC10) & pin 3 (PC11) of usart3
in CN4 connector on stm32l562e_dk platform.

Signed-off-by: Krishna Mohan Dani <krishnamohan.d@hcl.com>
2021-07-10 12:43:19 -04:00
Krishna Mohan Dani
1fe292dfaf tests/drivers: nucleo_l552ze_q: Configuration for spi_loopback test
This commit configures spi, dma & dmamux to run spi_loopback test
on nucleo_l552ze_q platform. The tx & rx pin of spi1 should be
shorted before running spi_loopback.

Signed-off-by: Krishna Mohan Dani <krishnamohan.d@hcl.com>
2021-07-10 12:43:19 -04:00
Krishna Mohan Dani
cf39aec86a tests/drivers: nucleo_l552ze_q: Configures DMA to run loop_transfer test
This commit configures DMA to run tests/drivers/dma/loop_transfer
test on nucleo_l552ze_q platform.

Signed-off-by: Krishna Mohan Dani <krishnamohan.d@hcl.com>
2021-07-10 12:43:19 -04:00
Krishna Mohan Dani
299d432860 tests/drivers: nucleo_l552ze_q: Configures DMA for chan_blen_transfer test
This commit configures the DMA to run
tests/drivers/dma/chan_blen_transfer test on nucleo_l552ze_q platform.

Signed-off-by: Krishna Mohan Dani <krishnamohan.d@hcl.com>
2021-07-10 12:43:19 -04:00
Krishna Mohan Dani
2194b79804 tests/drivers: stm32l562e_dk: Configures DMA to run loop_transfer test.
This commit configures the required DMA parameters to run
tests/drivers/dma/loop_transfer test on stm32l562e_dk platform.
This has been tested and is working as expected.

Signed-off-by: Krishna Mohan Dani <krishnamohan.d@hcl.com>
2021-07-10 12:43:19 -04:00
Krishna Mohan Dani
b59aad567c tests/drivers: stm32l562e_dk: Configures DMA for chan_blen_transfer test
This commit configures the required DMA parameters to run
tests/drivers/dma/chan_blen_transfer test on stm32l562e_dk platform.
This has been tested and is working as expected.

Signed-off-by: Krishna Mohan Dani <krishnamohan.d@hcl.com>
2021-07-10 12:43:19 -04:00
Krishna Mohan Dani
ca0b261b7f drivers/dma: STM32: Initialising DMA_InitStruct with 0 for stm32l5xx
In stm32l5xx soc, the LL_DMA_InitTypeDef has 2 more fields
(DoubleBufferMode and TargetMemInDoubleBufferMode) that must be
initialised with 0 else the configuration is wrong and gives
wrong values to the LL_DMA_Init function. Due to this the test
tests/drivers/dma/loop_transfer too would fail.

Signed-off-by: Krishna Mohan Dani <krishnamohan.d@hcl.com>
2021-07-10 12:43:19 -04:00
Krishna Mohan Dani
a5f7ac3c83 boards/arm: nucleo_l552ze_q: Enabling spi1
This commit enables spi1 in dtsi and updates the
documentation for nucleo_l552ze_q platform.

Signed-off-by: Krishna Mohan Dani <krishnamohan.d@hcl.com>
2021-07-10 12:43:19 -04:00
Krishna Mohan Dani
28e1a1d7bc boards/arm: nucleo_l552ze_q: Enabling usart3
This commit enables usart3 channel on nucleo_l552ze_q platform.
This would also be used to test usart in dma mode with
tests/drivers/uart/uart_async_api.

Signed-off-by: Krishna Mohan Dani <krishnamohan.d@hcl.com>
2021-07-10 12:43:19 -04:00
Krishna Mohan Dani
83f1420c72 boards/arm: stm32l562e_dk: Enabling usart3
This commit enables usart3 channel on stm32l562e_dk platform.
This would also be used to test usart in dma mode with
tests/drivers/uart/uart_async_api.

Signed-off-by: Krishna Mohan Dani <krishnamohan.d@hcl.com>
2021-07-10 12:43:19 -04:00
Krishna Mohan Dani
88045ca2bc boards/arm: nucleo_l552ze_q: Updating the documentation
This commit updates the documentation on DMA for nucleo_l552ze_q
platform.

Signed-off-by: Krishna Mohan Dani <krishnamohan.d@hcl.com>
2021-07-10 12:43:19 -04:00
Krishna Mohan Dani
2119584b9b boards/arm: stm32l562e_dk: Updating the documentation
This commit updates the documentation on DMA for stm32l562e_dk
platform.

Signed-off-by: Krishna Mohan Dani <krishnamohan.d@hcl.com>
2021-07-10 12:43:19 -04:00
Krishna Mohan Dani
db03162d99 dts/arm: STM32: Adding DMA support for stm32l5 in dtsi
This commit adds dma1, dma2, dmamux support in dtsi for stm32l5
series. This commit also fixes a compilation warning due to the
usage of upper case in "reg = <0x4000F400 0x400>".

Signed-off-by: Krishna Mohan Dani <krishnamohan.d@hcl.com>
2021-07-10 12:43:19 -04:00
Evgeniy Paltsev
46b2df2b75 ARC: MWDT: don't use compact C library
-Hcl option instructs linker to use MetaWare C Compactlib.
According to MWDT documentation "Compactlib is not thread-safe"

So, let's use MetaWare C library instead which is thread-safe.

Signed-off-by: Evgeniy Paltsev <PaltsevEvgeniy@gmail.com>
2021-07-10 12:42:45 -04:00
Emil Gydesen
f18bebd9de Bluetooth: Iso: Do not remove iso data path on disconnect
We previously removed the iso data path when the iso channel
disconnected. Since the iso data path is unique for a given
iso channel (by handle), it does not make sense to remove
it for a disconnected channel, as the channel is, in
a sense, not existing anymore.

This update is to better comply with the bluetooth
core spec, and to avoid getting errors from the
controller on disconnect.

Rather than removing the implementation of being able
to remove the data path, the function was made non-static
and moved to the internal header file, in case we ever
want to use it. This should not affect compile size.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2021-07-10 12:41:48 -04:00
Emil Gydesen
f50574a6a0 Bluetooth: host: Move bt_data_parse to hci_core.c
Move the function from scan.c to hci_core.c.
When in scan.c, the function is only available if
CONFIG_BT_OBSERVER was enabled. Since the function
can be used in other scenarioes where we need to parse
LTV data, it has been moved to a more generic place.

hci_core.c might not be the ideal place, but it is
where most other common bluetooth functions
are located.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2021-07-10 12:41:18 -04:00
Robert Lubos
bb0f061834 tests: net: coap: Convert unit tests to ztest API
Convert CoAP unit tests to ztest API.

Additionally, replace dynamic memory allocation with a static one, to
prevent memory leaks with ztest.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2021-07-10 12:21:48 -04:00
Yuval Peress
8d2d296771 common: Add headers to support C++ style includes
When compiling existing libraries that are difficult to change, these
headers simplify the library's integration. This specifically was the
agreed upon fix for trying to compile Android's CHRE as a subsystem.
Making changes to the Android repo to use the C style includes would be
very difficult and would likely take a very long time.

Signed-off-by: Yuval Peress <peress@chromium.org>
2021-07-10 12:17:13 -04:00
Flavio Ceolin
db9756045e drivers: intc_arcv2_irq_unit: Fix arc_v2_irq_unit_device_ctrl
Fix some leftovers from the pm_device_state changes.

Fixes build problem introduced in
cc2f0e9c08.

Signed-off-by: Flavio Ceolin <flavio.ceolin@intel.com>
2021-07-09 12:51:36 -05:00
Dino Li
cb307e2c64 driver: intc: it8xxx2: wait until two equal interrupt values are read
This change ensures the CPU won't get an interrupt number which is
being generated.

it8xxx2 has a limitation for interrupt vector register.
CPU may read incorrect interrupt number in ISR.

The following is an example that got incorrect interrupt number:
1. Register IVECT = 0x10. (no interrupt pending/IVECT_OFFSET_WITH_IRQ)
2. Chip INT6 interrupt occurs (IVECT = 0x16) and jump to ISR.
3. Read interrupt vector register to determine interrupt number.
4. Higher priority interrupt occurs (for example: INT158, IVECT = 0xAE)
while the CPU is reading the interrupt vector register for EC INT6,
CPU may end up with an incorrect interrupt number between 0x16 and 0xAE.

Signed-off-by: Dino Li <Dino.Li@ite.com.tw>
2021-07-09 12:45:01 -05:00
Dino Li
a42be2f071 soc: riscv-ite: fix __soc_handle_irq
Save ra to caller saved register is wrong because it might get
overwritten after another function is called, so we fix this.

Remove clear mip register operation. (it8xxx2 supports machine-mode
only, and MEIP bit of mip is read-only).

Signed-off-by: Dino Li <Dino.Li@ite.com.tw>
2021-07-09 12:45:01 -05:00
Erwan Gouriou
491775549d drivers/clock_control: stm32: Fix macro to get HCLK freq
__LL_RCC_CALC_HCLK1_FREQ is only available for WL and WB series,
for other series __LL_RCC_CALC_HCLK_FREQ should be used.

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2021-07-09 12:42:00 -05:00
Abram Early
bdae64279e drivers: flash: nrf_qspi_nor: Configurable RXDELAY
The nRF QSPI has a configurable delay from the rising
clock signal to the actual sample point measured in
clock cycles. This commit exposes that delay as a DTS
parameter without modifying existing behavior.

Signed-off-by: Abram Early <abram.early@gmail.com>
2021-07-09 12:23:45 -05:00
Dominik Ermel
f36569db0d drivers/flash/nrf_qspi_nor: Fix get_parameters layout dependency
The definition of qspi_flash_get_parameters, that implements
the mandatory get_parameters API call for the driver, was incorrectly
placed within block conditionally compiled when
CONFIG_FLASH_PAGE_LAYOUT is defined.
The commit fixes the issue that was causing compilation error
when the config has not been set.

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2021-07-09 12:19:06 -05:00
Marek Pieta
c5c9b22f38 Revert "boards: thingy53_nrf5340: Enable uart0 on network core"
This reverts commit a6a7a0d888.
Both application and network core define the same pins for uart0.
The pins should not be used simultaneously by both cores.

Signed-off-by: Marek Pieta <Marek.Pieta@nordicsemi.no>
2021-07-09 11:12:54 -05:00
Parthiban Nallathambi
49dd63705d dts: stm32l0: add usart4 and usart5
add devicetree node for usart4 and usart5.  usart4 and 5
shares the same interrupt line (14), hence both can't be enabled
at the same time.

Signed-off-by: Parthiban Nallathambi <parthiban@linumiz.com>
2021-07-09 11:09:19 -05:00
Lingao Meng
3d2ad8e653 Bluetooth: Mesh: Split proxy.h to proxy.h and proxy_msg.h
The Bluetooth proxy feature includes proxy client and proxy server.
In addition to the proxy pdu message used above, pb-gatt also uses
the same proxy pdu message.

Currently zephyr bluetooth mesh couples them in one file.

A file at the separation is called gatt_services.c,
which is used to contain Mesh Provisioning Service and
Mesh Proxy Service.

Another file in the separation is called proxy_msg.c,
which is used to process Proxy pdu messages.

Also according to Trond's suggestion:

Rename CONFIG_BT_MESH_PROXY to CONFIG_BT_MESH_GATT.
Create an additional promptless entry CONFIG_BT_MESH_GATT_SERVER
that selects CONFIG_BT_MESH_GATT and is selected by
CONFIG_BT_MESH_GATT_PROXY or CONFIG_BT_MESH_PB_GATT.

Create additional CONFIG_BT_MESH_PROXY used to represent
proxy feature (also include proxy client).

Signed-off-by: Lingao Meng <menglingao@xiaomi.com>
2021-07-09 17:56:16 +03:00
Lingao Meng
7b2e51881c Bluetooth: Mesh: Rename proxy.c to proxy_msg.c
The Bluetooth proxy feature includes proxy client
and proxy server. In addition to the proxy pdu
message used above, pb-gatt also uses the same
proxy pdu message.

Currently zephyr bluetooth mesh couples them in one file.

A file at the separation is called gatt_services.c,
which is used to contain Mesh Provisioning Service and
Mesh Proxy Service.

Another file in the separation is called proxy_msg.c,
which is used to process Proxy pdu messages.

Also according to Trond's suggestion:

Rename CONFIG_BT_MESH_PROXY to CONFIG_BT_MESH_GATT.
Create an additional promptless entry CONFIG_BT_MESH_GATT_SERVER
that selects CONFIG_BT_MESH_GATT and is selected by
CONFIG_BT_MESH_GATT_PROXY or CONFIG_BT_MESH_PB_GATT.

Create additional CONFIG_BT_MESH_PROXY used to represent
proxy feature (also include proxy client).

Signed-off-by: Lingao Meng <menglingao@xiaomi.com>
2021-07-09 17:56:16 +03:00
Lingao Meng
3a559e972a Bluetooth: Mesh: Modularizing the proxy
The Bluetooth proxy feature includes proxy client
and proxy server. In addition to the proxy pdu
message used above, pb-gatt also uses the same
proxy pdu message.

Currently zephyr bluetooth mesh couples them in one file.

A file at the separation is called gatt_services.c,
which is used to contain Mesh Provisioning Service
and Mesh Proxy Service.
Another file in the separation is called proxy_msg.c,
which is used to process Proxy pdu messages.

Also according to Trond's suggestion:

Rename `CONFIG_BT_MESH_PROXY` to `CONFIG_BT_MESH_GATT`.
Create an additional promptless entry
`CONFIG_BT_MESH_GATT_SERVER` that selects
`CONFIG_BT_MESH_GATT` and is selected by
`CONFIG_BT_MESH_GATT_PROXY` or `CONFIG_BT_MESH_PB_GATT`.

Create additional `CONFIG_BT_MESH_PROXY` used to represent
proxy feature (also include proxy client).

see #36343

Signed-off-by: Lingao Meng <menglingao@xiaomi.com>
2021-07-09 17:56:16 +03:00
Krishna Mohan Dani
4268592dc2 samples/bluetooth: st_ble_sensor: Fixes the button activity notification
This commit fixes the button activity notification not working issue.
The right attribute(4) is used for the button service.
This has been tested on nucleo_wb55rg and disco_l475_iot1 platforms.

Signed-off-by: Krishna Mohan Dani <krishnamohan.d@hcl.com>
2021-07-09 17:40:22 +03:00
Krishna Mohan Dani
b09e6fb3c5 drivers/entropy: stm32: selecting the right rng clock source
This commit selects LL_RCC_RNG_CLKSOURCE_CLK48 as a clock source
to rng peripheral. LL_RCC_RNG_CLKSOURCE_CLK48 is CLK48 divided by 3.

Signed-off-by: Krishna Mohan Dani <krishnamohan.d@hcl.com>
2021-07-09 09:19:39 -05:00
Krishna Mohan Dani
1c32bc62ca boards/arm: nucleo_wb55rg: Enabling rng (Random Number Generator)
This commit enables rng for nucleo_wb55rg platform.

Signed-off-by: Krishna Mohan Dani <krishnamohan.d@hcl.com>
2021-07-09 09:19:39 -05:00
Krishna Mohan Dani
4426cec1e1 dts/arm: stm32: Adding true rng(Random Number Generator)
This commit adds true rng in stm32wb dtsi.

Signed-off-by: Krishna Mohan Dani <krishnamohan.d@hcl.com>
2021-07-09 09:19:39 -05:00
Robert Lubos
942ece2a3d net: l2: ieee802154: Fix LL address handling on frame reception
6lowpan module can swap the original buffer with a newly allocated one
during decompression in case the decompressed header would not fit into
the original buffer. Therefore, storing the LL address offset and
restoring the pointer after decompression as it is done today is not
correct, as the new packet with decompressed IPv6 header will not
contain the LL header.

As the 6lowpan module doesn't deallocate the original buffer and
doesn't overwrite the LL header, its fine to use the original
pointers as they are.

Signed-off-by: Robert Lubos <robert.lubos@nordicsemi.no>
2021-07-09 09:10:56 -04:00
Aurelien Jarno
5b58095158 tests: build_all: sensor: Add TI HDC2010/21/22/80 devices
Include the TI HDC2010, HDC2021, HDC2022 and HDC2080 temperature and
humidity sensors in the build_all test, to test the TI_HDC20XX driver.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2021-07-09 07:48:15 -04:00
Aurelien Jarno
0d543f1742 drivers/sensor: Add basic TI HDC20XX support
Add basic support for TI HDC20XX series (e.g. HDC2010, HDC2021, HDC2022,
HDC2080). It is able to get temperature and humidity in the default
14-bit resolution. Triggers, resolution selection, interrupt line, auto
measurement mode are currently not supported.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2021-07-09 07:48:15 -04:00
Benedikt Schmidt
7df3dae39d boards: arm: fix build of civetweb example for STM32H735G discovery kit
Activate optimizations for stm32h735g_disco which in the end
optimize the calls to ferror and fileno away.
Signed-off-by: Benedikt Schmidt <benedikt.schmidt@embedded-solutions.at>
2021-07-09 07:45:07 -04:00
Andrei Emeltchenko
f818d8770b pcie: msi: Map only actual table
Map only actual table of size n_vector * PCIE_MSIR_TABLE_ENTRY_SIZE.

Signed-off-by: Andrei Emeltchenko <andrei.emeltchenko@intel.com>
2021-07-08 14:36:32 -04:00
Gerard Marull-Paretas
1b716cfe3a tests: kernel: device: fix incorrect device power state type
The type used by device PM state was not changed to the recently
introduced enum type. The state is also initialized to a value distinct
from the first expected value.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-07-08 12:08:20 -05:00
Henrik Brix Andersen
b7b7709eec drivers: hwinfo: add NXP MCUX RCM hwinfo driver
Add driver shim for the NXP MCUX Reset Control Module (RCM) for
determining reset cause.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2021-07-08 09:33:32 -05:00