182 Commits

Author SHA1 Message Date
lhxj
7641ef6885 [drivers] Fix OFW bus conflict and prevent duplicate device creation
Some checks failed
RT-Thread BSP Static Build Check / 🔍 Summary of Git Diff Changes (push) Has been cancelled
RT-Thread BSP Static Build Check / ${{ matrix.legs.RTT_BSP }} (push) Has been cancelled
RT-Thread BSP Static Build Check / collect-artifacts (push) Has been cancelled
pkgs_test / change (push) Has been cancelled
utest_auto_run / A9 :components/dfs.cfg (push) Has been cancelled
utest_auto_run / A9 :components/lwip.cfg (push) Has been cancelled
utest_auto_run / A9 :components/netdev.cfg (push) Has been cancelled
utest_auto_run / A9 :components/sal.cfg (push) Has been cancelled
utest_auto_run / A9 :cpp11/cpp11.cfg (push) Has been cancelled
utest_auto_run / AARCH64-rtsmart :default.cfg (push) Has been cancelled
utest_auto_run / A9-rtsmart :default.cfg (push) Has been cancelled
utest_auto_run / RISCV-rtsmart :default.cfg (push) Has been cancelled
utest_auto_run / XUANTIE-rtsmart :default.cfg (push) Has been cancelled
utest_auto_run / AARCH64 :default.cfg (push) Has been cancelled
utest_auto_run / AARCH64-smp :default.cfg (push) Has been cancelled
utest_auto_run / A9 :default.cfg (push) Has been cancelled
utest_auto_run / A9-smp :default.cfg (push) Has been cancelled
utest_auto_run / RISCV :default.cfg (push) Has been cancelled
utest_auto_run / RISCV-smp :default.cfg (push) Has been cancelled
utest_auto_run / A9 :kernel/atomic_c11.cfg (push) Has been cancelled
utest_auto_run / RISCV :kernel/atomic_c11.cfg (push) Has been cancelled
utest_auto_run / A9 :kernel/ipc.cfg (push) Has been cancelled
utest_auto_run / A9 :kernel/kernel_basic.cfg (push) Has been cancelled
utest_auto_run / A9 :kernel/mem.cfg (push) Has been cancelled
Weekly CI Scheduler / Trigger and Monitor CIs (push) Has been cancelled
Weekly CI Scheduler / Create Discussion Report (push) Has been cancelled
Problem:
When enumerating device tree nodes, platform bus and native buses (I2C/SPI)
may create duplicate devices for the same OFW node, causing cross-bus conflicts.
This triggers assertion failure '(dev->bus != new_bus)' in
rt_bus_reload_driver_device() during boot on minimal DM-enabled systems.

Root Cause:
1. Platform bus tries to reload devices that already belong to other buses
   by calling rt_bus_reload_driver_device(dev->bus, dev), which violates
   the API contract (requires dev->bus != new_bus).
2. Native buses (I2C/SPI) do not mark OFW nodes as occupied, so platform
   bus creates duplicate platform devices for I2C/SPI client nodes.

Solution:
1. components/drivers/core/platform_ofw.c: Return RT_EOK when np->dev exists,
   letting the native bus handle device lifecycle instead of cross-bus reload.
2. components/drivers/i2c/dev_i2c_bus.c: Mark i2c_client_np->dev during scan
   to prevent platform bus from duplicating I2C client devices.
3. components/drivers/spi/dev_spi_bus.c: Mark spi_dev_np->dev during scan
   to prevent platform bus from duplicating SPI devices.

Tested on Spacemit K1 RISC-V platform with minimal DM configuration.

Signed-off-by: lhxj <2743257167@qq.com>
2026-01-20 22:05:28 +08:00
Runcheng Lu
17d026c6cc [fix] drivers: spi: refactor SPI bit operations into independent configuration
Some checks failed
RT-Thread BSP Static Build Check / 🔍 Summary of Git Diff Changes (push) Has been cancelled
RT-Thread BSP Static Build Check / ${{ matrix.legs.RTT_BSP }} (push) Has been cancelled
RT-Thread BSP Static Build Check / collect-artifacts (push) Has been cancelled
pkgs_test / change (push) Has been cancelled
utest_auto_run / A9 :components/dfs.cfg (push) Has been cancelled
utest_auto_run / A9 :components/lwip.cfg (push) Has been cancelled
utest_auto_run / A9 :components/netdev.cfg (push) Has been cancelled
utest_auto_run / A9 :components/sal.cfg (push) Has been cancelled
utest_auto_run / A9 :cpp11/cpp11.cfg (push) Has been cancelled
utest_auto_run / AARCH64-rtsmart :default.cfg (push) Has been cancelled
utest_auto_run / A9-rtsmart :default.cfg (push) Has been cancelled
utest_auto_run / RISCV-rtsmart :default.cfg (push) Has been cancelled
utest_auto_run / XUANTIE-rtsmart :default.cfg (push) Has been cancelled
utest_auto_run / AARCH64 :default.cfg (push) Has been cancelled
utest_auto_run / AARCH64-smp :default.cfg (push) Has been cancelled
utest_auto_run / A9 :default.cfg (push) Has been cancelled
utest_auto_run / A9-smp :default.cfg (push) Has been cancelled
utest_auto_run / RISCV :default.cfg (push) Has been cancelled
utest_auto_run / RISCV-smp :default.cfg (push) Has been cancelled
utest_auto_run / A9 :kernel/atomic_c11.cfg (push) Has been cancelled
utest_auto_run / RISCV :kernel/atomic_c11.cfg (push) Has been cancelled
utest_auto_run / A9 :kernel/ipc.cfg (push) Has been cancelled
utest_auto_run / A9 :kernel/kernel_basic.cfg (push) Has been cancelled
utest_auto_run / A9 :kernel/mem.cfg (push) Has been cancelled
ToolsCI / Tools (push) Has been cancelled
Weekly CI Scheduler / Trigger and Monitor CIs (push) Has been cancelled
Weekly CI Scheduler / Create Discussion Report (push) Has been cancelled
- Add RT_USING_SPI_BITOPS as a separate configurable option
- Make RT_USING_SOFT_SPI depend on RT_USING_SPI_BITOPS
- Adjust build order in SConscript for proper com

Signed-off-by: Runcheng Lu <runcheng.lu@hpmicro.com>
2026-01-04 17:04:34 +08:00
GuEe-GUI
d79475e02c [DM][SPI] Support SFUD for DM
Some checks failed
ToolsCI / Tools (push) Has been cancelled
RT-Thread BSP Static Build Check / 🔍 Summary of Git Diff Changes (push) Has been cancelled
RT-Thread BSP Static Build Check / ${{ matrix.legs.RTT_BSP }} (push) Has been cancelled
RT-Thread BSP Static Build Check / collect-artifacts (push) Has been cancelled
doc_doxygen / doxygen_doc generate (push) Has been cancelled
doc_doxygen / deploy (push) Has been cancelled
pkgs_test / change (push) Has been cancelled
utest_auto_run / A9 :components/dfs.cfg (push) Has been cancelled
utest_auto_run / A9 :components/lwip.cfg (push) Has been cancelled
utest_auto_run / A9 :components/netdev.cfg (push) Has been cancelled
utest_auto_run / A9 :components/sal.cfg (push) Has been cancelled
utest_auto_run / A9 :cpp11/cpp11.cfg (push) Has been cancelled
utest_auto_run / AARCH64-rtsmart :default.cfg (push) Has been cancelled
utest_auto_run / A9-rtsmart :default.cfg (push) Has been cancelled
utest_auto_run / RISCV-rtsmart :default.cfg (push) Has been cancelled
utest_auto_run / XUANTIE-rtsmart :default.cfg (push) Has been cancelled
utest_auto_run / AARCH64 :default.cfg (push) Has been cancelled
utest_auto_run / A9 :default.cfg (push) Has been cancelled
utest_auto_run / A9-smp :default.cfg (push) Has been cancelled
utest_auto_run / RISCV :default.cfg (push) Has been cancelled
utest_auto_run / A9 :kernel/atomic_c11.cfg (push) Has been cancelled
utest_auto_run / RISCV :kernel/atomic_c11.cfg (push) Has been cancelled
utest_auto_run / A9 :kernel/ipc.cfg (push) Has been cancelled
utest_auto_run / A9 :kernel/kernel_basic.cfg (push) Has been cancelled
utest_auto_run / A9 :kernel/mem.cfg (push) Has been cancelled
Weekly CI Scheduler / Trigger and Monitor CIs (push) Has been cancelled
Weekly CI Scheduler / Create Discussion Report (push) Has been cancelled
manual_scons_dist_except_STM32_all / CME_M7 (push) Has been cancelled
manual_scons_dist_except_STM32_all / ESP32_C3 (push) Has been cancelled
manual_scons_dist_except_STM32_all / Infineon/psoc6-cy8ckit-062-BLE (push) Has been cancelled
manual_scons_dist_except_STM32_all / Infineon/psoc6-cy8ckit-062-WIFI-BT (push) Has been cancelled
manual_scons_dist_except_STM32_all / Infineon/psoc6-cy8ckit-062S2-43012 (push) Has been cancelled
manual_scons_dist_except_STM32_all / Infineon/psoc6-cy8ckit-062s4 (push) Has been cancelled
manual_scons_dist_except_STM32_all / Infineon/psoc6-cy8cproto-062S3-4343W (push) Has been cancelled
manual_scons_dist_except_STM32_all / Infineon/psoc6-evaluationkit-062S2 (push) Has been cancelled
manual_scons_dist_except_STM32_all / Vango/v85xx (push) Has been cancelled
manual_scons_dist_except_STM32_all / Vango/v85xxp (push) Has been cancelled
manual_scons_dist_except_STM32_all / acm32/acm32f0x0-nucleo (push) Has been cancelled
manual_scons_dist_except_STM32_all / acm32/acm32f4xx-nucleo (push) Has been cancelled
manual_scons_dist_except_STM32_all / airm2m/air32f103 (push) Has been cancelled
manual_scons_dist_except_STM32_all / allwinner_tina (push) Has been cancelled
manual_scons_dist_except_STM32_all / apm32/apm32e103ze-evalboard (push) Has been cancelled
manual_scons_dist_except_STM32_all / apm32/apm32e103ze-tinyboard (push) Has been cancelled
manual_scons_dist_except_STM32_all / apm32/apm32f030r8-miniboard (push) Has been cancelled
manual_scons_dist_except_STM32_all / apm32/apm32f051r8-evalboard (push) Has been cancelled
manual_scons_dist_except_STM32_all / apm32/apm32f072vb-miniboard (push) Has been cancelled
manual_scons_dist_except_STM32_all / apm32/apm32f091vc-miniboard (push) Has been cancelled
manual_scons_dist_except_STM32_all / apm32/apm32f103vb-miniboard (push) Has been cancelled
manual_scons_dist_except_STM32_all / apm32/apm32f103xe-minibroard (push) Has been cancelled
manual_scons_dist_except_STM32_all / apm32/apm32f107vc-evalboard (push) Has been cancelled
manual_scons_dist_except_STM32_all / apm32/apm32f407ig-minibroard (push) Has been cancelled
manual_scons_dist_except_STM32_all / apm32/apm32f407zg-evalboard (push) Has been cancelled
manual_scons_dist_except_STM32_all / apm32/apm32s103vb-miniboard (push) Has been cancelled
manual_scons_dist_except_STM32_all / apollo2 (push) Has been cancelled
manual_scons_dist_except_STM32_all / asm9260t (push) Has been cancelled
manual_scons_dist_except_STM32_all / at32/at32f403a-start (push) Has been cancelled
manual_scons_dist_except_STM32_all / at32/at32f407-start (push) Has been cancelled
manual_scons_dist_except_STM32_all / at32/at32f413-start (push) Has been cancelled
manual_scons_dist_except_STM32_all / at32/at32f415-start (push) Has been cancelled
manual_scons_dist_except_STM32_all / at32/at32f421-start (push) Has been cancelled
manual_scons_dist_except_STM32_all / at32/at32f423-start (push) Has been cancelled
manual_scons_dist_except_STM32_all / at32/at32f425-start (push) Has been cancelled
manual_scons_dist_except_STM32_all / at32/at32f435-start (push) Has been cancelled
manual_scons_dist_except_STM32_all / at32/at32f437-start (push) Has been cancelled
manual_scons_dist_except_STM32_all / at91/at91sam9260 (push) Has been cancelled
manual_scons_dist_except_STM32_all / at91/at91sam9g45 (push) Has been cancelled
manual_scons_dist_except_STM32_all / beaglebone (push) Has been cancelled
manual_scons_dist_except_STM32_all / bluetrum/ab32vg1-ab-prougen (push) Has been cancelled
manual_scons_dist_except_STM32_all / bm3803 (push) Has been cancelled
manual_scons_dist_except_STM32_all / bouffalo_lab/bl60x (push) Has been cancelled
manual_scons_dist_except_STM32_all / bouffalo_lab/bl70x (push) Has been cancelled
manual_scons_dist_except_STM32_all / dm365 (push) Has been cancelled
manual_scons_dist_except_STM32_all / efm32 (push) Has been cancelled
manual_scons_dist_except_STM32_all / essemi/es32f0654 (push) Has been cancelled
manual_scons_dist_except_STM32_all / essemi/es32f365x (push) Has been cancelled
manual_scons_dist_except_STM32_all / essemi/es32f369x (push) Has been cancelled
manual_scons_dist_except_STM32_all / essemi/es32vf2264 (push) Has been cancelled
manual_scons_dist_except_STM32_all / fm33lc026 (push) Has been cancelled
manual_scons_dist_except_STM32_all / frdm-k64f (push) Has been cancelled
manual_scons_dist_except_STM32_all / ft32/ft32f072xb-starter (push) Has been cancelled
manual_scons_dist_except_STM32_all / fujitsu/mb9x/mb9bf500r (push) Has been cancelled
manual_scons_dist_except_STM32_all / fujitsu/mb9x/mb9bf506r (push) Has been cancelled
manual_scons_dist_except_STM32_all / fujitsu/mb9x/mb9bf568r (push) Has been cancelled
manual_scons_dist_except_STM32_all / fujitsu/mb9x/mb9bf618s (push) Has been cancelled
manual_scons_dist_except_STM32_all / gd32/arm/gd32103c-eval (push) Has been cancelled
manual_scons_dist_except_STM32_all / gd32/arm/gd32105c-eval (push) Has been cancelled
manual_scons_dist_except_STM32_all / gd32/arm/gd32105r-start (push) Has been cancelled
manual_scons_dist_except_STM32_all / gd32/arm/gd32107c-eval (push) Has been cancelled
manual_scons_dist_except_STM32_all / gd32/arm/gd32205r-start (push) Has been cancelled
manual_scons_dist_except_STM32_all / gd32/arm/gd32207i-eval (push) Has been cancelled
manual_scons_dist_except_STM32_all / gd32/arm/gd32303c-start (push) Has been cancelled
manual_scons_dist_except_STM32_all / gd32/arm/gd32303e-eval (push) Has been cancelled
manual_scons_dist_except_STM32_all / gd32/arm/gd32305r-start (push) Has been cancelled
manual_scons_dist_except_STM32_all / gd32/arm/gd32307e-start (push) Has been cancelled
manual_scons_dist_except_STM32_all / gd32/arm/gd32407v-start (push) Has been cancelled
manual_scons_dist_except_STM32_all / gd32/arm/gd32450z-eval (push) Has been cancelled
manual_scons_dist_except_STM32_all / gd32/arm/gd32470z-lckfb (push) Has been cancelled
manual_scons_dist_except_STM32_all / gd32/risc-v/gd32vf103r-start (push) Has been cancelled
manual_scons_dist_except_STM32_all / gd32/risc-v/gd32vf103v-eval (push) Has been cancelled
manual_scons_dist_except_STM32_all / hc32/ev_hc32f460_lqfp100_v2 (push) Has been cancelled
manual_scons_dist_except_STM32_all / hc32/ev_hc32f4a0_lqfp176 (push) Has been cancelled
manual_scons_dist_except_STM32_all / hc32l136 (push) Has been cancelled
manual_scons_dist_except_STM32_all / hc32l196 (push) Has been cancelled
manual_scons_dist_except_STM32_all / hifive1 (push) Has been cancelled
manual_scons_dist_except_STM32_all / hpmicro/hpm6750evk (push) Has been cancelled
manual_scons_dist_except_STM32_all / hpmicro/hpm6750evkmini (push) Has been cancelled
manual_scons_dist_except_STM32_all / ht32/ht32f12366 (push) Has been cancelled
manual_scons_dist_except_STM32_all / ht32/ht32f52352 (push) Has been cancelled
manual_scons_dist_except_STM32_all / imx6sx/cortex-a9 (push) Has been cancelled
manual_scons_dist_except_STM32_all / imx6ul (push) Has been cancelled
manual_scons_dist_except_STM32_all / imxrt/imxrt1021-nxp-evk (push) Has been cancelled
manual_scons_dist_except_STM32_all / imxrt/imxrt1052-atk-commander (push) Has been cancelled
manual_scons_dist_except_STM32_all / imxrt/imxrt1052-fire-pro (push) Has been cancelled
manual_scons_dist_except_STM32_all / imxrt/imxrt1052-nxp-evk (push) Has been cancelled
manual_scons_dist_except_STM32_all / imxrt/imxrt1052-seeed-ArchMix (push) Has been cancelled
manual_scons_dist_except_STM32_all / imxrt/imxrt1060-nxp-evk (push) Has been cancelled
manual_scons_dist_except_STM32_all / imxrt/imxrt1061-forlinx-OK1061-S (push) Has been cancelled
manual_scons_dist_except_STM32_all / imxrt/imxrt1064-nxp-evk (push) Has been cancelled
manual_scons_dist_except_STM32_all / imxrt/imxrt1170-nxp-evk/m7 (push) Has been cancelled
manual_scons_dist_except_STM32_all / k210 (push) Has been cancelled
manual_scons_dist_except_STM32_all / lm3s8962 (push) Has been cancelled
manual_scons_dist_except_STM32_all / lm3s9b9x (push) Has been cancelled
manual_scons_dist_except_STM32_all / lm4f232 (push) Has been cancelled
manual_scons_dist_except_STM32_all / loongson/ls1bdev (push) Has been cancelled
manual_scons_dist_except_STM32_all / loongson/ls1cdev (push) Has been cancelled
manual_scons_dist_except_STM32_all / loongson/ls2kdev (push) Has been cancelled
manual_scons_dist_except_STM32_all / lpc1114 (push) Has been cancelled
manual_scons_dist_except_STM32_all / lpc176x (push) Has been cancelled
manual_scons_dist_except_STM32_all / lpc178x (push) Has been cancelled
manual_scons_dist_except_STM32_all / lpc2148 (push) Has been cancelled
manual_scons_dist_except_STM32_all / lpc2478 (push) Has been cancelled
manual_scons_dist_except_STM32_all / lpc408x (push) Has been cancelled
manual_scons_dist_except_STM32_all / lpc5410x (push) Has been cancelled
manual_scons_dist_except_STM32_all / lpc54114-lite (push) Has been cancelled
manual_scons_dist_except_STM32_all / lpc54608-LPCXpresso (push) Has been cancelled
manual_scons_dist_except_STM32_all / lpc55sxx/lpc55s06_nxp_evk (push) Has been cancelled
manual_scons_dist_except_STM32_all / lpc55sxx/lpc55s16_nxp_evk (push) Has been cancelled
manual_scons_dist_except_STM32_all / lpc55sxx/lpc55s28_nxp_evk (push) Has been cancelled
manual_scons_dist_except_STM32_all / lpc55sxx/lpc55s36_nxp_evk (push) Has been cancelled
manual_scons_dist_except_STM32_all / lpc55sxx/lpc55s69_nxp_evk (push) Has been cancelled
manual_scons_dist_except_STM32_all / lpc824 (push) Has been cancelled
manual_scons_dist_except_STM32_all / maxim/max32660-evsys (push) Has been cancelled
manual_scons_dist_except_STM32_all / mcx/mcxa/frdm-mcxa153 (push) Has been cancelled
manual_scons_dist_except_STM32_all / mcx/mcxa/frdm-mcxn947 (push) Has been cancelled
manual_scons_dist_except_STM32_all / mcx/mcxc/frdm-mcxc444 (push) Has been cancelled
manual_scons_dist_except_STM32_all / mcx/mcxn/frdm-mcxn236 (push) Has been cancelled
manual_scons_dist_except_STM32_all / microchip/samc21 (push) Has been cancelled
manual_scons_dist_except_STM32_all / microchip/same54 (push) Has been cancelled
manual_scons_dist_except_STM32_all / microchip/same70 (push) Has been cancelled
manual_scons_dist_except_STM32_all / microchip/saml10 (push) Has been cancelled
manual_scons_dist_except_STM32_all / mini2440 (push) Has been cancelled
manual_scons_dist_except_STM32_all / mipssim (push) Has been cancelled
manual_scons_dist_except_STM32_all / mm32/mm32f3270-100ask-pitaya (push) Has been cancelled
manual_scons_dist_except_STM32_all / mm32f103x (push) Has been cancelled
manual_scons_dist_except_STM32_all / mm32l07x (push) Has been cancelled
manual_scons_dist_except_STM32_all / mm32l3xx (push) Has been cancelled
manual_scons_dist_except_STM32_all / n32/n32g43xcl-stb (push) Has been cancelled
manual_scons_dist_except_STM32_all / n32/n32g457qel-stb (push) Has been cancelled
manual_scons_dist_except_STM32_all / n32/n32g45xcl-stb (push) Has been cancelled
manual_scons_dist_except_STM32_all / n32/n32g45xml-stb (push) Has been cancelled
manual_scons_dist_except_STM32_all / n32/n32g45xrl-stb (push) Has been cancelled
manual_scons_dist_except_STM32_all / n32/n32g45xvl-stb (push) Has been cancelled
manual_scons_dist_except_STM32_all / n32/n32g4frml-stb (push) Has been cancelled
manual_scons_dist_except_STM32_all / n32/n32l40xcl-stb (push) Has been cancelled
manual_scons_dist_except_STM32_all / n32/n32l436-evb (push) Has been cancelled
manual_scons_dist_except_STM32_all / n32/n32l43xml-stb (push) Has been cancelled
manual_scons_dist_except_STM32_all / n32/n32l43xrl-stb (push) Has been cancelled
manual_scons_dist_except_STM32_all / n32/n32wb45xl-evb (push) Has been cancelled
manual_scons_dist_except_STM32_all / n32g452xx/n32g452xx-mini-system (push) Has been cancelled
manual_scons_dist_except_STM32_all / nrf5x/nrf51822 (push) Has been cancelled
manual_scons_dist_except_STM32_all / nrf5x/nrf52832 (push) Has been cancelled
manual_scons_dist_except_STM32_all / nrf5x/nrf52833 (push) Has been cancelled
manual_scons_dist_except_STM32_all / nrf5x/nrf52840 (push) Has been cancelled
manual_scons_dist_except_STM32_all / nrf5x/nrf5340 (push) Has been cancelled
manual_scons_dist_except_STM32_all / nuclei/gd32vf103_rvstar (push) Has been cancelled
manual_scons_dist_except_STM32_all / nuvoton/ma35-rtp (push) Has been cancelled
manual_scons_dist_except_STM32_all / nuvoton/nk-980iot (push) Has been cancelled
manual_scons_dist_except_STM32_all / nuvoton/nk-n9h30 (push) Has been cancelled
manual_scons_dist_except_STM32_all / nuvoton/nk-rtu980 (push) Has been cancelled
manual_scons_dist_except_STM32_all / nuvoton/numaker-hmi-ma35d1 (push) Has been cancelled
manual_scons_dist_except_STM32_all / nuvoton/numaker-iot-m467 (push) Has been cancelled
manual_scons_dist_except_STM32_all / nuvoton/numaker-iot-m487 (push) Has been cancelled
manual_scons_dist_except_STM32_all / nuvoton/numaker-iot-ma35d1 (push) Has been cancelled
manual_scons_dist_except_STM32_all / nuvoton/numaker-m032ki (push) Has been cancelled
manual_scons_dist_except_STM32_all / nuvoton/numaker-m2354 (push) Has been cancelled
manual_scons_dist_except_STM32_all / nuvoton/numaker-m467hj (push) Has been cancelled
manual_scons_dist_except_STM32_all / nuvoton/numaker-pfm-m487 (push) Has been cancelled
manual_scons_dist_except_STM32_all / phytium/aarch64 (push) Has been cancelled
manual_scons_dist_except_STM32_all / qemu-vexpress-a9 (push) Has been cancelled
manual_scons_dist_except_STM32_all / qemu-virt64-aarch64 (push) Has been cancelled
manual_scons_dist_except_STM32_all / qemu-virt64-riscv (push) Has been cancelled
manual_scons_dist_except_STM32_all / raspberry-pi/raspi3-32 (push) Has been cancelled
manual_scons_dist_except_STM32_all / raspberry-pi/raspi3-64 (push) Has been cancelled
manual_scons_dist_except_STM32_all / raspberry-pi/raspi4-32 (push) Has been cancelled
manual_scons_dist_except_STM32_all / raspberry-pi/raspi4-64 (push) Has been cancelled
manual_scons_dist_except_STM32_all / raspberry-pico (push) Has been cancelled
manual_scons_dist_except_STM32_all / renesas/ebf_qi_min_6m5 (push) Has been cancelled
manual_scons_dist_except_STM32_all / renesas/ra2l1-cpk (push) Has been cancelled
manual_scons_dist_except_STM32_all / renesas/ra4m2-eco (push) Has been cancelled
manual_scons_dist_except_STM32_all / renesas/ra6m3-ek (push) Has been cancelled
manual_scons_dist_except_STM32_all / renesas/ra6m3-hmi-board (push) Has been cancelled
manual_scons_dist_except_STM32_all / renesas/ra6m4-cpk (push) Has been cancelled
manual_scons_dist_except_STM32_all / renesas/ra6m4-iot (push) Has been cancelled
manual_scons_dist_except_STM32_all / renesas/ra8d1-ek (push) Has been cancelled
manual_scons_dist_except_STM32_all / renesas/ra8m1-ek (push) Has been cancelled
manual_scons_dist_except_STM32_all / rm48x50 (push) Has been cancelled
manual_scons_dist_except_STM32_all / rockchip/rk3568 (push) Has been cancelled
manual_scons_dist_except_STM32_all / sam7x (push) Has been cancelled
manual_scons_dist_except_STM32_all / simulator (push) Has been cancelled
manual_scons_dist_except_STM32_all / smartfusion2 (push) Has been cancelled
manual_scons_dist_except_STM32_all / sparkfun-redv (push) Has been cancelled
manual_scons_dist_except_STM32_all / synwit/swm320-mini (push) Has been cancelled
manual_scons_dist_except_STM32_all / synwit/swm341-mini (push) Has been cancelled
manual_scons_dist_except_STM32_all / tm4c123bsp (push) Has been cancelled
manual_scons_dist_except_STM32_all / tm4c129x (push) Has been cancelled
manual_scons_dist_except_STM32_all / w60x (push) Has been cancelled
manual_scons_dist_except_STM32_all / wch/arm/ch32f103c8-core (push) Has been cancelled
manual_scons_dist_except_STM32_all / wch/arm/ch32f203r-evt (push) Has been cancelled
manual_scons_dist_except_STM32_all / wch/risc-v/ch32v208w-r0 (push) Has been cancelled
manual_scons_dist_except_STM32_all / wch/risc-v/ch32v307v-r1 (push) Has been cancelled
manual_scons_dist_except_STM32_all / xplorer4330/M4 (push) Has been cancelled
manual_scons_dist_except_STM32_all / yichip/yc3121-pos (push) Has been cancelled
manual_scons_dist_except_STM32_all / yichip/yc3122-pos (push) Has been cancelled
manual_scons_dist_except_STM32_all / zynqmp-r5-axu4ev (push) Has been cancelled
DM need > c99

Signed-off-by: GuEe-GUI <2991707448@qq.com>
2025-12-02 21:37:42 +08:00
GuEe-GUI
9b02fdc30a [Driver][SPI] Add 'W25Q128JWPIM' for SFUD
Signed-off-by: GuEe-GUI <2991707448@qq.com>
2025-12-02 21:37:42 +08:00
wdfk-prog
ddfe2cd61c feat[spi]: enable interrupt-safe operations using spinlocks 2025-11-13 15:41:41 +08:00
wdfk-prog
f56875fff5 fix[components]: 修复日志输出的gcc编译警告 2025-11-13 15:16:49 +08:00
wdfk-prog
7e5cd48360 feat[SPI]: Add SPI device detach function 2025-09-25 11:41:58 +08:00
GUI
8a7ef41c3c [SPI]Update and fixup the SPI
* Make a priv data read API for probed SPI device
* Fixup the SPI device pre-alloc
2025-07-10 13:28:16 +08:00
Runcheng Lu
ba50b60817 [components][drivers][spi]: fix: set message.parent.next to NULL for rt_qspi_send_then_recv API and rt_qspi_send API
- Ensure correct QSPI message chaining by setting next pointer to NULL, preventing unintended data transmission issues.

Signed-off-by: Runcheng Lu <runcheng.lu@hpmicro.com>
2025-03-05 10:29:25 +08:00
Runcheng Lu
faa8702510 [components][drivers][spi] dev_spi_flash_sfud: fix: set message.parent.next to NULL for qspi_read API
- Ensure correct QSPI message chaining by setting next pointer to NULL, preventing unintended data transmission issues

Signed-off-by: Runcheng Lu <runcheng.lu@hpmicro.com>
2025-03-05 10:29:15 +08:00
GUI
fbb65196a7 Fixup device rename by chip_select
`chip_select` is array now, should use index of value.
2025-03-01 12:03:32 +08:00
GUI
1564735b5c [DM/SPI] Make CS pin config fixed in system (#9977)
Make a max CS pin value (16) for SPI, that will not
alloc `*cs_pins` by malloc, because drivers call
`rt_device_unregister` may not free item.

Fixup the QSPI init configure member in DM mode.

Make SoC Kconfig import easy.

Signed-off-by: GuEe-GUI <2991707448@qq.com>
2025-02-11 14:54:59 +08:00
Rbb666
f820c1948a [drivers/spi]修复spi configure会执行两次的问题 (#9972)
* [drivers/spi]修复spi configure会执行两次的问题
2025-02-11 13:04:31 +08:00
Rbb666
d83d71cc05 [drivers/spi]统一软件SPI配置 2025-02-09 15:48:49 +08:00
CYFS
599cefe834 [components][drivers]:fix spi bug and add software spi (#9944)
Some checks failed
AutoTestCI / components/cpp11 (push) Waiting to run
AutoTestCI / kernel/atomic (push) Waiting to run
AutoTestCI / kernel/atomic/riscv64 (push) Waiting to run
AutoTestCI / kernel/atomic_c11 (push) Waiting to run
AutoTestCI / kernel/atomic_c11/riscv64 (push) Waiting to run
AutoTestCI / kernel/device (push) Waiting to run
AutoTestCI / kernel/ipc (push) Waiting to run
AutoTestCI / kernel/irq (push) Waiting to run
AutoTestCI / kernel/mem (push) Waiting to run
AutoTestCI / kernel/mem/riscv64 (push) Waiting to run
AutoTestCI / kernel/thread (push) Waiting to run
AutoTestCI / kernel/timer (push) Waiting to run
AutoTestCI / rtsmart/aarch64 (push) Waiting to run
AutoTestCI / rtsmart/arm (push) Waiting to run
AutoTestCI / rtsmart/riscv64 (push) Waiting to run
AutoTestCI / components/utest (push) Waiting to run
RT-Thread BSP Static Build Check / ESP32C3 (push) Waiting to run
RT-Thread BSP Static Build Check / Infineon_TI_microchip (push) Waiting to run
RT-Thread BSP Static Build Check / RT-Thread Online Packages (STM32F407 RT-Spark) (push) Waiting to run
RT-Thread BSP Static Build Check / RTduino/Arduino Libraries (Raspberry Pico) (push) Waiting to run
RT-Thread BSP Static Build Check / RTduino/Arduino Libraries (STM32F412 Nucleo) (push) Waiting to run
RT-Thread BSP Static Build Check / aarch64 (push) Waiting to run
RT-Thread BSP Static Build Check / gd32_n32_apm32 (push) Waiting to run
RT-Thread BSP Static Build Check / hpmicro (push) Waiting to run
RT-Thread BSP Static Build Check / i386-unknown (push) Waiting to run
RT-Thread BSP Static Build Check / llvm-arm (push) Waiting to run
RT-Thread BSP Static Build Check / mips (push) Waiting to run
RT-Thread BSP Static Build Check / nordic(yml) (push) Waiting to run
RT-Thread BSP Static Build Check / nuvoton (push) Waiting to run
RT-Thread BSP Static Build Check / nxp_renesas (push) Waiting to run
RT-Thread BSP Static Build Check / others_at32_hc32_ht32 (push) Waiting to run
RT-Thread BSP Static Build Check / riscv-none (push) Waiting to run
RT-Thread BSP Static Build Check / riscv64-unknown (push) Waiting to run
RT-Thread BSP Static Build Check / simulator (push) Waiting to run
RT-Thread BSP Static Build Check / stm32_f2_f4 (push) Waiting to run
RT-Thread BSP Static Build Check / stm32_f7_g0_h7_mp15_u5_h5_wb5 (push) Waiting to run
RT-Thread BSP Static Build Check / stm32l4_f0_f1 (push) Waiting to run
BSP compilation with more drivers / BSP Compilation with More Drivers (push) Waiting to run
pkgs_test / change (push) Waiting to run
ToolsCI / Tools (push) Has been cancelled
* fix:spi bus issue

* [components][drivers]add software SPI bus support
2025-01-27 08:35:11 +08:00
GuEe-GUI
6f68ca7c71 [DM/SPI] Support DM mode in SPI
Signed-off-by: GuEe-GUI <2991707448@qq.com>
2024-11-27 18:04:07 +08:00
Kai
5e34298f99 add missing extern "C" in header to support cpp 2024-10-24 20:22:48 +08:00
Yuqiang Wang
9b31631df1 [drivers][spi] Fixed an issue that caused spi bus deadlock in the spi configuration 2024-10-09 21:32:17 -04:00
Meco Man
36f8f266e9 feat:[drivers][spi] rt_spi_configure 添加互斥保护 2024-10-06 00:02:53 -04:00
wdfk-prog
99503d3ff6 feat:[drivers][spi] rt_spi_bus_configure 添加 -RT_EBUSY 返回值,并增加说明注释 2024-10-06 00:02:53 -04:00
CXSforHPU
bb91502465 [drivers] Specifies the name of the drivers driver file
https://github.com/RT-Thread/rt-thread/pull/9420
2024-09-13 17:40:40 -04:00
wdfk-prog
6e7cf3a608 [components][SPI][spi-bit-ops]修复可能的异常操作
* 移除初始化时未进行引脚初始化就进行引脚设置可能导致的异常
* CS引脚配置判断完善
* xfer返回值优化
2024-07-12 17:48:17 +08:00
sp-cai
f1832fea24 [components] [drivers ] [Kconfig] 整理 components/drivers 的 Kconfig (#9054)
整理 components/drivers 的 Kconfig
2024-06-16 15:43:27 +08:00
Yuqiang Wang
d08ae0bfd1 [driver][soft-spi] spi device driver framework adds pin init function function
为什么提交这份PR (why to submit this PR)
ps:在设备初始化阶段不应该存在对硬件的操作

你的解决方案是什么 (what is your solution)
ps:添加一个pin_init函数,在spi设备使用时调用该函数来完成硬件引脚的状态初始化,而不是在设备初始化阶段对硬件进行操作,已经在瑞萨HMI上通过验证
2024-04-09 18:33:29 -04:00
yangpeng
1919ad0748 [spi]修复spi总线挂载多设备通信可能失败问题 2024-03-04 19:50:36 -05:00
yangpeng
02eaf76d7b [qspi]修复qspi配置未生效问题 2024-02-17 01:07:19 -05:00
zms123456
d01dd05a0c [kernel][dm]适配新的设备驱动模型 (#8075) 2023-10-18 20:50:30 +08:00
Meco Man
30c793fdb9 [tools] add GetGCCLikePLATFORM
GCC like means the toolchains which are compatible with GCC
2023-08-21 01:25:52 -04:00
Meco Man
8d6e536e88 [spi] optimize the spi transfer speed.
If the configurations are the same, we don't need to set again.
2023-06-10 18:59:23 -04:00
Meco Man
93968942c2 [device][spi] 修复 rt_spi_sendrecv8/16 收发不同时的问题
rt_spi_send_then_recv是先发再等待一个独立的消息接收
rt_spi_transfer是收发同时进行
rt_spi_sendrecv8/16应使用rt_spi_transfer而不是rt_spi_send_then_recv
2023-05-22 02:55:46 -04:00
guozhanxin
82ccbc40db support llvm-arm 16.0 2023-05-17 12:09:10 -04:00
a1012112796
5e4a95f54d [components/drivers] add result check for configure in rt_spi_configure (#7474)
Signed-off-by: a1012112796 <1012112796@qq.com>
Co-authored-by: Man, Jianting (Meco) <920369182@qq.com>
2023-05-12 00:11:28 -04:00
Sseven731
17ed572644 [HUST CSE] [readme] fix invalid URL 2023-04-24 00:47:02 -04:00
7YZ7
501b22aabe [HUST CSE] Fix many abnormal symbols in annotations and format code 2023-04-17 22:26:23 -04:00
Meco Man
eb3cb250be [errno code][-RT_ETIMEOUT] fix that use RT_ETIMEOUT without - 2023-03-22 01:54:52 -04:00
Meco Man
0f461e870c [errno code][-RT_ERROR] fix that use RT_ERROR without - 2023-03-20 00:06:16 -04:00
Meco Man
2cc9bd876e [error code][-RT_EIO] fix that use RT_EIO without - 2023-03-16 20:20:37 -04:00
liYangYang
93d572dee6 [spi][5.0.0] 修正SPI设备框架中,对函数返回值类型使用不恰当的情况 (#6937) 2023-02-26 21:09:07 -05:00
liYony
b3b8c2362d [spi] rt_spi_configure 增加对cs_pin处理 2023-02-22 21:18:05 -05:00
liYony
bc385cd55c [spi]优化挂载函数对cs_pin的处理 2023-02-16 09:47:55 -05:00
Moss
c55e6694db [devicedrivers] Fix typo in sfud error messages 2023-02-12 14:07:46 -05:00
liYangYang
1eec660b12 [spi]添加rt_spi_bus_attach_device_cspin 函数 (#6916)
这个函数实现了原先的挂载功能,并且调用pin框架,初始化cs引脚,是一个功能相对完善的挂载函数。用户也能更简单的使用。
该函数取代rt_spi_bus_attach_device,后续rt_spi_bus_attach_device会被逐渐淘汰掉。新的BSP以及软件包应当使用rt_spi_bus_attach_device_cspin新函数。

STM32L475潘多拉测试通过。
2023-02-11 22:14:54 -05:00
Meco Man
f58d3c5200 rt_device_write/read return data type as rt_ssize_t
rt_ssize_t can give negative error code, which follows the unix style correctly
2023-02-07 21:43:57 -05:00
soym
450cd68a4a fix typo https://github.com/armink/SFUD/pull/79 2023-01-29 21:21:44 -05:00
liYangYang
63294afc9d [stm32][softspi]soft spi attach函数问题解决方案 (#6868)
* [softspi]soft spi attach函数问题解决方案

* 更改函数名
2023-01-18 22:03:48 -05:00
liYangYang
7ff64c1cfd [stm32][spi] spi attach函数问题解决方案 (#6864)
attach #6819
2023-01-18 00:27:08 -05:00
liYangYang
7c05d8517c [STM32][SPI]解决挂载函数里面不同bsp对uaer_data的滥用 (#6819)
* [spi]attach 片选引脚依赖pin框架
* 修改attach函数
2023-01-07 23:03:42 -05:00
joechenchen
ee632c21a8 fix:三字节读命令0x03,四字节读命令0x13,当命令为0x03需要加上0x10 2022-12-15 01:08:21 -05:00
Man, Jianting (Meco)
99bdf978d7 [rtdef] use lower-case to define attributes (#6728)
* [rtdef] rename RT_WEAK attribute as rt_weak

* [rtdef] rename RT_USED attribute as rt_used

* [rtdef] rename RT_SECTION attribute as rt_section

* [rtdef] rename ALIGN attribute as rt_align

* [legacy] add RT_USED ALIGN RT_SECTION RT_WEAK as legacy support
2022-12-11 13:12:03 -05:00
Meco Man
a4b8762d85 [sfud] sync commit
db9a1746df
2022-12-11 01:35:45 -05:00