Commit graph

56,357 commits

Author SHA1 Message Date
Lukasz Maciejonczyk
fa1407129d drivers: ieee802154: add support for secured transmission in nRF5
Configure radio driver with MAC key pairs and frame counter.

Signed-off-by: Lukasz Maciejonczyk <lukasz.maciejonczyk@nordicsemi.no>
2021-06-22 08:22:02 -04:00
Lukasz Maciejonczyk
4185e8e515 modules: hal_nordic: add Kconfig option for frame auth and encryption
New option enables/disables frame encryption module, security writer
module and IE writer module.

The new hal_nordic revision updates the nRF 802.15.4 component.

Signed-off-by: Lukasz Maciejonczyk <lukasz.maciejonczyk@nordicsemi.no>
2021-06-22 08:22:02 -04:00
Przemyslaw Bida
976c413d75 openthread: fix not working ot diag repeat command
This commit fixes diag repeat command port by fixing issue with
incorrectly handled repeat timer.

Signed-off-by: Przemyslaw Bida <przemyslaw.bida@nordicsemi.no>
2021-06-22 08:21:41 -04:00
Krishna Mohan Dani
f4310dd22c tests/drivers: disco_l475_iot1: Enabling soc-flash support in overlays.
This commit enables soc-flash support in disco_l475_iot1
only for flash test. Using overlays, it adds soc-flash storage
partition and deletes qspi-flash storage parition for
flash test. Both flash test and spi_flash application
has been tested on disco_l475_iot1 platform.

Signed-off-by: Krishna Mohan Dani <krishnamohan.d@hcl.com>
2021-06-22 08:21:21 -04:00
Krishna Mohan Dani
2f0d632f60 boards/arm: disco_l475_iot1: case correction.
This commit changes from upper case to lower case in
"reg = <0x000D8000 DT_SIZE_M(7)"
"reg = <0x00000000 0x000D8000>"

Signed-off-by: Krishna Mohan Dani <krishnamohan.d@hcl.com>
2021-06-22 08:21:21 -04:00
Emil Gydesen
a1cf45b26e Bluetooth: ISO: Split connected and broadcast ISO Kconfig
Add a new Kconfig option, BT_ISO_UNICAST, to make it possible
either configure unicast only, broadcast only or both.

This results in some code being moved, but not modified, and
should not effect anything.

Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
2021-06-22 08:21:00 -04:00
Krishna Mohan Dani
cca1f3a45b tests/drivers: stm32f746g_disco: Enabling soc-flash support in overlays
This commit enables soc-flash support in stm32f746g_disco only for
flash test. Using overlays, it adds soc-flash storage partition and
deletes qspi-flash storage partition for flash test. Both flash test and
spi_flash application has been tested on stm32f746g_disco platform.

Signed-off-by: Krishna Mohan Dani <krishnamohan.d@hcl.com>
2021-06-22 08:20:32 -04:00
Gerard Marull-Paretas
45cce736e2 doc: fix notfound prefix for latest docs
The notfound extension prefix was incorrect for 'latest' docs version.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-06-22 06:34:51 -04:00
Gerard Marull-Paretas
c2068e5d6e doc: getting_started: add Python virtual environment option
Python is used by the west meta-tool as well as by many scripts invoked
by the build system. It is easy to run into package incompatibilities
when installing dependencies at a system or user level. This situation
can happen, for example, if working on multiple Zephyr versions at the
same time. For this reason, the getting started guide has been updated
to offer instructions for both, using Python virtual environments and
installing globally. Python virtual environments has been added as
another choice for the reasons just mentioned.

Signed-off-by: Gerard Marull-Paretas <gerard.marull@nordicsemi.no>
2021-06-21 21:39:34 -04:00
Erwan Gouriou
3e1443ccf9 scripts/pylib: expr_parser.py: Review dt_compat_enabled_with_label
Function used for filtering "dt_compat_enabled_with_label" was not
working as expected as it was not taking into account that we're
looking for a children/parent combination:
Provided "compat" with enabled status should be the one of the parent
of the node matching given label.

Function is then reworked to take this into account.
And to make it's usage clear:
- function name is changed to be clearer on the intention
- args order is reversed to be more logical wrt the intention

Users of the function are also updated to take the change into
account.

Fixes #36093

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2021-06-21 20:31:49 -04:00
Immo Birnbaum
9d3346e92b dts: arm: xilinx: zynqmp: add device tree data for GEM Ethernet controllers
Add the device tree data for the 4 Ethernet controllers integrated into
the ZynqMP SoC, GEM0 to GEM3.

Signed-off-by: Immo Birnbaum <Immo.Birnbaum@weidmueller.com>
2021-06-21 20:11:00 -04:00
Immo Birnbaum
dabe728eef drivers: ethernet: add support for Xilinx GEM controller
Add support for the Xilinx GEM Ethernet controller, which is integrated
in both the Xilinx Zynq and ZynqMP (UltraScale) SoC families. The driver
supports the management of a PHY attached to the respective GEM's MDIO
interface.

This driver was developed with ultimately the Zynq-7000 series in mind,
but at the time being, it is limited to use in conjunction with the
ZynqMP RPU (Cortex-R5) cores. The differences are minor when it comes
to the adjustment of the TX clock frequency derived from the current
link speed reported by the PHY, but for use in conjunction with the
Zynq-7000, some larger adjustments will have to be made when it comes
to the placement of the DMA memory area, as this involves the confi-
guration of the MMU in Cortex-A CPUs.

The driver was developed under the qemu_cortex_r5 target. The Marvell
88E1111 PHY simulated by QEMU is supported by the driver.

Limitations currently exist when it comes to timestamping or VLAN
support and other minor things. Those haven't been implemented yet,
although they are supported by the hardware. In order to be fully
supported by the ZynqMP APU, 64-bit DMA address descriptor format
support will be added.

Signed-off-by: Immo Birnbaum <Immo.Birnbaum@weidmueller.com>
2021-06-21 20:11:00 -04:00
Mulin Chao
fbf5b8e8de dts: pcc: npcx: add properties of pcc node to configure clock settings
This CL introduces six properties, clock-frequency, core-prescaler,
apb1/2/3/4-prescaler in pcc (Power and Clock Controller) node to
configure clock settings. It also removed the original Kconfig options
used for the same purpose.

Signed-off-by: Mulin Chao <mlchao@nuvoton.com>
2021-06-21 18:47:31 -04:00
Mulin Chao
6885afe432 driver: timer: npcx: add check for system kernel timer frequency
In npcx series, we use ITIM64 as system kernel timer. Its source clock
frequency must equal to CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC. This CL
added check during initialization to prevent ambiguous condition.

Signed-off-by: Mulin Chao <mlchao@nuvoton.com>
2021-06-21 18:47:31 -04:00
Mulin Chao
009388a321 soc: npcx: rename OSC_CLK as OFMCLK
Rename OSC_CLK as OFMCLK to meet npcx datasheet. The Oscillator
Frequency Multiplier Clock (OFMCLK), which is derived from
High-Frequency Clock Generator (HFCG), is the source clock of cortex-m4
core and most of NPCX hardware modules.

Signed-off-by: Mulin Chao <mlchao@nuvoton.com>
2021-06-21 18:47:31 -04:00
Jukka Rissanen
07bbc9045d net: context: Check null pointer access in check_used_port()
There is a small window between when socket is created and
before it is bound to a local address, where the local address
pointer might be NULL.

Fixes #36276

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2021-06-21 18:46:41 -04:00
Erwan Gouriou
4af0069ec7 doc: Encourage users to pre-analyze regressions
Add a paragraph to mention git bisect as a way to pre-analyze
regressions.
Aim is to reference this section from github issues when regressions
are reported and encourage users to do this first round of
pre-analyzis

Signed-off-by: Erwan Gouriou <erwan.gouriou@linaro.org>
2021-06-21 18:46:08 -04:00
Crist Xu
530db5154e lpadc: a bug fix for the drivers/adc_mcux_lpadc.c
it need to be a && between two condition, to satisfy
the comment: only 12 / 13 bit resolution is supported,
if FSL_FEATURE_LPADC_HAS_CMDL_MODE is not defined. not
using ||.

Signed-off-by: Crist Xu <crist.xu@nxp.com>
2021-06-21 14:19:29 -05:00
Sam Chen
a5fce2022a boards: arm: b_l4s5i_iot01a: SPI chip-select is active low.
According to RM0432, the chip-select of SPI is active low.

Fixes #36289

Signed-off-by: Sam Chen <sam.chen@iota.org>
2021-06-21 11:20:34 -05:00
Ioannis Glaropoulos
9fe8a207b5 soc: arm: nrf: ensure z_platform_init does not use stack memory
We should gurantee that we do not use SRAM during Zephyr early
boot, until SystemInit has returned. This commit aims to ensure
that SystemInit will be branched to, without first pushing args
to stack, even when no optimizations are selected. We chose to
define z_platform_init in assembly directly (instead of using
inline assembly) as it appears to be a cleaner design.

Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
2021-06-21 17:35:30 +02:00
Ioannis Glaropoulos
faad3223ec soc: nrf: move z_platform_init to a common directory
Use a common implementation for z_platform_init
in nRF SoC family. The implementations are
identical, so no need to maintain separate
identical versions of them. The commit does not
introduce behavioral changes.

Signed-off-by: Ioannis Glaropoulos <Ioannis.Glaropoulos@nordicsemi.no>
2021-06-21 17:35:30 +02:00
Kumar Gala
28e4af6176 drivers: sensor: iis2iclx: Fix compile warning
Fix compile warning with clang and extraneous parentheses

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2021-06-21 10:08:24 -05:00
Kumar Gala
deb689f0f9 drivers: sensor: max17055: Fix compile error with clang
Since we are writing a register it makes more sense for the type
to be unsigned.  This hopefully address a compile warning we get
with clang:

error: implicit conversion from 'int' to 'int16_t' (aka 'short')
changes value from 32768 to -32768 [-Werror,-Wconstant-conversion]

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2021-06-21 10:08:24 -05:00
Kumar Gala
6c5ff82fc9 tests: drivers: build_all: sensor: simplify configs
Now that we only build on native_posix, we can build all the sensors
together in one pass.  This makes it easier to manage the conf files
going forward.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2021-06-21 10:08:24 -05:00
Kumar Gala
d6baea5034 tests: drivers: build_all: sensor: build only a native_posix
The driver build_all tests only need to build a driver once and
so limit the sensor tests to only build on native_posix.

We tweak CONFIG_SYS_CLOCK_TICKS_PER_SEC as part of this change as
hp206c requires this setting to build.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2021-06-21 10:08:24 -05:00
Kumar Gala
83cfcd41fc drivers: sensor: icm42605: Fix build issues
If CONFIG_ICM42605_TRIGGER is not set the driver doesn't build.  There
are a few places that need ifdefs based on CONFIG_ICM42605_TRIGGER for
the driver to build correctly.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2021-06-21 10:08:24 -05:00
Kumar Gala
a6c7569733 tests: build_all: dac: Add a test to build each DAC driver
Add a tests that builds each DAC driver just once.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2021-06-21 07:04:15 -05:00
Yong Cong Sin
903198dcdc dts: arm: stm32g0: Add cpu0 label
Add cpu0 label for cpu-idle-states later.

Signed-off-by: Yong Cong Sin <yongcong.sin@gmail.com>
2021-06-21 07:03:03 -05:00
Krzysztof Kopyściński
e62c3c533a Bluetooth: gatt: allow writing long device name
BT_DEVICE_NAME_MAX can be up to 248 bytes. This may exceed ATT MTU size,
which will cause the offset in write_name() to be non zere, resulting in
BT_ATT_ERR_INVALID_OFFSET. However, device name should be writable up to
it's defined size, using subsequent prepare write requests. Error should
be returned if offset exceeds size of device name, and if total size of
new value exceeds BT_DEVICE_NAME_MAX, BT_ATT_ERR_INVALID_ATTRIBUTE_LEN
shall be returned.

Signed-off-by: Krzysztof Kopyściński <krzysztof.kopyscinski@codecoup.pl>
2021-06-19 16:55:56 -05:00
Kevin Townsend
b5f9ba67fc boards: arm: mps3_an547: Enable FVP and QEMU simulation
This commit enables emulation of the `mps3_an547` platform
using, by default, The Arm Corstone-300 MPS3 FVP executable.
This FVP includes support for emulating the Ethos-U55 NPU.

Optionally, the default FVP selection can be overriden in favor
of QEMU, which supports the MPS3 without the proprietary
Ethos-U55 FPU extension. To enable qemu as an emulation target,
add `-DEMU_PLATFORM=qemu` when building an mps3_an547 image.

Signed-off-by: Kevin Townsend <kevin.townsend@linaro.org>
2021-06-19 16:55:40 -05:00
Eduardo Montoya
3417c9a132 net: openthread: remove unneded Kconfig dependency
`OPENTHREAD_SHELL` does no longer dependend on
`OPENTHREAD_COPROCESSOR` being disabled.

Signed-off-by: Eduardo Montoya <eduardo.montoya@nordicsemi.no>
2021-06-19 16:54:44 -05:00
Krzysztof Chruscinski
3656ba5ae9 drivers: serial: nrfx: Add pullups to RXD and CTS
Configured UART/UARTE input pins to have pullups. Otherwise when
uart is disconnected pins are floating and generate receiver
errors.

Signed-off-by: Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2021-06-18 23:49:36 +02:00
Krishna Mohan Dani
d37fa5464e boards/arm: stm32l562e_dk: enabling watchdog support in device tree
This commit enables iwdg support for stm32l562e_dk platform in
device tree. This has been tested on stm32l562e_dk platform with
tests/drivers/watchdog/wdt_basic_api and samples/drivers/watchdog.

Signed-off-by: Krishna Mohan Dani <krishnamohan.d@hcl.com>
2021-06-18 16:52:00 -04:00
Krishna Mohan Dani
970890bbde dts/arm: STM32: fixing compilation warning.
This commit fixes the compilation warning occurred due
to usage of upper case in "interrupt-controller@4000F400".

Signed-off-by: Krishna Mohan Dani <krishnamohan.d@hcl.com>
2021-06-18 16:52:00 -04:00
Krishna Mohan Dani
05b78f042e dts/arm: STM32: Add watchdog support for stm32l5 in dtsi
This commit adds iwdg and wwdg support in dtsi for stm32l5 series.

Signed-off-by: Krishna Mohan Dani <krishnamohan.d@hcl.com>
2021-06-18 16:52:00 -04:00
Denis Brockus
8b42be5333 gpio: Add GPIO voltage overrides
Add GPIO_flag values for GPIO DTS creation that
allows for pins that do not use the default
voltage.  IT8xxx2 supports setting voltage
levels for each pin. The default for this SoC
is 3P3 but they can be set individually to
1P8.

This will be used, for example:

    i2c_c_scl {
            gpios = <&gpioc 1 (GPIO_INPUT | GPIO_VOLTAGE_1P8)>;
            enum-name = "GPIO_I2C_C_SCL";
            label = "I2C_C_SCL";
    };

Signed-off-by: Denis Brockus <dbrockus@google.com>
2021-06-18 16:51:23 -04:00
Chih Hung Yu
421ff4758f net: ip: Fix TCP unacked_len
TCP unacked_len can be set to zero in tcp_resend_data(),
and then be minus by len_acked when ACK is received,
resulting in a negative unacked_len value.

Fixes #36390

Signed-off-by: Chih Hung Yu <chyu313@gmail.com>
2021-06-18 16:21:29 +03:00
Marcin Zwierz
4cae9b81d5 kernel: Add extern "C" to kernel_struct.h
Add extern "C" to kernel_struct.h to allow linkage in cpp.

Signed-off-by: Marcin Zwierz <marcin.zwierz@hidglobal.com>
2021-06-18 08:11:22 -05:00
Torbjörn Leksell
5a4070953d Tracing: TraceRecorder CMake update
- Fixed some incorrect streamport references that pointed to the
base streamport files instead of those dedicated for Zephyr.
- Updated the source file compilation to match the updated
TraceRecorder module.

Signed-off-by: Torbjörn Leksell <torbjorn.leksell@percepio.com>
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2021-06-18 08:08:07 -05:00
Francois Ramu
2790d2ac4c drivers: bluetooth: hci driver for stm32wb includes clock control
The definition of the STM32_LSE_CLOCK is given by the
drivers/clock_control/stm32_clock_control.h
to the hci/ipm_stm32wb driver

Signed-off-by: Francois Ramu <francois.ramu@st.com>
2021-06-18 07:59:48 -05:00
Henrik Brix Andersen
c16d7f1919 MAINTAINERS: include samples/drivers/eeprom under EEPROM area
Include the samples/drivers/eeprom folder under the EEPROM maintainer
area.

Signed-off-by: Henrik Brix Andersen <hebad@vestas.com>
2021-06-18 07:56:41 -05:00
Kumar Gala
7b6eff0d9a tests: build_all: pwm: Add a test to build each PWM driver
Add a tests that builds each PWM driver just once.

Signed-off-by: Kumar Gala <kumar.gala@linaro.org>
2021-06-18 07:56:22 -05:00
Sidhdharth Yadav
7137969dcb boards: arm: stm32l562e_dk: Enabling PWM support in device tree
This commit enables PWM support for stm32l562e_dk platform in
device tree.

Signed-off-by: Sidhdharth Yadav <sidhdharth.yadav@hcl.com>
2021-06-18 05:42:08 -05:00
Sidhdharth Yadav
cf80205daa dts: arm: STM32: Enable PWM support for stm32l5 in dtsi
This commit adds PWM support in dtsi for stm32l5 series. Adding
other timer nodes for different stm32l5 series PWM capability.

Signed-off-by: Sidhdharth Yadav <sidhdharth.yadav@hcl.com>
2021-06-18 05:42:08 -05:00
Aurelien Jarno
13416c584b tests: build_all: sensor: add I2C version of the MS5607 device
Add the I2C version of the MS5607 (the SPI version was already enabled)
so that it gets compiled tested.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2021-06-18 11:23:07 +02:00
Aurelien Jarno
9d0169deaf drivers/sensor: ms5607: Add I2C support
Add I2C support to the MS5607 driver, which mostly consist in adding the
I2C transfer functions.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2021-06-18 11:23:07 +02:00
Aurelien Jarno
593ec46c0a drivers/sensor: ms5607: Add multi-instance support
Add multi-instance support to the MS5607 driver. This is needed to
easily add I2C support later. It also simplifies a bit the driver
initialisation by using more static values.

Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
2021-06-18 11:23:07 +02:00
Armando Visconti
098a5f51aa drivers/sensor: Clean unused axis structures
axis1bit16 and axis3bit16 unions are no longer used
and can be deleted from all .h files that are referencing
them.

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2021-06-18 11:22:58 +02:00
Armando Visconti
7f9e3af932 modules/hal_st: Align sensor drivers to stmemsc HAL i/f v2.00
Align all sensor drivers that are using stmemsc (STdC) HAL i/f
to new APIs of stmemsc v2.00.

Requires https://github.com/zephyrproject-rtos/hal_st/pull/7
(merged as 575de9d461aa6f430cf62c58a053675377e700f3)

Signed-off-by: Armando Visconti <armando.visconti@st.com>
2021-06-18 11:22:58 +02:00
Henrik Brix Andersen
93587e9178 drivers: led: ht16k33: reprocess keyscan events in case of i2c error
Reprocess keyscan event processing in case of an I2C bus read
error. Otherwise, the HT16K33 will be stuck (when used in IRQ mode, not
in polling mode) and no new IRQs will be delivered.

Signed-off-by: Henrik Brix Andersen <henrik@brixandersen.dk>
2021-06-18 11:22:40 +02:00