Commit graph

126,787 commits

Author SHA1 Message Date
William Tang
7549d5155b drivers: can: mcux: flexcan: fix loop back error when CAN FD enabled
Fix mcux flexcan driver failed to transfer when both loop back mode
and CAN FD mode are enabled.

Transceiver Delay Compensation feature must be disabled in loopback
mode. For some platforms, both FDCTRL[TDCEN] and ETDC[ETDCEN] can
enable such feature. In this case, SDK API only configure ETDC register
and current driver do not clear ETDC[ETDCEN].

Fix this issue by add ETDC[ETDCEN] configuration according to SDK
macro `FSL_FEATURE_FLEXCAN_HAS_ENHANCED_BIT_TIMING_REG` vaule.

Test this commit on mimxrt1180_evk/mimxrt1189/cm33 and set both CAN FD
mode and loop back mode.

Signed-off-by: William Tang <william.tang@nxp.com>
2025-10-21 11:41:21 +03:00
Siratul Islam
eea0886f51 boards: arm: Update WeAct STM32G431 Core Board
- Add board Image

Signed-off-by: Siratul Islam <sirat4757@gmail.com>
2025-10-21 11:41:11 +03:00
Hao Luo
a1954bad80 soc: ambiq: define itcm_text for apollo5x
Define itcm_text in hal_internal.ld for apollo5x

Signed-off-by: Hao Luo <hluo@ambiq.com>
2025-10-21 11:41:00 +03:00
Aaron Ye
5026d81014 west: update hal_ambiq revision
This commit updates the latest revision of hal_ambiq module.

Signed-off-by: Aaron Ye <aye@ambiq.com>
2025-10-21 11:41:00 +03:00
Jonas Berg
78d7984ba8 boards: shields: Add Adafruit LIS3MDL magnetometer shield
Product photo from https://learn.adafruit.com/assets/86994

Tested with the command mentioned in the index.rst file.

Compile testing of the overlay file is done via the mag_polling
sample.

Signed-off-by: Jonas Berg <jonas.s.t.berg@gmail.com>
2025-10-21 11:40:50 +03:00
Ludvig Jordet
c49e3fe9a2 Bluetooth: Mesh: Test brg duplicate subnets filtering
This adds a babblesim test that checks

* That duplicate net key index pairs are filtered out in the bridged
  subnets list.
* That indexing into the filtered list works as expected (indexing
  happens into the already filtered list, not the full bridging table)

Signed-off-by: Ludvig Jordet <ludvig.jordet@nordicsemi.no>
2025-10-21 11:40:39 +03:00
Ludvig Jordet
cc8ac6bdee Bluetooth: Mesh: Filter duplicates in brg subnets list
This commit adds functionality to filter out duplicate entries in the
Bridged Subnets List message.

This is done by iterating through the part of the table we have already
processed, to check if this is the first time we see a given key pair or
not.

Signed-off-by: Ludvig Jordet <ludvig.jordet@nordicsemi.no>
2025-10-21 11:40:39 +03:00
Benjamin Cabé
ef2141987d drivers: sensor: ti_hdc302x: Fix double-promotion warnings
Change HDC_302X_TEMP_OFFSET_SCALE and HDC_302X_HUMIDITY_OFFSET_SCALE
from float literals to double literals to avoid implicit conversion
warnings when compiling with clang and -Wdouble-promotion flag.

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-21 11:40:29 +03:00
Tony Han
76b510c5f8 samples: pwm: add sama7g54_ek.overlay file to the blink_pwm sample
The sama7g54-ek has the LEDs those can be driven by GPIO or PWM.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-20 19:19:20 -04:00
Tony Han
2295d332ff boards: microchip: sam: add PWM to sama7g54-ek dts and yaml files
Add PWM and pwmled nodes to sama7g54_ek.dts file.
Add pwm to sama7g54_ek.yaml support list.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-20 19:19:20 -04:00
Tony Han
802fdc4dd3 drivers: pwm: pwm_sam: update to support Soc SAMA7G5
Redefine some macros due to different naming scheme in the header file.
Get the clock rate from the device tree when 'SOC_ATMEL_SAM_MCK_FREQ_HZ'
is not defined.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-20 19:19:20 -04:00
Tony Han
11844cd3cb soc: microchip: sam: update MMU for sama7g5 PWM
When the PWM is activated in the DT, configure it's register region
with strong ordered, read and write access.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-20 19:19:20 -04:00
Tony Han
399ba3d373 dtsi: microchip: sam: add PWM nodes for sama7g5
Add the PWM node to sama7g5.dtsi file.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-10-20 19:19:20 -04:00
COUSSEMENT Stijn
233a1abe59 drivers: sensor: ti: Add TI temp sensor HDC302x to tests
The HDC302x sensor is added to the i2c tests

Signed-off-by: COUSSEMENT Stijn <stijn.coussement@psicontrol.com>
2025-10-20 19:19:09 -04:00
COUSSEMENT Stijn
523eed2d08 drivers: sensor: ti: Add TI temp sensor HDC302x
The HDC302X sensor driver is added,
you can use this driver to read temperature and humidity.
Also set an offset, upper and lower limits to get warned
when temperature or humidity get out of band.
The sensor is build for ultra low power applications.

Signed-off-by: COUSSEMENT Stijn <stijn.coussement@psicontrol.com>
2025-10-20 19:19:09 -04:00
Johann Fischer
e295a387b9 samples: usb: hid-keyboard: allow to set polling period at runtime
Add an example of how to set the polling period at runtime.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-10-20 19:19:00 -04:00
Johann Fischer
bca0ce0870 usb: device_next: hid: allow to set polling period at runtime
Allow to set input or output report polling period at runtime.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-10-20 19:19:00 -04:00
Johann Fischer
c62575e7bf usb: device_next: fail on initialization if no HID device is registered
Do not register the device when the class instance has already been
initialised. Fail on initialization if no HID device is registered.

Signed-off-by: Johann Fischer <johann.fischer@nordicsemi.no>
2025-10-20 19:19:00 -04:00
Zhaoxiang Jin
c6033d58e5 drivers: sensor: pmc_tmpsns: Reduce floating-point operations
Reduce floating-point operations in the nxp_pmc_tmpsns.
Provide new calculation method without floating-point operations.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-20 19:18:36 -04:00
Zhaoxiang Jin
9c8d93228e samples: enable rt700 die_temp_polling sample
1. The updated regex better matches device names
for various temperature sensors. If a device name
contains hyphens, the new regex can match it.

2. enable rt700 die_temp_polling sample

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-20 19:18:36 -04:00
Zhaoxiang Jin
ed66a1bbdb dts: nxp: add pmc-tmpsns to rt7xx dts
1. add pmc-tmpsns to rt7xx dts
2. add pmc-tmpsns to rt700 evk

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-20 19:18:36 -04:00
Zhaoxiang Jin
44bc475309 drivers: sensor: Enable NXP pmc tmpsns driver
This commit introduced NXP pmc temperature sensor
(pmc-tmpsns) driver.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-20 19:18:36 -04:00
Zhaoxiang Jin
5bbe45c478 modules: hal_nxp: Pull in romapi for RT7xx
Pull in romapi for RT7xx

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-20 19:18:36 -04:00
Jeremy Dick
6a8fb9f5f2 drivers: display: st7567: Obey the column offset property
Shift the output to the display by the configured column offset

Signed-off-by: Jeremy Dick <jdick@pivotint.com>
2025-10-20 19:18:27 -04:00
Muhammed Asif
6794ca7142 boards: microchip: add PIC32CX SG61 Curiosity Ultra Evaluation Kit support
Add initial support for the Microchip PIC32CX SG61 Curiosity Pro board

Product page: https://www.microchip.com/en-us/development-tool/ev09h35a

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-10-20 19:18:18 -04:00
Muhammed Asif
abc755f596 soc: microchip: Add support for PIC32CX SG SoC series
Adds initial SoC-level support for the Microchip
PIC32CX SG series, including SoC definition files.

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-10-20 19:18:18 -04:00
Muhammed Asif
03f19824c3 dts: arm: microchip: add dtsi files for Microchip PIC32CX SG SoC series
Adds common and SoC-specific .dtsi files for the Microchip
PIC32CX SG family. These files define core peripherals,
address maps, and interrupt controller structure shared
across the PIC32CX SG variants.

Signed-off-by: Muhammed Asif <muhammed.asif@microchip.com>
2025-10-20 19:18:18 -04:00
Sunil Abraham
ecc9f6ce71 drivers: uart: microchip/g1: add more functionality
Add more functionality in uart driver.
Implement interrupt API.

Signed-off-by: Sunil Abraham <sunil.abraham@microchip.com>
2025-10-20 19:18:03 -04:00
Sunil Abraham
4de1acd007 dts: uart: microchip/g1: add more functionality
Add more functionality in uart driver.
Add bindings for sercom in n and p SOC variants.

Signed-off-by: Sunil Abraham <sunil.abraham@microchip.com>
2025-10-20 19:18:03 -04:00
Logan Saint-Germain
4ff0457c24 samples: sensor: sensor_shell: Added channels count for sensor_shell tests
Use of the `sensor get` help. No channel provided allows the sensor_shell
to iterate through every channels. Getting the last channel gives the last
channel index and therefor the channel count. Provide futur proofing for
new channels.

Signed-off-by: Logan Saint-Germain <l.saintgermain@catie.fr>
2025-10-20 19:17:51 -04:00
Logan Saint-Germain
089ea66914 drivers: sensor: max30101: Enhanced sample_fetch to match datasheet
The max30101 allows to configure time slots in samples acquisition.
It is now supported by adding matrix mapping for the slot/fifo
indexing. When a channel is present multiple times, the resulting
sample from the `sensor_channel_get` is averaging each entry.
Added Die temperature sample acquisition with
`CONFIG_MAX30101_DIS_TEMPERATURE` Kconfig.

Signed-off-by: Logan Saint-Germain <l.saintgermain@catie.fr>
2025-10-20 19:17:51 -04:00
Logan Saint-Germain
52d0ad2c67 drivers: sensor: max30101: Enhanced driver to support triggers
The max30101 sensor driver doesn't support triggers.
Add `.trigger_set` API and corresponding Kconfig and
device tree parameters. Add `SENSOR_CHAN_AMBIENT_LIGHT`
and `SENSOR_TRIG_OVERFLOW`.

Signed-off-by: Logan Saint-Germain <l.saintgermain@catie.fr>
2025-10-20 19:17:51 -04:00
Logan Saint-Germain
8a1371c5d6 drivers: sensor: max30101: Enable support for multiple instance
The max30101 sensor driver doesn't support multiple instance.
Update Kconfig and maxim,max30101.yaml for instance based
configuration. Propagate changes over existing files.

Signed-off-by: Logan Saint-Germain <l.saintgermain@catie.fr>
2025-10-20 19:17:51 -04:00
Andre Heinemans
35396b1a0e drivers: memc_mcux_flexspi: force applying OVRDVAL
Enable this kconfig setting to force using a specific raw value for the
OVRDVAL field in the DLLCR registers.

This option gives more granularity than the 'data-valid-time' field in
the dts. The unit of 'data-valid-time' is nanoseconds while the unit of
OVRDVAL are raw delay cells.

Normally the 'data-valid-time' on any 'nxp,imx-flexspi-device' device
will set the OVRDVAL and OVRDEN fields in the DLLCR register
but works only when the 'rx-clock-source' is configured to '#0 External
input from DQS pad' and the frequency <= 100MHz.

Signed-off-by: Andre Heinemans <andre.heinemans@nxp.com>
2025-10-20 19:17:39 -04:00
Zhaoxiang Jin
43c223ed70 boards/nxp: mcxn: Enable LPUART pin internal pullup resistor
This commit enables MCXN236, MCXN947 LPUART pin internal
pullup resistor. For MCXN947 and MCXN236, during LPUAR
initialization, the RX pin is pulled down internally
and STAT[RAF] is set to one. In this state, attempting
to enter low power mode will trigger LPACK reset and
therefore cannot truly enter low power mode. The correct
setting should be to enable LPUART pin internal pullup
resistor.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-20 19:16:58 -04:00
Daniel Leung
3c2ecf79f5 west: update mipi-sys-t to lastest SHA
This updates the SHA for the mipi-sys-t module.
This brings in support for IAR compilers.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-10-20 19:16:27 -04:00
Seppo Takalo
1f996d07b8 modem: cmux: Implement Modem Status Command
Implement Modem Status Command(MSC) and a per DLC flow
control by using it.

Send flow control signals when our input buffer don't fit
full frame anymore.
Stop TX if we have received from controls on MSC.

Signed-off-by: Seppo Takalo <seppo.takalo@nordicsemi.no>
2025-10-20 19:16:10 -04:00
Tahsin Mutlugun
36a3a4c1e0 drivers: pwm: max32: Simplify prescaler calculation
Replace the look-up table used to obtain the prescaler enumeration with
a simple multiplication.

Signed-off-by: Tahsin Mutlugun <Tahsin.Mutlugun@analog.com>
2025-10-20 19:16:00 -04:00
Furkan Akkiz
914e6a1948 drivers: counter: max32: Fix prescaler configuration
The existing formula assumed prescaler enumerations were consecutive,
which led to incorrect values being passed to HAL functions. Update
the code to calculate correct prescaler enumerations.

Signed-off-by: Furkan Akkiz <hasanfurkan.akkiz@analog.com>
2025-10-20 19:16:00 -04:00
Alain Volmat
bc8eb83c36 drivers: dma: stm32: avoid clear flags if hal_override on unexpected irq
In case of using HAL_OVERRIDE, avoid clearing the FIFO ERROR flag
before calling the HAL DMA IrqHandler so that the HAL DMA code
handling can be used.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-20 19:15:44 -04:00
Alain Volmat
110c61bfea drivers: dma: stm32: avoid clear TE in case of hal_override
If hal_override is set, avoid reporting an error and clear the
transfer error (TE) bit so that HAL code can properly handle it.

Signed-off-by: Alain Volmat <alain.volmat@foss.st.com>
2025-10-20 19:15:44 -04:00
Anthony Williams
3158211391 sensor: icm45686: Use explicit VLA for fifo encoded data
The size of icm45686_encoded_data fifo_payload is guaranteed
to span the full number of frames read as it was allocated during
icm45686_event_handler() buf_len_required size.

This update suppresses the static analysis warning of
out of bounds memory access at index 1 by explicitly declaring
fifo_payload to be a VLA at the end of icm45686_encoded_data.

Signed-off-by: Anthony Williams <anthony289478@gmail.com>
2025-10-20 19:15:30 -04:00
Anthony Williams
d0d29aa5e2 sensor: icm45686: Swap ASSERT to CHECKIF in fifo decode
Change the __ASSERT on unsupported fifo packet header to
CHECKIF so the user can choose how to handle the invalid
packet.

Signed-off-by: Anthony Williams <anthony289478@gmail.com>
2025-10-20 19:15:30 -04:00
Anthony Williams
2df6c368ba sensor: icm45686: Implement AN-000364 fix for fifo corruption
When operating in streaming mode, a FIFO empty event, which
is caused by host reading the last byte of the last FIFO frame,
can cause FIFO data corruption.

During subsequent reads to the FIFO, the first  frame that arrives
after the empty condition will be corrupted. Once the issue occurs,
the internal state cannot recover and the FIFO must be flushed in
bypass mode to clear the corrupted state.

The current workaround from TDK is to read M-1 frames when M frames
are reported by fifo_count. Since M is fixed by the fifo_watermark
DT parameter, and in cases where fifo_watermark == 1, the watermark
trigger threshold is set to M + 1 frames and M frames are read out
during a watermark threshold event.

Signed-off-by: Anthony Williams <anthony289478@gmail.com>
2025-10-20 19:15:30 -04:00
Anthony Williams
ee63650541 sensor: icm45686: Print unsupported fifo packet on assert
When an unsupported fifo packet triggers an assert, it is
helpful to see the packet as a hex value to help when debugging.

Signed-off-by: Anthony Williams <anthony289478@gmail.com>
2025-10-20 19:15:30 -04:00
Zhaoxiang Jin
18d037f0b1 dts: nxp_mcxnxxx: Fixes 'dma-requests' incorrect value
Fixes incorrect 'dma-requests' value in
dts/arm/nxp/nxp_mcxn23x_common.dtsi and
dts/arm/nxp/nxp_mcxnx4x_common.dtsi. The
'dma-requests' indicates the maximum value of
the DMA request sources (slots) index supported
by DMAMUX rather than the number of request sources.

Fixes: #97389 (which introduced the incorrect values)

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-20 19:15:18 -04:00
Zhaoxiang Jin
fcc1b62834 dts: nxp,mcux-edma: Added description for properties
Added description for 'dma-requests' and 'dma-channels' in
dts/bindings/dma/nxp,mcux-edma.yaml.

Signed-off-by: Zhaoxiang Jin <Zhaoxiang.Jin_1@nxp.com>
2025-10-20 19:15:18 -04:00
Benjamin Cabé
0191b0e921 ci: doc-build: fix the "on:" clause
In commit f3edf52264, I erroneously put
"main" under the existing "tags" entry which is obvisouly wrong, it
should be under "branches". Sorry :|

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2025-10-20 19:15:02 -04:00
WenBin Zhang
d7c1ec670f samples: zperf: Add STM32 eth_tx_async mode test
enable STM32 etc_tx_async mode for testing in CI

Signed-off-by: WenBin Zhang <freey7955@gmail.com>
2025-10-20 14:23:56 -04:00
WenBin Zhang
9094e026f7 drivers: ethernet: eth_stm32 add tx async mode
Enable TX transmission asynchronous mode to enhance performance

Tested on the nucleo_h743zi board using samples/net/zperf

west build -b nucleo_h743zi/stm32h743xx samples/net/zperf/ --pristine
-- -DCONFIG_NET_CONFIG_MY_IPV4_ADDR=\"192.168.1.199\"

upload cmd:
```
//linux
iperf -s -l 1K -p 5001
iperf -s -l 1K -p 5002 -u

//shell
zperf tcp upload 192.168.1.109 5001 10 1K
zperf udp upload 192.168.1.109 5002 10 1K 300M
```

download cmd:
```
//shell
zperf tcp download 5001 192.168.1.199
zperf ucp download 5002 192.168.1.199

//linux
iperf -l 1K -c 192.168.1.199 -p 5001
iperf -l 1K -c 192.168.1.199 -p 5002 -u
```

before:
udp upload:   73.5Mbps/s
tcp upload:   71.3Mbps/s
udp download: 93.9Mbps/s
tcp download: 70.5Mbps/s

after:
udp upload:   92.2Mbps/s
tcp upload:   78.1Mbps/s
udp download: 93.7Mbps/s
tcp download: 75.2Mbps/s

Signed-off-by: WenBin Zhang <freey7955@gmail.com>
2025-10-20 14:23:56 -04:00