-
Notifications
You must be signed in to change notification settings - Fork 735
[nrf fromlist] drivers: i2c: i2c_nrfx_twim: add DMM usage in driver #3047
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
mstasiaknordic
wants to merge
575
commits into
nrfconnect:main
Choose a base branch
from
mstasiaknordic:nrfx_twim_dmm
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
48c8a20 to
568d402
Compare
kl-cruz
approved these changes
Jul 18, 2025
568d402 to
1cd1c7c
Compare
…float The Tx rate was previously stored as an integer, which caused loss of precision for rates like 8.6 Mbps or 34.4 Mbps due to integer division. The change will update data type to float. Upstream PR #: 93085 Signed-off-by: Kapil Bhatt <[email protected]> (cherry picked from commit c714074)
Create dedicated heap for supplicant operations and define the heap size. Upstream PR #: 93085 Signed-off-by: Ravi Dondaputi <[email protected]> (cherry picked from commit 4c2f1ff)
…nto common file Refactor certificate processing code to eliminate duplication and enable reuse across modules that require enterprise support. Upstream PR #: 93085 Signed-off-by: Triveni Danda <[email protected]> (cherry picked from commit 13a034f)
Firmware needs to know the connection type to be established. use the wpa_proto field to derive the connection type. Upstream PR #: 93085 Signed-off-by: Ajay Parida <[email protected]> (cherry picked from commit ca9dfd1)
…UART_x_NRF_HW_ASYNC" This reverts commit 384e940. Signed-off-by: Krzysztof Chruściński <[email protected]> (cherry picked from commit 3c93896)
This target can also run this tests, we just overlays including the ones for the real boards. Signed-off-by: Alberto Escolar Piedras <[email protected]> (cherry picked from commit ebd69ca)
… rename Remove duplicated test configuration after nrf54l20pdk/nrf54l20/cpuxxx was renamed to nrf54lm20dk/nrf54lm20a/cpuxxx. Signed-off-by: Sebastian Głąb <[email protected]> (cherry picked from commit f0c143e)
Add a new simulated nrf54lm20 cpuapp target Signed-off-by: Alberto Escolar Piedras <[email protected]> (cherry picked from commit 5428743)
In preparation for simulated nRF54LM20 targets, let's add kconfig options aking to the ones we have for the nRF54L15 devices. Signed-off-by: Alberto Escolar Piedras <[email protected]> (cherry picked from commit 65fb246)
…r nRF54LM20 rename Remove duplicated test configuration after nrf54l20pdk/nrf54l20/cpuxxx was renamed to nrf54lm20dk/nrf54lm20a/cpuxxx. Signed-off-by: Sebastian Głąb <[email protected]> (cherry picked from commit 8791fcf)
…NABLED In certain configurations timeout field is not present in the data structure so preprocessor ifdef must be used instead of compiler check. Signed-off-by: Krzysztof Chruściński <[email protected]> (cherry picked from commit eb99692)
Configure the initial pin state of the UARTE peripheral to SLEEP, not left uninitialised. This fixes the pin configuration not being set until the interface is used if `zephyr,pm-device-runtime-auto` is enabled. Signed-off-by: Jordan Yates <[email protected]> (cherry picked from commit 69acc01)
… on nrf54lm20dk Fix mistake where one of test configurations was skipped on nrf54lm20dk board. Signed-off-by: Sebastian Głąb <[email protected]> (cherry picked from commit 8e881b0)
… disconnect Channel tx_queue purging on disconnect was inconsistently handled by the different channels: iso, l2cap, l2cap_br. iso channels handled purging in the tx_data_pull hook. l2cap and l2cap_br did the purging in channel delete functions and did not expect tx_data_pull to be called for a disconnected channel. Their data_pull functions could return a ptr to a net_buf that was still on the tx_queue, which is problematic when the conn tx_processor unrefs the returned buffer resulting in multiple calls to the buf destroy function. To make things consistent and correct, remove the code that tries to purge tx_queues in the tx_processor and only do purging in the channels themselves when they are deleted/disconnected. Also refactor and clarify referencing of the net_buf returned by tx_data_pull. It was confusing who had a reference and when, which could vary depending on the length of the original buffer. There are three cases: the buffer length is less than the tx.mps, greater the mps but less than the mtu so requiring segementation but not fragmentation, or greater than both mps and mtu so requiring both segmentation and fragmentation. The conn layer would increase the refcnt if the length was greater than the mtu, but not have any awareness of whether the net_buf was still on the tx_queue or not. Now it is the tx_data_pull callbacks responsibitity to increment the reference count if it is returning a pointer to a net_buf that it is still keeping on the tx_queue for segmentation purposes. The conn layer will now always transfer that reference into a fragment view and not conditional it on the length relative to the mtu, and always decrement the reference to the parent when the fragment is destroyed. So there is no risk of decrementing a reference to a net buf that might still be on a tx_queue, which simplifies error handling in particular. Also add error handling paths for when asserts are not enabled. Signed-off-by: Mike J. Chen <[email protected]> (cherry picked from commit a392c33)
Add early_disconnect test cases for iso/cis and l2cap/stress to test the bluetooth stack handling of disconnects while transmit is still in progress. Signed-off-by: Mike J. Chen <[email protected]> (cherry picked from commit 93997da)
Board overlays were moved from downstream to upstream. By mistake, License was left unchanged. Change License type to match with the upstream. Signed-off-by: Sebastian Głąb <[email protected]> (cherry picked from commit 35a170f)
Board overlay was moved from downstream to upstream. By mistake, License was left unchanged. Change License type to match with the upstream. Signed-off-by: Sebastian Głąb <[email protected]> (cherry picked from commit b3949e3)
…d rng driver Update with the latest nordic hal which includes an updated CRACEN driver which supports the 54LM20 and newer devices Signed-off-by: Alberto Escolar Piedras <[email protected]> (cherry picked from commit ce0d65a)
For a long time (since version 3.3.0) nrfx contained an incorrectly defined symbol NRF_SAADC_8BIT_SAMPLE_WIDTH that was set to 8 for nRF54L and nRF54H Series SoCs, which was probably only true for very early engineering revisions of those. Based on this, the adc_nrfx_saadc driver was incorrectly writing consecutive 8-bit samples in supplied buffers, cutting off the highest 8 bits of the results. And for sequences with multiple channels, it was even causing that the results written as 16-bit words by hardware were partially overwritten in next iteration. In nrfx 3.12.0 (see commit f46798f) this was finally corrected - the symbol is now deprecated and it is always set to 16. This commit is a follow-up to the above and removes parts of adc_nrfx_saadc that now became dead code to prevent further confusion regarding 8-bit sampling. Signed-off-by: Andrzej Głąbek <[email protected]> (cherry picked from commit 616ec75)
…3.12 Update NRFX_CONFIG_API_VER_MINOR to 12, to be compatible with latest SAADC driver changes. Signed-off-by: Jakub Zymelka <[email protected]> (cherry picked from commit be8c61a)
SHIM Nordic modification for the ADC driver controlling the SAADC peripheral. Replaced HAL based implementation in favor of nrfx driver. As a next step, it is planned to implement a feature that will allow the peripheral SAADC timer to be used for sampling, and for this it is necessary to use the nrfx driver in this SHIM. This will allow more accurate and faster sampling than the kernel mechanism currently provides. Signed-off-by: Jakub Zymelka <[email protected]> (cherry picked from commit f3d2507)
GAIN field is not present on LV10A, so instead we need to check the input value to the function. Signed-off-by: Jakub Zymelka <[email protected]> (cherry picked from commit 35044b6)
… 3.13.0 New nrfx release contains MDK 8.72.1 and various fixes for nRF devices. Upstream PR #: 93316 Signed-off-by: Nikodem Kastelik <[email protected]> (cherry picked from commit 4fb07f5)
…or nRF54LV10A MDK 8.72.1 does not specify VDD and DVDD internal analog inputs for this SoC. Upstream PR #: 93316 Signed-off-by: Nikodem Kastelik <[email protected]> (cherry picked from commit 5e6b623)
Some SoCs might not have any VDD reference available. Use internal 1.2V reference derived from VDD in this case. Upstream PR #: 93316 Signed-off-by: Nikodem Kastelik <[email protected]> (cherry picked from commit 6736396)
…for nRF54L15 UARTE20 and UARTE21 instances enable usage of pins on different port, but require request for constant latency mode. Added handling of such scenario in the driver. Added testcase to cover it. Upstream PR #: 90197 Signed-off-by: Michał Stasiak <[email protected]> (cherry picked from commit cee404d)
noup since this option does not exist upstream. The Oberon PSA core has an option to manually set the buffer size of the PSA key slots in bytes. This option here: MBEDTLS_PSA_STATIC_KEY_SLOT_BUFFER_SIZE This option has a default value of 16 since it directly affects the memory usage. The crypto tests use a secp256r1 key and thus since the public key for this key is 65 bytes long we need to set the option in the sample. Signed-off-by: Georgios Vasilakis <[email protected]> (cherry picked from commit 2da4861)
Fixes an issue whereby just enabling hooks would enable the nrf5340 network core hook despite lacking other requirements Signed-off-by: Jamie McCrae <[email protected]> (cherry picked from commit e4e13ce)
The PSA is a cryptographically secure random number generator. It will be enabled by default, eventually, For now, enable it manually. Signed-off-by: Gordon Klaus <[email protected]> (cherry picked from commit 55f401b)
Necessary changes for NCS CI. - Add a Jenkinsfile - Add a commit-tags workflow: This enables sauce tag checking in sdk-zephyr - compliance.yml: Disable check for merge commits, since we have upmerges downstream. Also, since in the code we refer to Kconfig symbols that are defined in the sdk-nrf repository, the Kconfig checks ((SysBuild)Kconfig, (SysBuild)KconfigBasic and (SysBuild)KconfigBasicNoModules) will not pass so exclude them. Also, disable any maintainers-related checks - scripts/gitlint: Extend the max commit line lengths for Gitlint to account for sauce tags - Adapt to the changes in: nrfconnect/action-commit-tags#4 Signed-off-by: Carles Cufi <[email protected]> Signed-off-by: Dominik Ermel <[email protected]> Signed-off-by: Martí Bolívar <[email protected]> Signed-off-by: Vinayak Kariappa Chettimada <[email protected]> Signed-off-by: Krishna T <[email protected]> Signed-off-by: Dominik Ermel <[email protected]> (cherry picked from commit 9c80c87)
Adds symbols used in NCS to the sysbuild Kconfig allow list Signed-off-by: Jamie McCrae <[email protected]> (cherry picked from commit cdad205)
ZMS legacy enabled by CONFIG_SETTINGS_ZMS_LEGACY uses a different lookup cache function that is optimized for Settings subsystem. Signed-off-by: Riadh Ghaddab <[email protected]> (cherry picked from commit 491354b)
Add boards/nordic/**/* to the CI-boot-test scope and remove SUIT labels. Signed-off-by: Robert Stypa <[email protected]> (cherry picked from commit 6c79373)
Fixed board page in zephyr. Signed-off-by: Richa Pandey <[email protected]> (cherry picked from commit f1732a8)
This commit adds a new Kconfig option by enabling which Host will keep bonding with the same Central instead of rejecting pairing. Brief implementation details: This implementation adds a new flag to bt_keys struct: BT_KEYS_ID_CONFLICT. The flag is set, when: - bonding with the same peer and conflict identified - when loading conflicting keys from persistent storage. When bonding and conflict is identified, the new keys aren't added to the Resolving List immediately. Instead, the old keys stay in the Resolving List. When start advertising, Host finds conflicting keys that are already added to the Resolving List and substitues them. If, however, there is another advertiser already started for the added keys, the new request is reject and advertising start function returns -EPERM. This is supported by Peripheral role only for now. Signed-off-by: Pavel Vasilyev <[email protected]> (cherry picked from commit 93b8dd9)
Enable the `empty_app_core` image when building for `cpurad`. Signed-off-by: Grzegorz Swiderski <[email protected]> (cherry picked from commit 2ea472d)
The xiao_ble boards ship with a bootloader requiring an app offset of 0x27000. The upstream board defines this via DT partitions, which will not be used if partition manager is enabled. Add a static partition configuration to allow binaries built for this board to work out-of-the-box in NCS, and match the behavior with sysbuild disabled. Signed-off-by: Aleksandar Stanoev <[email protected]> (cherry picked from commit 6c9cf79)
This noup does the following: - Adds the modem_backend_uart_slm modem backend which is optimized for UART communication to SLM. The noup is intended to live until upstream zephyr has proper consistent RTS/CTS flow control support across multiple drivers, and DTR, RTS and CTS support has been added to the upstream modem UART backends, and lastly, SLM has been updated to use DTR, so everything is in sync. Ask Bjarki Arge Andreasen, Markus Lassila or Seppo Takalo when this noup is to be altered as part of an upmerge for example. Signed-off-by: Bjarki Arge Andreasen <[email protected]> Signed-off-by: Markus Lassila <[email protected]> (cherry picked from commit 964736d)
adds kconfig that was probably skipped during migration. Signed-off-by: Mateusz Michalek <[email protected]> (cherry picked from commit 81a2b95)
Ref: NCSDK-34052 Signed-off-by: Krzysztof Szromek <[email protected]> (cherry picked from commit ddfd826)
Allow for an additional buffer reference if callback is provided. This can be used to extend lifetime of the net buffer until the data transmission is confirmed by ACK of the remote. Signed-off-by: Marek Pieta <[email protected]> (cherry picked from commit 14c7424)
If ATT sent callback is delayed until data transmission is done by BLE controller, the transmitted buffer may have an additional reference. The reference is used to extend lifetime of the net buffer until the data transmission is confirmed by ACK of the remote. send_buf function can be called multiple times, if buffer has to be fragmented over HCI. In that case, the callback is provided as an argument only for the last transmitted fragment. The `buf->ref == 1` check is skipped because it's impossible to properly validate number of references for the sent fragments if buffers may have the additional reference. Jira: NCSDK-28624 Signed-off-by: Marek Pieta <[email protected]> (cherry picked from commit 2c09574)
Add support for nRF91x by providing overlay configuration file. Signed-off-by: Juha Ylinen <[email protected]> Signed-off-by: Robert Lubos <[email protected]> (cherry picked from commit bf5684e)
Same as commit 6ec9d10 but with the REQUIRED keyword on its own line to attempt to avoid a merge conflict when reverting/reapplying this patch. Signed-off-by: Jonathan Nilsen <[email protected]> (cherry picked from commit 17a975f)
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]> Signed-off-by: Johann Fischer <[email protected]> (cherry picked from commit 10cee03)
This patch backports the nrf9131ek to a time before tfm was refactored. To be reverted when TF-M is updated. Signed-off-by: Maximilian Deubel <[email protected]> (cherry picked from commit ca2646b)
…tion Using explicit instance number in driver no longer needed. Upstream PR #: 93083 Signed-off-by: Michał Stasiak <[email protected]>
Added usage of DMM API in i2c controller driver. Upstream PR #: 93083 Signed-off-by: Michał Stasiak <[email protected]>
Added usage of DMM API in i2c rtio controller driver. Upstream PR #: 93083 Signed-off-by: Michał Stasiak <[email protected]>
1cd1c7c to
df4e3ed
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Added usage of DMM API in i2c controller driver.
Using explicit instance number in driver no longer needed.