|
| 1 | +# RT-Thread v4.0.0 Change Log |
| 2 | + |
| 3 | +## Kernel |
| 4 | + |
| 5 | +* Add SMP support; |
| 6 | +* Add support for 64-bit processors; |
| 7 | +* When the thread is running on CPU, the state of this thread is changed to RUNNING stat instead of READY state in previous version; |
| 8 | + |
| 9 | +## Components |
| 10 | + |
| 11 | +* When formatting the file system, adds FM_SFD option to create a volume in SFD format for FatFs; (HubretXie) |
| 12 | +* Add file system handle pointer in `struct dfs_fd' structure; |
| 13 | +* Fix stdio fd issue when POSIX api is used; (gbcwbz) |
| 14 | +* Fix the `fd_is_open()` issue: when the sub-path is the same in different mounted filesystem. |
| 15 | +* Change the critical lock/unlock to dfs_lock/unlock in `getcwd()` function of DFS (the critical lock/unlock is different in SMP environment); |
| 16 | +* Rewrite `list_thread/list_*` implementation of finsh cmd to avoid multi-core competition case; |
| 17 | +* Fix the `aio_result` issue, which is returned by `aio_read_work` in AIO; (fullhan) |
| 18 | +* Fix the mmap issue when the addr parameter is NULL; (fullhan) |
| 19 | +* Modify the `_sys_istty` function in armlibc to correctly handle STDIN/STDOUT/STDERR; (gbcwbz) |
| 20 | +* Modify the `_write_r` function in newlib to correctly handle stdout. |
| 21 | +* Add lightweight processes (lwP) and corresponding system calls; |
| 22 | + * the lwP user application environment will be added later; |
| 23 | +* Fix the at_socket issue when socket is a null pointer; (thomas onegd) |
| 24 | +* Fix the select event issue in `at_recvfrom()` function in at_socket; |
| 25 | +* Divide SAL into `sal_socket_ops/sal_proto_ops` and sal_proto_ops is implemented with gethostbyname/getaddrinfo ops etc. |
| 26 | +* Add socket TLS layer in SAL, that is, upper application can be supported by encrypted transmission without considering lowlevel TLS at all. |
| 27 | +* Fix the length issue of `ulog_strcpy`, which should be not exceed `ULOG_LINE_BUF_SIZE`; |
| 28 | +* Add the macro definition of hexadecimal log output to ulog; (HubretXie) |
| 29 | +* Add uTest component. The uTest is a unit test framework on RT-Thread, and can also be used for automatic testing on board with external Python scripts. |
| 30 | +* Fix some compilation warnings and enumeration mismatches in drivers/audio; |
| 31 | +* Fix the `can_rx/can_tx` issue, which is not cleared to NULL when CAN device is closed in drivers/can; (xeonxu) |
| 32 | +* Fix drivers/hwtimer, time acquisition issue with counting down mode; |
| 33 | +* Add drivers/adc driver framework; |
| 34 | +* Fix the tick compensation issue when enable interrupt too early; (geniusgogo) |
| 35 | +* Add `RT_SERIAL_USING_DMA` option in drivers/serial; |
| 36 | +* Add QSPI support in drivers/spi framework; |
| 37 | +* Add QSPI support in SFUD (based on the QSPI peripheral of stm32); SFUD is upgraded to version 1.1.0; |
| 38 | +* Optimize SPI take/release function call in spi_msd; |
| 39 | +* Fix the `blk_size` issue in `rt_rbb_blk_alloc()`; |
| 40 | +* Fix the FS USB issue in `_get_descriptor` function; |
| 41 | +* Fix the empty password issue in AP mode of drivers/wlan; |
| 42 | +* Fix the return type issue in drivers/wlan; |
| 43 | +* Remove the duplicate opening file check when open a file; |
| 44 | + |
| 45 | +# BSP |
| 46 | + |
| 47 | +* Change the name parameter to `cosnt char *` in `rt_hw_interrupt_install` function; (liruncong) |
| 48 | +* Rewrite the RISC-V porting layer to make as a common and standalone porting layer for RISC-V IMAC 32/64; |
| 49 | +* Fix `$` warning issue in Kconfig files of each BSP; |
| 50 | +* Add the LPC54114-lite BSP, including GPIO, I2C, SDCard, SPI, SPI Flash, UART driver; |
| 51 | +* Add Nuvoton-M487 BSP, including UART, EMAC driver; (Bluebear 233) |
| 52 | +* Add Kendryte K210 BSP with RISC-V64 dual-core SMP BSP, including UART driver, also verified with micropython; |
| 53 | +* Add RV32M1 VEGA BSP, including GPIO, I2C, SDCard, UART and other drivers; |
| 54 | +* Fix the CAN driver issue in STM32F4XX-HAL BSP; (xeonxu) |
| 55 | +* Fix UART DMA settings issue in STM32F10x/STM32F40x BSP; (zhouchuanfu) |
| 56 | +* Fix the HEAP_BEGIN definition issue in STM32H743-Nucleo BSP; (nongxiaoming) |
| 57 | +* Fix GPIO configuration issue in stm32f10x-HAL; (Wu Han) |
| 58 | +* Change stm32f107 BSP as main function entry; (whj4674672) |
| 59 | +* Fix the serial interrupt handling issue in stm32f10x BSP; |
| 60 | +* Add PWM, RTC and watchdog drivers to stm32f10x-HAL BSP; (XXXXzzzz000) |
| 61 | +* Fix the watchdog driver issue in stm32f4xx-HAL BSP; (XXXXzzzz000) |
| 62 | +* Use lwIP version 2.x in stm32f40x/stm32f107 BSP. |
| 63 | +* Fix the link issue when enable cmBacktrace package in stm32f4xx-HAL BSP; (xeonxu) |
| 64 | +* Support Audio and microphones features in stm32f429-apollo BSP; |
| 65 | +* Enable dlmodule support in x86 BSP; (SASANO Takayoshi) |
| 66 | +* Addd uTest section in the link script of qemu-vexpress-a9/stm32f429-atk-apollo BSP for automatic testing; |
| 67 | +* Change the license to Apache License v2.0 in Godson 1C BSP; (sundm75) |
| 68 | +* Add the new BSP framework for STM32 serial chip, such as STM32 G0/F0/L0/F1/F4/F7/H7. In new BSP framework, the SoC drivers is reused. And in same time, lots of STM32 boards are supportted with new BSP framework: |
| 69 | + * STM32F091-Nucleo Development Board BSP |
| 70 | + * STM32F411-Nucleo Development Board BSP |
| 71 | + * STM32L432-Nucleo Development Board BSP; (sun_shine) |
| 72 | + * STM32F407-Discovery Development Board BSP |
| 73 | + * STM32F446-Nucleo Development Board BSP; (andeyqi) |
| 74 | + * STM32F746-Discovery Development Board BSP; (jinsheng) |
| 75 | + * STM32F767-Nucleo Development Board BSP; (e31207077) |
| 76 | + * STM32G071-Nucleo Development Board BSP; |
| 77 | + * ATK STM32F103 NANO Development Board BSP |
| 78 | + * ATK STM32F407 Explorer Development Board BSP |
| 79 | + * ATK STM32F429 Apollo Development Board BSP |
| 80 | + * ATK STM32F767 Apollo Development Board BSP |
| 81 | + * ATK STM32L475 Pandora IoT Development Board BSP |
| 82 | + * Fire STM32F103 Arbitrary Development Board BSP |
| 83 | + * Fire STM32F429 Challenger Development Board BSP |
| 84 | + * Fire STM32F767 Challenger Development Board BSP; (Hao Zhu) |
| 85 | + * ArmFly STM32F429-v6 Development Board BSP |
| 86 | + * STM32F103 iBox development board BSP; (dingo1688) |
| 87 | + * Dofly STM32F103 Development Board; (FindYGL) |
| 88 | + * STM32F107 uC/Eval Development Board BSP; (whj4674672) |
| 89 | + * and more, there are more developers involved for stm32 BSP framework, they are HubretXie, Hao Zhu, e190, etc. to improve the STM32 public driver. |
| 90 | +* Add SWM320 BSP of Synwit.cn, including GPIO, HW Timer, I2C, Watchdog, PWM, RTC, SPI, UART, etc.; (provided and maintained by Synwit) |
| 91 | +* Add TI TMS320F28379D BSP, the first DSP chip supported on RT-Thread; (xuzhuoyi) |
| 92 | +* Fix USB driver issue in X1000; (Zhou YanJie) |
| 93 | +* Add BSP for Synopsys Design Ware ARC EM Starter Kit, bsp/synopsys/emsk_em9d, EM9D core, including GPIO, UART and other drivers; (provided and maintained by Synopsys) |
| 94 | + |
| 95 | +# Tool |
| 96 | + |
| 97 | +* Provide more inforamtion when the tool chain does not exist; |
| 98 | +* Add a draft Segger Embedded Studio project file generation command. Note that the tool chain in SES is a special version not the newlib. |
| 99 | +* Fix the IAR library link command issue when use scons command line under; |
| 100 | +* Fix the BSP path issue in scons `str(Dir('#'))`; |
| 101 | +* Add `scons --pyconfig-silent` command to add some Kconfig configurations and to generate `.config` and `rtconfig.h` files; |
| 102 | +* Update the `scons --dist` command to adapt to the new BSP framework; |
| 103 | +* Modify the mkromfs.py script. Fix the corresponding C code generation When the romfs contains empty files or empty folders; |
| 104 | +* Fix the issue of version string comparison issue for GNU GCC version in utils.py; |
| 105 | +* ENV updated to V1.1.0 |
| 106 | + * Provide better prompt information to improve user experience; |
| 107 | + * Add `system32` path to environment variables to avoid the `cmd` command cannot be found; |
| 108 | + * Add `PYTHONHOME` variable to environment variables to avoid PYTHON environment issue; |
| 109 | + |
1 | 110 | # RT-Thread v3.1.1 Change Log |
2 | 111 |
|
3 | 112 | ## Kernel |
|
0 commit comments