Skip to content

Conversation

@sean-madigan
Copy link
Contributor

The host-based adv auto-resume function has both a problematic implementation and disagreement in the community around how it should behave. See the issue linked resolved below for details.

This patch makes the deprecation visible to the user. The user will be better served by a auto-resume tailored their applications use case, based on more primitive host API like conn_cb.recycled, which has obvious behavior that is unlikely to change.

Resolves: zephyrproject-rtos/zephyr#72567

(cherry picked from commit 8cfad44)

jukkar and others added 30 commits October 25, 2024 14:23
Both the supplicant_set_btwt() and supplicant_ap_bandwidth() are
not found in Zephyr sources so remove them.

Signed-off-by: Jukka Rissanen <[email protected]>
(cherry picked from commit 6ac4e9c)
The "enum wpa_msg_type" was not found by default so add needed
include files to get the definitions.

modules/hostap/src/supp_main.h:61:57: warning: ‘enum wpa_msg_type’
   declared inside parameter list will not be visible outside of
   this definition or declaration
   61 | void wpa_supplicant_msg_send(void *ctx, int level,
                                     enum wpa_msg_type type,
                                     const char *txt,

Signed-off-by: Jukka Rissanen <[email protected]>
(cherry picked from commit c9b8365)
Even if the enum contains the same values, the values might
change if the wpa_supplicant sources change or Zephyr values
change. In order to avoid weird errors later and prevent the
following warning, add a conversion functions for the enums.

modules/hostap/src/supp_api.c:1172:23: warning: implicit conversion
from enumeration type 'enum mfp_options' to different enumeration
type 'enum wifi_mfp_options' [-Wenum-conversion]
                status->mfp = ssid->ieee80211w; /* Same mapping */

modules/hostap/src/supp_api.c:1190:30: warning: implicit conversion
from enumeration type 'enum wpas_mode' to different enumeration
type 'enum wifi_iface_mode' [-Wenum-conversion]
                status->iface_mode = ssid->mode;

Signed-off-by: Jukka Rissanen <[email protected]>
(cherry picked from commit ec21dab)
…mbinations

Try to compile test wifi with various configuration combinations.
This is trying to catch simple compilation issues in the PRs.

Signed-off-by: Jukka Rissanen <[email protected]>
(cherry picked from commit 3f8828d)
This is related to work on #79973 which creates build tests
for hostap with different configurations.

Signed-off-by: Jukka Rissanen <[email protected]>
(cherry picked from commit 3cf8b09)
…imeout

WPA control interface timeout is hardcoded to 10s, add a configuration
option to remove the hardcode, this is needed sometimes as a workaround
e.g., crypto taking too long to complete the request.

Work around for #79834, increase the default from 10 to 15s, in positive
case this will have no impact.

Signed-off-by: Chaitanya Tata <[email protected]>
(cherry picked from commit 78f5821)
Execute certificate headers creation rules only if Wi-Fi Enterprise mode
is enabled.

Upstream PR: zephyrproject-rtos/zephyr#80212

Signed-off-by: Ravi Dondaputi <[email protected]>
Few build errors due to bugs in previous commits.

Signed-off-by: Chaitanya Tata <[email protected]>
(cherry picked from commit f6b60bd)
The defines should explicitly be passed to nordic HAL as they dont' use
the CONFIG_ prefix.

Signed-off-by: Chaitanya Tata <[email protected]>
(cherry picked from commit 3098c48)
Missed adding CONFIG_ to the configuration option.

Signed-off-by: Chaitanya Tata <[email protected]>
(cherry picked from commit f840f66)
When debug is disabled, seeing a build error for unused variable.

Upstream PR: zephyrproject-rtos/zephyr#80315

Signed-off-by: Chaitanya Tata <[email protected]>
Support Wi-Fi enterprise mode with NRF_SECURITY.

Signed-off-by: Ravi Dondaputi <[email protected]>
Enable wifi sample to connect in EAP-TLS mode. Create sample
certificates.

Signed-off-by: Ravi Dondaputi <[email protected]>
This brings in PSA Kconfig and CMakelist.txt changes to NCS.
Currently, it contains known PSA configurations and source files
that are needed or will be needed in the future. WPA3 and
Enterprise is currently disabled with this setting.

Signed-off-by: Vivekananda Uppunda <[email protected]>
Signed-off-by: Chaitanya Tata <[email protected]>
Make sure Wi-Fi driver is enabled when sysbuild is used. For shields we
cannot automate this, as sysbuild doesn't recognize shields, so, Wi-Fi
has to be explicitly enabled, this is done for twister.

Signed-off-by: Chaitanya Tata <[email protected]>
Build throw macro redefined error as it's already defined by the nRF
security module.

Signed-off-by: Chaitanya Tata <[email protected]>
The file has been removed upstream, but as upstream doesn't have NS
support, this need to be fixed explicitly.

Upstream PR: zephyrproject-rtos/zephyr#79606

Signed-off-by: Chaitanya Tata <[email protected]>
NS builds need to use PSA for entropy same as 54L.

Signed-off-by: Chaitanya Tata <[email protected]>
Upstream certificates are RSA3K + Suite-B, they are not support yet on
nRF boards, so, generate a new certificate for both phase1 and phase2
and use them.

Signed-off-by: Chaitanya Tata <[email protected]>
Signed-off-by: Ravi Dondaputi <[email protected]>
For 54H Legacy mode is broken, so, enable PSA at the cost of supporting
WPA2 only.

Signed-off-by: Chaitanya Tata <[email protected]>
The details of how the ICBMsg communication is done, are hidden
inside the source code. This specification adds details about
the ICBMsg protocol.

Signed-off-by: Dominik Kilian <[email protected]>

(cherry picked from commit 8d99393)
The details of how the ICMsg communication is done, are hidden
inside the source code. This specification adds details about
the ICBMsg protocol.

Signed-off-by: Dominik Kilian <[email protected]>

(cherry picked from commit 7574602)
… structure

Split async control block structure into tx and rx structures.

Signed-off-by: Krzysztof Chruściński <[email protected]>
(cherry picked from commit 701beec)
…operty

Add property which indicates that UARTE support frame timeout
feature. Property is added to nrf54h20, nrf9280, nrf54l20 and
nrf54l15.

Signed-off-by: Krzysztof Chruściński <[email protected]>
(cherry picked from commit ac1cc17)
…_MANAGEMENT

This is a leftover from pre-pinctrl era and no longer makes sense.
Driver always manages gpio through pinctrl.

Support removed from uart and uarte shims.

Signed-off-by: Krzysztof Chruściński <[email protected]>
(cherry picked from commit 76db5b2)
…O_MANAGEMENT

Remove Kconfig option that no longer has any use after pinctrl
driver is introduced.

Signed-off-by: Krzysztof Chruściński <[email protected]>
(cherry picked from commit cae53af)
…MENT removal

Add note that those Kconfig options were removed from Nordic UART driver
configuration.

Signed-off-by: Krzysztof Chruściński <[email protected]>
(cherry picked from commit 3a4c5a9)
Use nrfx_gppi as abstraction over (D)PPI.

Signed-off-by: Krzysztof Chruściński <[email protected]>
(cherry picked from commit 2668476)
…struct pointer

Refactor RX asynchronous API function to use a pointer to the RX
async data structure instead of top level data structure pointer.
It improves readability with more concise code.

Signed-off-by: Krzysztof Chruściński <[email protected]>
(cherry picked from commit d82808e)
…new features

Rework driver to support new way of asynchronous RX handling.
Previously RX was handled in two modes: using RXDRDY interrupt for byte
counting or TIMER + PPI. Both modes had flaws. RXDRDY interrupt mode
could miscalculated amount of received bytes when interrupt was not
handled on time. Data was not lost but was not reported on time that
could lead to issues. PPI+TIMER mode requires additional resources
thus it was not the default mode. Often user was not aware of that
option and was expiriencing driver RX faults.

New RX mode is switching buffers when there is new data (RXDRDY event
not set for given amount of time). It does not require additional
resources to get precise byte counting. Additionally, this is in line
with new UARTE feature (RX frame timeout) which is present in nRF54X
devices. The behavior of the driver is the same for legacy devices
and new one. For legacy devices k_timer periodic interrupts are used
to check if there are any new bytes and it is not needed when RX frame
timeout is present.

Improved RX mode is enabled by default
(CONFIG_UART_NRFX_UARTE_ENHANCED_RX=y) but legacy modes are still
available though not recommended to be used.

Note that new RX mode (CONFIG_UART_NRFX_UARTE_ENHANCED_RX=y) behaves
a bit different because timeout always triggers switch of buffers
which means that there will be no UART_RX_RDY events with non-zero
offset. It also means that every UART_RX_RDY will be followed by
UART_RX_BUF_RELEASED.

After rework, driver is recommended to be used for all platforms as it
performs much better and takes much less code than the second UART shim
available for Nordic devices.

Signed-off-by: Krzysztof Chruściński <[email protected]>
(cherry picked from commit 399a235)
maxd-nordic and others added 21 commits November 12, 2024 16:14
This patch fixes an issue where the reset pin is used even when it's
not given.

Signed-off-by: Maximilian Deubel <[email protected]>
(cherry picked from commit 4f85ce6)
The option notifies application that MCUboot has been configured
to use SHA512 for image hashing.

Signed-off-by: Dominik Ermel <[email protected]>
Adds support for images signed with SHA512.

Signed-off-by: Dominik Ermel <[email protected]>
Increase stack size as support for SHA512 requires more data.

Signed-off-by: Dominik Ermel <[email protected]>
Add pins retention control when GPD is enabled for SPIM.

Upstream PR #: 81134

Signed-off-by: Adam Kondraciuk <[email protected]>
Add pin retenion if GPD is enabled for nRF54H20.

Upstream PR #: 80672

Signed-off-by: Michał Stasiak <[email protected]>
FAST_ACTIVE1 domain needs to be kept ON while the peripheral is
active (always in this driver).

Signed-off-by: Gerard Marull-Paretas <[email protected]>
Fix and update triggers for SUIT DFU tests.

Signed-off-by: Krzysztof Szromek <[email protected]>
… of s2ram_suspend

The return value of the system_off call is overwritten by the the call to
pm_s2ram_mark_check_and_clear. As arch_pm_s2ram_suspend needs to specify
why system_off failed, we need to make sure the rv of system_off is moved
to a safe register before calling pm_s2ram_mark_check_and_clear and moved
to r0 als rv of arch_pm_s2ram_suspend when the suspend call exits.

Upstream PR #: 80642

Signed-off-by: Hessel van der Molen <[email protected]>
IRQs must be disabled before starting any procedures to prepare
for low-power states.

Upstream PR #: 79067

Signed-off-by: Adam Kondraciuk <[email protected]>
To properly execute erase, recover and reset.

Upstream PR #: 81420

Signed-off-by: Piotr Kosycarz <[email protected]>
Uses a temporary file for dts output then uses CMake to copy to the
correct file if it has changed. This prevents a ping-pong issue when
sysbuild is used of configuring and building cycle when nothing has
changed and there is sysbuild code which loads in the devicetree
data from an image

Upstream PR #: 81340

Signed-off-by: Jamie McCrae <[email protected]>
Add unit tests for bt_le_cs_step_data_parse.
Also exit early (without calling the function pointer) if the next
step would seem to read out of bounds.

Signed-off-by: Olivier Lesage <[email protected]>
(cherry picked from commit 635d03b)

Signed-off-by: Sean Madigan <[email protected]>
The 12-bit signed values for the results of PBR are a bit
cumbersome, so this adds a helper function to make it easier to work
with the HCI formatted steps.

Signed-off-by: Olivier Lesage <[email protected]>
(cherry picked from commit 7e72d46)

Signed-off-by: Sean Madigan <[email protected]>
Update FAE table type from array of uint8_t to int8_t. From Vol 6.0,
Part B, section 2.4.2.52: "The ChFAE field contains the per-channel
mode-0 FAE table of the local Controller. Every per-channel mode-0
FAE value is represented by an 8-bit signed integer"

Signed-off-by: Adam Cavender <[email protected]>
(cherry picked from commit a68a0a4)

Signed-off-by: Sean Madigan <[email protected]>
Fix a spelling mistake in the enum bt_le_cs_procedure_phy, and various
mistakes in comments.

Signed-off-by: Timothy Keys <[email protected]>
(cherry picked from commit 59126ac)

Signed-off-by: Sean Madigan <[email protected]>
This code is redundant and causes a build error if called more than
once.

Signed-off-by: Timothy Keys <[email protected]>
(cherry picked from commit 97399d4)

Signed-off-by: Sean Madigan <[email protected]>
…p_bits

Add coverage of the bt_le_cs_set_valid_chmap_bits function to unit tests

Signed-off-by: Timothy Keys <[email protected]>
(cherry picked from commit e976a01)

Signed-off-by: Sean Madigan <[email protected]>
* Add CONFIG_OPENTHREAD_PLATFORM_MESSAGE_MANAGEMENT to allow enabling
message management by the platform.
* Add implementation of `otPlatMessagePoolInit`, `otPlatMessagePoolNew`
and `otPlatMessagePoolFree`.

Signed-off-by: Adrian Gielniewski <[email protected]>
(cherry picked from commit 9fd9e23)
Disabled data caching for nRF54H20dk in wdt_basic_api test.
It caused variables stored in noinit section to be cached,
resulting in reset loop.

Upstream PR #: 81438

Signed-off-by: Michał Stasiak <[email protected]>
The host-based adv auto-resume function has both a problematic
implementation and disagreement in the community around how it should
behave. See the issue linked resolved below for details.

This patch makes the deprecation visible to the user. The user will be
better served by a auto-resume tailored their applications use case,
based on more primitive host API like `conn_cb.recycled`, which has
obvious behavior that is unlikely to change.

Resolves: zephyrproject-rtos/zephyr#72567

Signed-off-by: Aleksander Wasaznik <[email protected]>
(cherry picked from commit 8cfad44)

Signed-off-by: Sean Madigan <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Bluetooth: Advertising resume functionality is broken