-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
samples: matter: disable mpsl before preforming factory reset #19696
base: main
Are you sure you want to change the base?
Conversation
The following west manifest projects have changed revision in this Pull Request:
⛔ DNM label due to: 1 project with PR revision Note: This message is automatically posted and updated by the Manifest GitHub Action. |
CI InformationTo view the history of this post, clich the 'edited' button above Inputs:Sources:sdk-nrf: PR head: 9f41e4593eebd42ab4339e58bb18dc78c9f2fbb5 more detailssdk-nrf:
matter:
Github labels
List of changed files detected by CI (4)
Outputs:ToolchainVersion: b77d8c1312 Test Spec & Results: ✅ Success; ❌ Failure; 🟠 Queued; 🟡 Progress; ◻️ Skipped;
|
You can find the documentation preview for this PR at this link. It will be updated about 10 minutes after the documentation build succeeds. Note: This comment is automatically posted by the Documentation Publish GitHub Action. |
bca218c
to
9a8e716
Compare
doc/nrf/releases_and_maturity/releases/release-notes-changelog.rst
Outdated
Show resolved
Hide resolved
2a484ef
to
88ae0f3
Compare
88ae0f3
to
ed60f43
Compare
@@ -57,10 +61,18 @@ class AppFabricTableDelegate : public chip::FabricTable::Delegate { | |||
#if CHIP_DEVICE_CONFIG_ENABLE_THREAD_SRP_CLIENT | |||
chip::DeviceLayer::ThreadStackMgr().ClearAllSrpHostAndServices(); | |||
#endif // CHIP_DEVICE_CONFIG_ENABLE_THREAD_SRP_CLIENT | |||
#ifdef CONFIG_SOC_FLASH_NRF_RADIO_SYNC_MPSL | |||
/* Disable mpsl before start removing settings to improve the performance. */ | |||
mpsl_lib_uninit(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just thinking loud - is there any possible issue (ala race condition) that mpsl_lib_uninit
might be called while there is some ongoing Radio Driver operation? Maybe we should put the Thread interface down before?
FYI: @ankuns
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Or maybe we can just lock the Thread stack? What do you think? Do you mean calling there ot_
function to disable Thread? Using Matter ThreadStackManager API we can only lock the stack.
4db667f
to
0351e6b
Compare
0351e6b
to
9f07771
Compare
/* Erase Network credentials and disconnect */ | ||
chip::DeviceLayer::ConnectivityMgr().ErasePersistentInfo(); | ||
#ifdef CONFIG_SOC_FLASH_NRF_RADIO_SYNC_MPSL | ||
/* Disable mpsl before start removing settings to improve the performance. */ | ||
mpsl_lib_uninit(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As disucssed F2F, let's remove it from here and just modify Matter Platform's code.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Provided requested changes.
We can speed up flash operations while performing a factory reset by disabling mpsl before that. Thanks to that flash operations do not wait for mpsl synchronization and all write operations take less time. Signed-off-by: Arkadiusz Balys <arkadiusz.balys@nordicsemi.no>
9f07771
to
9f41e45
Compare
@@ -133,7 +133,8 @@ Gazell | |||
Matter | |||
------ | |||
|
|||
|no_changes_yet_note| | |||
* Disabled the :ref:`mpsl` before performing factory reset to speed up the process. | |||
The :ref:`mpsl` is also disabled during the last fabric removal process and is re-enabled after the flash operations are completed. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is not true now, right?
We can speed up flash operations while performing a factory reset by disabling mpsl before that.
Thanks to that flash operations do not wait for mpsl synchronization and all write operations take less time.