Commit graph

43216 commits

Author SHA1 Message Date
Torsten Rasmussen
edde894d04 cmake: Zephyr CMake package clean-up and minor fix
Fixes: #27375

This is a cleanup of the Zephyr CMake package export.
The code has been simplified so that the export now happens through a
CMake script. This avoids several generated CMake build files compared
to previous export mode, and thus removes the need for a CMake pristine
script.

A benefit of this cleanup is that it also fixes #27375.

Signed-off-by: Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
2020-08-19 12:52:33 -04:00
Maciej Perkowski
c67a0cd098 sanitycheck: Improve tests counting
This patch should improve couting and reporting of the number
of passed/skipped tests.

Signed-off-by: Maciej Perkowski <Maciej.Perkowski@nordicsemi.no>
2020-08-19 12:49:42 -04:00
Jukka Rissanen
60d2885e3c driver: eth: native_posix: Minimum RX sleep with gPTP
Sleep minimum time in RX when gPTP is enabled. Typically we
receive constant stream of gPTP protocol data so no need to
wait very long in that case and cause timeouts.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2020-08-19 12:47:09 -04:00
Jukka Rissanen
db2b5dbaf9 samples: net: gptp: native_posix: Set 1ms clock accuracy
Instead of unknown clock accuracy, set it to 1ms for native_posix
boards. This looks better in TSN monitor.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2020-08-19 12:47:09 -04:00
Jukka Rissanen
acb8956bb7 samples: net: gptp: Enable GM support by default
As we support grand master, enable it by default so things
get tested properly.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2020-08-19 12:47:09 -04:00
Jukka Rissanen
0a12b7af14 net: shell: Print current gPTP role information
Print role information next to port information. Also make
sure that port number is set correctly.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2020-08-19 12:47:09 -04:00
Jukka Rissanen
8e9e79b21d net: gptp: Separate common strings from warning messages
Save some memory and separate common string snippets from larger
strings. In this case "does not match" sub-string is printed by
several warning prints so separate the sub-string from the bigger
string.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2020-08-19 12:47:09 -04:00
Jukka Rissanen
08da995bf9 net: eth: native_posix: Only claim VLAN support when applicable
Make sure that native_posix Ethernet driver is claiming to support
VLAN when the VLAN functionality is enabled.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2020-08-19 12:47:09 -04:00
Jukka Rissanen
fe638d23fc net: native_posix: gptp: Add multiport support
Add gPTP multiport support to native_posix Ethernet driver.
This means that the driver is able to create more than one
network interface and enable gPTP to each of them. This requires
that net-tools is updated as it contains configuration file
for network interfaces in host side.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2020-08-19 12:47:09 -04:00
Jukka Rissanen
4223a2e685 samples: net: sockets: Create a test for socket offloading
Create a test of socket offloading. Build the test for
cc3220sf_launchxl board.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2020-08-19 12:42:40 -04:00
Christian Taedcke
e8a5039b70 drivers: serial: gecko: Replace custom macros with _CONCAT
Remove the macros CLOCK_ID_PRFX2 and CLOCK_ID_PRFX and replace them with
_CONCAT from common.h.

Signed-off-by: Christian Taedcke <christian.taedcke@lemonbeat.com>
2020-08-19 11:33:39 -05:00
Timo Dammes
751efe1f6d drivers: uart_gecko: added support for hardware flow control
Added support for hardware flow control in EFM32 UART driver.

Signed-off-by: Timo Dammes <timo.dammes@lemonbeat.com>
Signed-off-by: Christian Taedcke <christian.taedcke@lemonbeat.com>
2020-08-19 11:33:39 -05:00
Andries Kruithof
7ecc55ac84 Bluetooth: controller: consistent HCI error messages
Return BT_HCI_ERR_INVALID_CONN_ID if an invalid handle is
given by the HCI; currently sometimes BT_HCI_ERR_CMD_DISALLOWED
is returned

Signed-off-by: Andries Kruithof <Andries.Kruithof@nordicsemi.no>
2020-08-19 12:10:33 -04:00
Jose Alberto Meza
319be27041 boards: arm: mec15xx: Allow to use some of ADC pins for JTAG tracing
Use new KConfig switches to configure debug support.
Correct ADC configuration where all ADC pins are in ADC mode.

Signed-off-by: Jose Alberto Meza <jose.a.meza.arellano@intel.com>
2020-08-19 10:40:07 -05:00
Jose Alberto Meza
357638955a soc: arm: mchp: Add switch to configure JTAG pins
Currently JTAG debug is enabled by default.
In some designs is desirable to disable JTAG functionality.

Signed-off-by: Jose Alberto Meza <jose.a.meza.arellano@intel.com>
2020-08-19 10:40:07 -05:00
Fabio Utzig
0aaee6dcf5 sample: smp_svr: add shell overlay
Add overlay that includes only the shell transport of mcumgr, without
bringing in BLE as well. This can be used as an alternative for the
serial transport. The `smp_svr` README was updated accordingly.

Signed-off-by: Fabio Utzig <fabio.utzig@nordicsemi.no>
2020-08-19 09:52:21 -04:00
Marcin Niestroj
f74feca027 mgmt: smp: shell: initialize SMP before feeding with received bytes
So far SMP shell transport was initialized in APPLICATION run level, but
shell over UART was initialized in POST_KERNEL. This could end up in
situation when received frames were scheduled for further processing in
SMP layer, when it was not initialized yet.

Export smp_shell_init() function declaration and call it before shell is
initialized with all its receive data handlers. This prevents situation
when data is scheduled for processing in SMP layer, when that one is not
ready yet.

Signed-off-by: Marcin Niestroj <m.niestroj@grinn-global.com>
2020-08-19 09:51:45 -04:00
Martí Bolívar
c1f80db44a cmake: flash: remove unused cache variables
Resolve a TODO item that followed the introduction of runners.yaml
files by removing the now-unused CMake cache variables that they
obsolete.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2020-08-19 09:51:13 -04:00
Martí Bolívar
112e1d32b2 scripts: west_commands: remove unused helper
The cached_runner_config() helper is no longer used, so remove it.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2020-08-19 09:51:13 -04:00
Martí Bolívar
15f9166386 doc: debugging: fix board runner instructions
Using ZEPHYR_BOARD_FLASH_RUNNER relies on a cache variable that
happens to work but is not a supported feature. The appropriate
variable to set is simply BOARD_FLASH_RUNNER.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2020-08-19 09:51:13 -04:00
Martí Bolívar
7492997ba7 scripts: west sign: clean up and address TODOs
Avoid use of the cached_runner_config() helper, which we have a TODO
item to get rid of. Adjust the output and do some other minor
improvements.

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2020-08-19 09:51:13 -04:00
Martí Bolívar
9ca1de18eb scripts: west_commands: add .config parsing helper
Rolling yet another parser turns out to be the best way to let west
extensions respond to Kconfig values. See source code comments in the
patch for details.

The sanitylib library has some similar functionality but it isn't
exactly the same, and it gets strings wrong. For example, that parser
can't handle this option:

CONFIG_FOO="he said \"no\" to me"

This one can, and it has a couple of other features we'll find useful
for west extensions eventually besides.

(Not to mention that sanitylib also rolled its own CMake cache parser,
which also exists in west_commands.)

Signed-off-by: Martí Bolívar <marti.bolivar@nordicsemi.no>
2020-08-19 09:51:13 -04:00
Jan Georgi
5931a29979 net: route: multicast routing feature
net: route: Add prefix-based ipv6 multicast forwarding

This adds/reenables the feature of multicast routing/forwarding.
The forwarding decision is based on the added multicast routes
and the new network interface flag:
NET_IF_FORWARD_MULTICASTS.

Signed-off-by: Jan Georgi <jan.georgi@lemonbeat.com>
2020-08-19 09:46:25 -04:00
Ningx Zhao
92530b5fbb tests: tests/kernel/device modify yaml config
Modify platform tag into kernel.device.pm

Signed-off-by: Ningx Zhao <ningx.zhao@intel.com>
2020-08-19 09:34:28 -04:00
Dominik Ermel
cefebbec39 samples: flash_shell: Fix overwriting return value
Value of ret has been overwritten by flash_write_protection_set
before it could be returned from do_write_unaligned, which could
lead to reporting success when error code should have been returned.

Fixes #27641, Coverity-CID: 212142
Fixes #27642, Coverity-CID: 212143

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2020-08-19 15:01:50 +02:00
Paul Sokolovsky
9ef03bb54c drivers: eswifi: Remove unused variable in ioctl routine
Variable "sd" is no longer referenced after refactoring in 2ed6b6a8ed.
It caused warning-as-error when building using sanitycheck, e.g. in CI.
This is 2nd fixed of the above refactor, after eb9a18432.

Signed-off-by: Paul Sokolovsky <paul.sokolovsky@linaro.org>
2020-08-19 14:35:10 +03:00
Emil Obalski
1b353d5726 usb: Avoid creating duplicate OUT transfers.
This commit fixes an issue when more than one USB transfer is
reserved for same OUT endpoint.

There are 2 scenarios when this could happen:
- The Host sends SET_CONFIGURATION(1) request twice.
- The Host triggers Suspend->Resume->Configured
  event sequence for the device.

USB tranfers are not canceled on SUSPEND event
when the device was not configred previously.

Because of that USB transfer slot is reserved twice
for the same OUT endpoint and lead to shortage of USB
transfer slots quickly.

Without this patch CDC ACM class reserves duplicated USB
transfer slots for one transfer. The sequence of
Suspend->Resume events is genereted alongside with
Configured and the stack will shortly run out of transfer
slots.

If the Host, for some reason, decides to send
SET_CONFIGURATION request twice the same issue is seen.
This patch prevents from reserving additional USB transfer
slots twice.

Signed-off-by: Emil Obalski <emil.obalski@nordicsemi.no>
2020-08-19 13:19:56 +02:00
Andrzej Puzdrowski
7e0306d7d4 manifest: synchronize mcuboot up to upsteram 5a6e181
synchronized mcuboot up to
https://github.com/zephyrproject-rtos/mcuboot/pull/29/commits/5a6e181

Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
2020-08-19 13:18:17 +02:00
Anas Nashif
b4cd1c1a53 lib: mempool: alloc_bit_is_set is used only with asserts
Put it behind an ifdef CONFIG_ASSERT to make clang happy.

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2020-08-19 06:57:40 -04:00
Anas Nashif
bc40cbc9b4 arch: x86: guard some functions based on usage
Found when building with clang..

Signed-off-by: Anas Nashif <anas.nashif@intel.com>
2020-08-19 06:57:40 -04:00
Dominik Ermel
602fc2c3d4 tests: lib: fdtable: Fix missing check on returned fd
Missing check on returned descriptor.

Fixes #27644
Coverity-CID: 212141

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2020-08-19 09:32:34 +02:00
Emil Gydesen
b9f09d785b Bluetooth: Att: Added define for max attribute length
Added a #define for the maximum attribute length defined
by the core spec. Usefull for GATT servers and clients that
deals with long values.

Signed-off-by: Emil Gydesen <emil_gydesen@bose.com>
2020-08-18 15:55:14 -04:00
Dominik Ermel
71a3cc6a60 tests/nvs: Enable test suite with 0x00 erase value
The NVS tests have been disabled here with commit
 tests: nvs: Disable running the 0x00 test suite
 (22be0d8fd5)
due to problems with flash_simulator.

With introduction of below fixes:
 drivers/flash/flash_simulator: Fix flash_sim_write
 (bec0c7f279)
 drivers/flash/fash_simulator: Fix initialization for non-posix
 (849a5432df)

the tests can be enabled back.

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2020-08-18 15:54:04 -04:00
Jose Alberto Meza
459b0df9fb samples: drivers: espi: Convert espi sample to devicetree
Update sample driver test to use dts instead of kconfig.
Fix #22344

Signed-off-by: Jose Alberto Meza <jose.a.meza.arellano@intel.com>
2020-08-18 14:22:10 -04:00
Ningx Zhao
0da89e6a98 tests: kernel/device can't run at EVB board
this case can't run at mec15xxevb_assy6853 board.
see github issue #27363

Signed-off-by: Ningx Zhao <ningx.zhao@intel.com>
2020-08-18 14:20:49 -04:00
Ningx Zhao
fa04a4d488 samples: derives/peci can't run at EVB board
Add a tag at sample.yaml to exclude the platform mec15xxevb_assy6853
because of unsupported. Refer github issue #27576.

Signed-off-by: Ningx Zhao <ningx.zhao@intel.com>
2020-08-18 14:20:49 -04:00
Marcin Niestroj
a542de46ac net: l2: ppp: add initial support for PAP authentication
This patch implements optional authentication phase, which is done
between link establishment and network phases. It is part of LCP option
negotiation to decide whether authentication is needed and which
protocol will be used. For now we add only PAP support and try to
negotiate it when some other protocol (e.g. CHAP or EAP) is proposed
earlier. For simplicity reason we only add one way authentication
support, which means that we try to authenticate to the other peer, but
do not require authentication from it.

This is an important step to make PPP work with cellular network modems,
because most of them require to provide username and password within PPP
authentication phase. Those credentials are used by modem to login to
cellular network. In most cases however it is enough to provide dummy
values, because they are not verified. For this reason and simplicity of
this patch we hardcode PAP Peer-ID and Password now.

Signed-off-by: Marcin Niestroj <m.niestroj@grinn-global.com>
2020-08-18 20:03:05 +03:00
Marcin Niestroj
adb7725a35 net: l2: ppp: remove unused auth.c module
This module had only some header includes, without actual code. Remove
it, as it is better to create one module per authentication protocol
anyway.

Signed-off-by: Marcin Niestroj <m.niestroj@grinn-global.com>
2020-08-18 20:03:05 +03:00
Marcin Niestroj
12553b3c83 net: l2: ppp: add enums and strings for authentication protocols
Add enums of PAP, CHAP and EAP authentication protocols. Also add their
string representations, so they will nicely show up in logs during
debugging.

Signed-off-by: Marcin Niestroj <m.niestroj@grinn-global.com>
2020-08-18 20:03:05 +03:00
Marcin Niestroj
58a142a0ba net: l2: ppp: support returning Conf-Nak on unsupported option values
Interpret -EINVAL return value from options' parse() callback as "option
value is not supported". After receiving such value nack() callback will
be executed in order to put supported value in the response.

Signed-off-by: Marcin Niestroj <m.niestroj@grinn-global.com>
2020-08-18 20:03:05 +03:00
Greg Leach
53cc12201e boards: Add BL653DVK support
Add support for the Laird Connectivity BL653 DVK

Signed-off-by: Greg Leach <greg.leach@lairdconnect.com>
2020-08-18 19:01:42 +02:00
Siddharth Chandrasekaran
0637595ec5 libc: add strtok_r implementation
This is a standard function and useful for applications.

Signed-off-by: Siddharth Chandrasekaran <siddharth@embedjournal.com>
2020-08-18 09:19:58 -07:00
Jukka Rissanen
9b9ce0e529 samples: net: socket: packet: Refactor to allow flooding
Create two threads, one for receiving packet socket data and
the other for sending raw Ethernet frames.
Add flood option where it is possible to stress test the IP
stack. Flooding is disabled by default.

Signed-off-by: Jukka Rissanen <jukka.rissanen@linux.intel.com>
2020-08-18 10:45:27 -04:00
Jakub Rzeszutko
a78ee2194a shell_ops: simplify flag_xxx_get functions
Removed obsolete assignments to bool values.

Signed-off-by: Jakub Rzeszutko <jakub.rzeszutko@nordisemi.no>
2020-08-18 10:44:35 -04:00
Jakub Rzeszutko
0200c4cf07 shell: add state_get function
Added function state_get complementary to state_set.

Signed-off-by: Jakub Rzeszutko <jakub.rzeszutko@nordisemi.no>
2020-08-18 10:44:35 -04:00
Jakub Rzeszutko
dd9dac8694 shell: add missing mutex protection
Commit: e2e74c0f53 removed mutex
protection from shell_internal_fprintf function. Added missing mutex.

Added missing mutex protection in shell_start function.

Signed-off-by: Jakub Rzeszutko <jakub.rzeszutko@nordisemi.no>
2020-08-18 10:44:35 -04:00
Jakub Rzeszutko
dac8728856 shell: Add warning about not initialized backend
Shell will display a warning message if there was a request to print
a message on the not initialized shell backend.

Signed-off-by: Jakub Rzeszutko <jakub.rzeszutko@nordisemi.no>
2020-08-18 10:44:35 -04:00
Jakub Rzeszutko
920e64cfd4 shell: fix possible deadlock in shell_fprintf
Disable shell print functions if the shell is not initialized.
Update tests accordingly.

Fixes #27161

Signed-off-by: Jakub Rzeszutko <jakub.rzeszutko@nordisemi.no>
Signed-off-by: Steven Slupsky <sslupsky@gmail.com>
2020-08-18 10:44:35 -04:00
Carlo Caione
310057d641 arch: arm64: Parametrize registers usage for z_arm64_{enter,exit}_exc
Make explicit what registers we are going to be touched / modified when
using z_arm64_enter_exc and z_arm64_exit_exc.

Signed-off-by: Carlo Caione <ccaione@baylibre.com>
2020-08-18 15:17:39 +02:00
Carlo Caione
d187830929 arch: arm64: Rework registers allocation
Rationalize the registers usage trying to reuse the smallest set of
registers possible.

Signed-off-by: Carlo Caione <ccaione@baylibre.com>
2020-08-18 15:17:39 +02:00