WDT_DISABLE_AT_BOOT should only be used to forcefully disable watchdog
timers that are enabled by default after system reset. Update the Kconfig
help text of WDT_DISABLE_AT_BOOT and its dependency HAS_WDT_DISABLE_AT_BOOT
to make this clear.
Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
Fix mismatch between unit address of the power domain nodes and the value
passed via the "reg" property.
Signed-off-by: Laurentiu Mihalcea <laurentiu.mihalcea@nxp.com>
0x is node addresses as these are always hexadecimal values.
ull or ULL is also redundant as the address size is defined by the
@size-cells property.
Signed-off-by: Kyle Bonnici <kylebonnici@hotmail.com>
Update the Zsh completion script to support newer west extensions and
commands, bringing it closer to feature parity with the Bash completion.
Key changes:
- Add completion support for twister, bindesc, blobs, robot, sdk,
packages, patch, gtags, simulate, and reset
- Improve option completion for build, flash, debug, and runner commands
- Enable dynamic lookup for boards and shields
- Refactor argument handling for better Zsh compliance
Fixes#73129
Signed-off-by: Omkar Nanajkar <nomkar2131@gmail.com>
IOMEM interface base address is stored in both device configuration
and device data structures. Remove the occurence in the config data
that is used only for trace messages.
No functional changes.
Signed-off-by: Etienne Carriere <etienne.carriere@st.com>
This commit does the following 2 changes:
1) The return value of k_mutex_lock has been modified to
be treated as a fatal error instead of a simple runtime error.
The reason for this is to avoid having to handle those cases,
and to treat those cases a fatal errors. The timeout for the
mutex should be long enough for any operation within the lock,
and if it isn't, then that should be treated as something that
needs to be fixed, as it is likely a bug. This is also the reason
why the timeout was kept, instead of using K_FOREVER.
2) Ensure that all log statements are done while the log isn't
locked.
The implementation should be reconsidered in terms of application
callbacks, as the current state, where we need to unlock and relock
the mutex so many times does not only risk resolving in cases where
wrong values are set, but is also not very readable nor performant.
Changes to the API will be done in a followup commit, as that requires
more significant changes.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
When an unicast initiator procedure or a commander broadcast
procedure is completed and we have handover enabled, the
parameters used need to be cleared before continueing.
This is due to the fact that the parameters are only cleared
on completion, rather than at initialization, and that the
initiator and commander parameters are in a union.
Not clearing the parameters could set some values to an
unknown/unexpected start value.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
Commit 58bf2dc0e6 replaced pykwalify with
jsonschema for Zephyr module.yml files. However the west 'packages'
extension uses this module to list Python dependencies for Zephyr and
active Zephyr modules.
Make YAML validation optional using a new argument.
Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
Instead of calling the low-level function from usbh_ch9.c, call the
higher level function from usbh_device.c to update the address,
making sure that the udev->address and udev->state are updated
appropriately.
Signed-off-by: Josuah Demangeon <josuah.demangeon@nordicsemi.no>
To complement usbh_req_set_address(), add a matching function
usbh_device_set_address() that also takes care of updating the data
structures.
Signed-off-by: Josuah Demangeon <josuah.demangeon@nordicsemi.no>
Add a new flash simulator test
`test_nvs_startup_full_sector_after_ate_power_loss`
to verify that NVS startup correctly handles a sector that becomes
logically full due to a power loss during the last ATE write.
The test simulates:
- Continuous data writes filling the sector.
- A corrupt ATE at the end of the data area (simulating power loss).
- Presence of a valid GC ATE and Close ATE.
- Verification that `nvs_mount()` succeeds despite the corrupt ATE.
This ensures NVS does not fail to mount in realistic power-loss
scenarios and that garbage collection is correctly triggered on
the next write.
Signed-off-by: Lingao Meng <menglingao@xiaomi.com>
NVS writes an entry by first programming the data area and then writing
the corresponding ATE. If a power loss occurs after the data has been
written but while the ATE is being programmed, and the remaining space
in the sector is only large enough for a single ATE, the ATE may end up
partially written.
1) Power loss while writing the last data ATE, leaving only space for
a delete ATE but no space for additional data entries:
[ data ][ data ][ erase ][ ATE ][ ATE ][ erase ] (sector end)
^^^
In this cases, nvs_startup() scans the sector and fails to find any
erased space usable for data writes, causing failed to mount.
[ data ][ data ][ erase ][ ATE (Invalid) ][ ATE ][ erase ]
^ ^
ate_wra
data_wra
The sector is logically exhausted andshould be closed and garbage
collected.
Detect this condition during startup. If no erased space exists after
the last ATE write, explicitly close the sector and trigger garbage
collection to restore a writable sector.
This completes the missing recovery path for power-loss scenarios
where a sector becomes effectively full due to ATE writes.
Signed-off-by: Lingao Meng <menglingao@xiaomi.com>
Use same retry counter for APN script as the dial-script uses.
When dial-script fails, shut down the modem. Don't restart from
beginning.
When might still have CMUX connected, so jumping to IDLE->RESUME
leaves the CMUX connected, while the state machine expect otherwise.
Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
The UDP test callback test_ok() contains a NULL check for user_data,
but this pointer is always valid for successful registrations.
The current code also dereferences the pointer inside the NULL
branch.
Remove the redundant check to make the test logic explicit.
Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
WHen running the shell devmem dump command and CONFIG_MMU is enabled, the
virtual memory wasn't unmapped.
Call the device_unmap function to cleanup virtual memory resources.
Signed-off-by: Pieter De Gendt <pieter.degendt@basalte.be>
For some reason, the driver was not requesting the HAL to enable SOF even
if the feature was enabled at UDC stack level.
Fix by requesting HAL to enable SOF based on stack configuration.
Signed-off-by: Mathieu Choplain <mathieu.choplain-ext@st.com>
When build:
west build -p -b rpi_pico2/rp2350a/m33/w zephyr/samples/net/wifi/shell
Warnings occur (leading to errors in Twister runs):
.../drivers/wifi/infineon/airoc_wifi.c:749:9: warning: enumeration value
'__WIFI_FREQ_BANDWIDTH_AFTER_LAST' not handled in switch [-Wswitch]
.../drivers/wifi/infineon/airoc_wifi.c:749:9: warning: enumeration value
'WIFI_FREQ_BANDWIDTH_UNKNOWN' not handled in switch [-Wswitch]
749 | switch (params->bandwidth) {
| ^~~~~~
Signed-off-by: Stephan Linz <linz@li-pro.net>
Add a user_data field to bt_ccp_call_control_client_cb. The
field is optional to enable via Kconfig. The field can be used
to provide additional context from the owner of the callback
structure, to the callbacks themselves.
This solves a memory use-after-free issue in the unit tests
where the values from the callback was accessed after they
were released, as the values were just stack allocated.
Signed-off-by: Emil Gydesen <emil.gydesen@nordicsemi.no>
The it51526.aw soc doesn't support isa c extension, and
support for isa extensions was updated via dt property
in previous pr (#97540).
This change adds the missing it51526aw.dtsi include for
it51xxx_evb/it51526aw.
Signed-off-by: Ren Chen <Ren.Chen@ite.com.tw>
Add nrf54lm20dk/nrf54lm20a/cpuapp to platform_allow list.
Overlay for this target is already there.
Remove skipping of RRAMC_POWER_MODE on nrf54lm20dk
because PyTest always expects result from this configuration.
Signed-off-by: Sebastian Głąb <sebastian.glab@nordicsemi.no>
Remove a useless return value check in i2s_ambiq_init().
The variable 'ret' was initialized to zero and checked before being
assigned, making the condition always false.
Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
According to the USB CDC 1.2 specification, section 4.6, the value of
bInterfaceSubClass for the data interface should be 0.
Signed-off-by: Jay Beavers <jay@tolttechnologies.com>
Origin: Original
Fixes: zephyrproject-rtos/zephyr#103444
The get_entry() function uses IS_ENABLED(CONFIG_BINDESC_READ_FLASH) in
an if statement to guard code that accesses struct members (flash_device,
buffer) which are only defined when CONFIG_BINDESC_READ_FLASH is enabled.
While IS_ENABLED() correctly evaluates to 0 when the config is disabled,
the C compiler still performs type-checking on all code paths before
optimization can eliminate the dead branch. This causes a compile error:
error: 'struct bindesc_handle' has no member named 'flash_device'
error: 'struct bindesc_handle' has no member named 'buffer'
Fix by using preprocessor #if directive instead of runtime if statement.
This ensures the flash-specific code is excluded during preprocessing
when CONFIG_BINDESC_READ_FLASH is not enabled.
Signed-off-by: Jay Beavers <jay@tolttechnologies.com>
Add the SPDX-License-Identifier tag to the file header to properly
declare the Apache-2.0 license, in line with Zephyr licensing
requirements.
Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
The mailbox send callback is always invoked with a valid device
pointer.
Remove the redundant NULL check.
Signed-off-by: Gaetan Perrot <gaetan.perrot@spacecubics.com>
Flag the ECM and NCM interfaces as supporting promisc mode. There's no
filtering really so enabling promisc is a noop but pretending to have
support is needed to allow these to be added to a bridge.
Signed-off-by: Fabio Baltieri <fabiobaltieri@google.com>
the ads1119 has its own driver connected to CONFIG_ADC_ADS1119,
so remove it from CONFIG_ADC_ADS1X1X. Also the driver under
CONFIG_ADC_ADS1X1X doesn't support it.
Signed-off-by: Fin Maaß <f.maass@vogl-electronic.com>
For BLE board, update the present overlay to use the right
port info to mark as okay.
For 062 board add overlay to run 2 pins tests successfully.
Signed-off-by: Laura Carlesso <laura.carlesso@infineon.com>
Add device tree node for the Broadcom iProc RNG200 hardware
random number generator found on BCM2711 SoC
Signed-off-by: Muhammad Waleed Badar <walid.badar@gmail.com>
Starting from revision 1.1 nPM1304 has support for soft start on the LDSW
regulators configured in the LDO mode. This requires special handling and
is done automatically for applicable device versions.
Signed-off-by: Sergei Ovchinnikov <sergei.ovchinnikov@nordicsemi.no>