summaryrefslogtreecommitdiff
path: root/components/drivers/include
AgeCommit message (Collapse)Author
2026-09-07[device][mmcsd] Fix Arm Compiler 5 build compatibility #11690CYFS
2026-08-14[DM/OFW][PCI] Fix address translation and PCI resource enumeration (#11677)GUI
* [DM/OFW][PCI] Fix address translation and PCI resource enumeration Rework OFW address translation to walk nested bus ranges in the correct direction and cache "ranges" and "dma-ranges" independently. Handle PCI three-cell addresses without treating the PCI flags cell as part of the address, and fix CPU-to-DMA and DMA-to-CPU translation across nested buses. Fix PCI BAR sizing and assignment by disabling address decoding during probing, preserving BAR attribute bits, and programming 64-bit BARs correctly. Add device enable and disable helpers so resources and bus mastering are enabled before driver probe. Program bridge memory and prefetch windows while scanning downstream buses, correctly link child buses into the PCI bus hierarchy, and avoid unnecessary PCIe link retraining when the link is already active. Allow host bridges without a device-tree pci-domain property by allocating unique domains dynamically, while preserving explicit domain assignments. Fix MSI and MSI-X IRQ setup, rollback, vector addressing, and affinity selection. Add the Raspberry Pi PCI vendor ID for RP1 and other downstream devices. Signed-off-by: GuEe-GUI <[email protected]> * style: format code with clang-format * style: format complete changed files with clang-format * drivers: pci: address OFW review feedback * style: format PCI and OFW changes for current master --------- Signed-off-by: GuEe-GUI <[email protected]>
2026-08-14[dm][sdio] Update for SDHCI- #11684 #11684GUI
2026-08-12refactor(pic): dispatch NVIC IRQs through trapsRbb666
2026-08-12feat(dm): support OFW on Cortex-M targetsRbb666
Add the ARM NVIC PIC driver, no-MMU I/O mapping, built-in FDT support, and Cortex-M CPU hooks required by the native RT-Thread device model.
2026-08-08[dm][clk] fixup the work flow of CLK (#11673)GUI
* [dm][clk] fixup the work flow of CLK Add RT_CLK_F_SET_RATE_NO_REPARENT so clock providers can preserv the currently selected parent during rate changes. Round and re-read the effective clock rate after parent handling, skip redundant gate toggles and hardware programming when the target is already active, and fix error handling for parent-clock allocation failures. Signed-off-by: GuEe-GUI <[email protected]> * style: format code with clang-format * style: format complete changed files with clang-format --------- Signed-off-by: GuEe-GUI <[email protected]>
2026-08-07[dm][phye] Add Mode/State and MIPI D-PHY timing helper (#11675)GUI
* [dm][phye] Add Mode/State and MIPI D-PHY timing helper Extend the generic PHY framework with cached mode and submode state, avoiding redundant hardware mode changes. Add MIPI D-PHY default timing calculation helpers based on pixel clock or lane high-speed clock, and expose the new API through rtdevice.h. Signed-off-by: GuEe-GUI <[email protected]> * style: format code with clang-format * style: format complete changed files with clang-format --------- Signed-off-by: GuEe-GUI <[email protected]>
2026-08-07[dm][ufs] fixup the ufs supported (#11646)GUI
* [dm][block] add 4K support for EFI partion Signed-off-by: GuEe-GUI <[email protected]> * [dm][ufs] fixup the linkup flow Signed-off-by: GuEe-GUI <[email protected]> * style: format code with clang-format * style: format complete changed files with clang-format * drivers: address UFS review feedback --------- Signed-off-by: GuEe-GUI <[email protected]>
2026-08-07style: format code with clang-formatGuEe-GUI
2026-08-07[dm][graphic] update graphicGuEe-GUI
1. Add FB_ACTIVATE_* cmd 2. Fixup the vsync 3. Update the graphic test Signed-off-by: GuEe-GUI <[email protected]>
2026-08-06[dm][misc] make RT_BITS_PER_LONG custom modeGuEe-GUI
Signed-off-by: GuEe-GUI <[email protected]>
2026-08-03[dm][core] Add rt_bus_probe_device APIGuEe-GUI
Add rt_bus_probe_device() to retry driver matching for a registered but unbound device. Use it when an OFW-created platform device is requested again, while preserving native-bus ownership for I2C, SPI, and other non-platform devices. Also instantiate eligible child platform devices after a parent node is registered. Signed-off-by: GuEe-GUI <[email protected]>
2026-07-27[dm][tee] support Trusted Execution Environment (TEE)GuEe-GUI
Signed-off-by: GuEe-GUI <[email protected]>
2026-07-22[drivers][adc] Fix misleading doxygen for rt_adc_voltagemnikapl954
2026-07-22[drivers][dac] Fix wrong rt_dac_write arguments in doxygen examplemnikapl954
2026-07-07feat[ADC]: 新增 ADC V2 驱动支持 (#11440)wdfk-prog
* feat[ADC V2]: add ADC V2 driver support add ADC V2 core APIs, session state management, and sequence read support add STM32 ADC V2 HAL backend with internal-channel and VREF handling add per-series STM32 ADC V2 default configuration headers wire ADC V2 Kconfig and SConscript integration for components and STM32 BSP drivers keep ADC V2 mutually exclusive with the legacy ADC driver path * feat[ADC V2]: add ADC V2 MSH special channel read support add generic ADC V2 MSH commands for probing, configuring, raw reads, voltage reads, and sequence reads add STM32 ADC V2 backend special commands for VREFINT, temperature sensor, and VBAT reads add STM32 helper APIs for special logical channels, sampling time, resolution, and temperature calculation wire ADC V2 MSH sources through Kconfig and SConscript * feat[ADC V2]: add ADC V2 stream DMA support add ADC V2 stream APIs with latest-frame and FIFO buffering policies wire STM32 ADC V2 to circular DMA stream mode with per-instance Kconfig options extend STM32 ADC config headers and DMA helpers for stream DMA configuration add FinSH stream commands for start, read, cancel, and stop operations handle Cortex-M7 cache-safe DMA buffers for STM32 stream sampling * feat[ADC V2]: add timer trigger support for ADC V2 streams add ADC V2 trigger configuration, validation, and lifecycle coordination add timer update trigger support through clock timer TRGO controls map STM32 ADC V2 timer update triggers to HAL external trigger selector fields add Kconfig, SConscript, and MSH entries for ADC trigger setup and inspection * feat[ADCV2]: add timer and comparator trigger selectors add ADC V2 timer compare and analog comparator trigger configuration support extend clock timer trigger config with compare event and channel fields wire STM32 ADC external trigger selector mappings for TIM update, TIM compare, and COMP output add FinSH trigger_set commands and Kconfig switches for timer and comparator trigger backends * fix[ADC V2]: resolve ADC V1 compatibility Kconfig loop * ci[ADC V2][stm32]: add ADC v2 peripheral config for stm32f407-rt-spark BSP
2026-06-29[dm][ptp] support Precision Time Protocol (PTP) IEEE 1588 clockGuEe-GUI
Signed-off-by: GuEe-GUI <[email protected]>
2026-06-27feat[serial][v2]: add RX DMA event mode controlwdfk-prog
add serial v2 RX DMA event mode configuration for DMA-enabled builds support STM32 UART RX DMA half/full transfer interrupt policy selection validate RX DMA event mode before applying serial configuration restore serial configuration when backend configure fails
2026-06-23[dm][dvfs] support Dynamic Voltage and Frequency Scaling (DVFS)GuEe-GUI
1. Support DVFS and finsh cmd, there are 6 governors: - conservative - freedom - performance - powersave - schedutil 2. Support DVFS for SCMI. 3. Port the Cooling device for DVFS. 4. Port the PM with DVFS. Signed-off-by: GuEe-GUI <[email protected]>
2026-06-16doc: add Doxygen comments to DMA driver subsystem #11477Guorui Li
2026-06-15[dm][virtio] support virtio dmGuEe-GUI
1. version for v1.2 2. support packed queue 1. support MMIO/PCI over bus 2. new virtio queue api with dma/cpu sync 3. update for virtio device drivers: - net - block - console - input - gpu 4. new virtio device drivers: - 9p - crypto - rng - scmi - scsi Signed-off-by: GuEe-GUI <[email protected]>
2026-06-08[bsp][zynqmp-a53-dfzu2eg] enable full dmGuEe-GUI
This is a builtin fdt example BSP Signed-off-by: GuEe-GUI <[email protected]>
2026-05-11[dm][rpmsg] support Remote Processor Messaging (RPMSG)GuEe-GUI
Signed-off-by: GuEe-GUI <[email protected]>
2026-05-04[dm][ufs] support Universal Flash Storage (UFS)GuEe-GUI
Support UFS over PCI, too. Signed-off-by: GuEe-GUI <[email protected]>
2026-04-07[drivers][power] add CLI helpers and current control support#11301Evlers
- add msh commands to inspect/operate power supplies and regulators - expose snapshot/name helpers so shells and daemons can enumerate nodes safely - add current support for regulator - relax DM-only constraints in power/regulator stacks so basic builds work without DM/OFW - solve the problem of enabling counting for regulator
2026-03-16fix[stm32][spi]: add usage_freq and compute transfer timeout by frequencywdfk-prog
2026-03-12refactor(core): Move __rt_fls to kservicewdfk-prog
2026-03-12feat[i2c]: add bus configuration and max-hz controlwdfk-prog
2026-02-25fix(drivers/ipc): correct rt_ringbuffer_peek to not consume dataShaun
2026-02-03docs(can): improve dev_can.h docs for batched RX examplewdfk-prog
2026-02-01sdio: fix missing card status polling after CMD6 in eMMC DDR mode switchDamon
2026-01-31[components][clock_time] Refactor time subsystem around clock_time (#11111)Bernard Xiong
* [components][clock_time] Refactor time subsystem around clock_time Introduce the clock_time core with clock source/event separation, high-resolution scheduling, and boot-time helpers, plus clock_timer adapters for timer peripherals. Remove legacy ktime/cputime/hwtimer implementations and migrate arch and BSP time paths to the new subsystem while keeping POSIX time integration functional. Update drivers, Kconfig/SConscript wiring, documentation, and tests; add clock_time overview docs and align naming to clock_boottime/clock_hrtimer/clock_timer. * [components][clock_time] Use BSP-provided clock timer frequency on riscv64 * [risc-v] Use runtime clock timer frequency for tick and delays * [bsp] Add clock timer frequency hooks for riscv64 boards * [bsp] Update Renesas RA driver doc clock_timer link * [bsp] Sync zynqmp-r5-axu4ev rtconfig after config refresh * [bsp][rk3500] Update rk3500 clock configuration * [bsp][hpmicro] Add rt_hw_us_delay hook and update board delays * [bsp][stm32l496-st-nucleo] enable clock_time for hwtimer sample in ci * [bsp][hpmicro] Fix rtconfig include scope for hpm6750evk Move rtconfig.h include outside the ENET_MULTIPLE_PORT guard for hpm6750evk and hpm6750evk2 so configuration macros are available regardless of ENET settings. * [bsp][raspi3] select clock time for systimer * [bsp][hpm5300evk] Trim trailing blank line * [bsp][hpm5301evklite] Trim trailing blank line * [bsp][hpm5e00evk] Trim trailing blank line * [bsp][hpm6200evk] Trim trailing blank line * [bsp][hpm6300evk] Trim trailing blank line * [bsp][hpm6750evk] Trim trailing blank line * [bsp][hpm6750evk2] Trim trailing blank line * [bsp][hpm6750evkmini] Trim trailing blank line * [bsp][hpm6800evk] Trim trailing blank line * [bsp][hpm6e00evk] Trim trailing blank line * [bsp][nxp] switch lpc178x to gcc and remove mcx timer source * [bsp][stm32] fix the CONFIG_RT_USING_CLOCK_TIME issue. * [docs][clock_time] add clock time documentation * [docs][clock_time] Update clock time subsystem documentation - Update device driver index to use correct page reference - Clarify upper layer responsibilities in architecture overview - Update README to describe POSIX/libc, Soft RTC, and device driver usage - Refine architecture diagram with improved layout and color scheme - Remove obsolete clock_timer.md file * [kernel][utest] Trim trailing space * [clock_time] Fix hrtimer wrap handling * [clock_time] fix the static rt_inline issue * [clock_time] fix the rt_clock_hrtimer_control result issue
2025-12-26[sdio][dm] update for DM (#11078)GUI
* [sdio][dm] import Kconfig for DM Signed-off-by: GuEe-GUI <[email protected]> * [sdio] fixup IRQ and mmcsd threads' stack size default Signed-off-by: GuEe-GUI <[email protected]> * [sdio][dm] Support DM mode 1. Support features read by DM. 2. Support regulator API in drivers. 3. Support send tuning option CMD. 4. Replace `switch_uhs_voltage` by `signal_voltage_switch`. Signed-off-by: GuEe-GUI <[email protected]> * [dm][sdhci] Cleanup the SDHCI Signed-off-by: GuEe-GUI <[email protected]> * [sdio][dm] add new SDIO/SDHCI drivers 1. SDHCI support on PCI bus 2. Synopsys DesignWare MMC Family(MMIO/PCI) Signed-off-by: GuEe-GUI <[email protected]> --------- Signed-off-by: GuEe-GUI <[email protected]>
2025-12-22[dm][include] fixup loss' headerGuEe-GUI
Signed-off-by: GuEe-GUI <[email protected]>
2025-12-19[dm][firmware][scmi] support ARM-SCMI interface #11069GUI
2025-12-17[dm][power] add power reset and supply frameworkGuEe-GUI
1. Board level reset or poweroff 2. Power supply class Signed-off-by: GuEe-GUI <[email protected]>
2025-12-16[dm][scsi] Add parallel_io option for SCSI hostGuEe-GUI
Some SCSI supported parallel_io = RT_TRUE, like UFS. Signed-off-by: GuEe-GUI <[email protected]>
2025-12-16[dm][core] add common machine power interfaceGuEe-GUI
Signed-off-by: GuEe-GUI <[email protected]>
2025-12-15[dm][graphic] support dm modeGuEe-GUI
1. Add backlight framework for graphic. 2. Add framebuffer and plane, power, EDID for graphic framework 3. Add boot logo render for graphic 4. Update lcd.h Signed-off-by: GuEe-GUI <[email protected]>
2025-12-13[dm][hwcache] support hwcache (#11049)GUI
Some ARCH not has std cache ops, such as RISC-V Signed-off-by: GuEe-GUI <[email protected]>
2025-12-12[dm][clk] refactoring the CLK frameworkGuEe-GUI
The old CLK is can't link all hardware clock cell in system that the API of layout such as 'set_parent' can't work as expected. Some hareware clock cell need some flags to prevent some dangerous behaviors, eg: When a clock cell is link to the PMU, the SoC will power-down if the cell is disable. The new CLK can do it, and make the CLK drivers implemented easier from TRM/DataSheet. Signed-off-by: GuEe-GUI <[email protected]>
2025-12-11[dm][hwspinlock] support hwspinlockGuEe-GUI
Hardware spinlock modules provide hardware assistance for synchronization and mutual exclusion between heterogeneous processors and those not operating under a single, shared operating system. Signed-off-by: GuEe-GUI <[email protected]>
2025-12-10[dm][nvmem] support nvmemGuEe-GUI
Support for NVMEM(Non Volatile Memory) devices like EEPROM, EFUSES... Signed-off-by: GuEe-GUI <[email protected]>
2025-12-10[dm][input] support input #11031GUI
2025-12-10[dm][pinctrl] new interface for 'pin_gpio_request'GuEe-GUI
Some GPIO should apply GPIO mode by pinctrl, add `pin_ctrl_gpio_request` for GPIO driver to apply it auto. Signed-off-by: GuEe-GUI <[email protected]>
2025-12-09[dm][core] add new API for DMGuEe-GUI
1. rt_dm_dev_is_big_endian 2. rt_dm_dev_get_prop_fuzzy_name Signed-off-by: GuEe-GUI <[email protected]>
2025-12-09[dm][core] cleanup formatGuEe-GUI
Signed-off-by: GuEe-GUI <[email protected]>
2025-12-09[dm][core] add common stack size for DMGuEe-GUI
DM driver is public, they don't know the size of the thread stack default. Signed-off-by: GuEe-GUI <[email protected]>
2025-12-09[Driver][MISC] Update ADC/PWM (#11003)GUI
* [DM][MISC] Make Kconfig(ADC/PWM) import for DM * [Driver][MISC][ADC] Fixup ADC 1. Fixup error no. 2. Fixup type of control for args. 3. Fixup value no init. * [Driver][MISC][PWM] Enable `rt_pwm_get` API Signed-off-by: GuEe-GUI <[email protected]>
2025-12-04[Drivers/phy] Fixup header include for v2GuEe-GUI
Signed-off-by: GuEe-GUI <[email protected]>