Commit graph

25,525 commits

Author SHA1 Message Date
Nikodem Kastelik
7e84571dcd drivers: retained_mem: nrf: make ram_ctrl variant explicit
Updated retained_mem driver variant exposes vendor-specific API,
rather than executing implicitly during boot.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2024-12-23 18:40:52 +01:00
Nikodem Kastelik
e501b54bad soc: nordic: add common symbol for RAM control helper presence
Common symbol is defined by SoCs that support RAM control helper.

Signed-off-by: Nikodem Kastelik <nikodem.kastelik@nordicsemi.no>
2024-12-23 18:40:52 +01:00
Scott Worley
f51729aada drivers: gpio: mec5: Microchip MEC5 HAL based GPIO driver
Add a GPIO driver for the Microchip MEC5 HAL based chips.
Current devices are: MEC174x, MEC175x, and HAL version of
MEC172x named MECH172x.

Signed-off-by: Scott Worley <scott.worley@microchip.com>
2024-12-23 17:11:22 +01:00
Daniel Baluta
e94c86f395 drivers: dma: Add initial support for NXP SDMA
This adds initial support for NXP SDMA controller. We make use
of NXP HAL to configure the IP.

SDMA uses BD (buffer descriptors) to describe a transfer. We create
a cyclic list of descriptors and trigger them manually at start and
later when data is available.

This is tested using Sound Open Firmware app on top of Zephyr.

Signed-off-by: Daniel Baluta <daniel.baluta@nxp.com>
2024-12-23 17:11:09 +01:00
Jilay Pandya
59064a409e dts: bindings: stepper: add en-gpios to common stepper-controller.yaml
- rename enable-gpios to en-gpios in adi,tmc2209
- place en-gpios in common stepper-controller.yaml

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2024-12-23 17:10:06 +01:00
Danh Doan
9792abb692 drivers: entropy: Add support for TRNG to entropy driver
add support TRNG to entropy driver for Renesas RA

Signed-off-by: Danh Doan <danh.doan.ue@bp.renesas.com>
2024-12-23 13:24:13 +01:00
Martin Jäger
e5e8fb56d1 drivers: interrupt_controller: esp32c6: reserve IRQ 1 for WiFi
IRQ 1 is reserved for WiFi in ESP-IDF, which is used as the basis
for the Espressif HAL in Zephyr.

If IRQ 1 is used by Zephyr and too many other peripherals (e.g.
multiple UARTs) are enabled, WiFi stops working.

Marking IRQ 1 as "not available" seems to fix the issue.

Fixes #82874

Signed-off-by: Martin Jäger <martin@libre.solar>
2024-12-23 13:23:59 +01:00
Omar Naffaa
c9be1a991b drivers: sensor: dht: Fix sensor read issue on esp32_devkitc_wrover
The DHT[11/22] sensor driver fails to read data due to an extra
"gpio_pin_set_dt" that is occurs prior to waiting for the sensor active
response. This leads to consistent failed reads on esp32 (devkitc,
wrover). After removing this line reads are consistently successful.

Signed-off-by: Omar Naffaa <omarnaffaa.on@gmail.com>
2024-12-23 09:16:06 +01:00
Andrzej Głąbek
59c94db6f0 drivers: spi_nrfx_spim: Add clock requests for fast SPIM instances
Fast SPIM instances (SPIM120 and SPIM121) for correct operation require
the highest frequency from the global HSFLL. This commit adds needed
clock controller requests to the driver. When the runtime device power
management is enabled, the frequency is requested as long as the SPIM
is resumed, otherwise it is requested for the duration of transfers.

This commit also adds a missing call to `pm_device_runtime_put()` when
SPIM reconfiguration fails.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2024-12-21 15:04:58 +01:00
Andrzej Głąbek
c8fff0c77d drivers: clock_control_nrf2: Add missing cancelation of request
This is a follow-up to commit fe0e2dbc60.

If `nrf_clock_control_request_sync()` ends up with a timeout, before
returning it must cancel the request that was not fulfilled on time.
Otherwise, the request may actually finish successfully a bit later,
but the caller will not be aware that the clock needs to be released
(since the call resulted in an error). And actually even more serious
problem is that because the `req` structure is placed on stack, after
the function returns, the contents of this structure will be probably
overwritten with some other data, so if the request finishes at that
point, an attempt to execute the callback function pointed by this
structure will most likely cause a crash.

Signed-off-by: Andrzej Głąbek <andrzej.glabek@nordicsemi.no>
2024-12-21 15:04:58 +01:00
Ajay Parida
0fb3707699 drivers: wifi: Configure number of BSS entries
Configure BSS entries to be displayed in scan result as
per the rssi order.

Signed-off-by: Ajay Parida <ajay.parida@nordicsemi.no>
2024-12-21 15:04:38 +01:00
Jilay Pandya
dcf9449b51 drivers: sensor: mmc56x3_async.c fix missing break
coverity complains of a missing break statement in SENSOR_CHAN_ALL case
this is fixed by adding __attribute__((fallthrough))

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2024-12-21 15:04:22 +01:00
Aleksander Dejewski
a4e31487d5 drivers: lora: Add user_data to lora_recv_async
The LoRa driver does not allow to pass void* user_data to callback in
lora_recv_async function. This leads to complex way of using the API. This
commit fixes the issue and adds the field to the function and to the
callback.

Signed-off-by: Aleksander Dejewski <aleksander.dejewski@gmail.com>
2024-12-21 05:51:52 +01:00
The Nguyen
1d6a453a6a drivers: display: add support for ili9806e_dsi driver
First commit to add support for ili9806e_dsi driver

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2024-12-20 23:53:37 +02:00
The Nguyen
238a992614 drivers: mipi_dsi: add support for MIPI DSI driver on Renesas RA family
First commit to add support for MIPI DSI driver on Renesas RA

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2024-12-20 23:53:37 +02:00
The Nguyen
b5f03367d8 drivers: display: add support for GLCDC on Renesas RA family
First commit to add support for Graphics LCD Controller on Renesas RA

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2024-12-20 23:53:37 +02:00
The Nguyen
ee04db8b4d drivers: memc: enable support for SDRAM controller on Renesas RA family
First commit to add support for SDRAM controller on Renesas RA SoC

Signed-off-by: The Nguyen <the.nguyen.yf@renesas.com>
2024-12-20 23:53:37 +02:00
Manuel Argüelles
c16ccf8e7d dts: bindings: rename nxp,kinetis-ftm-pwm compatible
Rename "nxp,kinetis-ftm-pwm" compatible to "nxp,ftm-pwm" to remove the
device family from its name.

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2024-12-20 23:53:14 +02:00
Sylvio Alves
3d06716a7b drivers: bt: esp32: add CONFIG_BUILD_ONLY_NO_BLOBS to allow CI tests
Adds an option to enable CI tests without binary blobs.

Signed-off-by: Sylvio Alves <sylvio.alves@espressif.com>
2024-12-20 23:51:16 +02:00
Keith Short
5eacb2a24f usbc: ps8xxx: Fix build error
Fix a build error in the PS8xxx TCPC driver.

Signed-off-by: Keith Short <keithshort@google.com>
2024-12-20 23:50:50 +02:00
Aksel Skauge Mellbye
6b65d60d49 drivers: spi: gecko: eusart: Support LSB first and GPIO CS
Propagate bit ordering and type of CS pin to HAL layer. Previously,
the driver assumed MSB first and EUSART hardware CS control.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2024-12-20 18:32:22 +01:00
Chaitanya Tata
6eff676448 drivers: nrf_wifi: Add dependencies
Add the feature flag and required GPIO in DTS as dependencies to avoid
build failures.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2024-12-20 18:31:22 +01:00
Chaitanya Tata
624543e180 drivers: nrf_wifi: Add help for SR RF switch
Helps in understanding this switch usage better.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2024-12-20 18:31:22 +01:00
Chaitanya Tata
7e77d97916 drivers: nrf_wifi: Remove hardcoded prints
The GPIOs will vary depending on the platform.

Signed-off-by: Chaitanya Tata <Chaitanya.Tata@nordicsemi.no>
2024-12-20 18:31:22 +01:00
Danh Doan
2e0688878b drivers: pwm: update namming of pwm driver for RA family
- update namming for pwm driver.

Signed-off-by: Danh Doan <danh.doan.ue@bp.renesas.com>
2024-12-20 18:31:12 +01:00
Raffael Rostagno
0cb755a0e3 drivers: mcpwm: esp32c6: Add support
Add MCPWM support to ESP32C6

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2024-12-20 18:30:59 +01:00
Dimitrije Lilic
088afe9359 drivers: sensor: adxl345: Support for RTIO I2C stream
Updated ADXL345 driver with RTIO I2C stream functionality.

Signed-off-by: Dimitrije Lilic <dimitrije.lilic@orioninc.com>
2024-12-20 16:23:46 +01:00
Bjarki Arge Andreasen
02bf44d590 drivers: i2c: add nrf twis suppport
Add nrf twis (I2C controller supporting I2C peripheral role and
EasyDMA) support, including updating the existing twis dt binding
to match the hardware with proper examples.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2024-12-20 16:14:05 +01:00
Bjarki Arge Andreasen
4103c8236b drivers: pinctrl: add support for nrf twis pins
Add support for TWIS pins to nrf pinctrl.

Signed-off-by: Bjarki Arge Andreasen <bjarki.andreasen@nordicsemi.no>
2024-12-20 16:14:05 +01:00
Dimitrije Lilic
0806c9c740 i2c: Add RTIO-compatible driver for adi MAX32
Created MAX32 driver with RTIO functionalities.
Updated CMakeLists.

Signed-off-by: Dimitrije Lilic <dimitrije.lilic@orioninc.com>
2024-12-20 16:08:52 +01:00
Lukasz Majewski
f6fe628aa7 drivers: net: ot: Add HDLC HOST support with UART communication to RCP
This patch adds support for HOST OpenThread communication to the RCP
co-processor via UART using SPINEL protocol.

The aim is to use OpenThread's RCP (Radio Co-Processor) with HOST device
(for example imxRT1020). Such configuration is the same as one used
with PC program (ot-cli) and RCP.

Signed-off-by: Lukasz Majewski <lukma@denx.de>
2024-12-20 16:06:33 +01:00
Aksel Skauge Mellbye
ab9af6f161 drivers: spi: gecko: usart: Implement lock
Implement the SPI context lock in the USART SPI driver for
EFM32/EFR32.

Remove incorrect -EBUSY error when spi_release() is called while
there are still bytes in the TX FIFO. This condition does not
cause the act of releasing the lock to fail.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2024-12-20 16:05:53 +01:00
Aksel Skauge Mellbye
c6689a7943 drivers: spi: gecko: usart: Support CS active high and LSB first
Enable SPI flags that are easily supportable by hardware.

Signed-off-by: Aksel Skauge Mellbye <aksel.mellbye@silabs.com>
2024-12-20 16:05:53 +01:00
Stefan Schwendeler
5929677d7a drivers: led_strip: ws2812_i2s: Adds dependency to i2s-device
Removes the ugly `i2s-dev` property and uses its parent I2S bus device.

Signed-off-by: Stefan Schwendeler <Stefan.Schwendeler@husqvarnagroup.com>
2024-12-20 12:37:09 +01:00
Maochen Wang
9bb15251a8 drivers: wifi: nxp: remove SAP IPv4 address when stopped
Start and stop SAP, the IPv4 address is not removed, if then use STA
mode to connect to EXT-AP with same gateway address as the stopped
SAP, STA will not get the DHCP IPv4 address, as the DHCP offer packet
is dropped due to detect of IPv4 address conflict. Removing SAP IPv4
address when stopped SAP can fix this issue.

Signed-off-by: Maochen Wang <maochen.wang@nxp.com>
2024-12-20 10:19:03 +01:00
Jilay Pandya
3202773b11 drivers: auxdisplay: jhd1313: fix Out-of-bounds read
fix out of bounds read by doing the comparison with ARRAY_SIZE correctly

Signed-off-by: Jilay Pandya <jilay.pandya@outlook.com>
2024-12-20 10:18:36 +01:00
Hao Luo
b56aa0e823 drivers: timer: separate ambiq stimer comparator interrupts
Separate ambiq stimer comparator interrupts to handle the errata

Signed-off-by: Hao Luo <hluo@ambiq.com>
2024-12-20 08:33:22 +01:00
Richard Wheatley
745444ea25 drivers: timer: ambiq stimer errata updates
apx needs to set compare b due to errata of XTAL glitch
ap4p needs to set minimum delta to 4
err026 requires XTAL to not be switched off/on when resetting

Signed-off-by: Richard Wheatley <richard.wheatley@ambiq.com>
2024-12-20 08:33:22 +01:00
Mariëlle Korthout
4fa94f6742 drivers: sensor: Add HS400x driver
Adds Renesas HS400x temperature and humidity sensors driver.
Signed-off-by: Mariëlle Korthout <marielle.korthout.jc@renesas.com>
2024-12-20 03:18:19 +01:00
Pisit Sawangvonganan
997f6d4949 drivers: eeprom: at2x: remove orphaned k_mutex_unlock
Remove orphaned `k_mutex_unlock` in `eeprom_at25_read` as
the lock/unlock pair is handled in `eeprom_at2x_read` instead.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2024-12-20 03:17:52 +01:00
Pisit Sawangvonganan
3a67013ef1 drivers: eeprom: at2x: remove '&' when assigning init_fn
To maintain consistency in `init_fn` parameter passing,
remove the address-of operator ('&') when assigning the `init_fn`
function pointer in the `DEVICE_DT_INST_DEFINE` macro.

Signed-off-by: Pisit Sawangvonganan <pisit@ndrsolution.com>
2024-12-20 03:17:52 +01:00
Immo Birnbaum
fef27d8231 drivers: gpio: xlnx_ps: switch driver over to DEVICE_MMIO mapping
Set up a named device MMIO memory mapping in the GPIO controller's
parent device, map the virtual memory in the init function of the
parent device.

Once the controller's register space has been successfully mapped,
propagate the mapped virtual address to all child (= GPIO bank)
devices. While it is possible to add a named mapping to every
single GPIO bank device and initialize it in the respective bank
device's init function, this would result in multiple virtual
address mappings all pointing to the same 4k of physical memory.
I assume that, although all those mappings having the same attri-
butes, such a setup is at least discouraged.

Signed-off-by: Immo Birnbaum <mail@birnbaum.immo>
2024-12-19 19:56:23 +01:00
Raffael Rostagno
a7e08cc16b drivers: serial: esp32: Standard baudrate on config_get
Return standard baudrate on a uart_config_get call instead of
rough calculated numbers.

Signed-off-by: Raffael Rostagno <raffael.rostagno@espressif.com>
2024-12-19 19:56:06 +01:00
Dominik Ermel
486428951b drivers/flash: Correct flash_erase userspace handler
As the erase callback is optional, handler should not check
if it is not NULL.

Fixes #81777

Signed-off-by: Dominik Ermel <dominik.ermel@nordicsemi.no>
2024-12-19 19:55:53 +01:00
Manuel Argüelles
bf7837b8ac dts: bindings: rename nxp,kinetis-rtc compatible
Rename "nxp,kinetis-rtc" compatible to "nxp,rtc" to remove the
device family from its name.

Signed-off-by: Manuel Argüelles <manuel.arguelles@nxp.com>
2024-12-19 19:55:43 +01:00
Valerio Setti
3fa522c720 tests/samples: remove ENTROPY_GENERATOR from BT related tests/samples
Since now Mbed TLS automatically selects ENTROPY_GENERATOR (or the
test generator, depending on the platform) we can remove this dependency
from all BT related tests and samples.

Signed-off-by: Valerio Setti <vsetti@baylibre.com>
2024-12-19 17:53:37 +01:00
Andrzej Puzdrowski
2cea407afb drivers/flash/Kconfig.nrf_rram: bufferd write by default
Enable buffered write for nRF54l RRAM flash driver by default.
CONFIG_NRF_RRAM_WRITE_BUFFER_SIZE=1 means that write will be buffered
by 16 B buffer (native RRAM write-bock-size).
This allows optimal life-endurance of RRAM memory.

For reference" DTS declares 16 write-block-size already.

Signed-off-by: Andrzej Puzdrowski <andrzej.puzdrowski@nordicsemi.no>
2024-12-19 17:38:12 +01:00
Balaji Srinivasan
a627ffc11e drivers: ethernet: Fix assert on receiving large PDUs
This patch fixes an assert in net_buf_simple_add() function when the
lan_9250 driver would add previously added data to the net buffer
on receiving large (>128 bytes) packat. This fix was to use the frags
field of the net_buf structure instead.

Tested with a nRF54L15 DK and eth3 click board (with nordic connect sdk
2.8.0 and this patch).

Signed-off-by: Balaji Srinivasan <balaji.srinivasan@autostoresystem.com>
2024-12-19 17:38:03 +01:00
Xavier Razavet
1ac3470efb drivers: Narrow Band Unit interruption driver creation
Creation of the new zephyr\soc\nxp\common\nxp_nbu.c driver which manage
the interruption of the NBU. This modification is mandatory to support a
coex application which includes Bluetooth and 802.15.4 on the same
narrow band path.

Signed-off-by: Xavier Razavet <xavier.razavet@nxp.com>
2024-12-19 17:37:24 +01:00
Benjamin Cabé
d8f12d3d8c drivers: ssp: fix unused variable warning
fixes unused variable warning by ensuring it's declared only for
SSP_IP_VER > SSP_IP_VER_1_5

Signed-off-by: Benjamin Cabé <benjamin@zephyrproject.org>
2024-12-19 17:36:50 +01:00