| 
 | 1 | +# RT-Thread v5.0.2 released  | 
 | 2 | + | 
 | 3 | +Change Log Since v5.0.1 Release  | 
 | 4 | + | 
 | 5 | +## Kernel  | 
 | 6 | + | 
 | 7 | +* include/rtdef.h  | 
 | 8 | +  * Fixed two issues with atomic volatile in bsp/simulator compiled in VS2019.  | 
 | 9 | +  * Added RT_USING_LIBC_ISO_ONLY macro.  | 
 | 10 | +  * Supported POSIX-compatible errno.  | 
 | 11 | +* src/kservice.c  | 
 | 12 | +  * Improved rt_strerror function compatibility.  | 
 | 13 | +* Supported DM device id management; Supported multiple threads receiving the same event at the same time.  | 
 | 14 | +* No longer used RT_DEBUG_LOG in rtdebug.h.  | 
 | 15 | +* Tidied up debug macros and added RT DEBUGING CONTEXT.  | 
 | 16 | +* Fixed User mode MQ receive blocking issue.  | 
 | 17 | +* Added priority to message queues supported in POSIX interfaces.  | 
 | 18 | +* Removed recursion in mutex; Removed RT_DEBUG_xxx macros.  | 
 | 19 | +* Implemented default weak function for rt_hw_cpu_shutdown.  | 
 | 20 | + | 
 | 21 | +## Components  | 
 | 22 | + | 
 | 23 | +* **drivers**  | 
 | 24 | +  * **sensor:** Fixed an error in Sensor-V1 where the return type was inconsistent; Re-implemented sensor framework as Sensor-V2.  | 
 | 25 | +  * **fdt:** Added the device tree child node search macro.  | 
 | 26 | +  * **tty:** Fixed a bug on foreground app switch; Supported TCGETA/TCSETAF/TCSETAW/TCSETA commands.  | 
 | 27 | +  * **serial:** Fixed an issue where the serial port sometimes sent carriage returns repeatedly.  | 
 | 28 | +  * Supported the Core API for dd2.0.  | 
 | 29 | +  * **i2c:** Optimized control interface format to add available commands.  | 
 | 30 | +  * **rtc:** Reconfigurable clock framework; Fixed the bug that triggered the alarm for a single time and repeatedly used the timer that did not start.  | 
 | 31 | +  * **hwtimer:** Overflow is invalid in oneshot mode.  | 
 | 32 | +  * **core:** Revised the macros of header files.  | 
 | 33 | +  * **wlan:** Fixed some variables not used warnings when building.  | 
 | 34 | +  * Moved the core header files to the path: include/drivers/core.  | 
 | 35 | +* **lwp**  | 
 | 36 | +  * Executed elf with added executable permissions check.  | 
 | 37 | +  * Supported more features of signals from IEEE Std 1003.1-2017.  | 
 | 38 | +  * Fixed possible memory leak; Fixed the setup of fake LWP in sys_execve; Fixed socket addr bug; Fixed waitpid function exception.  | 
 | 39 | +  * Fixed bugs on LWP kill; Fixed exit(2) and added exit_group(2); Fixed rt_memcpy to lwp_memcpy in smart source; Fixed cmd_kill (Fix cmd_kill).  | 
 | 40 | +  * Added fops for dfs_v2 and fixed warning for eventfd_write and eventfd_read after dfs_v1 changes.  | 
 | 41 | +  * Cumulative updates of lwip and lwp.  | 
 | 42 | +* **libc**  | 
 | 43 | +  * Updated the allocation mode of the libc timer id.  | 
 | 44 | +  * Added signalfd for system call, Added eventfd for system call.  | 
 | 45 | +  * Implemented lightweight timezone configuration.  | 
 | 46 | +  * Renamed libc.c as posix/stdio.c.  | 
 | 47 | +  * Optimized the epoll code to remove restrictions on descriptors.  | 
 | 48 | +  * Adapted rt_channel, increased the generality of some rt_channel functionality on dfs v2, and standardized signalfd.  | 
 | 49 | +* **dfs**  | 
 | 50 | +  * Fixed variable usage errors in dfs elm.c.  | 
 | 51 | +  * Connected the posix mqueue pair to the file system fd.  | 
 | 52 | +  * Modified some function prototypes of the dfs_file_ops structure and function declarations.  | 
 | 53 | +  * Fixed fcntl(F_SETFL) bug, and modified the error code when opening a file failed.  | 
 | 54 | +  * Cumulative repair of dfs changes, including forced uninstallation and pread/pwrite changes.  | 
 | 55 | +  * dfs v2: Added cromfs function.  | 
 | 56 | +* **utilities**  | 
 | 57 | +  * Supported ulog_async_output_enabled, Supported adt API for DM.  | 
 | 58 | +  * Removed zmodem.  | 
 | 59 | +* **mm**  | 
 | 60 | +  * Improved output of list_page.  | 
 | 61 | +  * Added unmap page API.  | 
 | 62 | +* **net**  | 
 | 63 | +  * **sal/socket:** Fixed a BUG where calling closesocket interface triggered assertions when RT_DEBUG is enabled; Fixed duplicate free on allocated buffer.  | 
 | 64 | +  * **sal:** Fixed the IPv4 & v6 compiling issue.  | 
 | 65 | +* **ktime**  | 
 | 66 | +  * Added RT_USING_KTIME to Kconfig build.  | 
 | 67 | +  * Fixed some bugs with ktime.  | 
 | 68 | +  * Optimized the performance of high-precision timer, deleted a useless function.  | 
 | 69 | +  * Change the Ktime path to: components/drivers/ktime.  | 
 | 70 | +* **sdio**  | 
 | 71 | +  * Enabled the eMMC internal cache to speed up transmission.  | 
 | 72 | +* **finsh**  | 
 | 73 | +  * Added msh autocomplete suboption feature.  | 
 | 74 | + | 
 | 75 | +## Drivers Device  | 
 | 76 | + | 
 | 77 | +* Prepared for device driver v2.0.  | 
 | 78 | + | 
 | 79 | +## Libcpu  | 
 | 80 | + | 
 | 81 | +* **aarch64:** Fixed default core binding failure on GICv2; Fixed aarch64 SMP startup failure; Supported hardware atomic; Fixed up FPU storage's size in stack and appended Q16 ~ Q31; Fixed HW atomic_t ops type from dword to qword; Supported public linker scripts; Changed aarch64 trap backtrace & coredump priority rating; Fixed an issue where AARCH64 Qemu failed to compile when SMP was disabled.  | 
 | 82 | +* **arm:** Fixed IAR compilation warnings: function "__LDREX" declared implicitly; Modified start_gcc.S; Fixed race condition with ldrex, strex; Fixed header file circular reference issue.  | 
 | 83 | +* **arc:** Fixed the thread switching bug in the arc architecture.  | 
 | 84 | +* **sim:** Fixed an issue with inconsistent function definitions.  | 
 | 85 | +* Added ARCH_ARM_CORTEX_M23 macro definitions.  | 
 | 86 | + | 
 | 87 | +## Tools  | 
 | 88 | + | 
 | 89 | +* Fixed .uvoptx/uvopt project name.  | 
 | 90 | +* Supported Env for finsh shell.  | 
 | 91 | +* Removed --dist-strip command.  | 
 | 92 | +* Corrected prompt message.  | 
 | 93 | + | 
 | 94 | +## Action  | 
 | 95 | + | 
 | 96 | +* Added CI to compile more drivers for the changed BSP, Added pkgs-test; Added the manual trigger and fail BSP check; Added more config for manual trigger.  | 
 | 97 | +* Added manual triggers for all STM32, Added the exp_STM32 SCons.  | 
 | 98 | +* Added the repo check for self-use; Added the code_owner review request; Added paths-ignore for format and static check.  | 
 | 99 | +* Fixed the path the YAML can't be folded; Fixed the flag of dist.  | 
 | 100 | +* Used env install script.  | 
 | 101 | + | 
 | 102 | +## Documents  | 
 | 103 | + | 
 | 104 | +* Added RT-Thread Code of Conduct; Added ktime readme doc; Added env vscode document.  | 
 | 105 | +* Fixed a typo in documentation.  | 
 | 106 | +* Updated env document, Updated qemu for windows doc; Updated quick_start_qemu_windows.  | 
 | 107 | + | 
 | 108 | +## Utest  | 
 | 109 | + | 
 | 110 | +* Adding volatile solves the problem that the test fails when the optimization level is high.  | 
 | 111 | +* Changed the thread size of the thread_tc thread stack to avoid stack anomalies caused by 64-bit machines; Changed the size of the thread stack to avoid stack anomalies.  | 
 | 112 | +* Added the signal dependency in signal test.  | 
 | 113 | + | 
 | 114 | +## BSP  | 
 | 115 | + | 
 | 116 | +* Added some new BSPs  | 
 | 117 | +  * ST: imx6ull, stm32u585-iot02a, stm32f405zgtx, stm32h563-st-nucleo, stm32h563-st-nucleo, stm32f407-rt-spark  | 
 | 118 | +  * SOPHGO: cv1800b  | 
 | 119 | +  * TI: msp432e401y-LaunchPad  | 
 | 120 | +* Supported Open Firmware API and model of PIC.  | 
 | 121 | +* Fixed MM32 compilation issues.  | 
 | 122 | +* stm32  | 
 | 123 | +  * stm32/stm32u5: Fixed GPIO interrupt error.  | 
 | 124 | +  * stm32/stm32l476-nucleo: Supported timer7 for RTduino; Supported PWM switch to SPI.  | 
 | 125 | +  * stm32/stm32wl55-st-nucleo: Fixed SCons compilation failure, improved link file, removed hardware floating-point support.  | 
 | 126 | +  * stm32/stm32f407-rt-spark: Release of the first version of rt-spark BSP; Added rt-spark to run utest link snippets under GCC.  | 
 | 127 | + | 
 | 128 | +  * stm32/stm32f401nucleo/rtduino: Supported function switching of docking pins.  | 
 | 129 | +  * stm32/stm32l431-BearPi: Supported the MPU6050 module.  | 
 | 130 | +  * stm32/rtduino: Supported tone timers and limited the maximum number of pins checked; Supported function switching of docking pins; Fixed a demo bug and modified the SPI switch function.  | 
 | 131 | +  * stm32/i2c driver: Replaced stm32_udelay with rt_hw_us_delay.  | 
 | 132 | +  * stm32/build path: Example Modified the STM32 project generation path.  | 
 | 133 | +* qemu  | 
 | 134 | +  * qemu-virt64-aarch64: Fixed qemu failed to mount elm file system.  | 
 | 135 | +* airm2m  | 
 | 136 | +  * airm2m/air32f103: Synchronized lib changes, including SRAM locking, fixing RTC acquisition frequency errors; Updated the pin num command.  | 
 | 137 | +* wch  | 
 | 138 | +  * wch/riscv/ch32v307v: Added _head_end for link file.  | 
 | 139 | +  * wch/riscv/ch32v208w: Fixed C++ compiling errors.  | 
 | 140 | +  * wch/risc-v/Libraries/ch32_drivers: Fixed UART IRQ declaration.  | 
 | 141 | +* imxrt  | 
 | 142 | +  * imxrt/imxrt1060-nxp-evk: Solved the adaptation problem of RW007 module in MIMXRT1062-EVKB board; Imxrt1060 fix wrong image reference.  | 
 | 143 | +  * imxrt/imxrt1021-nxp-evk: Fixed RT_ASSERT undefined RT1021 FIXED.  | 
 | 144 | +* renesas  | 
 | 145 | +  * renesas/sdhi driver: Fixed an issue where SDHI could only read the first block when attempting multiple block reads.  | 
 | 146 | +  * Fixed part of renesas BSP and added related CI to it; Fixed an issue where Renesas BSP compilation would not pass.  | 
 | 147 | +  * Added hwtimer device for renesas.  | 
 | 148 | +* acm32  | 
 | 149 | +  * acm32/acm32f0x0-nucleo: Fixed scons --dist command error.  | 
 | 150 | +  * Fixed some issues with acm32 BSP and added CI to it.  | 
 | 151 | +* bouffalo_lab  | 
 | 152 | +  * bouffalo_lab/bl808/d0: Added bl808 d0 core SPI and I2C drivers.  | 
 | 153 | +* nuvoton  | 
 | 154 | +  * nuvoton/numaker-m467hj: Fixed related LVGL version issues.  | 
 | 155 | +* Infineon  | 
 | 156 | +  * Infineon/psoc6-evaluationkit-062S2: Added I2C config for psoc6-evaluationkit; Fixed i2c init error; Added cyw43012 wifi module; Added BT support.  | 
 | 157 | +* esp32_c3  | 
 | 158 | +  * Realized scons compilation of ESP32-C3.  | 
 | 159 | +* raspberry-pico:  | 
 | 160 | +  * Added software simulation SPI and software simulation I2C driver code.  | 
 | 161 | +  * Optimized Kconfig configuration.  | 
 | 162 | +  * Improve UART driver.  | 
 | 163 | +  * Add flowcontrol and parity settings.  | 
 | 164 | +* phytium  | 
 | 165 | +  * phytium/aarch32/e2000d_rtthread: Phytium e2000 update.  | 
 | 166 | +  * Fixed the Phytium QSPI driver.  | 
 | 167 | +* hpmicro  | 
 | 168 | +  * Three new BSPS are added: hpm6750evk2, hpm6300evk, and hpm6200evk.  | 
 | 169 | +* gd32  | 
 | 170 | +  * gd32/arm/gd32470z-lckfb: Add SDRAM driver.  | 
 | 171 | +* nuclei  | 
 | 172 | +  * nuclei/gd32vf103_rvstar: Add USB-related configuration headers.  | 
 | 173 | + | 
 | 174 | +## Userapps  | 
 | 175 | + | 
 | 176 | +* Added support for user mode updates in MicroPython, sdl2, lua, ffmpeg.  | 
 | 177 | + | 
1 | 178 | # RT-Thread v5.0.1 released  | 
2 | 179 | 
 
  | 
3 | 180 | Change log since v5.0.0 released  | 
 | 
0 commit comments