Commit Graph

4144 Commits

Author SHA1 Message Date
xqyjlj 63c7d0ceb4 🐞 fix(components/lwp/lwp_syscall.c): fix sys_readlink 2023-03-31 10:56:37 +08:00
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