Commit Graph

226 Commits

Author SHA1 Message Date
Meco 5e92521e0d struct rt_device_ops 结构体增加宏定义 2020-08-10 04:35:08 +08:00
chenchaoqun 224c3224c7 [format] enumeration define two styles: define first or all. 2020-07-27 14:11:35 +08:00
Bernard Xiong fe2e9e924e [libc] fix 64bit issue for pthreads 2020-06-06 13:21:32 +08:00
SummerGift e5c1183350 [optimize] stm32 uart driver 2020-03-23 15:44:54 +08:00
longtengmcu 720d8479a5 给软件定时器增加定时器工作状态查询的功能 2020-02-07 16:43:39 +08:00
Bernard Xiong 64945ba882
[Kernel] Update version number. 2019-12-20 08:24:45 +08:00
Bernard Xiong 992d3af3ae [kernel] code and comments cleanup 2019-12-16 13:59:46 +08:00
Bernard Xiong da7751c044
Merge pull request #3129 from jesven/fix_same_prio
修正相同优先级任务切换太频繁的问题
2019-11-12 22:47:18 +08:00
shaojinchun e03ac83ad3 将yield状态置于tcb的stat位域中 2019-11-05 08:41:38 +08:00
Dryad baeda71eaa 修复了g++编译器无法展开自动初始化宏的错误 2019-10-28 10:38:05 +08:00
shaojinchun 234af6aaa2 修正相同优先级任务切换太频繁的问题 2019-10-12 10:51:47 +08:00
shaojinchun cb07e5fb24 开放spinlock相关函数 2019-09-27 14:38:33 +08:00
tangyuxin e4671d2916 [kernel][ipc] add send wait support for message queue 2019-09-19 10:10:02 +08:00
Bernard Xiong ae7a33c27c
Merge pull request #3077 from jesven/fix_mempool
修正rt_mp_free有可能唤醒一个错误任务指针的问题
2019-09-17 14:11:14 +08:00
shaojinchun ae1fdc70f0 修正rt_mp_free有可能唤醒一个错误任务指针的问题 2019-09-16 16:55:40 +08:00
tyustli 89b90592ee add touch framework 2019-06-12 09:38:32 +08:00
Bernard Xiong b4e141fee1
Update rtdef.h 2019-05-17 08:34:10 +08:00
shaojinchun c5249157d7 增加signal的状态位说明及一处代码修改,以防止编译警告 2019-05-11 09:35:26 +08:00
shaojinchun 6cdfb2ac92 fix signal code 2019-05-11 09:34:26 +08:00
shaojinchun 7bcee9bcb1 semaphore结构中value仍改为uint16_t,加入对其设置范围的检测,加入对齐变量 2019-04-24 09:14:00 +08:00
shaojinchun fa697a763f 修改sem中的value成员变量和赋值参数类型相同 2019-04-19 14:57:50 +08:00
yangfasheng fde1346d5b add RTGRAPHIC_PIXEL_FORMAT_COLOR to graphic deice
Signed-off-by: yangfasheng <yangfasheng@live.com>
2019-04-14 13:33:29 +08:00
BernardXiong 1487a4f732 [Kernel] Support ARCH data types definitions 2019-03-26 01:03:39 +00:00
guozhanxin 64813b6b07 add first version 2019-02-12 14:09:34 +08:00
Bernard Xiong d68c0f225d
Update rtdef.h
Update version number to v4.0.1
2019-01-27 21:58:07 +08:00
Bernard Xiong 137ed381c7
Merge pull request #2123 from jesven/fix_list_thread
修正list_thread关中断时间过长的问题
2018-12-27 17:16:32 +08:00
shaojinchun ed9a558da9 list_*时,提供对第一层object的原子保护 2018-12-27 16:31:22 +08:00
Owen e716bbfa22
Update rtdef.h
更正为正确的Doxygen组定义语法
2018-12-26 10:13:26 +08:00
Bernard Xiong a74a3031f0
Merge pull request #2081 from jesven/sync_smp_skeleton
Sync smp skeleton
2018-12-18 14:02:04 +08:00
shaojinchun eff767a074 remove rt_hw_mb define
sync smp skeleton
2018-12-17 11:02:09 +08:00
shaojinchun b3e1507bcf 1 RT_THREAD_CTRL_BIND_CPU define to 4
2 RTM_EXPORT(rt_cpus_lock_status_restore)
3 sync ARCH_CPU_STACK_GROWS_UPWARD in _rt_scheduler_stack_check()
2018-12-12 09:36:39 +08:00
shaojinchun fc6bc1ad39 Add smp support to RT-Thread 4.0 2018-11-22 18:16:47 +08:00
Bernard Xiong 484afe9d2c [Kernel] Add 64bit CPU support. 2018-10-26 06:35:42 +08:00
Bernard Xiong 4660882320
[Kernel] Change number to v4.0.0 2018-10-13 09:36:23 +08:00
Bernard Xiong b98a0ba804 [Kernel] Add ARMCC 6.x support. 2018-09-23 12:08:44 +08:00
Bernard Xiong 41f7f2c284 [Kernel] Update to Apache License v2.0
Update license for RT-Thread kernel.
2018-09-14 22:37:43 +08:00
Bernard Xiong 95c36f32e2
Update rtdef.h 2018-09-04 07:01:39 +08:00
Bernard Xiong ab1a220eae [components] Remove lwP from v3.1.0 2018-09-01 12:03:32 +08:00
Bernard Xiong 07ec7e686d
Merge pull request #1754 from liangyongxiang/rt-used
add RT_USED to component init and finsh shell
2018-08-31 18:41:44 +08:00
liang yongxiang 0aa03dd731 [kernel] add RT_USED to INIT_EXPORT, so that the initialization function is not deleted when it is linked. 2018-08-31 15:01:04 +08:00
Bernard Xiong efe4523132 [Kernel] move module tolibc/libdl. 2018-08-30 20:27:45 +08:00
heyuanjie 2373a9c7be 添加lwp类型声明 2018-07-31 10:38:26 +08:00
heyuanjie c79fbd373f [lwp]给thread添加lwp成员 2018-07-30 11:12:12 +08:00
Bernard Xiong 497a2dd02c
[Kernel] Remove the restriction of waitqueue
Remove the restriction of RT_USING_POSIX for waitqueue structure.
2018-06-29 12:18:37 +08:00
Bernard Xiong ef132f3c94 [Kernel] clean code for indentation. 2018-06-26 11:57:20 +08:00
Bernard Xiong a1a56ce1d1 [Kernel] Add flag in wait queue and fix wakeup issue. 2018-06-26 11:19:38 +08:00
Bernard Xiong 884fb70fe9 [Kernel] Add device ops feature. 2018-06-10 17:59:17 +08:00
Bernard Xiong 44cffcf9ac
Update rtdef.h 2018-05-31 18:05:43 +08:00
Bernard Xiong 7b9de446cb
Update rtdef.h 2018-04-25 06:02:21 +08:00
BernardXiong 38b9ed3118 [Kernel] add sigwait implementation 2018-03-01 13:36:22 +08:00
Bernard Xiong 4007bf99ff
[Kernel] Change version number. 2018-02-24 09:20:03 +08:00
bernard 6c7150a5fc [Kernel] code cleanup for signal. 2017-12-30 14:46:51 +08:00
Bernard Xiong e3dd653ed4
Update rtdef.h 2017-12-27 20:38:43 +08:00
Bernard Xiong 8ff8436fcd [Kernel] Add device_create/destroy api 2017-12-24 00:06:29 +08:00
bernard 0d22872a13 [Kernel] Update version number to v3.0.1 2017-11-30 16:53:49 +08:00
bernard 6d9fcd04d2 [Kernel] Change the order of initialization.
1. Remove INIT_FS_EXPORT and change INIT_DEVICE_EXPORT as the first item
in the initalization thread.
2. Move the eth_system_device_init into INIT_PREV_EXPORT item.
2017-11-03 11:44:37 +08:00
bernard 8a38307e2c [libc] Add RT_USING_POSIX macro.
1. Add macro check in rtdebug.h;
2. Use RT_USING_POSIX for poll/select, stdin etc.
3. Split dfs_posix.h to dfs_posix.h, dfs_poll.h and dfs_select.h;
2017-10-17 22:27:06 +08:00
bernard cd215b2545 [Kernel] header files
1. Remove components.h file;
2. Add libc_* files for standard libc definitions;
3. Add rtdbg.h file for simple debug log;
4. Add single list implementation;
5. Change the 'rt_uint8_t' type of cmd to 'int'.
2017-10-15 22:30:05 +08:00
Bernard Xiong a6a5dbd64e Change version to v3.0.0
The master branch will be frozen util v3.0.0 updated.
2017-10-10 09:10:16 +08:00
geniusgogo 85cc2dab69 Update rtdef.h 2017-09-18 16:31:14 +08:00
geniusgogo ed08b32dd3 convert tab to space 2017-09-18 16:30:28 +08:00
geniusgogo 2aae989f40 Merge branch 'master' into RT_MACRO 2017-09-18 16:27:20 +08:00
xieyangrun 6b06cb83e3 rename WEAK to RT_WEAK 2017-09-18 11:32:13 +08:00
emlslxl e521decf2e 根据documentation/coding_style_cn.txt约定 对内核src和include目录下的文件代码进行格式化 2017-09-15 11:02:24 +08:00
tanek liang 9f2f2f0875 Add RT_USED definition for IAR 2017-08-25 22:22:35 +08:00
Bernard Xiong 02607c85ac [GUI Engine] change directory for image and font. 2017-06-05 17:36:45 +08:00
bernard 6b18346199 [Kernel] Add RTGRAPHIC_PIXEL_FORMAT_ALPHA definition. 2017-01-31 13:18:39 +08:00
weety 62e770f9de Fixed 64KB stack size limit. 2016-05-31 20:39:33 +08:00
heyuanjie87 8f9bda579a 定义Timer设备类 2015-09-06 15:18:15 +08:00
heyuanjie87 c84887d021 加入定时器设备 2015-09-02 22:00:24 +08:00
Bernard Xiong fc54a74abb [BSP] stm32f7-disco cleanup 2015-08-09 09:17:28 +08:00
Bernard Xiong abd19b8dd7 [Kernel] More better support for module. 2015-08-03 16:02:24 +08:00
ardafu 667c03db97 [FINSH] Add macro MSH_CMD_EXPORT_ALIAS 2015-07-31 11:07:54 +08:00
Aubr.Cool 7caabd2b7a mv device ctl cmd macros from serial.h to rtdef.h 2015-03-26 08:40:36 +08:00
Bernard Xiong 204298c1b2 Update rtdef.h 2015-02-02 13:22:38 +08:00
pangweishen 675fa48281 modified the comments of block device geometry structure, to tell everyone the unit of block_size is byte. 2014-11-04 10:16:54 +08:00
bernard ceaf9cd3fa Add WEAK definition; Add AUTO Refresh option for block device. 2014-06-26 14:47:31 +08:00
Bernard Xiong 40b7eba446 [Kernel] Change the version number to 2.0.0. 2014-03-29 14:59:02 +08:00
bernard e601c2a6ed Add sector size check when mounting a FAT file system. 2014-01-26 20:30:37 +08:00
Bernard Xiong 97508eb48e Merge pull request #228 from prife/kernel
kernel: rearrange the header file include order
2014-01-11 03:58:10 -08:00
prife 86cdc22043 kernel: rearrange the header file include order
There are some CONFIG OPTIONS in rtdebug.h, which may influence the
rtdef.h, so rtdebug.h should be head of the rtdef.h
2014-01-11 16:50:53 +08:00
bernard 31446eab4c [Kernel] application module can support arguments 2014-01-11 16:33:31 +08:00
bernard e393b8fcfa fix the FINSH_USING_SYMTAB not defined and compiling error issue 2014-01-04 06:03:24 +08:00
bernard a5ba2a24f7 add file and path name auto completion for module shell 2014-01-01 21:45:09 +08:00
Bernard Xiong 3eac58ce8e Merge pull request #173 from grissiom/new-timer
kernel: use skip list to implement timer list
2013-10-17 15:44:20 -07:00
Grissiom d59aa279c3 kernel: use skip list to implement timer list
Skip list is a "random" data structure that in high possibilities it
would get O(log(N)) time complexity in inserting while the old list get
O(N). Forthermore, when set RT_TIMER_SKIP_LIST_LEVEL to 1, it will just
the same as the old double linked list, both in time and space
complexity.

Benchmarks shows that when RT_TIMER_SKIP_LIST_LEVEL is 3, the average
time of random insertion of new timer is about 2 times faster than the
old timer when there are 100 timers and 3 times faster when there are
200 timers.

However, it restores the deprecated funcion rt_system_timer_init. BSPs
must invoke it upon system startup.
2013-10-12 22:48:29 +08:00
bernard f1107f6714 add BGR565 definition 2013-10-10 00:22:11 +09:00
Grissiom 6e676e7754 dev/portal: implement portal device
Portal is a device that connect devices. Currently, you can only connect
pipes in portal. Pipes are unidirectional. But with portal, you can
construct a bidirectional device with two pipes.
2013-08-20 12:54:43 +08:00
Grissiom 7e68096a88 dev/pipe: make pipe a type of device
Pipe have many differences with char device. The main difference is
altough pipe have both read and write, it is unidirectional in nature.
2013-08-20 10:16:55 +08:00
bernard a124e7bd22 add initialization debug code 2013-07-24 07:33:48 +08:00
bernard b96b35613f add mount table 2013-07-22 07:46:10 +08:00
Bernard Xiong 493930ea07 Merge pull request #118 from BernardXiong/master
Remove initialization feature for MS VC++ compiler.
2013-07-09 13:56:51 -07:00
Grissiom 7bcce9e87f device: add ref_count support
This is a simple work around to the current device stack design. A
ref_count could let different modules to open/close the same device
independently without interfere others in some degree.

But there is still some data shared between the modules, like flag,
open_flag and user_data. Moreover, it won't yield an error if A open a
device, and B read from it before open it in B. Maybe alloc a new handle
in rt_device_open will be the ultimate solution. But that is much bigger
change and we may leave it to future development.
2013-07-09 15:44:55 +08:00
Bernard Xiong 8c0d4d2ad8 fix the spelling wrong 2013-07-05 19:36:57 -04:00
Bernard Xiong ca56dce2a3 remove initialization feature for MS VC++ compiler 2013-07-05 19:32:16 -04:00
Grissiom 9f62f03f11 rm48x50: restore missing include for __TI_COMPILER_VERSION__ 2013-07-01 22:03:58 +08:00
yiyue.fang cf0db957f2 reformat the coding style in rtdef.h
convert the Tabs to Spaces
2013-06-29 11:41:20 +08:00
Bernard Xiong 79392bb082 Embedded GPLv2 license. 2013-06-24 17:06:09 +08:00
Bernard Xiong 98c8a23e94 Add component initialization. 2013-06-23 07:48:42 +08:00
Bernard Xiong c5927f51b3 Merge branch 'master' of https://github.com/RT-Thread/rt-thread 2013-06-23 07:40:32 +08:00