Skip to content

[nrf fromlist] soc: nordic: common: poweroff: Set VPR to remain in its reset state #2788

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 3,017 commits into
base: main
Choose a base branch
from

Conversation

jaz1-nordic
Copy link
Contributor

CM33 must write MEMCONF.POWER[VPR].RET = 0 before entering System OFF. This bit drives the vprSavedCtx input to VPR. Forcing it low will disable the Hibernate wake feature in VPR, so that VPR will remain in its reset state when waking from OFF.

Upstream PR #:88760

rlubos and others added 30 commits March 28, 2025 13:48
…ompile errors

Upstream PR #: 87741

Add some extra ifdefs around MQTT 5.0 specific structures to prevent
compiler errors due to undefined symbols in certain configurations.

Signed-off-by: Robert Lubos <[email protected]>
This commit provides an extension to the i2c_nrfx_twim driver.
It introduces possibility to acquire/release exclusive access to the
i2c bus. While the exclusive access to the i2c bus is acquired
you can access the underlying nrfx_twim driver directly.

Signed-off-by: Andrzej Kuros <[email protected]>
(cherry picked from commit d15c9fe)
This is needed for privacy tests. Specifically, this fixes
GAP/PRIV/CONN/BV-10-C and GAP/CONN/UCON/BV-06-C on nRF54H20.

Signed-off-by: Pavel Vasilyev <[email protected]>
…tion Ack PDU

The Generic Provisioning protocol requires that a transaction must be
acknowledged before the next Generic Provisioning PDU is processed
(section 5.3.3, MshPRT_v1.1).

In the current PB-ADV implementation, if there is an ongoing transaction
(link.tx.adv points to a valid advertisement), any received Generic
Provisioning Start and Continuation PDUs are ignored.

This creates a scenario where a remote device misses the Transaction
Acknowledgment PDU and retransmits the last PDUs, but they are ignored
by the local device because the local device has already started sending
the next Provisioning PDU.

In particular, in the observed failure, the Provisioner missed the
Generic Transaction Acknowledgment PDU during the transmission of the
Provisioning Data PDU.

This commit modifies the processing logic for Generic Provisioning Start
and Continuation PDUs by checking if the received PDU has already been
received. If so, it attempts to re-send the Generic Transaction
Acknowledgment PDU.

Signed-off-by: Pavel Vasilyev <[email protected]>
(cherry picked from commit 7592b04)
Signed-off-by: Pavel Vasilyev <[email protected]>
…TT server enabled

When the GATT server is enabled the proxy advertiser
server need to be stopped. This solved a bug where the
Mesh Proxy Service is not restared.
This fix is done to fix several failing PTS test that
was failing when CONFIG_BT_MESH_ADV_EXT_GATT_SEPARATE
was enabled. Calling the stop_proxy_adv was left out
in a prevouis commit when doing code cleanup.

Signed-off-by: Ingar Kulbrandstad <[email protected]>
(cherry picked from commit a65a164)
Signed-off-by: Pavel Vasilyev <[email protected]>
… valid yet

Commit sets valid state when mesh is actualy provisioned.

Signed-off-by: Aleksandr Khromykh <[email protected]>
(cherry picked from commit 928208c)
Signed-off-by: Pavel Vasilyev <[email protected]>
Previously, PB-GATT unprovisioned advs would continue being sent if a
device is provisioned or in the process of being provisioned (an active
provisioning link) over PB-ADV.

This commit introduces the `link_cancel` callback for the `prov_bearer`
struct. When a provisioning link is established over a prov bearer, all
other (active) prov bearers will be suspended through this callback, and
re-enabled when the link is closed. An exception is made for PB-REMOTE,
which can utilize the other bearers.

The call to `bt_mesh_pb_gatt_srv_disable` in settings.c is removed. This
is called in `mesh_commit`, and is not needed as this is only used
during boot, at which point the Mesh provisioning service has not yet
been enabled/registered, meaning the function does nothing.

Signed-off-by: Håvard Reierstad <[email protected]>
(cherry picked from commit 200628e)
Signed-off-by: Pavel Vasilyev <[email protected]>
Changes Brearer --> Bearer.

Signed-off-by: Håvard Reierstad <[email protected]>
(cherry picked from commit 062fdc3)
Signed-off-by: Pavel Vasilyev <[email protected]>
Adds a provision test to check that provisioning bearers are cancelled
when a provisioning link is opened. Modifies the functionality for
receiving unprovisioned beacons to fail the test if a unprovisioned
beacon is received from the current provisionee after a threshold.

Signed-off-by: Håvard Reierstad <[email protected]>
(cherry picked from commit acccd46)
Signed-off-by: Pavel Vasilyev <[email protected]>
When the board has been provisioned and the board is rebooted
it was not possible to connect to the board through the proxy
servcie. This fixes that the Mesh Proxy servive is restarted
after the board is rebooted.

Signed-off-by: Ingar Kulbrandstad <[email protected]>
(cherry picked from commit db84181)
Signed-off-by: Pavel Vasilyev <[email protected]>
Commit removes device key candidate if provisionee failed
during device key refresh procedure or mesh reset has been
called in between. Otherwise, device key candidate gets
stuck in the internal trusted storage of crypto library.

Signed-off-by: Aleksandr Khromykh <[email protected]>
(cherry picked from commit bf22fa6)
Signed-off-by: Pavel Vasilyev <[email protected]>
The TMP435 is a remote temperature sensor monitor
with a built-in local temperature sensor.

Signed-off-by: Jaakko Rautiainen <[email protected]>
(cherry picked from commit 516e5d6)
This Introduces a driver for the i2c interface of Phosense XBR818.
XBR818 is a 10.525Ghz Radar chip with builtin detection algorithm.

Signed-off-by: Camille BAUD <[email protected]>
(cherry picked from commit 6376866)
- add driver for Vishay VEML6031 High Accuracy Ambient Light Sensor.
- add new compatible "vishay,veml6031".
- read and write consecutive 8 bit registers as bulk operation.
- add driver to build all test of sensors.
- support fetch and get.
- triggered mode and interrupt is not yet supported.

Signed-off-by: Andreas Klinger <[email protected]>
(cherry picked from commit 72b2f01)
Add driver for Bosch BMM350 magnetometer sensor.

Signed-off-by: Maximilian Deubel <[email protected]>
(cherry picked from commit 878ab53)
The simple backend returns the size of the credential,
even if it is too big.
The secure backend should do the same,
our libraries depend on this behaviour.

Signed-off-by: Maximilian Deubel <[email protected]>
(cherry picked from commit 916897f)
This is needed for next generation Secure Domain firmware.

Upstream PR #: 87749

Signed-off-by: Håkon Amundsen <[email protected]>
The check for index out of bound is missing, It turns into a crash
for input channel more than WIFI_MGMT_SCAN_CHAN_MAX_MANUAL.

Signed-off-by: Kapil Bhatt <[email protected]>
(cherry picked from commit 6f9dbbd)
Fixes some oddities with CMake code

Signed-off-by: Jamie McCrae <[email protected]>
(cherry picked from commit 4fa91b5)
…rnal memory

Both backends supported as runners for nRF ICs, nrfjprog and nrfutil,
support erasing external memory as part of the programming operation.
Before this patch, and when the firmware was detected to be partially or
fully placed in external flash by inspecting the .hex address range, the
runner would instruct the backend tool to fully erase the external
flash (but the nrfjprog runner would ignore that, always erasing only
the sectors required). Instead, correctly default to erasing only the
sectors that are required to program the new firmware image in both tools,
and erase it completely only when the --erase flag is provided by the user.

Signed-off-by: Carles Cufi <[email protected]>
(cherry picked from commit f20168f)
…onfig param

This acts in a similar way to nrfjprog's --qspiini parameter introduced
in 7eb364b, but works slightly differently in nrfutil: it requires a
config file in JSON format instead of .ini, and it is passed along to
the `execute-batch` command instead of providing it together with the
`program` command.

Signed-off-by: Carles Cufi <[email protected]>
(cherry picked from commit 2effae5)
Adds a configuration file which is used with nrfutil to allow
programming the SPI flash on the device

Upstream PR #: 86985

Signed-off-by: Jamie McCrae <[email protected]>
Adds a configuration file which is used with nrfutil to allow
programming QSPI on the device

Upstream PR #: 86985

Signed-off-by: Jamie McCrae <[email protected]>
Non-secure variants for nRF7002 DK were removed from upstream
in commit 10d4973. Revert these
changes downstream, so that the NS variants are still available.

Signed-off-by: Andrzej Głąbek <[email protected]>
…ls header

Fix all docstrings in header to ensure compliance
with Zephyr's documentation guidelines.

Signed-off-by: Triveni Danda <[email protected]>
(cherry picked from commit c9821ff)
…network options

Use getopt API to process arguments for `cred add` command.

Signed-off-by: Triveni Danda <[email protected]>
(cherry picked from commit 7b6f257)
…nfiguration

On nrf54h20 there are additional analog pins (AIN8+). When differential
mode is used they must not be mixed with AIN0-AIN7. Add build time
validation which detects if configuration is invalid.

Upstream PR #: 87405

Signed-off-by: Krzysztof Chruściński <[email protected]>
…vref_mv

Sample is reading vref-mv property to get reference voltage and then if
reference source is set to ADC_REF_INTERNAL this value is overwritten.
If vref-mv property is provided then it should not be overwritten.

Upstream PR #: 87405

Signed-off-by: Krzysztof Chruściński <[email protected]>
…nfiguration

AIN9 source needs special handling (all from AIN8-AIN14). Conversion
result needs to be scaled up by 3.6 additionally to gain and reference
voltage. In order to achieve correct value in the sample vref-mv is
used as reference voltage instead of predefined internal reference
source.

Upstream PR #: 87405

Signed-off-by: Krzysztof Chruściński <[email protected]>
jonathannilsen and others added 26 commits April 14, 2025 18:05
Fixes an issue where pinctrl psel properties encoded with
NRF_PSEL_DISCONNECTED() caused a build failure.

Signed-off-by: Jonathan Nilsen <[email protected]>
(cherry picked from commit 8c5755c)
Upstream not ready yet, revert once applied there.

Signed-off-by: Gerard Marull-Paretas <[email protected]>
Signed-off-by: Karsten Koenig <[email protected]>

(cherry picked from commit 6384b58)
(cherry picked from commit 6ec9d10)

Signed-off-by: Jonathan Nilsen <[email protected]>
…ersion to 3.16

Update the OpenAMP libraries to the latest commits to support CMake 3.16
as the minimum version.

Signed-off-by: Arnaud Pouliquen <[email protected]>
(cherry picked from commit 0f852c8)
Provide proper adaptions as bootloader ROM offset, flash load
offset and dts definitions for the nRF54H20 iron board to make it
ready for the MCUBoot bootloader.

Upstream PR #: 88576

Signed-off-by: Michal Kozikowski <[email protected]>
Adding sample configuration for nRF54H20dk 'iron' board.

Upstream PR #: 88576

Signed-off-by: Michal Kozikowski <[email protected]>
In order to support higher frequencies than 8MHz, we need to implement
frequency switching while waking up the RPU, as it has to be done only
at 8MHz, once RPU is awake, we can switch back to the configured (DTS)
frequency.

Signed-off-by: Chaitanya Tata <[email protected]>
(cherry picked from commit 4818585)
ISR safe runtime PM can only be used for all instances except for
spis120 which requires standard runtime PM.

Added compilation guard against using CONFIG_PM_DEVICE_SYSTEM_MANAGED
with spis120.

Signed-off-by: Krzysztof Chruściński <[email protected]>
(cherry picked from commit 8d6ab28)
-This commit adds "sysbuild: true" for ns build-targets for the
 following nordic boards:
  - nrf5340_audio_dk
  - nrf54l15dk
  - nrf9131ek
  - nrf9151dk
  - nrf9161dks (multiple versions)
  - thingy53
-Added missing vendor: nordic for some boards for consistency

Signed-off-by: Frank Audun Kvamtrø <[email protected]>
(cherry picked from commit fde1159)
Update WiFi driver to cleanup extra logging newlines for consistency.

Signed-off-by: Jordan Yates <[email protected]>
(cherry picked from commit 729f50e)
Memory allocations in HAL are using data pool. These operations
are in control plane. Add APIs for allocation/free operations on
control pool.

Upstream PR #: 88457

Signed-off-by: Ravi Dondaputi <[email protected]>
…ing delete"

This reverts commit e3a891b.

Signed-off-by: Chaitanya Tata <[email protected]>
Deletion of credential should use the pointer from the reference slot
not the temporary buffer, this causes a crash (unknown error).

Upstream PR #: 87656

Signed-off-by: Chaitanya Tata <[email protected]>
For enterprise mode we need to install multiple certs to the TLS
credentials store, so, add a helper script in python to make it work
cross-platforms.

Upstream PR #: 88682

Signed-off-by: Chaitanya Tata <[email protected]>
Commit 6a2cbc7 ("boards: nrf53*: add L|HFXO configurations") missed
the fix for nRF7002DK which is also based on nRF53 SoC.

Upstream PR #: 88680

Signed-off-by: Chaitanya Tata <[email protected]>
Signed-off-by: Aleksandar Stanoev <[email protected]>
Change wifi_cred to wifi cred.

Upstream PR #: 88674

Signed-off-by: Kapil Bhatt <[email protected]>
… credentials"

This reverts commit 8e325a5.

Signed-off-by: Chaitanya Tata <[email protected]>
Instead of having an overlay move the Enterprise configurations to a
dedicated snippet so that it can be enabled with any sample.

Can be used along with Wi-Fi snippet e.g., `-S
"wifi-ipv4;wifi-enterprise"`.

Upstream PR #: 87656

Signed-off-by: Chaitanya Tata <[email protected]>
…ials

Enable TLS credentials shell to manager Wi-Fi enterprise certs.

Upstream PR #: 87656

Signed-off-by: Chaitanya Tata <[email protected]>
Add locally generated info for deauth process. If deauthentication
frame is coming from AP it will be set, in other cases
(Beacon loss, New connection from user in connected state,
disconnection from user) flag will not be set.

Upstream PR #: 88489

Signed-off-by: Kapil Bhatt <[email protected]>
This helps install certificates to the TLS credentials store using TLS
credentials shell.

Upstream PR #: 88553

Signed-off-by: Chaitanya Tata <[email protected]>
Adds missing qualifiers for grouping flash runner configuration

Upstream PR #: 88699

Signed-off-by: Jamie McCrae <[email protected]>
Cache was not enabled when s2ram did not completed which
lead to system malfunction. Always power up cache when
returning from s2ram function.

Upstream PR #: 88709

Signed-off-by: Krzysztof Chruściński <[email protected]>
…s reset state

CM33 must write MEMCONF.POWER[VPR].RET = 0 before entering System OFF.
This bit drives the vprSavedCtx input to VPR. Forcing it low will
disable the Hibernate wake feature in VPR, so that VPR will remain
in its reset state when waking from OFF.

Upstream PR #:88760

Signed-off-by: Jakub Zymelka <[email protected]>
@jaz1-nordic jaz1-nordic marked this pull request as ready for review May 7, 2025 13:28
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.