Shell
c451dce820
feat: add ISR safe completion API
...
Since the completion is used to sync with ISR mostly, we should set the
default semantic to ISR-safe. So most user will be happy and don't see
any weird behavior in their codes.
Changes:
- Added `rt_completion_wait_noisr` and
`rt_completion_wait_flags_noisr` functions in `completion.h`,
`completion_comm.c`, `completion_mp.c`, and `completion_up.c`.
- The new APIs allow waiting for completions in non-ISR contexts
while ensuring thread context safety.
- Existing documentation and comments were updated to clarify
usage contexts and emphasize restrictions on ISR usage.
Signed-off-by: Shell <smokewood@qq.com>
2024-08-19 10:39:15 +08:00
wdfk-prog
f61c7085f7
[components][ringbuffer]修复编译错误
2024-06-24 10:55:16 +08:00
Shell
48bd0e49f2
[ipc] support of lockless rt_completion ( #8887 )
...
* [ipc] lockless rt_completion implementation
The new rt_completion implemented by lockless algorithm can improve timer resolution for up to ~12%, compare to sem IPC.
Signed-off-by: Shell <smokewood@qq.com>
* fixup: error
* remove useless changes
---------
Signed-off-by: Shell <smokewood@qq.com>
2024-05-08 09:25:57 +08:00
Yuqiang Wang
c6d20e47ac
[bsp][renesas] Add HMI rw007 initialization configuration by default
2024-04-13 13:32:30 +08:00
Shell
83e95bdff4
sync smart & dfs ( #8672 )
...
Signed-off-by: xqyjlj <xqyjlj@126.com>
Signed-off-by: Shell <smokewood@qq.com>
Co-authored-by: xqyjlj <xqyjlj@126.com>
2024-03-28 23:42:56 +08:00
Shell
71560bafb5
🎯 Sync smart & scheduler codes ( #8537 )
...
Signed-off-by: Shell <smokewood@qq.com>
Co-authored-by: xqyjlj <xqyjlj@126.com>
2024-02-23 17:49:15 +08:00
Meco Man
6cc63626d7
fix some -Wmissing-prototypes warnings
2024-01-02 21:25:26 +08:00
xqyjlj
3283f54c7a
🎈 perf: perf rt_hw_interrupt_disable/enable ( #8042 )
...
Signed-off-by: Shell <smokewood@qq.com>
Co-authored-by: Shell <smokewood@qq.com>
2023-10-25 20:31:25 +08:00
Meco Man
bfe9fd3c13
[drivers/ipc] fix the recursive including if legacy enabled
2023-07-28 22:17:40 -04:00
7YZ7
501b22aabe
[HUST CSE] Fix many abnormal symbols in annotations and format code
2023-04-17 22:26:23 -04: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
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
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
Man, Jianting (Meco)
fb941e6d8d
[fingbuffer] fix a typo ( #6075 )
2022-06-17 18:46:46 +08:00
tyx
b80f581562
[compilers] Fix c/c++ compilation warnings and errors
2022-04-06 10:27:38 +08:00
guo
b2e2ab28e5
[update] Fix some spelling mistakes. ( #5738 )
2022-03-29 21:29:08 +08:00
Man, Jianting (Meco)
91ea28a625
[pipe.h] 移除多余的头文件,防止形成头文件递归包含 ( #5621 )
2022-03-02 18:45:19 +08:00
Meco Man
8bf5a28528
[workqueue] 增加rt_work_urgent
2022-01-20 20:58:46 +08:00
Meco Man
36cbc1fd2f
[workqueue] time参数改为ticks,防止误解单位为ms
2022-01-20 20:58:46 +08:00
guo
fb7b9f4fb4
Merge pull request #5318 from enkiller/1201
...
[components][src] Optimize interrupt disable time
2021-12-21 17:40:59 +08:00
Meco Man
7ff976dab3
[posix] [pipe] add IPC for POSIX and add pipe for it
2021-12-14 06:12:04 +08:00
tangyuxin
5128a27c43
[components][src] Optimize interrupt disable time
2021-12-01 14:19:25 +08:00
Meco Man
e538c5aa70
[workqueue] rename rt_workqueue_critical_work as rt_workqueue_urgent_work
2021-10-20 15:48:07 -04:00
malongwei
5fb6cb8b41
修复ringblk_buf在不使用动态内存时报错的问题
2021-09-01 19:58:23 +08:00
Jackistang
3de03a072e
修改 ringbuffer 和 workqueue 注释的语法
2021-08-18 09:44:52 +08:00
Jackistang
6173c9d7d5
fix comments error in ringbuffer and workqueue.
2021-08-17 22:44:29 +08:00
Jackistang
99de1a6220
format code
2021-08-14 14:32:58 +08:00
Jackistang
1b7468979f
[ringbuffer] 添加 ringbuffer 的接口注释
2021-08-14 13:47:05 +08:00
Jackistang
0b4603d581
[workqueue] 添加了 workqueue 接口的注释
2021-08-14 11:10:43 +08:00
Meco Man
94ed55f34d
[workqueue] remove rt_delayed_work_init()
2021-08-01 17:26:01 +08:00
Meco Man
a8ed7b7769
[workqueue] 将rt_work_sys_workqueue_init函数私有化
2021-07-22 18:24:56 +08:00
liuduanfei
ec1f22b87d
添加 rt_workqueue_critical_work 声明
2021-05-28 17:32:01 +08:00
Meco Man
3c05a4e719
[compoenets] auto & manual formatted
2021-03-08 18:19:04 +08:00
tangyuxin
83692a54c4
【workqueue】添加函数声明
...
rt_err_t rt_workqueue_cancel_all_work(struct rt_workqueue *queue);
2021-02-07 11:14:59 +08:00
tangyuxin
d6b44ca52e
[workqueue] 支持取消延时工作任务
2021-02-06 20:08:31 +08:00
Meco Man
a233495718
Typo: rt_data_queue_peak() in dataqueue
2020-12-31 16:02:42 +08:00
malongwei
d6c8b46dad
add 'rt_ringbuffer_peak' API
2020-11-22 14:20:02 +08:00
qiyongzhong0
44baf269f7
fix bug of dataqueue
2020-09-18 09:33:34 +08:00
yangjie
1d7b34f471
[components][dataqueue]修改is_init为magic数
2020-04-08 11:05:37 +08:00
yangjie
dfcd38b74d
[components][dataqueue]add rt_data_queue_deinit
2020-04-07 17:36:56 +08:00
tangyuxin
badd211457
[components][drivers][ipc] 完善工作队列,增强稳定性
...
1. 可直接提交延时任务, 无需额外调用延时初始化
2. 修复延时任务 PENDING 时,取消任务会递归调用的问题
2019-08-05 14:18:15 +08:00
tangyuxin
91345d62af
[components][drivers][ipc] 初始化工作对象所有成员
2019-04-28 14:31:57 +08:00
EvalZero
83b6260b3f
[components][workqueue]improve delayed work for reinit.
2019-04-22 11:43:45 +08:00
Bernard Xiong
2c8fb7022e
Merge pull request #2526 from BernardXiong/fix_pipe
...
[libc] Fix the unamed pipe close issue
2019-04-01 18:10:44 +08:00
Bernard Xiong
ff00378728
[libc] Fix the unamed pipe close issue
2019-03-31 15:21:49 +08:00
EvalZero
c7ccb4f532
[components][drivers][workqueue] add system default workqueue and delayed work.
2019-03-30 14:29:30 +08:00
armink
74232f2de4
[DeviceDriver][rbb] Add some comments and rt_rbb_blk_size/rt_rbb_blk_buf API.
...
Signed-off-by: armink <armink.ztl@gmail.com>
2018-11-22 18:08:12 +08:00
Bernard Xiong
e158d48de0
[license] Fix the bad license replace.
2018-10-15 00:50:04 +08:00
Bernard Xiong
2c0640a178
[license] Change license to Apache.
2018-10-14 19:37:18 +08:00
armink
dff8a2c513
[DeviceDriver] Add rbb (ring block buffer) data structure.
2018-09-12 08:59:58 +08:00