Commit graph

136,983 commits

Author SHA1 Message Date
Arnaud Pouliquen
6c508cbd52 drivers: ethernet: stm32: add support of the stm32mp13
Add the support of the stm32mp13 ethernet:
- Adapt to HAL API
- Add support of a memory region in DT for descriptor and buffers
- Add support of PHY with/without crystal 50MHz

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
Signed-off-by: Arif Balik <arifbalik@outlook.com>
2025-11-13 20:35:09 -05:00
Arnaud Pouliquen
b05a6f6344 drivers: ethernet: stm32: cleanup deprecated ETH_TxPacketConfig typedef
The typedef ETH_TxPacketConfigTypeDef is used consistently in the driver.
However, some instances of ETH_TxPacketConfig have not yet been replaced.
On the STM32MP13 series, the ETH_TxPacketConfig typedef is no longer
defined. This cleanup ensures compatibility and consistency.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-11-13 20:35:09 -05:00
Arnaud Pouliquen
4e51327722 dts: arm :st: Add ethernet 0 node in stm32mp13
Add the Ethernet 0 MAC and MDIO nodes in the device tree.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
Signed-off-by: Arif Balik <arifbalik@outlook.com>
2025-11-13 20:35:09 -05:00
Arnaud Pouliquen
8aacdca78b soc: st: stm32mp13: enable direct memory map
Enable dynamic configuration of region mapping with a 1:1
virtual-to-physical address mapping.
This configuration is aligned with the static declaration of the
MMU table using MMU_REGION_FLAT_ENTRY macro.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-11-13 20:35:09 -05:00
Arnaud Pouliquen
d8e7887ba9 drivers: gpio: invert I2C config dependency for MCP23xxx
The GPIO_MCP230XX config currently depends on the I2C config. This means
that the board/SoC must enable the I2C config to support MCP23xxx devices.
Inverting this dependency allows declaring GPIO_MCP230XX directly in the
board/SoC defconfig without explicitly enabling I2C.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
Suggested-by Fin Maaß <f.maass@vogl-electronic.com>
2025-11-13 20:35:09 -05:00
Arnaud Pouliquen
e7a7639d1f drivers: ethernet: add initial support of the LAN8742 PHY
Add basic support of the LAN8742 RMII phy. The driver is inspired
from the phy_mii generic driver, with the support of a GPIO reset.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-11-13 20:35:09 -05:00
Arnaud Pouliquen
7243ba33e3 dts: bindings: ethernet: Add the stm32mp13 bindings
Introduce stm32mp13 bindings to support the ethernet peripherals.
The "memory-regions" property is used to reference non cacheable memory
for the ETH DMA.
The "st,ext-phyclk" property aligned Linux binding is used to specify
the PHY clock for RMII.

Signed-off-by: Arnaud Pouliquen <arnaud.pouliquen@foss.st.com>
2025-11-13 20:35:09 -05:00
Ayush Singh
9c88612e67 dts: arm: ti: mspm0: l110x: Add uart1
- MSPM0L110x series SOC contain 2 UARTS. So add UART1.
- While all MSPM0L series SOC contain at least 2 UARTs, the address for
  UART1 seems to be different in L222x and L122x (0x4010A000).

Signed-off-by: Ayush Singh <ayush@beagleboard.org>
2025-11-13 20:34:46 -05:00
Jordan Yates
463a6fe8b9 spi: nrfx_spim: cleanup PM usage
Release the PM constraint at the end of the context in which it was
requested (`transceive`), instead of in a semi-related function
(`finalize_spi_transaction`) which is also called by other API functions
(`spi_release`). Asynchronous usage is released in the transaction
complete callback.

Signed-off-by: Jordan Yates <jordan@embeint.com>
2025-11-13 20:34:37 -05:00
Nilesh Vyas
132ab06a3f drivers: display: st7796s: Add display_set_orientation API
This commit adds the implementation for the display_set_orientation API
to the ST7796S display driver.

Currently, the driver lacks support for changing the display orientation
at runtime. This change implements the API to allow for hardware-based
rotation using the MADCTL register.

The implementation was tested on an `rd_rw612_bga` board with a 320x480
display using the ST7796S controller. The API now correctly handles
rotations to 0, 90, 180, and 270 degrees by configuring the MY, MX, and
MV bits of the MADCTL register.

Signed-off-by: Nilesh Vyas <nileshvyas1112@gmail.com>
2025-11-13 20:34:06 -05:00
MA Junyi
2bf29f46df boards: embedsky: add runner bmp for TQ-H503A
Users can choose blackmagicprobe to flash or debug the device,
without needing to set up ST’s customized OpenOCD.

Signed-off-by: MA Junyi <mjysci@live.com>
2025-11-13 20:33:57 -05:00
Khoa Tran
0e0906de0f tests: drivers: disk: Add test support for sdhc on Renesas RA
Add test support for sdhc driver on Renesas ek_ra8m1 and
ek_ra8p1 board:
- tests/drivers/disk/disk_access

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-13 20:33:44 -05:00
Khoa Tran
67fff480d1 samples: subsys: fs: Add sample support for sdhc on Renesas RA
Add sample support for sdhc driver on Renesas ek_ra8m1 and
ek_ra8p1 board:
- samples/subsys/fs/fs_sample

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-13 20:33:44 -05:00
Khoa Nguyen
42a18f3946 boards: renesas: Update supported tag for integration_platforms
Update supported spi and sdhc tag for integration_platforms for
spi and disk test: ek_ra8m1, ek_ra8p1 cm85

Signed-off-by: Khoa Nguyen <khoa.nguyen.xh@renesas.com>
2025-11-13 20:33:44 -05:00
Khoa Tran
65e2c20b8b tests: drivers: disk: Add tests support for SCI B SPI driver
Add test support using SDMMC card on Renesas RA boards

Add Renesas RA board support for these tests:
- tests/drivers/disk/disk_access

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-13 20:33:44 -05:00
Khoa Tran
06c223686c tests: drivers: sdhc: Add tests support for SCI B SPI driver
Add test support using SDMMC card on Renesas RA boards

Add Renesas RA board support for these tests:
- tests/drivers/sdhc

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-13 20:33:44 -05:00
Khoa Tran
291ef0fccc samples: subsys: fs: Add tests support for SCI B SPI
driver using SDMMC card on Renesas RA boards

Add Renesas RA board support for these samples:
- samples/subsys/fs/fs_sample

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-13 20:33:44 -05:00
Khoa Tran
ef39b92845 tests: drivers: spi: Add tests support for SCI B SPI on RA devices
Add Renesas RA board support for these tests:
- tests/drivers/spi/spi_loopback
- tests/drivers/spi/spi_controller_peripheral

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-13 20:33:44 -05:00
Khoa Tran
504065c8b7 dts: arm: renesas: Add SPI device node to SCI device node
for Renesas RA family

Add SPI device node to support SCI B SPI driver on Renesas RA SoCs:
- ra8x1.dtsi
- ra8x2.dtsi

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-13 20:33:44 -05:00
Khoa Tran
7c529fbd0c drivers: spi: Initial driver support for SCI B SPI on Renesas RA
Add SCI B SPI driver support for Renesas RA

Signed-off-by: Khoa Tran <khoa.tran.yj@bp.renesas.com>
2025-11-13 20:33:44 -05:00
Terry Geng
cf3839f5ad drivers: spi: spi_pico_pio: Free sm resources when reconfiguring
When SPI spec is reconfigured, avoid reallocating another sm and properly
free the loaded sm programs before attempting to load new programs.

Fix #94416.

Signed-off-by: Terry Geng <terry@terriex.com>
2025-11-13 20:32:41 -05:00
Michael Smorto
20f6d716a3 drivers: video Add Himax HM0360 camera sensor driver
Adds support for the HM0360 camera.

Signed-off-by: Michael Smorto <CyberMerln@gmail.com>
2025-11-13 20:32:26 -05:00
Sanjay Vallimanalan
9c62d77e99 dts: arm: ti: mspm0: g: Add TRNG node for MSPM0 G series
Add a support for TRNG node for true random number generation.

Signed-off-by: Sanjay Vallimanalan <sanjay@linumiz.com>
2025-11-13 20:31:46 -05:00
Sanjay Vallimanalan
b804a5accc drivers: entropy: mspm0: Add a support for TI MSPM0 TRNG module
TI MSPM0 has a TRNG module to generate truly random bits. Add a support
for TI MSPM0 TRNG module.

Signed-off-by: Sanjay Vallimanalan <sanjay@linumiz.com>
2025-11-13 20:31:46 -05:00
Sanjay Vallimanalan
b34efddb8c dts: bindings: rng: Add bindings for TI MSPM0 TRNG Module
Add bindings for TI MSPM0 TRNG Module.

Signed-off-by: Sanjay Vallimanalan <sanjay@linumiz.com>
2025-11-13 20:31:46 -05:00
Bindu S
e418352112 dts: x86: intel: Added dts changes for spi to support dma for RPL
Added dts changes to support lpss dma for SPI
driver for RPL platform

Signed-off-by: Bindu S <bindu.s@intel.com>
2025-11-13 20:31:31 -05:00
Bindu S
fb954189ee drivers: spi: Added LPSS DMA support for SPI
Enabled intel LPSS DMA interface using dw common to support
usage of internal DMA in LPSS SPI to transfer and
receive data.

Signed-off-by: Bindu S <bindu.s@intel.com>
2025-11-13 20:31:31 -05:00
Tony Han
ee57a95d01 boards: microchip: sam: add CAN to sama7g54_ek dts and yaml file
There's a dual CAN interfce (J17) on sama7g54-ek board.
pin 1~5 siginal: CAN0_H, CAN0_L, GND, CAN1_H, CAN1_L.
The two CAN transceivers are controlled by PIOC15 and PIOC16 GPIOs.
Add CAN to the support list.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:31:14 -05:00
Tony Han
bd15f36928 drivers: can: sam: update the can_sam driver for sama7g5 MCAN
Update the driver (supporting samx7x SOCs) to support sama7g5 MCAN.

Differences lists bellow:
          |           samx7x MCAN           |        sama7g5 MCAN        |
----------|---------------------------------|----------------------------|
CAN core  | the same                        | the same                   |
clock     | peripheral clock with a divider | generic & peripheral clock |
Msg RAM   | address configured by CCFG_CAN0 | in SRAM, configured by SFR |

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:31:14 -05:00
Tony Han
21195f2434 soc: microchip: sam: add clock initialization for sama7g5 MCAN
Initialize MCAN GCLK to 80MHz (divide SYSPLL 400MHz with 5).

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:31:14 -05:00
Tony Han
f2290d1c9c soc: microchip: sam: update MMU for sama7g5 MCAN
When the MCAN is activated in the DT, configure it's register region
with strong ordered, read and write access.
As CANx accesses the lower or upper 64K SRAM is selected by bits in
register 'SFR_CAN_SRAM_SEL', also configure SRAM and SFR region with
strong ordered, read and write access.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:31:14 -05:00
Tony Han
9c43b9d74c dts: microchip: sam: add CAN nodes to sama7g5.dtsi for SAMA7G5 MCAN
The CAN nodes are added to sama7g5.dtsi for SAMA7G5 MCAN.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:31:14 -05:00
Tony Han
3f62a7340a dts: bindings: can: update descriptions for supporting sama7g5 MCAN
Update the descriptions of properties to support sama7g5 MCAN.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:31:14 -05:00
Lukas Woodtli
b2d93b86f4 boards: silabs: Add support for efm32tg_stk3300
Support for the Silabs EFM32TG-STK3300 Starter Kit.

Board features:

* EFM32TG840F32 MCU with 32 kB flash and 4 kB RAM
* Advanced Energy Monitoring
* Real-time, accurate energy and power profiling
* Light, LC and touch sensors
* 8 x 20 LCD
* SEGGER J-Link debugger

Signed-off-by: Lukas Woodtli <woodtli.lukas@gmail.com>
2025-11-13 20:30:55 -05:00
Lukas Woodtli
c53a370c85 soc: Add support for Silabs EFM32TG
* ARM Cortex-M3 processor
* Up to 32 kB Flash and 4 kB RAM memory
* Energy efficient and autonomous peripherals
* Ultra low power Energy Modes
* Fast wake-up

Signed-off-by: Lukas Woodtli <woodtli.lukas@gmail.com>
2025-11-13 20:30:55 -05:00
Tony Han
8876d0ed0c dts: bindings: ethernet-controller: remove unused prop 'max-speed'
The 'max-speed' property in atmel,gmac-common.yaml file is not used,
remove  it.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:30:38 -05:00
Tony Han
3c532c47f0 drivers: net: sam_gmac: add BUILD_ASSERT for checking GMAC_QUEUE_NUM
'GMAC_QUEUE_NUM' is a value of 'num-queues' for the first GMAC
instance getting from the device tree. It is used directly or
indirectly (by GMAC_PRIORITY_QUEUE_NUM) for defining and
initializing 'struct eth_sam_dev_data' with a value from Kconfig
(GMAC_ACTIVE_PRIORITY_QUEUE_NUM).

As there will be a big change for applying the corresponding
num-queues for each GMAC 'struct eth_sam_dev_data', here just
keep it as is. Adding the BUITD_ASSERT to make sure the array
queue_list[] is large enough for all GMAC instances.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:30:38 -05:00
Tony Han
8880364901 drivers: net: sam_gmac: update random MAC addr for multi inst support
Add variable 'random_mac_addr' for 'zephyr,random-mac-address' from
device tree. Update generate_mac() to get random MAC address for each
GAMC interface with the 'zephyr,random-mac-address' property.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:30:38 -05:00
Tony Han
7ff2f53c95 drivers: net: sam_gmac: deprecate the 'mac-eeprom' option
Deprecate the 'ETH_SAM_GMAC_MAC_I2C_EEPROM' for the 'mac-eeprom' option,
Limite it to be used when there's only one activated GMAC instance.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:30:38 -05:00
Tony Han
8b0f8aaa2c drivers: net: sam_gmac: remove getting max_frame_size from DT
As jumbo frame size is not supported by the networking subsystem, only
max_frame_size 1518 and 1536 can be used. The Frame size 1536 would
allow for packets with a vlan tag, so enable GMAC_NCFGR_MAXFS when
NET_VLAN is configured.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:30:38 -05:00
Tony Han
50b3028279 drivers: net: sam_gmac: remove run once check in eth_iface_init()
To allow every interface be initialized properly when there are more than
one instance, remove the static variable "init_done" which is used to make
the initialize procedure only be done once.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:30:38 -05:00
Tony Han
317c67501e drivers: net: sam_gmac: ref_clk_source for multi instances support
Add variable "ref_clk_source" to get and set the source for the GMAC
reference clock from DT for different GMAC instances.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:30:38 -05:00
Tony Han
62732e57e0 drivers: net: sam_gmac: update PHY connection type for multi instances
Add variable "phy_conn_type" to get and use the phy_connection_type from
DT for different GMAC instances.
Update the judgement on phy_connection_type for multi instances support.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:30:38 -05:00
Tony Han
e61c5c0ed1 drivers: net: sam_gmac: update macros for multi GMAC instances support
Change the driver from support 1 instance to support multi instances.

Changes includes:
 - irq_config()
 - config & data definitions
 - ETH_NET_DEVICE_DT_INST_DEFINE
 - PTP content / init / DEVICE_DEFINE

Limitations:
 - generate_mac() to be updated for supporting multi instances.
 - the configurations in Kconfig.sam_gmac are used for all instances.

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:30:38 -05:00
Tony Han
fb77401b5c drivers: net: sam_gmac: add var num_queues to config, update LOG info
Changes includes:
 - add the variable for num_queues to eth_sam_dev_cfg
 - update LOG with dev->name to distinguish different instances

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:30:38 -05:00
Tony Han
6536d0d687 drivers: net: sam_gmac: centralize the lists used for different queues
The lists optimized includes:
 - RX descriptors list
 - TX descriptors list
 - RX buffer accounting list
 - TX buffer accounting list
 - TX frames accounting list

Signed-off-by: Tony Han <tony.han@microchip.com>
2025-11-13 20:30:38 -05:00
Jamie McCrae
6963092375 lorawan: Move invalid requirement of 2KiB system workqueue
The LoRaWAN subsystem does not require 2KiB of system workqueue,
testing on nrf54l15 flpr (RISCV) CPU (with custom cryptography code)
shows it uses about 700 bytes of the system workqueue, therefore it
is assumed that the real requirement for 2KiB is the software
cryptography features, not the LoRaWAN stack itself, and the
cryptography parts of LoRaWAN can be replaced with alternatives
that do not need this high of a memory requirement, so the
requirement has been moved to the specific Kconfig for software
cryptography instead

Signed-off-by: Jamie McCrae <spam@helper3000.net>
2025-11-13 23:21:49 +02:00
Ibrahim Abdalkader
a310e57942 llext: Fix ARMv8-M MPU memory region alignment
ARMv8-M and newer ARC MPUs use base/limit addressing with 32-byte
granularity and do not require power-of-two sizing. Only ARMv7-M
and older ARC MPUs have this restriction.

Check CONFIG_MPU_REQUIRES_POWER_OF_TWO_ALIGNMENT (set for ARMv7-M,
older ARC) instead of CONFIG_ARM_MPU to avoid wasting memory on
ARMv8-M systems.

Signed-off-by: Ibrahim Abdalkader <i.abdalkader@gmail.com>
2025-11-13 23:21:27 +02:00
Cristian Bulacu
4520215968 net: l2: openthread: border_router: Delete multicast route by iface
This commit makes use of #98464 and deletes a multicast route by
specified interface.

Signed-off-by: Cristian Bulacu <cristian.bulacu@nxp.com>
2025-11-13 23:21:04 +02:00
Daniel Leung
e63f9fb6de tests: kernel/smp: move switching stress test into its own group
This moves the switching stress test into its own group simply
to signify that there is a group for stress testing. And also
rename torture to stress.

Signed-off-by: Daniel Leung <daniel.leung@intel.com>
2025-11-13 23:20:54 +02:00