Skip to content

RT-Thread v5.0.0 Released

Compare
Choose a tag to compare
@mysterywolf mysterywolf released this 31 Mar 13:47
· 1974 commits to master since this release
897ba36

Change log since v4.1.1 released

kernel

  • Add RT-Thread Smart features, Support user-mode app.
  • Add atomic feature.
  • Add nested mutex feature.
  • Add rt_ssize_t data structure.
  • Add static name for rt_object (#6422).
  • Adopt new version macro definition version control specification: https://semver.org
  • Split scheduler.c (#7103).
  • Fix the Oz optimization problem of AC6 compiler in memheap.
  • Fix rt_memset to be word size independent.
  • Modify RT_ALIGN_SIZE as 8 by default

Components

  • Add FDT(Flattened Device Tree), TMPFS, CRomFS,
  • Libc:
    • add musl libc support.
    • Improve Posix support.
  • LWP:
    • Add more syscall support.
    • Add mm(virtual memory management layer) feature.
    • Improve clock accuracy.
  • Network: add AF_UNIX feature.
  • Drivers Device:
    • Improve device: sensor, spi, i2c, serial, can, usb, cpu_time, sdio, pwm, etc.

BSP

  • Add RT-Thread Smart support with some BSP: D1/D1s, raspberry, qemu-vexpress-a9, qemu-virt64-aarch64,qemu-virt64-riscv.
  • Add company readme.md under bsp dir.
  • Fix that use RT_ERROR, RT_EFULL, RT_ENOMEM, RT_EEMPTY, etc.
  • Add some new BSPs:
    • bouffalo_lab: bl60x/bl70x/bl61x/bl808,
    • Infineon: 062s2, 062s3-4343w, 062s4, 062-wifi-bt, 062-ble
    • nuvoton: numaker-iot-m467, numaker-m467hj, numaker-hmi-ma35d1
    • nxp: LPC55S16, LPC55S36, LPC55S06, LPC5528, LPC55S28
    • nrf5xxx: nrf5340
    • gd32: gd32470z-lckfb, GD32303C-START
    • apm32: apm32f030r8-miniboard, apm32f051r8-evalboard, apm32f091vc-miniboard, apm32f103vb-miniboard, apm32f107vc-evalboard, apm32f407zg-evalboard,apm32f072vb-miniboard
    • n32: n32g43xcl-stb, n32g457qel-stb, n32g45xcl-stb, n32g45xml-stb, n32g45xrl-stb, n32g45xvl-stb, n32140xcl-stb, n321436_evb, n32143xml-stb, n32143xrl-stb, n32wb45xl-evb, n32g4frml-stb.
    • mm32: mm32f3270-100ask-pitaya
    • at32: at32f421-start, at32f425-start
    • stm32: stm32f723-st-disco
    • phytium: aarch32, aarch64
    • other: core-v-cv32e40p, air32f103, YS-F1Pro, etc.
  • Update some stm32 BSP drivers: timer, pwm, uart v2, can, etc.
  • Update BSP:
    • qemu-vexpress-a9: play the version number of QEMU when QEMU running.
    • tms320f28379d: fix the startup problem, implement PWM driver.
    • simulator: fix simulator compilation warnings, fix compile error.
    • raspberry-pico: add SMP
    • synopsys: Fix timer call-backs, Fix print syntax, Fix GNU toolchain RTT_CC alias, Use RTT_EXEC_PATH for the toolchain location substitution.
    • ti/c28x: add support to not disable global interrupt in context-switch to enable zero-latency isr for critical interrupts, add GPIO & pwm & ADC driver, update rt_vsnprintf for compliance with ti c28x cpus,add support to scons-based .project creation.
    • stm32: update all bsp projects.
    • renesas: add segger rtt function, add tft-lcd lvgl support, add ra6m4-cpk lvgl for spi-lcd support and update rt_spi_bus_attach_device_cspin function, add tft-lcd pin connection description, and fix some bugs, etc.
    • Infineon: add capsense support, add Infineon Doc and modify file structure, update spi driver, add slider driver demo, fix spi cs problem, etc.
    • nuvoton: modify RT_WEAK as rt_weak, fix building issue of Nuvoton porting, etc.
    • nxp: imxrt1170 Fix usb, Fix flexcan driver, add sdio support. lpc55s69 update PWM. lpc55sxx i2c driver fix & repair, add i2s and wm8904 driver, update spi and pwm driver. etc.
    • nrf5xxx: add spi twi drv for nrf5340, fix the Kconfig of nrf52832, etc.
    • gd32: fix bug on spi driver
    • apm32: fix apm32f0/apm32f1 gcc startup assembly file bug and fix apm32 drv_eth.c bug, add apm32F0 series MCU support, add apm32 rtt sdio/flash/sdram driver. etc.
    • at32: fixed gcc compiling usb driver errors, update for including file position and adding macros, optimize emac and usart driver code, add support usb driver. etc.
    • esp32: ESP32_C3 fix compile errors/warnings, igrate to ESP-IDF package, add I2C drivers. ESP32 support applying patch to local IDF. etc.
    • ch32: add rt_hw_context_switch_interrupt. ch32v307 add uart/spi/adc/gpio/wdt/dac/can/pwm drivers, update readme. etc.

Libcpu

  • arm: cortex-a revert safety MMU initialization, cortex-m7 change the return type of function rt_hw_cpu_dcache_ops to rt_uint32_t, etc.
  • risc-v: support noncached normal memory, add rt_backtrace function, etc.
  • aarch64: add rt_backtrace function, stop when no page is free.

Tools

  • Improved ci function
  • Add some scons cmds: scons --exec-path=xxx, scons --exec-prefix=, scons --dist --target=xxx, scons --strict, scons --dist --project-path=xxxx, etc.