Commit Graph

4393 Commits

Author SHA1 Message Date
xqyjlj 157dc0959c feat(components): add uname support 2023-03-31 10:56:37 +08:00
xqyjlj c3b08d4288 feat(components/lwp/lwp_syscall.c): add sys_lstat support
temporarily use sys_stat. should be replaced by sys_lstat if symbolic link are implemented
2023-03-31 10:56:37 +08:00
chinky b9f5bf7d91 [libc]优化usleep函数 2023-03-30 00:41:13 -04:00
Shell eec78d9f5d
[rt-smart] testcase & improvements for memory management (#7099)
* [utest/mm] add testcase for create/init
format codes of create/init in components/mm

* [libcpu/aarch64] fix user stack check routine

* [kservice] export API for utest

* [utest/mm] testcase for aspace_map
format & modify the files under components/mm related with aspace_map

* [lwp/user_mm] add user_map_varea for mmap feature

* [mm] rename rt_mm_fault_try_fix to rt_aspace_fault_try_fix

* [utest/mm] testcase for synchronization

* [mm] modify unmap api to improve throughput

* [utest/mm] testcases for cache and varea map

* [format] remove extra space

* [utest/mm] fix testcase problem in header

* [lwp] extend map_user_varea with a flag

* [utest/mm] testcase for lwp_map_user_varea

* [libcpu/arm/cortex-a] fix kernel space layout

* [utest/mm] adjust for armv7 arch
2023-03-30 08:25:15 +08:00
zhkag f2dd21ccee 对 /dev 目录做特殊处理 2023-03-29 15:31:46 +08:00
wangfuan 19f311b498 [libc][delay] fix wrong usleep function 2023-03-27 13:06:12 -04:00
xqyjlj eb0df6b12c
feat(components/dfs/filesystems/elmfat/dfs_elm.c): add st_blocks su… (#7091) 2023-03-25 07:34:00 +08:00
yangjie11 b0c247fb59
[components/drivers][touch]删除多余的touch.h (#7090)
* [components/drivers][touch]删除多余的touch.h

* 将touc.h替换为rtdevice.h
2023-03-24 11:47:28 -04:00
Zxy 156fda61cf [errno code]fix that use RT_ENOMEM without - 2023-03-23 01:55:21 -04:00
Meco Man deb40e8c0c [errno code][-RT_EBUSY] fix that use RT_EBUSY without - 2023-03-22 01:55:18 -04:00
Meco Man eb3cb250be [errno code][-RT_ETIMEOUT] fix that use RT_ETIMEOUT without - 2023-03-22 01:54:52 -04:00
wdfk-prog 87c57f86f7 [device]修改mtd_nor读写函数返回类型为rt_ssize_t 2023-03-20 18:58:10 -04:00
Meco Man 0f461e870c [errno code][-RT_ERROR] fix that use RT_ERROR without - 2023-03-20 00:06:16 -04:00
Shell dd2f1a795a
[rt-smart] fix competition on aspace (#7064)
* [mm] mmu operations should be wrapped by _aspace_bst_insert & _aspace_bst_remove to avoid competition on page table

* [lwp] may not return null on failed
2023-03-19 14:41:50 +08:00
Shell 18a14cc935
[rt-smart] move sys_cacheflush to lwp_syscall.c (#7048)
* [syscall] move sys_cacheflush to lwp_syscall.c

* [syscall] improve assertion

* [format] rename to rt_ctassert

* [debug] modified ct assertion on mm_page.c
2023-03-17 15:11:38 +08:00
Meco Man dfddd79b24 [errno code][-RT_EINVAL] fix that use RT_EINVAL without - 2023-03-16 20:21:43 -04:00
Meco Man 2cc9bd876e [error code][-RT_EIO] fix that use RT_EIO without - 2023-03-16 20:20:37 -04:00
张世争 334c609c6c
[components][mm] add ioremap for normal memory api (#7050) 2023-03-16 10:27:16 +08:00
Shell 2394e75265
[libcpu/risc-v] support noncached normal memory (#7051)
* [libcpu/risc-v] support noncached normal memory

* [mm] check before dereference in _fetch_page

* [mm] add comments on ioremap

* [ioremap] report more info on failed
2023-03-16 10:26:55 +08:00
Shell fcc01a617d
[rt-smart] Fix return value in syscall (#7045)
* [timer] fix sys return value to avoid outdated errno

* [rtdef] add wrap to stringify

* [syscall] return value in rt errno should be recycle immediately after call to posix layer

* [syscall] return type of syscall should be long
errno should be recycle immediately after call to rt posix layer to avoid
outdated value

* [format] move prototype to header file

* [fix] futex definition conflict
2023-03-13 19:09:34 +08:00
wangxiaoyao 34bf77b8e3 [format] 2023-03-11 19:01:33 +08:00
wangxiaoyao cb60ef2c86 [lwp] clear vnode in fd after free 2023-03-11 19:01:33 +08:00
wangxiaoyao 672966cc41 [lwp] arch should recycle resource it allocated 2023-03-11 19:01:33 +08:00
Man, Jianting (Meco) 0275b23638
[i2c] fix the i2c device return error code (#7035)
* [i2c] fix the i2c device return error code
2023-03-10 23:44:03 -05:00
yuanzihao 23786ee481
[GD32]add gd32470z-lckfb (#7022)
* --复制gd32450z-eval 作为立创梁山派 gd32470z-lckfb的模板进行移植
* -修改模板keil工程的配置,IROM需要注意总共为1024k,分为Code  area 和Data area  ,IRAM1为 : 512K-64K=448K=458752=0x70000。
-重新用ENV生成编译固件
片上SRAM可分为4块,分别为SRAM0(112KB)、SRAM1(16KB)、SRAM2(64KB)和TCMSRAM(64KB)。SRAM0、SRAM1和SRAM2可以被所有的AHB主机访问,然而,TCMSRAM(紧耦合存储器SRAM)只可被Cortex ® -M4内核的数据总线访问。BKPSRAM(备份SRAM)应用于备份域,即使当VDD供电电源掉电时,该SRAM仍可保持其内容。附加SRAM(ADDSRAM)只在一些特殊的GD32F4xx器件中可用。由于采用AHB互联矩阵,上述SRAM块可以同时被不同的AHB主机访问,例如,即使CPU正在访问SRAM0,USBHS也可以访问SRAM1。

* -修改IAR编译的链接脚本
* --修改Flash和RAM大小
-RAM大小为448k是因为512K-64K=448K,其中后面的64K为TCMSRAM(紧耦合存储器SRAM)只可被Cortex ® -M4内核的数据总线访问,先不要乱分配
* -修改MDK链接脚本
* -修改board.h
* -修改MCU型号
* -Finsh控制台和LED1闪灯程序工作正常,串口控制台名称错误,从uart改为uart0
-Scons正常生成工程
* -发现GD32固件库当前没有240Mhz的时钟配置,将固件库升级为GD32F4xx_Firmware_Library_V3.0.3-发布时间为2023-01-04
* -修改bsp/gd32/arm/gd32407v-start/board/SConscript文件
* -修改led1和change logs
* -按照提交规范使能 One ELF Section per Function(MDK) 并用scons重新生成工程
* -发现整个GD32的IAR模板工程template.eww 是没有的,所以当前是不支持IAR开发的,需要后面学习一下IAR使用再实现了。
* -使用formatting源码格式化工具跑一边gd32470z-lckfb目录
* -使用formatting源码格式化工具跑一遍[components/net/netdev/src/netdev.c]
-三个月前的提交多了几个空格
2023-03-10 23:21:31 -05:00
guozhanxin abfaa4bc4e [net] fix LWIP_HOOK_IP4_ROUTE_SRC define 2023-03-10 19:29:01 -05:00
geniusgogo e29dfb75ca
Fix net (#7034)
* fix LWIP_HOOK_IP4_ROUTE_SRC.

* fix netdev ping select network card.
2023-03-10 16:16:41 +08:00
Zxy c8b30bf31a
[device]修改i2c读写函数返回类型为rt_ssize_t (#7029) 2023-03-09 23:42:58 -05:00
betesla d1baf1f5b5 [Fix]:fix at_server.c link failed when using ac6
use __ARMCC_VERSION to replace __CC_ARM
2023-03-03 19:04:43 -05:00
Shell 0de21341f9
[fix] mm bugs (#7010)
* [fix] implementation fault on avl

* [fix] mm may free varea allocated statically

* [test] add test and benchmark for avl
2023-03-03 11:51:21 +08:00
wangxiaoyao d1ed1c06cb [timer] use int pointer to interpret notify func in sevp 2023-03-02 15:48:46 +08:00
wangxiaoyao 31bfc855c1 [syscall][fix] kernel overwrite ustack data in timer create 2023-03-02 15:48:46 +08:00
zhkag 111a5b88cb smart select POSIX timer clock 2023-03-01 00:37:20 +08:00
Zxy f5798d9917
[pin][5.0.0] 修正pin框架数据类型使用不当 (#6934) 2023-02-26 21:17:51 -05:00
liYangYang 93d572dee6
[spi][5.0.0] 修正SPI设备框架中,对函数返回值类型使用不恰当的情况 (#6937) 2023-02-26 21:09:07 -05:00
geniusgogo ab7ab19be5
fixed ctime timer_delete timerid parameter check. (#6977)
* fixed ctime timer_delete timerid parameter check.
2023-02-27 09:59:45 +08:00
wangxiaoyao fef2607764 [lwp] save virtual addr in shm structure 2023-02-25 20:05:59 +08:00
geniusgogo a53367ac08 fixed O_LARGEFILE not defined ci build error. 2023-02-25 17:07:20 +08:00
geniusgogo 53afeda538 fix inet_ioctlsocket set O_LARGEFILE flag by musl. 2023-02-25 17:07:20 +08:00
geniusgogo d3553e7220 fixed fstat/stat/readlink syscall. 2023-02-25 17:07:20 +08:00
zhkag 4c1c6ef4e4 解决关中断时进行了调度操作 2023-02-25 02:46:01 -05:00
xqyjlj e50a7e3f85
🐞 fix(components/drivers/tty/pty.c): fix ptmx not init (#6970)
* 🐞 fix(components/drivers/tty/tty.c): fix wrong log format

* 🐞 fix(components/drivers/tty/pty.c): fix ptmx not init

*  feat(components/drivers/tty/pty.c): pts default use ECHO, ONLCR

* 🌈 style(components/drivers/tty/tty.c): format
2023-02-25 15:33:28 +08:00
Shell 382e9bcac7
[rt-smart] handling kernel from accessing unmapped user stack (#6957)
[rt-smart] handling kernel from accessing unmapped user stack
2023-02-24 14:52:16 +08:00
jonas 6d4764ad69 serial_v2 rt_device_write/read return data type as rt_ssize_t 2023-02-23 09:50:39 -05:00
guo 52cb2f0b7e
[lwIP] apply AF_UNIX feature (#6954) 2023-02-23 12:08:57 +08:00
liYony b3b8c2362d [spi] rt_spi_configure 增加对cs_pin处理 2023-02-22 21:18:05 -05:00
yangfasheng ff5894922a update rtdevice.h add lcd 2023-02-21 13:12:54 -05:00
wangxiaoyao 1c2daeafdc [fix] typo 2023-02-21 08:48:49 +08:00
wangxiaoyao 484a0d602e [fixup] add cache maintenance ops;
fix bugs on cache maintenance when starting user app
2023-02-21 08:48:49 +08:00
wangxiaoyao f84d89b0ca [libc] including musl signal.h with _POSIX_SOURCE 2023-02-21 08:48:49 +08:00
wangxiaoyao 855aef9c9c [mm] distinguish NULL and MAP_FAILED 2023-02-21 08:48:49 +08:00
xieyangrun 29c7278edc driver/fdt] add parse reg array, get address and size by index. 2023-02-21 08:47:25 +08:00
Bernard Xiong 0ea687e0cb [lwP] fix _m_lock in posix mutex 2023-02-21 08:47:00 +08:00
guozhanxin 1b3d287cee [revert] workqueue RT_THREAD_SUSPEND flag 2023-02-17 09:39:33 -05:00
guozhanxin b065486b23 [workqueue] Reduce critical section, improve performance 2023-02-16 20:59:14 -05:00
liYony bc385cd55c [spi]优化挂载函数对cs_pin的处理 2023-02-16 09:47:55 -05:00
zhkag 0f85648cfb
Improve timer accuracy and realize (#6926)
* add cputimer frame

* add cputime sleep

* ctime use cputime

* Processing cputime has no timeout function

* Migration cputime Code

* formatting file

* 整理代码

* add document copyright information

* 改 cputime_timer 为 cputimer

* 简化 _cputimer_list 初始化

* rt_cputimer_create -> rt_cputimer_init

* Remove RT_USING_CPUTIME and code cleanup.

* Remove RT_USING_CPUTIME in cputimer.c
* Set set_next_timeout as static function.

---------

Co-authored-by: Bernard Xiong <bernard.xiong@gmail.com>
2023-02-15 20:46:22 +08:00
Shell 2d09749086
[rt-smart] PV_OFFSET as a variable (#6904)
* [rt-smart/mem] remove pv_offset

* [rt-smart] list kernel space command

* [rt-smart] restore ioremap region

* [revert] restore kernel space isolation

* [rt-smart/pv_off] code format

* [rt-smart] add get_pvoff()

* [pvoffset] pvoff as constant for C codes

* [pvoff] pvoff as interfaces
2023-02-14 23:08:32 +08:00
Bernard Xiong fc1aced665
[FDT] Fix POSIX compatibility for string.h (#6923)
* [FDT] Fix POSIX compatibility for string.h

* [FDT] format libfdt code.

* [FDT] format libfdt code.
2023-02-13 16:36:16 +08:00
guozhanxin 03bcd0701c [ci] fix build error. 2023-02-13 10:56:17 +08: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
zhkag 657cbfdac7 修复编译警告 2023-02-09 15:21:17 +08:00
螺丝松掉的人 20459ec4d3
[ringbuffer] ringbuffer size boost to 32bit (#6915)
* ringbuffer size boost to 32bit
* 添加ringbuffer测试demo
related: #682
----
Co-authored-by: Zxy <1308465141@qq.com>
Co-authored-by: Man, Jianting (Meco) <920369182@qq.com>
2023-02-08 22:55:52 -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
geniusgogo 890c1c9264 fixed syscall errno return. 2023-02-07 12:05:48 -05:00
zhkag 7c1d6ffd3c add clock_cpu_settimeout function 2023-02-07 15:51:11 +08:00
zhkag f4e9ec82bb 修复纳秒微妙混用转换错误 2023-02-07 15:48:47 +08:00
zhkag bdd6811230 移除无用代码 2023-02-07 13:49:03 +08:00
zhkag edd9c6721f add timer lock 2023-02-07 13:49:03 +08:00
zhkag 7a1ad00aac update timer 2023-02-07 13:49:03 +08:00
xqyjlj 312eb0c412 🌈 style(components/dfs/filesystems/tmpfs/dfs_tmpfs.c): fix style 2023-02-07 11:31:15 +08:00
xqyjlj da8f5c08c2 🐞 fix(components/dfs/filesystems/tmpfs/dfs_tmpfs.c): cannot open the same file repeatedly in 'w' mode 2023-02-07 11:31:15 +08:00
Bernard Xiong 98e0c58527
Add ADT Kconfig and fix MMU kconfig issue in Cortex-A (#6901)
* Add ADT Kconfig and fix MMU kconfig issue in Cortex-A

* [BSP] enable ADT
2023-02-06 01:11:04 +08:00
Zxy fb8e9ea93a
[sensor] 修复命令交互使用日志输出API的问题 (#6895)
命令交互应使用rt_kprintf,而非LOG_x
2023-02-02 20:56:10 -05:00
soym 450cd68a4a fix typo https://github.com/armink/SFUD/pull/79 2023-01-29 21:21:44 -05:00
chenhy0106 9db73a47c4
为c906添加asid支持 (#6870)
* [rt-smart] asid for c906
2023-01-28 13:08:40 -05:00
bernard af143ee3f9 [devicedrivers] fix the partition issue in mmc/sdio 2023-01-23 19:16:28 -05:00
wdfk-prog da0c8a6d0a [Ymodem]sy命令支持绝对路径传输
* 接收错误流程优化
2023-01-22 20:07:03 -05:00
褚仕成 634ac13c12 Fix the comment in finsh_set_prompt_mode 2023-01-20 23:44:38 -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
Shell f0dadcb3c3
[rt-smart] porting c906 and D1s to mm (#6848)
* [rv64/bsp] porting to mm

* [mm] report more info for debugging

* [fix] code format

* [libcpu/c906] porting to RTOS

* [fix] using rtdbg api

* [fix] add return

* [fix] report more information for debugging

* [fix] use assert 0 for unrecoverable error
2023-01-16 08:24:03 +08:00
Shell b2402029b2
[rt-smart][fix/lwp] don't restore terminal for background lwp (#6847)
* [fix/lwp] don't restore term for background lwp
2023-01-13 09:48:43 +08:00
Shell 12189d533a
[rt-smart/mm] enable mm on armv7, armv8, rv64 only (#6834)
* [mm] enable mm on armv7, armv8, rv64 only

* [mm] config on ARCH_MM_MMU
2023-01-11 16:24:51 +08:00
xieyangrun 21472e3ff0 fix cputime and ctime. 2023-01-10 10:03:35 +08:00
wangxiaoyao 93dd8c6c6e [rt-smart] fix warnings 2023-01-10 09:37:22 +08:00
Meco Man 9bc68d26a4 format Kconfig and sconscript 2023-01-08 22:52:13 -05:00
Man, Jianting (Meco) f4b285dc9c
improve sensor framework (#6784)
* [stm32l475-pandora] rename sensor_port.c as drv_sensors.c
* [sensor][cmd] add enter critical section protection
* [sensor] add sensor reset command
2023-01-08 21:33:38 -05:00
Shell 7450ef6c4d
[rt-smart] kernel virtual memory management layer (#6809)
synchronize virtual memory system works.
adding kernel virtual memory management layer for page-based MMU enabled architecture
porting libcpu MMU codes
porting lwp memory related codes
2023-01-08 21:08:55 -05:00
zhkag 7f9ccd3c80 格式化代码 2023-01-09 09:32:07 +08:00
zhkag 7fc3b2d7b5 添加 sys_mq_close 函数 2023-01-09 09:32:07 +08:00
zhkag ce308cd965 更新 mq syscall 2023-01-09 09:32:07 +08:00
zhkag e6ce21e4b5 更新 mq_setattr 2023-01-09 09:32:07 +08:00
zhkag dcaa0c166d 【更新】 消息队列存在时,使用 O_CREAT 不应创建新的消息队列 2023-01-09 09:32:07 +08:00
zhkag 1730874cd8 简单赋值防止数据被优化 2023-01-09 09:32:07 +08:00
zhkag a15a5b19a4 修复 mq_timedreceive 中 mq_timedreceive 为空时断言 2023-01-09 09:32:07 +08:00
zhkag 0c3a705482 修改 mq 句柄偏移 2023-01-09 09:32:07 +08:00
liYangYang 7c05d8517c
[STM32][SPI]解决挂载函数里面不同bsp对uaer_data的滥用 (#6819)
* [spi]attach 片选引脚依赖pin框架
* 修改attach函数
2023-01-07 23:03:42 -05:00
wdfk-prog 8f0cef3a87
[drivers][serial_v2]修复DMA+TX阻塞模式异常 (#6781)
* [drivers][serial_v2]修复DMA+TX阻塞模式异常
2023-01-05 01:25:16 -05:00
Man, Jianting (Meco) 5ca410bb4b Update signal.h 2023-01-04 13:59:22 +08:00
wangxiaoyao 6a25a68be6 [libc] redirecting header sys/signal to signal 2023-01-04 13:59:22 +08:00
kylongmu 0b58637a49
USB CDC驱动在win11下无法识别,看了微软的描述修改子类后正常 (#6783)
这是微软关于此问题的链接:
 https://learn.microsoft.com/zh-cn/windows-hardware/drivers/usbcon/usb-driver-installation-based-on-compatible-ids#usbsersys-installation
Windows 10 及更高版本
从 Windows 10 开始,Usbser.inf 已添加到 %Systemroot%\INF 目录,该目录加载 Usbser.sys 作为设备堆栈中功能设备对象 (FDO) 。 如果设备属于通信和 CDC 控制设备类, Usbser.sys 加载。 无需编写自己的 INF 来引用驱动程序。 驱动程序是基于与包含在 Windows 中的其他 USB 设备类驱动程序相似的兼容 ID 匹配来加载的。

USB\Class_02

USB\Class_02&SubClass_02

如果要自动 加载Usbser.sys, 在设备描述符中将类代码设置为 02,将子类代码 设置为 02。 有关详细信息,请参阅 USB 通信设备类。 使用此方法时,无需为设备分发 INF 文件,因为系统使用的是 Usbser.inf。
如果设备指定类代码 02,但子类代码值不是 02,则 Usbser.sys不会自动加载 。 即插即用管理器尝试查找驱动程序。 如果找不到合适的驱动程序,则设备可能未加载驱动程序。 在这种情况下,你可能需要加载自己的驱动程序或编写引用另一个内置驱动程序的 INF。
2023-01-02 22:25:54 -05:00
Meco Man e97ba95f71 [libc][unistd.h] define F_OK 2023-01-02 15:01:20 -05:00
Meco Man 4ce39dd744 [libc][time] 修正POSIX 时间相关函数返回值错误 2022-12-29 20:23:33 -05:00
Bernard Xiong 8a71ae75ad
[BSP][smart] fix link script for smart in vexpress-a9 (#6764) 2022-12-29 15:18:36 +08:00
Meco Man b1763e6903 [sensor] add setting power/accuracy/fetch data mode commands 2022-12-26 02:10:30 -05:00
Meco Man 3a7ee55780 [sensor] 优化control参数检查和sensor list命令 2022-12-26 02:10:30 -05:00
Meco Man 20a6f14e89 use PIN_IRQ_PIN_NONE to replace RT_PIN_NONE 2022-12-26 02:10:30 -05:00
Meco Man 2570fab0e1 [sensor] add sensor list command 2022-12-26 02:10:30 -05:00
Meco Man d2bab6d7ad [sensor] add LSC chip vendor 2022-12-26 02:10:30 -05:00
Meco Man d3c77d907f [sensor] set power and accuracy as the hightest level 2022-12-26 02:10:30 -05:00
Meco Man 8971545d8e [sensor] improve commands 2022-12-26 02:10:30 -05:00
bernard 1f092da9e0 fix compiling warning. 2022-12-26 14:24:26 +08:00
wdfk-prog f4c08cfe36 修改printf格式“%-*.s”为“%-*.*s 2022-12-22 22:51:24 -05:00
Man, Jianting (Meco) 262392a69c
[sensor] draft new sensor-hal framework (#6746)
* [sensor] new sensor framework
针对老版本sensor框架的诸多不合理设计进行重构
之前的PR中已经重构了浮点数相关的问题
本次PR主要围绕sensor的整体架构予以重构,对过于理想化的参数和模式予以删除
* [sensor] 增加can modbus总线类型
* [stm32l745] 完善sensor对接
* [sensor] fix the onchip ID print
2022-12-21 21:24:51 -05:00
Shell e8504c7cf1
[smart/aarch64] code sync (#6750)
* [smart/aarch64] sync aarch64
2022-12-20 17:49:37 +08:00
梁生 2f214d03c0
[fal] fal_rtt.c消除函数strtol()隐含声明的警告 2022-12-19 18:15:40 -05:00
Yaochenger 0df51b8aa9 [components][libc] 在rv32下编译时cstring.c中的strtok_r函数与libc.a中的strtok_r重定义,添加rt_weak 2022-12-18 23:38:41 -05:00
guo 68ca9f07a6
[rt-smart] 弱化 RT_USING_LWP,使用 RT_USING_SMART 作为宏配置 (#6740)
* [dfs] sync cromfs

* [rt-smart]Weaken RT_USING_LWP, use RT_USING_SMART as macro configuration

* [format] fix some format issue.
2022-12-16 18:38:28 +08:00
褚仕成 4246275e6e add "\n" to cat 2022-12-15 11:34:00 -05:00
joechenchen ee632c21a8 fix:三字节读命令0x03,四字节读命令0x13,当命令为0x03需要加上0x10 2022-12-15 01:08:21 -05:00
guo 0bc01ad0d9
[dfs] sync cromfs (#6739) 2022-12-14 22:28:34 +08:00
tangzz98 89c3bf5f92 ESP32_C3: Improve Readme, fix compile errors/warnings 2022-12-13 11:50:29 +08:00
Meco Man 9860b168b8 [sensor] 增加新传感器类型和单位 2022-12-12 22:44:07 -05:00
Bernard Xiong 2aa600e01b
[components] fix compiling warning (#6733) 2022-12-13 09:44:45 +08:00
bernard aa0c8b4a93 [components] fix format issue 2022-12-12 20:24:10 -05:00
Man, Jianting (Meco) 8b5a501831
[sensor][cmd] add sensor_get_type/vender/unit_name functions (#6727)
* [sensor][cmd] add sensor_get_type/vender/unit_name functions

* rename sensor folder
2022-12-11 22:45:04 -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
Shell e991be9c51
[smart][risc-v/libcpu] port rv64 cpu code (#6704)
* [risc-v/libcpu] porting Smart & RTOS
* [fix] rv64 plic
* [risc-v/rv64] remove macro in rtdef
2022-12-10 22:16:42 +08:00
guozhanxin b5d77bbf37 [rtsmart] fix uart can't input after userapp exited at rv64 platform. 2022-12-09 07:54:29 -05:00
zhkag 2e488e0440
[rt-smart]同步 gitee nanosleep 修复 (#6710) 2022-12-08 10:02:40 -05:00
Yohozzy 6fcbd418e5
canfd帧结构加入 brs控制位 (#6701) 2022-12-07 01:49:44 -05:00
tangyuxin a535218ba6 [shell]list_mutex show suspended Threads 2022-12-06 21:15:13 -05:00
guozhanxin eb66f2c964 fix system muti-define when enable RT_USING_MODULE 2022-12-06 20:53:20 -05:00
yangjie11 2cc9bd7936 [components/finsh]使 list 命令的解释对齐 2022-12-06 20:53:01 -05:00
wdfk-prog f54f2c2c91 [ymodem]添加传输过程中的异常处理流程 2022-12-05 23:07:27 -05:00
jaffer fa1f6c22e5 [fix]修复模拟i2c驱动延时bug
Signed-off-by: jaffer <jaffer.work@foxmail.com>
2022-12-05 21:38:02 -05:00
bernard c53d9da22e [lwIP] fix lwip sem/mutex valid issue. 2022-12-03 14:21:06 -05:00
guo ecf2d82159
sync branch rt-smart. (#6641)
* Synchronize the code of the rt mart branch to the master branch.
  * TTY device
  * Add lwP code from rt-smart
  * Add vnode in DFS, but DFS will be re-write for rt-smart
  * There are three libcpu for rt-smart:
    * arm/cortex-a, arm/aarch64
    * riscv64

Co-authored-by: Rbb666 <zhangbingru@rt-thread.com>
Co-authored-by: zhkag <zhkag@foxmail.com>
2022-12-03 12:07:44 +08:00
wdfk-prog cef57d006d
[armlibc] 修复AC6更新至6.19后_sys_tmpnam()函数编译报错 (#6647)
* [armlibc] 修复AC6更新至6.19后_sys_tmpnam()函数编译报错

Co-authored-by: Man, Jianting (Meco) <920369182@qq.com>
2022-11-24 00:12:48 -05:00
Meco Man 3e2beebe43 [libc][musl]解决signal.h报错的问题 2022-11-22 22:18:26 -05:00
Man, Jianting (Meco) bdd663a33f
[libc][musl] support arm-linux-musleabi toolchain
目前基本功能已经可以在QEMU上跑起来,但是pthread和内核signal选中会报冲突。先合并一版本,后续解决这些问题。
2022-11-22 21:40:50 -05:00
wdfk-prog 569e2ae1e8
[CAN]update struct can_filter_item and rt_can_msg (#6556)
* 修改ry命令,已便于自定义保存路径

* modified:   components/utilities/ymodem/ry_sy.c

* 修复从被动错误恢复后发送返回异常

* 修复在自动重传模式下,ACK异常阻塞线程
- 删除TX中断函数else分支。仅当RQCP位 置一才进入该中断
- 添加SCE中断函数中关于ACK_ERR的else判断。自动重传模式下会进入该判断,打断自动重传释放完成量。

* 增加对于CAN1与CAN2的SCE中断和TX中断的公共处理函数

* formatting格式化代码

* update struct can_filter_item and rt_can_msg
1. 对过滤器号和索引号结构体定义中同一名称hdr进行重命名hdr_bank和hdr_index,
以便准确区分.采用宏定义兼容以前变量名.
2. 添加接收标识rxfifo,已指明是哪个RXFIFO.

* 更正42M下的波特率

* 修复接收获取索引号错误

* 添加接收标识

* 更新注释

* 取消CANFD限制

* update struct can_filter_item and rt_can_msg
2022-11-21 21:45:51 -05:00
Meco Man 84eab69604 [msh] remove list_xxx commands, use 'list' to replace 2022-11-21 21:39:45 -05:00
Meco Man 66411e0828 [sensor] improve cmd
using floating print format by default
2022-11-21 21:31:16 -05:00
Meco Man 953a8c265d add rt_sensor_float_t 2022-11-19 00:54:22 +08:00
Meco Man df397eb767 [sensor] 传感器数据类型使用float代替rt_uint32_t类型 2022-11-19 00:54:22 +08:00
myshow2258 87be8fdba8 Modified bsp/stm32/libraries/HAL_Drivers/drv_usbd.c
Modified   components/drivers/usb/usbdevice/class/cdc_vcom.c
修复cdc在v1v2的serial框架下接收发送错误的问题.stm32下usbd添加更多的ep_id,以支持复合设备.
2022-11-14 23:47:49 -05:00
Meco Man d1c353f6b6 [kernel] 优化Sconscript脚本 2022-11-14 22:20:23 -05:00
Meco Man 6b9bdc12a9 [sensor] use arg to replace user_data 2022-11-14 22:19:47 -05:00
Yohozzy b64f21e628 Update netdev.c 2022-11-14 22:18:41 -05:00
a1012112796 5370d4da50 replace `rt_enter_critical` with `dfs_lock` for list_fd
I found that if use mutex in `rt_kprintf`,
the `rt_enter_critical` will create a assert
error later. after chehcking,I found all
operation with fd_table has using
`dfs_lock/unlock` to protect. so I think
using `dfs_lock` is enough. thanks.

Signed-off-by: a1012112796 <1012112796@qq.com>
2022-11-09 22:41:15 -05:00
Meco Man f57eb4feb5 [sensor] 修改fetch_data方法的参数数据类型为rt_sensor_data_t 2022-11-09 17:23:27 +08:00
Meco Man f550fc58a9 [sensor]修改传感器设备名称前缀 2022-11-09 17:23:27 +08:00
Meco Man 39b25f660a [sensor] use rt_ssize_t as the return value data type 2022-11-09 17:23:27 +08:00
Meco Man 255020bca8 [sensor] 统一数据结构名称和函数命名 2022-11-08 12:17:50 -05:00
xiao xie 1755750b2a
[sdio] remove mmcsd_delay_ms
修改SD检测线程函数里面的延时实现,将mmcsd_delay_ms改为rt_thread_mdelay. mmcsd_delay_ms过时且延时计算错误。
2022-11-08 00:34:43 -05:00
Meco Man 1831661c4a [sensors] remvoe useless sensor.h 2022-11-06 23:07:30 -05:00
Bernard Xiong 79e298147b
Merge pull request #6523 from BernardXiong/nested_mutex
[Kernel] Add nested mutex feature
2022-11-06 08:59:12 +08:00
xiaoguang_ma e663d2d870 bugfix: remove sdcard block dev may cause a constant loop. 2022-11-02 15:27:41 +09:00
Meco Man 721c08dc61 [libc][time] 解决部分编译平台CLOCKS_PER_SEC无法被重新定义的问题 2022-10-28 18:13:15 -04:00
朱天龙 (Armink) 4c92886ee5 [net/lwip] Fix ppp retry assert error when tcp is connect. 2022-10-27 00:01:55 -04:00
Man, Jianting (Meco) 055267f049
[compiler] 增加SConscript依赖标志 AddDepend (#6534)
* [compiler] 增加SConscript依赖标志 AddDepend

* RT_USING_NEWLIB->RT_USING_NEWLIBC RT_USING_ARM_LIBC->RT_USING_ARMLIBC

* 删除过时的板载测试例程

* [gd32] 移除无用的反汇编文件

* [bsp]移除老旧bsp中对RT_USING_NEWLIBC的手动宏定义
2022-10-25 00:01:37 -04:00
Maihuanyi de1d6dbc0e
ymodem of send error (#6535)
* modified ymodem.c to solve ymodem send file error

* modified ry_sy.c to solve send file error of file data

* Update ry_sy.c

Co-authored-by: guo <guozhanxin@rt-thread.com>
2022-10-23 22:33:31 -04:00
Yunjie Gu 8fa9fde43a
[bsp][c28x] add support to not disable global interrupt in context-switch to enable zero-latency isr for critical interrupts. 2022-10-19 23:41:13 -04:00
SNOWA 3400a79035 Update at_utils.c
如果打印格式为"%02X"的数据大于0x7F,打印的数据就会在前面多出6个'F',原因详见https://blog.csdn.net/zqxwce821/article/details/53011925。
现在通过强制转换成unsigned char后,在STM32(KEIL5+C99)已测试确认能修复该问题。
2022-10-19 22:28:36 -04:00
Bernard Xiong 34c77da153 [Kernel] Add nested mutex feature 2022-10-15 16:19:13 +08:00
YuQi 94221bbdd8
[bsp][c28x] 新增adc驱动 (#6520)
1. 在c28x文件目录上一层再套一层文件夹ti,目前28379的项目路径为rt-thread\bsp\ti\c28x\tms320f28379d
2. 新增adc驱动与kconfig配置
2022-10-15 00:56:00 -04:00
朱天龙 (Armink) 748f6afd5e [DeviceDriver][serialv2] Support configure when serial is open. 2022-10-12 14:21:41 +08:00
a1012112796 ab8c1418a6 tshell is the default value of FINSH_THREAD_NAME 2022-10-10 17:48:21 -04:00
winfenggao 74fd07a565
lseek()函数中,当seek到文件的位置和当前位置相同时,不需要调用dfs_file_lseek()函数,直接返回当前位置即可。 (#6498)
当seek到文件的位置和当前位置相同时,不需要调用dfs_file_lseek()函数,直接返回当前位置即可。
同时,以lseek(fd,0,SEEK_CUR)的方式执行函数可以返回文件当前读去位置,可以实现
ftell()的功能.
以lseek(fd,0,SEEK_CUR)的方式执行函数返回文件当前位置,实现ftell()的功能时不用调用dfs_file_lseek()函数,提高效率;seek(fd,0,SEEK_CUR)本来就能返回当前位置。
2022-10-10 17:48:02 -04:00
朱天龙 (Armink) 35c7dd6aba [ulog] fix HEX log size calculate error. 2022-10-10 08:47:41 -04:00
xiaoguang_ma 80f495de4a bug fix
When detecting all SDIO devices fails, it is also necessary to return information
2022-10-09 14:55:01 +08:00
朱天龙 (Armink) a48f446a0f
[components][utilities][ulog] Improve the HEX LOG by new formater. (#6490)
- 重构格式化器
- 重写 HEX 日志功能,与标准日志使用相同的格式化器。与标准日志在日志过滤功能和日志头显示功能上一致
2022-10-08 22:33:10 -04:00
Tangyuxin ca30428cee
修复低概率终端无法输入问题 (#6464)
* [ulog] Fix the problem that the terminal cannot input

* [mem] Fix NULL pointer access
2022-09-27 11:11:29 +08:00
YuQi 5debfdd84d
[TMS320F28379] implement PWM driver (#6457)
增加c28x芯片的pwm驱动
已经在TMS320F28379中通过测试
pwm设备框架增加如下方法:
#define PWM_CMD_SET_DEAD_TIME (RT_DEVICE_CTRL_BASE(PWM) + 8)
#define PWM_CMD_SET_PHASE (RT_DEVICE_CTRL_BASE(PWM) + 9)
#define PWM_CMD_ENABLE_IRQ (RT_DEVICE_CTRL_BASE(PWM) + 10)
#define PWM_CMD_DISABLE_IRQ (RT_DEVICE_CTRL_BASE(PWM) + 11)
2022-09-25 22:41:00 -04:00
Wayne dc9887913b
[usbhost] List keyboard option. (#6456)
* [bsp/nuvoton] Support NuMaker-M467HJ BSP and update drivers.

* Format files.

* [usbhost] List keyboard and update driver.

* Enlarge to reasonable thread stack size.

* Do indent..

* Keep private.

Co-authored-by: Wayne Lin <wclin@nuvoton.com>
2022-09-22 23:23:28 -04:00
wdfk-prog a4bd223e20
修改Ymodem组件中MSH的ry命令,已便于自定义保存路径 (#6433)
* 修改ry命令,已便于自定义保存路径

* modified:   components/utilities/ymodem/ry_sy.c
2022-09-20 10:31:34 -04:00
Tangyuxin a4829b1c00
[fix] Fix simulator compilation warnings (#6438)
* [fix] Fix simulator compilation warnings

* Update bsp/simulator/rtconfig_project.h

Co-authored-by: Man, Jianting (Meco) <920369182@qq.com>
2022-09-20 10:31:11 -04:00
Meco Man 981e721c3b [kernel] add rt_ssize_t data structure 2022-09-16 17:26:07 +08:00
lhylhylhy6 5ccb0bbeaf [modify]修改components/drivers/spi/sfud/README.md文件 2022-09-09 00:37:23 -04:00
Meco Man ce16945cba [kernel][version] 采用新的版本宏定义
版本控制规范:https://semver.org/

目前的版本子号不是很规范,其中RT_VERSION甚至和VS那边造成了冲突
```c
/* RT-Thread version information */
#define RT_VERSION                      4L              /**< major version number */
#define RT_SUBVERSION                   1L              /**< minor version number */
#define RT_REVISION                     1L              /**< revise version number */
```

参考ESP32:
```c
/** Major version number (X.x.x) */
#define ESP_ARDUINO_VERSION_MAJOR   2
/** Minor version number (x.X.x) */
#define ESP_ARDUINO_VERSION_MINOR   0
/** Patch version number (x.x.X) */
#define ESP_ARDUINO_VERSION_PATCH   3
```

建议改成:
```c
/* Major version number (X.x.x) */
#define RT_VERSION_MAJOR   4
/* Minor version number (x.X.x) */
#define RT_VERSION_MINOR   2
/* Patch version number (x.x.X) */
#define RT_VERSION_PATCH   0
```
2022-09-07 10:11:45 -04:00
lhylhylhy6 45244037de
[modify]修改waitqueue.c注释中的错误 (#6376) 2022-09-06 00:29:05 -04:00
liYangYang d25bf469fa
[rt_drv_pwm]完善PWM框架互补输出部分代码 (#6338)
* [pwm]Improve the code

* 将与bsp无关的代码移植到框架部分

* 添加注释
2022-09-01 00:59:44 -04:00
liYangYang 6ac09a6db0
[spi]fix some bug for rt_spi_sendrecv16 (#6360)
修复 rt_spi_sendrecv16 api 对最高有效位(MSB or LSB)的处理不当造成的一些问题。

https://github.com/stm32duino/Arduino_Core_STM32/blob/main/libraries/SPI/src/SPI.cpp#L273
2022-09-01 00:36:45 -04:00
Meco Man b04076d8aa [armlibc] solve the compiling error
report in #6300
2022-08-17 23:48:05 -04:00
MysticBoy a0c3dc4c5b
针对 TAMAGAWA 的 Smart-Abs 设备 TS5705N50添加 2.5M 波特率 (#6294)
* 针对 TAMAGAWA 的 Smart-Abs 设备 TS5705N50添加 2.5M 波特率
2022-08-17 04:30:17 -04:00
xjy198903 840f6b997c
[nxp][imxrt1170]Fix building problem (#6297) 2022-08-17 04:28:58 -04:00
Meco Man dd94198bd6 [gcc][armcc][armclang] rtconfig.CROSS_TOOL->rtconfig.PLATFORM 2022-08-16 09:39:00 +08:00
Meco Man bd33d37bc4 该问题在Keil-MDK中没有一个太好的解决方案。本PR为权衡利弊之后得到的一套解决方案。Keil曾经提供了底层桩函数_sys_ensure,但是目前已经被废弃。因此唯一的解决方案就是每写完一句,就调用fsync去同步一次。
该问题在mbedos社区也进行过讨论,他们也面临和我们相同的两个问题:
1. Keil-MDK无有效的fflush解决方案,mbedos依然在使用淘汰的_sys_ensure桩函数。
2. Keil-MDK没有fileno函数,我方少部分软件包因此而无法使用Keil平台编译。
参考:https://github.com/ARMmbed/mbed-os/issues/1601

issue: https://github.com/RT-Thread/rt-thread/issues/4928


经过进一步测试发现,Keil-MDK中的fflush函数已经退化成服务于STDOUT的函数,Keil-MDK内部有一个buffer可以存放fputc(stdout) 发过来的数据,如果调用fflush,这些数据是可以flush出去的。但是如果是真正的文件数据,fflush函数并没有提供任何桩函数接口可以让文件flush数据出去。
2022-08-16 09:37:24 +08:00
gbcwbz 84fe80fbf9 [DeviceDriver] Fix can infinite loop when can driver send error
- in _can_int_tx if can driver sendmsg do not return RT_EOK,
   it will repeat until sendmsg return RT_EOK
 - if error occur on can bus(wire broken or EMI), all threads that
   have lower priority will not be executed
 - we should let application layer to determine if resend is appropriate
   when send fail, besides in data link layer, can already implemented
   auto resend in hardware
2022-08-13 23:07:43 -04:00
Fan Yang 666af5e29d
[DeviceDriver] Add CANFD support and correct typos (#5912)
* Add CANFD support and correct typos

- Added CANFD required fields to can.h
- Fixed typos in can.h and can.c
- Corrected all the projects affected by the typo
- Fixed wrong line-ending in some affected can driver files

Signed-off-by: Fan YANG <fan.yang@hpmicro.com>

* update

Signed-off-by: Fan YANG <fan.yang@hpmicro.com>
Co-authored-by: Meco Man <920369182@qq.com>
2022-08-13 22:59:28 -04:00
Meco Man a0cfdbdaad [sfud] keep macros in order attach #6255 2022-08-13 22:04:46 -04:00
tfx2001 218cdbce4e add assert for serial v2 2022-08-13 17:04:08 -04:00
Meco Man b7572303f0 [sfud] 同步上游 2022-08-11 23:14:19 -04:00
chinky 4c74eb1add [SFUD]support NM25Q128EVB 2022-08-11 22:19:45 -04:00
Man, Jianting (Meco) 8da744a750
[exit] 修复_exit函数条件分支未覆盖所有情况的问题 (#6239)
attach #6229
2022-08-08 17:21:29 +08:00
xiangxistu e61d05ca1a
[fix] the risk for function exit() when open pthread support. (#6229)
* [fix] the risk for function exit() when open pthread support.
* [update] modify annotation from "user data" to "pthread_data".
2022-08-07 23:16:17 -04:00
Meco Man c33289ace7 [ymodem] move error codes to rym_code to silence warnings 2022-08-04 01:50:04 -04:00
Meco Man 067315ff40 [phy] fix the PHY_FULL_DUPLEX conflicts 2022-08-03 22:45:27 -04:00
HubretXie 223bc17df9
[serial_v2] fixed bug (#6213)
* [kernel][timer] fixed bug serial_v2 驱动问题,导致所有写入都使用阻塞方式写入
2022-08-03 22:42:20 -04:00
dongly 3363586cbb
Fix some compilation warning (#5744)
* Fix some compilation warning

* 补充修正一些数据类型的使用错误

Co-authored-by: Meco Man <920369182@qq.com>
2022-08-02 12:09:49 -04:00
tyx 1579f0c02b [components][var_export] 添加获取长度及二分查找功能 2022-08-01 23:11:13 -04:00
Aligagago 250b3cbc16 使用 AStyle.exe 统一代码格式 2022-07-27 11:45:29 +08:00
liYang~ 32ed7dcfd2
修复了pwm互补输出的一些bug,并在finsh中添加使用说明 (#6191)
* Fix the bug of complementary output
2022-07-26 10:07:07 +08:00
Tangyuxin f82705db1d
[touch] 调整触摸头文件至 rtdevice.h 中 (#6180) 2022-07-23 11:48:26 +08:00
Jiang Runnan 37fcfdb972 Solve the problem that LOG_W() may not be recognized when the INPUT CAPTURE module is enabled,which may cause the compilation failure. 2022-07-22 14:25:43 +08:00
Meco Man a924da830e [libc] 修复difftime函数在IAR下的编译错误 2022-07-20 10:07:03 +08:00
Man, Jianting (Meco) 5b6a257c20
chore: fix a typo (#6154) 2022-07-10 18:00:12 +08:00
Meco Man b01c2b8a5a [msh] add available memory information for free cmd 2022-07-07 18:08:06 +08:00
Dengguiling aa2d2c63f6
[compoenets][driver][usb] fix usbhost hid issues. (#6116)
* [compoenets][driver][usb] fix usbhost hid issues.

1.Set idle function should receive an empty package.
2.Fix uinst_t reference error in hid enable function.
2022-07-07 16:10:43 +08:00
liuxianliang a305edd4db [fix] memory leak when the value of posix semaphore is zero. 2022-07-07 16:05:49 +08:00
liuxianliang cca2f40ae0 [add] implement about "AT server". 2022-07-04 11:03:01 +08:00
BreederBai b2bc0dcd16
[rt_drv_pwm]增加API:增加单独设置PWM频率和脉宽的函数 (#6130)
* [rt_drv_pwm]增加API:增加单独设置PWM频率和脉宽的函数
2022-07-04 10:40:42 +08:00
Stanley Lwin 02a0da51c3
List command (#6134)
* initial commit for list cmd
2022-07-04 09:38:50 +08:00
Meco Man 9623706eff Revert "解决将RT_NULL当做数字0使用的问题"
This reverts commit 6a05ddf63d.
2022-07-01 15:51:28 +08:00
Meco Man 6a05ddf63d 解决将RT_NULL当做数字0使用的问题 2022-07-01 11:39:28 +08:00
Meco Man 584d06bd27 [finsh]修复使用finsh_set_prompt重定向了msh提示符的名称后,路径功能没有的问题 2022-07-01 11:38:31 +08:00
xiangxistu c2cdce970d
[fix] use atomic operation to protect pthread conditional variable. (#6113)
* [fix] use atomic operation to protect pthread conditional variable.
2022-07-01 09:36:18 +08:00
Man, Jianting (Meco) e1e1596cbd
[iar] 修复编译错误 (#6126) 2022-07-01 09:15:29 +08:00
a1012112796 697bf139b2
[enhancement] Add string information for error (#3186)
* [enhancement]Add string information for error

* Update src/kservice.c

* Update src/kservice.c

Co-authored-by: Man, Jianting (Meco) <920369182@qq.com>

* remove %m

Signed-off-by: a1012112796 <1012112796@qq.com>

Co-authored-by: Meco Man <920369182@qq.com>
2022-06-29 14:21:21 +08:00
Man, Jianting (Meco) 8275e90203
[libc][newlib] format (#6104) 2022-06-23 14:38:26 +08:00
Meco Man 1c95670bef [rtdevices] eliminate recursion 2022-06-22 14:48:00 +08:00
Man, Jianting (Meco) 2c10d5ad01
[rtc] use gmtime_r to replace gmtime (#6012)
* [rtc] use gmtime_r to replace gmtime
2022-06-22 13:41:06 +08:00
Meco Man 4f1f8566f4 [spi] fix issue report #6008
rt_spi_sendrecv8()存在可能未初始化值返回的情况
2022-06-22 11:52:06 +08:00
Man, Jianting (Meco) d5afcd7f0d
fix the error return (#6097) 2022-06-22 11:51:49 +08:00
Man, Jianting (Meco) 8bee7a0c23
[libc] implement extension standard C functions (#6044)
* implement extension standard C functions
2022-06-19 21:56:24 +08:00
Man, Jianting (Meco) fb941e6d8d
[fingbuffer] fix a typo (#6075) 2022-06-17 18:46:46 +08:00
guo b1fab8942a
[msh]Restore the free command.|还原 free命令。 (#6084) 2022-06-16 14:19:24 +08:00
solar_li a50018c57e
[stm32][soft spi] implement soft spi (#6078)
* [stm32][soft spi] implement soft spi
2022-06-16 10:54:30 +08:00
Meco Man 808259135f [cputime] suuport perf_counter 2022-06-15 17:30:28 +08:00
wanghaijing 0827ca64d0 Fix rt_qspi_send symbol extension BUG 2022-06-15 10:37:49 +08:00
Meco Man c9878aacd2 [scons][iar] 将IAR的PLATFORM字段由iar调整为iccarm
将路径更新为IAR最新版本的路径
2022-06-09 07:01:59 +08:00
Meco Man 83b3aadaa3 [Scons][iar][iccarm] IAR统一使用iccarm作为判断条件而不是是用IDE的名字来进行判断
因为不确定后续IAR是否会像Keil一样内含有不同的编译工具链
此外,将判断条件改为列表方式,这样更方便后续增加其他可能的IAR编译链
2022-06-09 07:01:59 +08:00
Meco Man 50f041f5c2 [Scons] 将GCC判断条件改为列表方式,方便后续增加新的编译工具链 2022-06-09 07:01:59 +08:00
chunyexixiaoyu 37d0be3290 [libc][time] solve the problem which the os tick can be calculated wrongly because the local variable was not initialized. 2022-06-08 14:34:04 +08:00
Tangyuxin f5c88add37
Fix compiler warnings (#6023) 2022-06-08 01:21:50 +08:00
gbcwbz ecde6d2dcf
[libc][time] Fix clock_gettime for CLOCK_CPUTIME_ID (#6029) 2022-06-05 22:51:22 +08:00
Man, Jianting (Meco) fb3f835089
[libc] remove strdup from rtthread.h (#6026)
add __STDC_LIMIT_MACROS macro in Keil
add RT_USING_LIBC in simulator
add _DLIB_ADD_EXTRA_SYMBOLS=0 in IAR
2022-06-04 17:02:35 +08:00
Man, Jianting (Meco) 02b176f8cb
[arduino] add comment (#6016) 2022-06-04 13:20:30 +08:00
xiangxistu 2f9f39764d
[add] winsock implement on windows simulator. (#6010)
* [add] winsock implement on windows simulator.
2022-05-31 11:50:17 +08:00
Man, Jianting (Meco) c52c1c5521
[spi device] remove _spi_bus_device_control (#5898) 2022-05-30 18:05:05 +08:00
Tangyuxin 577d619d4c
[net][lwip] Support windows simulator (#5993) 2022-05-30 18:01:18 +08:00
xfwangqiang e8d775f888
[componnets][pin]add pin operate command in MSH (#5892)
* 1. 在AT32的BSP的drv_gpio中增加了at32_pin_get函数,用于实现rt_pin_ops对象中的pin_get
2. 在MSH中增加了PIN的操作命令
3. 为了方便在MSH命令中解析字符串,增加了一些字符串相关的函数
2022-05-30 18:00:26 +08:00
Stanley Lwin 04a17d469a
[device][adc] implement adc_get_vref (#5988)
* add adc_get_vref

add stm32_adc_get_vref
2022-05-29 10:22:33 +08:00
Tangyuxin ccfd2c3b28
[drivers][hwcrypto] Correct function return value definition (#5984) 2022-05-28 10:02:19 +08:00
Chester guo 1e27372e3e
Modify wlan framework (#5076)
* update auto connect use sys work.
* add fast connect.
* update wlan cmd, support scan result report user-level callback.

Co-authored-by: zetingxu <zetingxu@bestechnic.com>
Co-authored-by: liu2guang <liuguang@rt-thread.com>
Co-authored-by: guodi <guodi@rt-thread.com>
Co-authored-by: geniusgogo <xpxyr@sina.com>
2022-05-25 10:25:33 +08:00
Meco Man c8c24ae7ab [libc] revert back difftime 2022-05-25 10:05:59 +08:00
tyx 4f342456b3 [ulog] Optimize unnecessary refresh 2022-05-25 10:05:41 +08:00
Meco Man 42a136288d [adc][pwm] correct the command description 2022-05-25 10:04:33 +08:00
Wayne 37d9921aa8
[MTD-NAND] Add private data pointer. (#5974)
* Disable TRNG function in default configuration.

* Fix building issue

* To catch context of upper file system.

Co-authored-by: Wayne Lin <wclin@nuvoton.com>
2022-05-23 01:47:07 +08:00
xiangxistu 4961ed59ba
[bug] use pointer that memory had freed. (#5971) 2022-05-23 01:46:22 +08:00
Stanley Lwin f92c26a60b
[adc.c] add finsh voltage conversion command (#5937)
* Update adc.c

add finsh voltage conversion command
2022-05-19 10:36:50 +08:00
Man, Jianting (Meco) c147ff417c
[rtdef][libc] solve the conflicts between libc data types and rtdef data types (#5961) 2022-05-19 10:35:32 +08:00
lgnq 50a42331e6
Add RT_SENSOR_VENDOR_MELEXIS in sensor_cmd.c (#5966)
* Add RT_SENSOR_VENDOR_MELEXIS in sensor_cmd.c

print vendor information of Melexis in the function sensor()
2022-05-19 10:20:39 +08:00
Stanley Lwin 3ecfe9c61e
[rt_drv_pwm.c] add finsh pwm function (#5944)
* add finsh pwm function
2022-05-19 10:18:55 +08:00
Meco Man 08737c2a26 [simulator] 消除windows下的警告 2022-05-19 09:43:20 +08:00
liuxianliang 6dd6929b8e [fix] return "EINVAL" if "count" is zero. 2022-05-18 08:44:30 +08:00
liuxianliang 9f5a9b6bc8 [modify] the recycle logic about resource of pthread. 2022-05-18 08:44:30 +08:00
lgnq 9ab2094ef6 Add RT_SENSOR_VENDOR_MELEXIS in sensor.h
Melexis is the fourth largest automotive sensor manufacturer in the world.
www.melexis.com
2022-05-18 08:43:36 +08:00
Meco Man 2575a93516 rename sal.h as sal_low_lvl.h 2022-05-16 10:02:22 +08:00
Meco Man 0e5bb9d042 revert docking 2022-05-16 10:02:22 +08:00
Meco Man 7fc707d99c [sal][kconfig] 重新梳理sal的依赖关系 2022-05-16 10:02:22 +08:00
Meco Man b793b6427a [sal] add draft for docking winsock 2022-05-16 10:02:22 +08:00
Meco Man 19abf927d2 [simulator] avoid conflicts between winsock.h and sys/time.h 2022-05-16 10:02:22 +08:00
Meco Man d5eeec2872 [hwtimer] add disable interrupt protection for hwtimer_isr function 2022-05-11 15:28:50 +08:00
Man, Jianting (Meco) 0d2b96d7cc
[stm32][l4] add tim7 support | 设备框架以及驱动错误码处理逻辑存在问题 (#5901) 2022-05-09 22:59:27 +08:00
陈迎春 f977f07ddf
[fix] fix dlmodule compile 'SEEK_END' undeclared eror (#5909) 2022-05-09 09:37:17 +08:00
Man, Jianting (Meco) 6295ec108e
[kernel] remove the register keyword (#5888) 2022-04-29 06:34:42 +08:00
BreederBai c28b79b7d7
硬件驱动(VCOM):增加获取USB虚拟串口连接状态的接口 (#5881)
* 硬件驱动(VCOM):增加获取USB虚拟串口连接状态的接口
2022-04-28 20:30:51 +08:00
Tangyuxin 7f1157e0de
[drivers][serial] ioctl add F_SETFL cmd (#5876) 2022-04-26 13:13:51 +08:00
Man, Jianting (Meco) 6ce4a87492
[fcntl] create new fcntl.h file for vs (#5860)
* [fcntl] create new fcntl.h file for vs
2022-04-24 10:52:57 +08:00
tyx 13f8a99e46 [drivers][usb] Fix compilation warning 2022-04-23 23:08:47 +08:00
tyx 8aecd43c78 [drivers][hwtimer] Fix compilation warning 2022-04-23 23:08:47 +08:00
Meco Man 175ca2ee09 [dac] add get resolution method 2022-04-23 23:03:59 +08:00
Meco Man 5e8871e1a2 [iar] add CLOCKS_PER_SEC
https://www.iar.com/knowledge/learn/programming/using-c-standard-library-time-and-clock-functions/
2022-04-22 22:32:27 +08:00
Meco Man 2774343d97 [libc][time] 修复IAR版本判断逻辑错误 2022-04-22 22:32:27 +08:00
Man, Jianting (Meco) 2c6a279ac3
[pwm] 优化pwm框架 (#5857) 2022-04-22 22:31:29 +08:00
Man, Jianting (Meco) c2a0995545
[adc] 支持adc框架获取BSP的ADC分辨率 (#5853) 2022-04-22 22:26:41 +08:00
Man, Jianting (Meco) 43484a201d
[libc] 优化armcc armclang处理 (#5858) 2022-04-22 13:39:44 +08:00
guozhanxin 7a717b094e [fix] building error. 2022-04-21 14:35:11 +08:00
blta 2d08dca65a [USB] fix stall bug on control transfers 2022-04-20 14:33:12 +08:00
thewon86 f5b0bfd3f4 uniform code writing-disable interrupt 2022-04-20 14:22:43 +08:00
tyx 5fa15a19a0 [lwip] Fix compilation warning 2022-04-20 10:41:13 +08:00
Man, Jianting (Meco) a0f8d43744
[gcc][armcc][armclang] rtconfig.CROSS_TOOL->rtconfig.PLATFORM (#5802)
* [gcc][armcc][armclang] rtconfig.CROSS_TOOL->rtconfig.PLATFORM
2022-04-20 09:56:04 +08:00
guozhanxin 08bebb40ba [usb audio] fix building error. 2022-04-20 09:10:52 +08:00
Tangyuxin 20f5d934a9
[libc][time] Fix bug (#5831) 2022-04-19 22:47:14 +08:00
Tangyuxin 14d9709fdc
[finsh][cmd] Enhance system robustness (#5832) 2022-04-19 22:46:42 +08:00
Meco Man 991b6e78b3 [bug] 修正rtc对时间参数范围的处理 | fix a bug of rtc 2022-04-19 11:48:59 +08:00
Meco Man 5e9f525c41 [kernel] enable RT_DEBUG_DEVICE by default and move weak rt_hw_dealy_us in kservice.c 2022-04-19 11:26:41 +08:00
tyx 87046a1abf [libc][io] Remove definitions that are not in use 2022-04-19 11:22:58 +08:00
tyx 6237d2aa69 [components][fal] Compact code 2022-04-19 11:13:56 +08:00
tyx e414cb459d [components][drivers] Update device type definition and command definition 2022-04-18 09:38:56 +08:00
Wayne 615dbe946c
Fix return value of rt_dac_write function. (#5816)
Co-authored-by: Wayne Lin <wclin@nuvoton.com>
2022-04-15 17:09:37 +08:00
Meco Man bda32cdedb [libc] fix that some function cannot be found in unistd.h 2022-04-15 15:40:20 +08:00
Judd 80f20f668b fix comment
fix comment on return value of `rt_hwcrypto_crc_update`
2022-04-13 16:20:39 +08:00
Man, Jianting (Meco) de6d7eca5a
[libc] fix the sys/select.h problem (#5790) 2022-04-09 08:46:18 +08:00
Man, Jianting (Meco) 03823b5016
[kconfig] add 64bit default value for stack size. set tick HZ as 1000 by default (#5778)
* [kconfig] add 64bit default value for stack size. set tick HZ as 1000 by default

* 用RT_KSERVICE_USING_STDLIB_MEMXXX代替RT_KSERVICE_USING_STDLIB_MEMCP/MEMSET
将RT_KSERVICE_USING_STDLIB设置为默认开启

* 优化rt_kprintf支持longlong的能力,默认在64位CPU为开启状态
RT_PRINTF_LONGLONG命名不规范,更改为RT_KPRINTF_USING_LONGLONG

* fix commit error

* fix error

* 优化 system 函数

* RT_KSERVICE_USING_STDLIB_MEMXXX->RT_KSERVICE_USING_STDLIB_MEMORY
2022-04-09 00:40:36 +08:00
Yang sheng eb2fc60207
[bsp] Make all warnings into errors with qemu-vexpress-a9 qemu-virt64… (#5785)
* [bsp] Make all warnings into errors with qemu-vexpress-a9 qemu-virt64-aarch64 and stm32f411-st-nucleo.
* [RTC] Fix compile errors
2022-04-09 00:39:00 +08:00
Man, Jianting (Meco) 084bb1c956
[libc] improve sconscript (#5789) 2022-04-08 23:15:27 +08:00
Bernard Xiong 1aab3607af
Revert "[dfs][romfs]支持相对地址模式 (#5768)" (#5786)
This reverts commit e68f934ff8.
2022-04-08 20:03:43 +08:00
LiuKang 28b4db91c3
[update] support fal api for c++ (#5784) 2022-04-08 12:53:01 +08:00
guo 4b06115951
[finsh]fix list_device crash. (#5780) 2022-04-07 15:46:38 +08:00
Man, Jianting (Meco) c318dfa964
improve libc time and MSVC simulator (#5775)
- [libc] 解决由于类unix操作系统发展历史原因fcntl.h定义的标志位在不同编译器中定义不同的问题
- [simulator] 部分宏定义转为全局宏定义以确保vs内置文件可以正确配置
- [simulator] 取消自欺欺人式的警告消除处理方式
- [libc][time] 优化time相关结构体在不同编译器下的包含
2022-04-07 14:24:11 +08:00
Tangyuxin e68f934ff8
[dfs][romfs]支持相对地址模式 (#5768) 2022-04-06 21:13:12 +08:00
Tangyuxin da3d61e043
[device]Detailed classification of devices types (#5769) 2022-04-06 21:12:39 +08:00
tyx 782b9dd45a [components][sdio] Support DDR mode 2022-04-06 16:06:46 +08:00
tyx 556b14ed47 [components][ulog] Add file backend 2022-04-06 16:05:45 +08:00
tyx cceefd5ef9 [hwcrypto]Optimize memory usage 2022-04-06 10:29:05 +08:00
tyx b80f581562 [compilers] Fix c/c++ compilation warnings and errors 2022-04-06 10:27:38 +08:00
tyx e896021b56 [drivers][rtc]Add comments 2022-04-06 10:26:04 +08:00
tyx c4f107f528 [drivers][alarm]Compact alarm output 2022-04-06 10:26:04 +08:00
tyx b91f6f1206 [drivers][alarm] Optimize some codes 2022-04-06 10:26:04 +08:00
tyx b3f20ff9d2 [drivers][alarm] Fix week alarm bug 2022-04-06 10:26:04 +08:00
tyx f35c9d6df7 [drivers][rtc] Enhanced date command 2022-04-06 10:26:04 +08:00
tyx 8a7babadda [drivers][rtc]Add get/set timestamp function 2022-04-06 10:26:04 +08:00
tyx 9a4bd20149 [drivers][rtc] Optimize execution efficiency 2022-04-06 10:26:04 +08:00
tyx 0ef4560030 [drivers][rtc] Adjust ops function input parameters 2022-04-06 10:26:04 +08:00
Tangyuxin 59e751eb2a
[sensor]Add blood pressure sensor type (#5766) 2022-04-05 19:35:23 +08:00
朱天龙 (Armink) 039efbb075
完善 Serial V2 框架 (#5770)
* [stm32] fix h7 uart V2 driver unused code.

* [DeviceDriver][serialv2] fix the serialv2 when using for console device on DMA mode.

* [stm32][art-pi] using serial v2 by default

* [DeviceDriver][SerialV2] Add termios for serial@V2 .

* [BSP][STM32] Add hardware flow control for STM32 serial@V2 driver.

* [DeviceDriver][Serial@V2] Add hardware flow control for serial V2.
2022-04-04 17:25:04 +08:00
guo 83c01cabf3
[lwip] delete useless RTM export (#5743) 2022-03-30 14:06:02 +08:00
Man, Jianting (Meco) b8bb6a4a87
[poll][select] 修复select死循环的问题 (#5740) 2022-03-30 10:47:05 +08:00
guo b2e2ab28e5
[update] Fix some spelling mistakes. (#5738) 2022-03-29 21:29:08 +08:00
guozhanxin 310f1ea4fa [finsh] Fixed RT-Thread spelling 2022-03-29 14:43:34 +08:00
Man, Jianting (Meco) be892de35a
[posix] add RT_USING_POSIX_SOCKET (#5731) 2022-03-29 13:39:55 +08:00
guo 2ad6e28237
Fixed the issue LOG_HEX no output at asyn mode. (#5721) 2022-03-27 00:53:23 +08:00
朱天龙 (Armink) bae1be0f45
完善串口 V2 框架 (#5720)
* [stm32] fix h7 uart V2 driver unused code.
* [DeviceDriver][serialv2] fix the serialv2 when using for console device on DMA mode.
* [stm32][art-pi] using serial v2 by default
2022-03-27 00:52:41 +08:00
a1012112796 961fe7de0b
list_fd 显示完整路径 (#5683) 2022-03-26 15:45:53 +08:00
Man, Jianting (Meco) a514b3bd16
[components][kconfig] 整理Kconfig目录名称和结构 (#5698) 2022-03-25 23:07:18 +08:00
kylepengchn 851d16b18f
Soft spi (#5712)
* add soft-spi
* add spi-bit-ops.c/h to components/drivers/spi
* add a drv_soft_spi example for gd32303e-eval
* use formatting.py scripts for scanning

Signed-off-by: kyle <kylepengchn@163.com>
2022-03-25 23:06:43 +08:00
Man, Jianting (Meco) ba6f78bd8e
format code (#5699) 2022-03-24 08:30:41 +08:00
Man, Jianting (Meco) 2a1272ecfb
消除c99 (#5696) 2022-03-23 14:28:24 +08:00
kylepengchn 5810f4de7d
[components][drivers][spi]: 基于SPI总线驱动框架添加模拟SPI总线扩展 (#5656)
* add soft-spi

* add spi-bit-ops.c/h to components/drivers/spi
* add a drv_soft_spi example for gd32303e-eval

Signed-off-by: kyle <kylepengchn@163.com>

* Fixed the format and the certificate.

Signed-off-by: kyle <kylepengchn@163.com>

* Update the certificate data.

Signed-off-by: kyle <kylepengchn@163.com>
2022-03-23 14:16:14 +08:00
Man, Jianting (Meco) 8b58577230
[ulog][rtc][time][bug] solve the interference when enable the ulog timestamp (#5687)
* [ulog] 解决ulog开启时间戳后与libc time以及rtc驱动相关函数干涉的问题
* ulog:当发生递归输出时,后续递归想要输出的内容可能会因为防范递归的判断而无法输出
因此修改输出规则,在发生递归时,采用简单的,无格式的方式直接输出。这样既保证不会发生递归输出,也可以保证递归输出的部分可以正常输出。
* [ulog] size_t->rt_size_t NULL->RT_NULL
2022-03-21 14:06:17 +08:00
Man, Jianting (Meco) ee10516544
[libc] fix a typo (#5689) 2022-03-21 08:57:36 +08:00
打盹的消防车 0c82e033dc
Open RT_USING_POSIX_STDIO caused serial_v2 to compile failed (#5684)
* fix:Open RT_USING_POSIX_STDIO caused serial_v2 to compile failed
2022-03-20 10:29:16 +08:00
LiuKang aa80ba25d4
[update] fix finsh bug (#5676)
* [update] fix finsh bug

* [update] format code
2022-03-15 16:56:59 +08:00
LiuKang 75a7cb6929
[update] add fal component. (#5662)
* [update] add fal component.

* [update] format code.

* [update] change PKG_USING_FAL to RT_USING_FAL

* [update] format code.

* [update] fal

* [update] delete FAL_SW_VERSION
2022-03-15 09:48:05 +08:00
LiuKang 46d09e045e
[update] remove extra code. (#5663) 2022-03-14 09:14:09 +08:00
Man, Jianting (Meco) 3df75f9e32
[lwip] add lwip latest version (#5629)
* [lwip] 增加LWIP上游同步版本

* move pkgs to package repo

* add RT_USING_LWIP_LOCAL_VERSION to let users to decide whether can use upstream version of LwIP

* Update Kconfig
2022-03-14 09:13:04 +08:00
xiangxistu ffae7a2612
[fix] add the header file to avoid compiler error. (#5643) 2022-03-08 11:35:11 +08:00
Man, Jianting (Meco) 86a10716cd
优化ULOG_OUTPUT_FLOAT,避免使用内置libc的vsnprintf函数 (#5632) 2022-03-07 01:14:22 +08:00
Man, Jianting (Meco) 91ea28a625
[pipe.h] 移除多余的头文件,防止形成头文件递归包含 (#5621) 2022-03-02 18:45:19 +08:00
Man, Jianting (Meco) b2fa700c2a
[lwip] integrate and improve lwipopts.h (#5613)
* [lwip-2.1.2] improve lwipopts.h

* 增加LWIP RTT侧版本定义

* 移动调整cc.h和lwipopts.h定义

* lwip2.1.2 2.0.3抽出lwipopts.h lwippools.h

* remove lwip1.4.1 lwipopts.h

* [update] modify the default config through v1.4.1

* delete the useless macro and modify some unclear comments.

* [lwipopts.h] 完善头文件相关宏以及临界区保护相关宏

* remove latest version label

Co-authored-by: liuxianliang <liuxianliang@rt-thread.com>
2022-02-28 10:39:40 +08:00
Man, Jianting (Meco) e96e3e07f5
[lwip] integrate lwip porting layer (#5606)
* [lwip] integrate lwip porting layer

* Lwip 通用文件梳理 (#2)

* [modify] extract the common files for different version about lwip.

* [update] the initialization logic of lwIP.

* 整理源码结构

* ethernetif 头文件 ""改为<>

* 整理代码

* add macro definition "RT_USING_DEVICE_IPC".

* [update] mandatory selected "RT_USING_DEVICE_IPC".

* [modify] compile error for lost "lwip/init.h"

Co-authored-by: xiangxistu <52819708+xiangxistu@users.noreply.github.com>
Co-authored-by: liuxianliang <liuxianliang@rt-thread.com>
2022-02-23 23:56:43 +08:00
WillianChan 陈威廉 4106c43753
[fix][components][utilities][var_export]replace the search algorithm and fix some problems (#5611)
* [fix][components][utilities]adjust the order of compiler macros

Signed-off-by: WillianChan <chentingwei@rt-thread.com>

* [modify][components][utilities]This PR complies with RT-Thread code specification

Signed-off-by: WillianChan <chentingwei@rt-thread.com>

* [fix][components][utilities][var_export]replace the search algorithm and fix some problems

Signed-off-by: WillianChan <chentingwei@rt-thread.com>

* [modify][components][utilities][var_export]make the code more beautiful

Signed-off-by: WillianChan <chentingwei@rt-thread.com>
2022-02-23 23:55:27 +08:00
Man, Jianting (Meco) 6895da5307
[net] adjust folder structure (#5587)
* [net] adjust folder structure
- 将lwip相关的文件夹,移入lwip文件夹
- Kconfig 分散到at netdev lwip sal文件夹中,使用menuconfig代替menu
2022-02-20 00:07:45 +08:00
Man, Jianting (Meco) 5ec00a5a1d
[dmodule] 补充头文件 (#5602)
* add references

* [dmodule] add <fcntl.h>
2022-02-17 12:34:48 +08:00