| 
 | 1 | +# RT-Thread v3.1.4 Change Log  | 
 | 2 | + | 
 | 3 | +Change log since v3.1.3  | 
 | 4 | + | 
 | 5 | +## Kernel  | 
 | 6 | + | 
 | 7 | +* Split the component automatic initialization to component automatic initialization and main funciton;  | 
 | 8 | +* Fix RT_IDLE_HOOK spelling issue;  | 
 | 9 | +* Add thread waiting for message queue when queue is full;  | 
 | 10 | +* Fix the issue of delete mq in `rt_mq_create` in some abnormal case;  | 
 | 11 | +* Remove the C++ keywords in the`rt_console_set_device`function;  | 
 | 12 | +* Remove the `suspend_thread_count` member from memory_pool structure;  | 
 | 13 | +* Fix the issue when block = NULL in rt_mp_free;  | 
 | 14 | +* Fix the issue of critical protection when `rt_thread_delete` change the status of thread;  | 
 | 15 | + | 
 | 16 | +## Components  | 
 | 17 | + | 
 | 18 | +* Fix the issue of mPool size in C++ / Queue;  | 
 | 19 | +* Add the error status return in C++ / Thread task join/wait function;  | 
 | 20 | +* Fix compilation warning in DFS/ELM FatFS;  | 
 | 21 | +* Add support for Linux NFS Server in DFS/NFS;  | 
 | 22 | +* Fix mkfs issue in DFS/UFFS;  | 
 | 23 | +* Add ftruncate, flock, getuid, umask APIs;  | 
 | 24 | +* Fix the display issue of fd with offset in list_fd command;  | 
 | 25 | +* Add `dfs_mount_device` API to mount a file system on a device which is already in mount_table;  | 
 | 26 | +* Rename the C++ keywords in DFS/rename function;  | 
 | 27 | +* Connnect dfs/poll, select with RT_USING_POSIX in Kconfig;  | 
 | 28 | +* Optimize the part of the code of finsh to make it more simple;  | 
 | 29 | +* When RT_USING_DEVICE is not used, finsh can use the `rt_hw_console_getchar()` function which is simple to implement and not using the device framework;  | 
 | 30 | +* Increase the line length of the finsh shell to more than 256 characters;  | 
 | 31 | +* utest can support clang compiler and C++ compiler;  | 
 | 32 | +* Fix possible cross-boundary issues in ulog;  | 
 | 33 | +* Fix compilation warning in `ulog/ulog_console_backend_output`;  | 
 | 34 | +* Add support for file sending and receiving feature in YModem;  | 
 | 35 | +* CRC16 can be calculated without the lookup talbe to reduce code size in YModem component;  | 
 | 36 | +* Fix the issue that stack may be wrongly released during pthread/destory;  | 
 | 37 | +* Fix the possible memory leaks issue which caused by pthread_create abnormal case;  | 
 | 38 | +* The timer-related APIs under different compiler of libc are moved to the `libc\compilers\common` folder;  | 
 | 39 | +* Remove redundant definitions in `dlib/sys/unistd.h` (which will cause compilation warnings);  | 
 | 40 | +* Add `sys/errno.h` and`sys/signal.h` header files under dlib;  | 
 | 41 | +* Freemodbus is no longer in the kernel, and split it as a standalone softwre package;  | 
 | 42 | +* AT socket updated to v1.3.0:  | 
 | 43 | +  - Add multi-client and multi-device function support in AT Socket, and improve the dirty data handling when AT device hardware module reboot;  | 
 | 44 | +  - Support netdev network card feature, which can manage and control AT device network connection through the network card interface;  | 
 | 45 | +* Improve AT Server function support in AT components, add AT Server data sending and receiving interfaces `at_server_send ()` and `at_server_recv ()`;  | 
 | 46 | +* Fix the issue of `closesocket()` in SAL component when socket closing failure after `shutdown()`;  | 
 | 47 | +* Improve `sal_bind ()` network card binding related function in SAL component;  | 
 | 48 | +* Add IPV6 related options configuration and function support to SAL and netdev;  | 
 | 49 | +* Improve ping command error handling and log display in the netdev;  | 
 | 50 | +* Add hostname configuration options and functions in lwIP component;  | 
 | 51 | +* Fix the assertion issue of `sys_arch_mbox_fetch()` in lwIP which may occur when a socket is closed;  | 
 | 52 | +* Add network card uninstallation function and support for dhcpd service stop function to the lwip component;  | 
 | 53 | +* Fix lwIP component compilation failure caused by closing FinSH component;  | 
 | 54 | +* Fix the issue that the socket may not be closed during the DHCPD task in the lwIP DHCP server;  | 
 | 55 | +* Add `dhcpd_stop()` interface;  | 
 | 56 | +* Change log in device driver framework:  | 
 | 57 | +  * Refactor audio driver framework;  | 
 | 58 | +  * Fix the issue that the receiving length is 0 in CAN and the issue of returning wrong values;  | 
 | 59 | +  * Add hardware encryption and decryption driver framework;  | 
 | 60 | +  * Fix the flag handling issue of `rt_i2c_master_send/rt_i2c_master_recv`;  | 
 | 61 | +  * Add input capture and pulse encoding driver framework;  | 
 | 62 | +  * Fix the issue that partition lock is deleted when `rt_mmcsd_blk_remove`;  | 
 | 63 | +  * Fix the issue that the enumerated capacity of the large-capacity card in MMC/SD exceeded the data range;  | 
 | 64 | +  * When the SDIO device is initialized, the function's manufacturer and product can also use the information in CIS;  | 
 | 65 | +  * Improve the interrupt mode handling in the sensor framework, and fix the issue that the memory is not released when registering the sensor;  | 
 | 66 | +  * More information are provided in command line of sensor framework;  | 
 | 67 | +  * Add the checking for Rx buffer size in the serial port framework, and provide a notification when RX buffer full;  | 
 | 68 | +  * Remove the old Nor SPI Flash driver in SPI framework, and replace with SFUD component;  | 
 | 69 | +  * Fix some judgements issue in the return value of SFUD;  | 
 | 70 | +  * Fix the definition warning of `SFUD_FLASH_DEVICE_TABLE` in SFUD;  | 
 | 71 | +  * Add support for W25Q64DW devices in SFUD;  | 
 | 72 | +  * Fix FiFo creation failure handling when creating a pipe;  | 
 | 73 | +  * Fix the issue of releasing RBB in advance in `rt_rbb_destroy()` function;  | 
 | 74 | +  * Rename the new keyword using of C++ in `rt_rbb_blk_alloc` function;  | 
 | 75 | +  * Unify the `struct rt_delayed_work` in workqueue to `struct rt_work`;  | 
 | 76 | +  * Add touch driver framework;  | 
 | 77 | +  * Add USB Audio class;  | 
 | 78 | +  * Fix RNDIS plug-in/out issue in USB device stack;  | 
 | 79 | +  * Add the interface callback function in USB device stack;  | 
 | 80 | +  * Improve wlan framework, including command line functions, handling of AP name, password length, support for netdev, better configurability, etc.  | 
 | 81 | + | 
 | 82 | +## BSP and CPU porting  | 
 | 83 | + | 
 | 84 | +* Add Clang compiler support in ARM-related CPU porting;  | 
 | 85 | +* Fix SCB_AIRCR definition issue in ARM Cortex-M0;  | 
 | 86 | +* Unify the .data .bss section to 8bytes alignment in GCC tool chain;  | 
 | 87 | +* Rerange NXP i.MXRT BSP and add related BSP documents;  | 
 | 88 | +* Add i.MXRT1052 ATK Commander, Fire Pro BSP and i.MXRT1064 EVK BSP to the new i.MXRT BSP;  | 
 | 89 | +* Fix I2C operation (master_xfer) in LPC54114-lite BSP;  | 
 | 90 | +* Add Audio driver in LPC54114-lite BSP;  | 
 | 91 | +* Refactor qemu-vexpress-a9's Audio driver and fix the issue of OS Tick accuracy;  | 
 | 92 | +* Remove old STM32 BSP: stm32f4xx-HAL, stm32f10x, stm32f10x-HAL, stm32f429-apollo, stm32f429-disco, stm32h743-nucleo;  | 
 | 93 | +* Fix the issue of `rt_hw_sci_init()` for opening the global interrupt in tms320f28379d BSP;  | 
 | 94 | +* Add support of soft I2C and hardware encryption module to WinnerMicro W60x BSP(AES/DES/3DES/RC/SHA1/MD3/CRC);  | 
 | 95 | +* Add oneshot WiFi configuration support in WinnerMicro W60x BSP;  | 
 | 96 | +* Add more STM32 BSP based on new STM32 BSP framework:  | 
 | 97 | +  * stm32f072-st-nucleo  | 
 | 98 | +  * stm32f103-gizwits-gokitv21  | 
 | 99 | +  * stm32f103-yf-ufun  | 
 | 100 | +  * stm32f412-st-nucleo  | 
 | 101 | +  * stm32f427-robomaster-a  | 
 | 102 | +  * stm32f429-st-disco  | 
 | 103 | +  * stm32f769-st-disco  | 
 | 104 | +  * stm32g431-st-nucleo  | 
 | 105 | +  * stm32h743-st-nucleo  | 
 | 106 | +  * stm32h750-armfly-h7-tool  | 
 | 107 | +  * stm32l4r5-st-nucleo  | 
 | 108 | +  * stm32l452-st-nucleo  | 
 | 109 | +* For the new STM32 BSP framework:  | 
 | 110 | +  * Add DMAMUX support to stm32l4+;  | 
 | 111 | +  * Update F7 HAL library SConscript;  | 
 | 112 | +  * Open the SWD port configuration on cubemx in stm32f103-atk-warshipv3 BSP;  | 
 | 113 | +  * Add support for SD card in stm32f427-robomaster-a BSP;  | 
 | 114 | +  * Add USBFS driver to stm32f412-nucleo BSP;  | 
 | 115 | +  * Remove use of device user data on uart driver;  | 
 | 116 | +  * Add QSPI FLASH support in stm32h743-atk-apollo BSP;  | 
 | 117 | +  * Optimized Ethernet driver;  | 
 | 118 | +  * Add hardware encryption and decryption driver;  | 
 | 119 | +  * Add MIPI LCD driver;  | 
 | 120 | +  * Add pulse encoding driver;  | 
 | 121 | +  * Optimize hardware timer driver;  | 
 | 122 | +  * Add support for UART 7/8 in serial driver;  | 
 | 123 | +  * Optimize WDT driver;   | 
 | 124 | + | 
 | 125 | +## Tools  | 
 | 126 | + | 
 | 127 | +* Optimize scons script for eclipse in order to generate eclipse project better;  | 
 | 128 | +* Improve rtconfig.h generator, PATH type configuration can be generated correctly;  | 
 | 129 | +* Fix gcc path detection issue when using the default cross toolchain of the Linux distribution;  | 
 | 130 | + | 
1 | 131 | # RT-Thread v3.1.3 Change Log  | 
2 | 132 | 
 
  | 
3 | 133 | ## Kernel  | 
 | 
0 commit comments