- 04 Nov, 2021 1 commit
-
-
Vinayak Kariappa Chettimada authored
Fix missing initialization of crc_ok in the Periodic Advertising Sync implementation. Signed-off-by:
Vinayak Kariappa Chettimada <vich@nordicsemi.no>
-
- 29 Oct, 2021 1 commit
-
-
Andy Ross authored
There was a brief (but seen in practice on real apps on real hardware!) race with the switch-based z_swap() implementation. The thread return value was being initialized to -EAGAIN after the enclosing lock had been released. But that lock is supposed to be atomic with the thread suspend. This opened a window for another racing thread to come by and "wake up" our pending thread (which is fine on its own), set its return value (e.g. to 0 for success) and then have that value clobbered by the thread continuing to suspend itself outside the lock. Melodramatic aside: I continue to hate this arch_thread_return_value_set() API; it needs to die. At best it's a mild optimization on a handful of architectures (e.g. x86 implements it by writing to the EAX register save slot in the context block). Asynchronous APIs are almost always worse than synchronous ones, and in this case it's an async operation that races against literal context switch code that can't use traditional locking strategies. Fixes #39575 Signed-off-by:
Andy Ross <andrew.j.ross@intel.com>
-
- 26 Oct, 2021 2 commits
-
-
Krzysztof Chruscinski authored
There were some leftovers in logging after attempt to use logging as tracing backend. Removing all references since it lead to test compilation failures. Signed-off-by:
Krzysztof Chruscinski <krzysztof.chruscinski@nordicsemi.no>
-
Dominik Ermel authored
The commit updates mcumgr revision to include backport of 345caab img_mgmt: fix callback parameter values (backport-upstream-137-to-v2.7-branch) Signed-off-by:
Dominik Ermel <dominik.ermel@nordicsemi.no>
-
- 25 Oct, 2021 1 commit
-
-
Timo Teräs authored
DT_INST_NODE_HAS_PROP() returns true always since the boolean tag is valid. Use DT_INST_PROP_OR() to get the real value. Fixes: baecd7e5 drivers: uart_ns16550: Remove CMake-based templating Signed-off-by:
Timo Teräs <timo.teras@iki.fi>
-
- 22 Oct, 2021 2 commits
-
-
Martin Jäger authored
If a fallback hardware watchdog is used, it is fed together with the task watchdog in task_wdt_feed. However, the hardware watchdog was not yet set up before the first call to task_wdt_feed. This commit fixes the order of wdt_setup and task_wdt_feed calls. Fixes #39523 Signed-off-by:
Martin Jäger <martin@libre.solar>
-
Henrik Brix Andersen authored
Fix the limits for the timing parameter calculations. The lower limit for the phase_seg2 value is wrongly specified as 1 to 7, but 1U is substracted before writing it to the CTRL1:PSEG2 register field. This results in register field values between 0 and 6, but 0 is an invalid value for the PSEG2 register field. The upper limits for several of the timing parameters are wrong as well, but this does not result in invalid register field values being calculated. It can, however, result in not being able to meet CAN timing requirements. The confusion in specifying the limits likely stems from the timing calculations and timing limits using the "physical" values, whereas the registers fields all use the "physical" value minus 1. When the datasheet says "The valid programmable values are 1-7", the corresponding limits should be set to 2 to 8 to take the "minus 1" into account. Fixes: #39541 Signed-off-by:
Henrik Brix Andersen <hebad@vestas.com>
-
- 20 Oct, 2021 1 commit
-
-
Ryan Erickson authored
When creating a socket, be sure to check the address family and set the correct address family option in the AT command. Signed-off-by:
Ryan Erickson <ryan.erickson@lairdconnect.com>
-
- 19 Oct, 2021 2 commits
-
-
Jakub Rzeszutko authored
In panic mode, the function: z_shell_fprintf is expected to be called from an interrupt context. Therefore, the dedicated assert cannot be checked in this case. Fixes #38612 Signed-off-by:
Jakub Rzeszutko <jakub.rzeszutko@nordicsemi.no>
-
Torsten Rasmussen authored
Fixes: #36558 #32577 This commit introduces CMAKE_C_COMPILE_FEATURES and CMAKE_CXX_COMPILE_FEATURES. This allows users to use the `target_compile_features()` in their own code. In Zephyr, the CMAKE_C/CXX_COMPILE_FEATURES are defined based on the compiler and the Kconfig / CSTD setting. Doing so ensures that a user compiling Zephyr with c99 and specifies `target_compile_features(<target> ... c_std_11)` will get an error. And similar if building Zephyr with C++ support and c++11, but testing for `target_compile_features(<target> ... cxx_std_17)`. For example in the C++ case, the user must ensure that Zephyr is compiled with C++17, that is: CPLUSPLUS=y and STD_CPP17=y, in which case the CMAKE_CXX_COMPILE_FEATURES will contain support for C++17 and thus the `target_compile_features(<target> ... cxx_std_17)` will succeed. Signed-off-by:
Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
-
- 18 Oct, 2021 2 commits
-
-
Maureen Helm authored
Configures the default serial driver initialization priority for NXP SoCs to ensure that serial drivers initialize after clock control drivers. Signed-off-by:
Maureen Helm <maureen.helm@intel.com>
-
Maureen Helm authored
Refactors all of the serial drivers to use a shared driver class initialization priority configuration, CONFIG_SERIAL_INIT_PRIORITY, to allow configuring serial drivers separately from other devices. This is similar to other driver classes like I2C and SPI. The default is set to CONFIG_KERNEL_INIT_PRIORITY_DEVICE to preserve the existing default initialization priority for most drivers. The one exception is uart_lpc11u6x.c which previously used CONFIG_KERNEL_INIT_PRIORITY_OBJECTS. This change was motivated by an issue on the frdm_k64f board where the serial driver was incorrectly initialized before the clock control driver. Signed-off-by:
Maureen Helm <maureen.helm@intel.com>
-
- 17 Oct, 2021 6 commits
-
-
Henrik Brix Andersen authored
Poll the flash status instead of just reading the flash status once. Add support for controlling the number of SDO retries and the SDO timeouts. These changes allows for greater control of the CANopen program download, which is especially useful on noisy or congested CAN networks and on devices with slower flash access. Fixes: #39409 Signed-off-by:
Klaus H. Sorensen <khso@vestas.com> Signed-off-by:
Henrik Brix Andersen <hebad@vestas.com>
-
Evgeniy Paltsev authored
Don't allow to enable multiple register banks / fast interrupts if we have only one interrupt priority level. NOTE: we duplicate some checks by adding dependencies to ARC Kconfig and adding build-time checks in C code. We do it intentionally as for some reason we can violate dependencies in architecture-level Kconfig by adding incorrect default in SoC-level Kconfig. Such violation happens without any warnings / errors from the Kconfig. Signed-off-by:
Eugeniy Paltsev <Eugeniy.Paltsev@synopsys.com> Signed-off-by:
Evgeniy Paltsev <PaltsevEvgeniy@gmail.com>
-
Jamie McCrae authored
This updates the broken image for the BL5340 board to a working one Signed-off-by:
Jamie McCrae <jamie.mccrae@lairdconnect.com>
-
Manivannan Sadhasivam authored
These 2 regions depends on the RegionBaseUS.c file. Fixes: #39297 Signed-off-by:
Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
-
Christopher Friedt authored
LTS2 Release \o/ Set version to 2.7.0 Signed-off-by:
Christopher Friedt <chrisfriedt@gmail.com>
-
Christopher Friedt authored
This change adds the list of closed issue as per the release process. Signed-off-by:
Christopher Friedt <chrisfriedt@gmail.com>
-
- 16 Oct, 2021 1 commit
-
-
Christopher Friedt authored
This change adds a summary of major enhancements introduced in v2.7.0 . There were so many it was difficult to narrow them down! Great work everyone! Signed-off-by:
Christopher Friedt <chrisfriedt@gmail.com>
-
- 15 Oct, 2021 6 commits
-
-
Alexander Wachter authored
This commit adds the CAN specific release-notes for the 2.7 release. Signed-off-by:
Alexander Wachter <alexander@wachter.cloud>
-
Christopher Friedt authored
Added release note for DNS-SD Services Type Enumeration Signed-off-by:
Christopher Friedt <chrisfriedt@gmail.com>
-
Christopher Friedt authored
Remove duplicate IPM entry. Signed-off-by:
Christopher Friedt <chrisfriedt@gmail.com>
-
Torsten Rasmussen authored
Updated the doc to use GNU Arm Embedded which is the correct term according to the official Arm documentation at the time of this commit. Signed-off-by:
Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
-
Torsten Rasmussen authored
This commit adds description on how to use the Arm Compiler 6 / armclang toolchain with Zephyr. Signed-off-by:
Torsten Rasmussen <Torsten.Rasmussen@nordicsemi.no>
-
Henrik Brix Andersen authored
Python 3.6 support is no longer available on macos-latest. Exclude it. Signed-off-by:
Henrik Brix Andersen <henrik@brixandersen.dk>
-
- 12 Oct, 2021 15 commits
-
-
Christopher Friedt authored
Set version to 2.7.0-rc5 Signed-off-by:
Christopher Friedt <chrisfriedt@gmail.com>
-
Bradley Bolen authored
Mention the addition of MPU support for Cortex-R. Signed-off-by:
Bradley Bolen <bbolen@lexmark.com>
-
David Leach authored
Documents significant changes to NXP SoC platforms in the 2.7.0 release. Signed-off-by:
David Leach <david.leach@nxp.com>
-
Piotr Pryga authored
There was an error in handling of max number of IQ reports generated by controller. Accordin to BT Core Spec 5.1 the host may request a number of CTEs to be sampled and reported by controller while enable IQ sampling. The max_cte_count value set to zero means sample all CTEs in a periodic advertising chain. The commit fixes wrong handling of the max_cte_count provided value to generate expected number of IQ reports. Signed-off-by:
Piotr Pryga <piotr.pryga@nordicsemi.no>
-
Peter Mitsis authored
Fixes undefined references to sys_port_trace_k_thread_abort_enter() and sys_port_trace_k_thread_abort_enter(). Signed-off-by:
Peter Mitsis <peter.mitsis@intel.com>
-
Andrzej Głąbek authored
When the driver was called to set the period length for a channel to 0, it set the COUNTERTOP register in the PWM peripheral to 0, what resulted in an undefined behavior of the peripheral (and lack of the STOPPED event sometimes). The PWM API does not precise how should a zero length period be handled; some drivers return the -EINVAL error in such case, some do not. This patch fixes the pwm_nrfx driver so that it does not change the previously used COUNTERTOP register value when the period length is set to 0, and because the pulse cycles are always limited by the driver to period cycles (so 0 in this case), in result the relevant channel is simply deactivated. This allows users to switch off a channel by requesting the pulse width to be set to 0 without providing a non-zero period in such call. Signed-off-by:
Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
-
Piotr Pryga authored
The filtering of periodic advertisements by scanner may be not needed in certain situations e.g. while use of periodic advertising by BT ISO. To make the code smaller and avoid execution of not needed code the functionality will be conditionally compilable. It may be enabled or disabled by use of CONFIG_BT_CTLR_SYNC_PERIODIC_CTE_TYPE_FILTERING Kconfig option. Signed-off-by:
Piotr Pryga <piotr.pryga@nordicsemi.no>
-
Piotr Pryga authored
The receiver and transmitter in the test are synchronized by use of sleep functions. The change in handling of periodic advertising synchronized event caused missmach in waiting times. Receiver is notified about established synchronization later that it was in the past. Due to that the wait for end of transmitter operation was too long. Temporary fix for the problem is decrease of receiver sleep time by one periodic advertising interval. Signed-off-by:
Piotr Pryga <piotr.pryga@nordicsemi.no>
-
Piotr Pryga authored
First implementation of periodic advertising sync filtering requires existence of Direction Finding Extension in Radio peripheral. To add the filtering support for other Nodric SOCs software based PDU traversing for CTEInfo should be implemented. In case there is no DFE in Radio peripheral, actual filtering is done in ULL. The commit provides necessary changes to previous solution. Signed-off-by:
Piotr Pryga <piotr.pryga@nordicsemi.no>
-
Piotr Pryga authored
Enable filtering of periodic advertisements to synchronize with advertisenemts that include CTE. Signed-off-by:
Piotr Pryga <piotr.pryga@nordicsemi.no>
-
Piotr Pryga authored
Follow up on changes in lower link layer to add filtering of periodic advertisements synchronization by CTE type. The NODE_RX_TYPE_SYNC is used to transport information that: - Sync is established. In such situation the node_rx includes data related with received PDU - Sync scanning is terminated. In first case ULL will generate NODE_RX_TYPE_SYNC_REPORT after sending NODE_RX_TYPE_SYNC. Also EVENT_DONE_EXTRA_TYPE_SYNC handling has additional execution path that terminates sync scanning if requested by lower link layer. In other case it adjusts sync scan window and maintains timeout as usual. Signed-off-by:
Piotr Pryga <piotr.pryga@nordicsemi.no>
-
Piotr Pryga authored
Periodic advertisement synchronization may be filtered by CTE type. If particular CTE type is not allowed then depening on filtering policy: - if filtering policy is off synchronization if terminated - if filtering policy is on synchronization is continued to synchonize with another device from allowed adverisements list. If synchronization is established and peer device changes CTE type to one that is not allowed, synchronization should be maintained. There are two new execution paths. First one is executed when synchronization is created. In this case CTEILINE is enabled to parse PDU for CTEInfo field. In this execution path CTE type is verified. Second execution path does not include parsing PDU for CTEInfo and verification of CTE type. Information about sync allowed is added to node_rx instance that transports received PDU data. In case the sync has to be terminated the node_rx will not hold PDU data. Also done event is extended with information about sync termination if CTE type is not allowed and filtering policy is off. Signed-off-by:
Piotr Pryga <piotr.pryga@nordicsemi.no>
-
Piotr Pryga authored
To enable runtime parsing of PDU to find CTEInfo field CTEINLINE mode has to be enabled. Thanks to that it is possible to verify if the PDU has allowed CTE type e.g. for periodic advertising synchornization. To run CTEInfo parsing other parametrers of CTEINLINE are not relevant. If Radio is set to disable after PDU END event the CTE sampling will not be processed. The commit moves the radio_df_cte_inline_set_enable function to make it accessible even the direction finding features are disabled. Signed-off-by:
Piotr Pryga <piotr.pryga@nordicsemi.no>
-
Piotr Pryga authored
Add missing code responsible for handling of allowed CTE types in HCI_LE_Periodic_Advertising_Create_Sync command. Signed-off-by:
Piotr Pryga <piotr.pryga@nordicsemi.no>
-
Piotr Pryga authored
The commit adds helper macros for verification of disallowed CTE types when periodic advertising synchornization is created. The macros are added here, because they are directly related with values specified by BT Core 5.1 specification. Signed-off-by:
Piotr Pryga <piotr.pryga@nordicsemi.no>
-