Commit Graph

212 Commits

Author SHA1 Message Date
Bernard.Xiong 62a0172d11 [Kernel] Fix the system initialization link issue 2015-03-22 09:06:48 +08:00
Bernard Xiong fbd620a7f4 [Kernel] Move the components initailzation to the kernel 2015-02-25 10:50:21 +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 8bd3e6f6dc [Kernel] Change command line to const parameter and add system() function. 2014-04-02 14:05:15 +08:00
Bernard Xiong 40b7eba446 [Kernel] Change the version number to 2.0.0. 2014-03-29 14:59:02 +08:00
bernard dbcb4a1ccf [Kernel] declare more APIs in module 2014-03-11 15:44:35 +08:00
bernard 27be3d9af4 Include rtconfig.h file in rtdebug.h file. 2014-01-26 20:32:44 +08:00
bernard e601c2a6ed Add sector size check when mounting a FAT file system. 2014-01-26 20:30:37 +08:00
bernard 8fdbb7c92b [Kernel] Fix the compiling issue for not including rtconfig.h file in rtdebug.h/rtdef.h 2014-01-17 22:32:32 +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
Grissiom 408ac34bc2 kernel: add rt_critical_level that return the lock count of scheduler
Out side world may be interested in whether the scheduler is locked or
not. Provide an API to tell that.
2013-12-21 11:27:26 +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
prife 5641360b49 simulator: add createdef.py to generate def file for VS
Now we can get rid off Mingw to create def file. To create def file, one
should run:

    scons --def

in the bsp/simulator.
2013-10-14 22:53:59 +08: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
Grissiom c9b8b7465f kernel: fix compiling error when RT_DEBUG is not defined
Define RT_DEBUG_IN_THREAD_CONTEXT when RT_DEBUG is not defined.
2013-10-12 10:58:56 +08:00
Grissiom 6f71308ef5 kernel: add RT_DEBUG_IN_THREAD_CONTEXT
In thread context means: 1) the scheduler has been started; 2) not in
interrupt context. It is more stronger than RT_DEBUG_NOT_IN_INTERRUPT.
With this commit, you will catch the error on situations like taking
mutex before scheduling instead of crashing on NULL pointer reference.
2013-10-11 22:51:38 +08:00
bernard 1ffb99e6f5 Merge branch 'master' of https://github.com/RT-Thread/rt-thread 2013-10-10 00:22:59 +09:00
bernard f1107f6714 add BGR565 definition 2013-10-10 00:22:11 +09:00
Grissiom 7b0a3afdf9 kservice: export vsnprintf as rt_vsnprintf
vsnprintf is a common string function that could be used in many places.
Using both vsnprintf in libc and vsnprintf in the RTT could make a
bigger image. Moreover, if newlib is not enabled when compiling with
GCC, referencing vsnprintf will lead to link error:

    .../arm-none-eabi/lib/armv7-ar/thumb/softfp/libc.a(lib_a-sbrkr.o):
    In function `_sbrk_r':
    sbrkr.c:(.text._sbrk_r+0xc): undefined reference to `_sbrk'
    collect2: error: ld returned 1 exit status

Using rt_vsnprintf could avoid such problem.
2013-09-23 11:34:13 +08: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
Bernard Xiong e63be67e2d Remove the stdarg.h file include.
Please @Grissiom check why add this header file in rtthread.h.
2013-06-30 20:17:41 +08:00
yiyue.fang 62c5115282 reformat the coding style in rthw.h 2013-06-29 13:33:06 +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 0bb5eb18b9 Add rt_kprintf re-defined, which is suggested by ufbycd. 2013-06-24 00:08:10 +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
Bernard Xiong f837ea41b1 Add component initialization define in rtdef.h 2013-06-23 07:40:23 +08:00
Grissiom 85822f22b7 rtdef.h: get back the codes that removed accidentally by d80a471 2013-06-03 22:23:17 +08:00
Bernard Xiong d80a471680 Fix the memheap_realloc issue 2013-06-03 06:44:35 +08:00
Grissiom 9237433030 add TI CCS support micros in rtdef.h 2013-05-29 23:36:10 +08:00
Grissiom f51bce3fed add rm48x50 bsp and libcpu
We currently only support building with CCS and SCons is not using.
bsp/rm48x50/HALCoGen/HALCoGen.{hcg,dil} is the HALCoGen project file.
You may need to regenerate the source file as you like, providing that:

    1, IRQ is in Dispatch Mode and the table entry is IRQ_Handler. The
    channel 5 in enabled and connected to IRQ.

    2, RTI driver is enabled and compare3 source is selected to counter1
    and the compare3 will generate tick in the period of 10ms. This
    value is coresponding with RT_TICK_PER_SECOND in rtconfig.h.

In CCS, you need to create a new CCS project and create link folders
pointing at bsp/rm48x50, libcpu/arm/rm48x50 and src/, include/. Remember
to add the include path to the Build Properties.
2013-05-24 22:55:13 +08:00
Bernard Xiong 4afdf44da2 add RT_KERNEL_MALLOC/FREE 2013-04-25 14:22:07 +08:00
Bernard Xiong 608bf2cb3d add rt_memheap_realloc function 2013-04-17 22:09:48 +08:00
Bernard Xiong bb72be94b2 code cleanup for interrupt description 2013-03-26 08:52:33 +08:00
weety 7917cf09e7 remain the old handler to keep forward compatibility 2013-03-19 11:25:46 +08:00
weety b21028474b Modify the interrupt interface implementations, changes in the part of the parameter definition. 2013-03-19 11:25:12 +08:00
prife a64ec10e68 app module support for simlator, first version 2013-02-27 00:37:57 +08:00
Bernard Xiong 47d8dc67c0 change version number 2013-01-09 11:00:32 +08:00
dzzxzz@gmail.com d5531c6054 fixed the coding style in rtdef.h
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2566 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-12-30 14:14:40 +00:00
bernard.xiong@gmail.com 850d544bdc add more control command for graphic.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2560 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-12-30 06:37:30 +00:00
bernard.xiong@gmail.com 975610477e Add RT_USING_MEMHEAP_AS_HEAP feature: system can use "heap" memheap as system default memory heap.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2554 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-12-29 12:29:03 +00:00
bernard.xiong@gmail.com 54351d17de fix compiling warning.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2552 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-12-29 09:51:48 +00:00
bernard.xiong@gmail.com 68fadd9edc Add exception hook function.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2551 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-12-29 09:36:16 +00:00
dzzxzz@gmail.com b2da13707b fixed the coding style
convert the tabs to spaces
convert the file format to unix style

git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2483 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-12-14 08:59:22 +00:00
goprife@gmail.com 977afc4f67 add RT_DEVICE_CTRL_BLK_ERASE and struct rt_device_blk_sectors in rtdef.h
please see this commit with revision 2478

git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2482 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-12-14 06:34:25 +00:00
bernard.xiong@gmail.com b60476b8e7 remove rt_current_module and rt_module_set function.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2459 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-11-28 14:25:06 +00:00
bernard.xiong@gmail.com df249c467d change RT_NULL from ((void*)0) to 0.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2422 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-11-16 14:54:31 +00:00
sc943313837@gmail.com c49700184f add RTC control command
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2377 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-10-29 02:02:41 +00:00
dzzxzz@gmail.com 409dd3801f convert TABs to Spaces in rtdef.h
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2367 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-10-23 02:34:53 +00:00
bernard.xiong@gmail.com f4d768ec56 Add mutex lock in memheap object.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2366 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-10-22 23:27:04 +00:00
qiuyiuestc@gmail.com 7c7fa51f97 add __RT_SERVICE_H__ definition
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2347 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-10-13 03:26:25 +00:00
dzzxzz@gmail.com 14e5b39b4c change the comment style in rtdef.h
it will be used by doxygen

git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2333 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-10-10 03:14:52 +00:00
bernard.xiong@gmail.com 2114b73b4b Add _MSC_VER compiler checking; Add DEVICE_CTRL_BLK_SYNC flag.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2315 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-10-05 08:44:10 +00:00
dzzxzz@gmail.com 095b0ae5c0 re-format the coding style in rtdef.h
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2280 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-09-07 08:06:02 +00:00
dzzxzz@gmail.com 1ccf6f800c delete the unnecessary space
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2278 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-09-07 06:48:02 +00:00
dzzxzz@gmail.com cd053e7737 re-format the coding style, convert the tab to 4 spaces and make sure the line length is not longer than 80 in rtdebug.h
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2271 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-09-05 06:52:35 +00:00
dzzxzz@gmail.com f897cff83f fixed a compiling error if RT_DEBUG is defined but RT_DEBUG_CONTEXT_CHECK is defined as 0
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2270 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-09-05 06:28:28 +00:00
dzzxzz@gmail.com 96182b10c0 make sure the line length is not longer than 80 in rthw.h
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2269 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-09-05 05:54:47 +00:00
dzzxzz@gmail.com 51c95d7907 convert tabs to 4 spaces in rtm.h
and move the definition of struct rt_module_symtab into RT_USING_MODULE block

git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2268 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-09-05 05:51:38 +00:00
dzzxzz@gmail.com cba2e9bcba convert tabs to 4 spaces in rtservice.h
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2267 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-09-05 05:42:12 +00:00
dzzxzz@gmail.com 3aa354d28b re-format the coding style, convert the tab to 4 spaces and make sure the line length is not longer than 80
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2266 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-09-05 05:36:08 +00:00
bernard.xiong@gmail.com 25268ad23d Add more symbols export for application module.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2205 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-07-06 11:20:53 +00:00
dzzxzz@gmail.com 25a5353e66 fixed spelling error
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2175 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-06-18 12:21:03 +00:00
bernard.xiong@gmail.com d228266e65 Remove I2C device and add PM pseudo device.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2171 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-06-18 03:11:40 +00:00
bernard.xiong@gmail.com 8475d23d3e Add rt_timer_next_timeout_tick() declaration in rtthread.h.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2157 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-06-11 23:38:28 +00:00
dzzxzz@gmail.com f19d8aa591 change the return type of function rt_object_is_systemobject()
using rt_bool_t instead of rt_err_t

git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2150 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-06-02 09:20:19 +00:00
bernard.xiong@gmail.com 3ad6f43ff3 Added VisualDSP++ Compiler support.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2137 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-05-30 06:50:06 +00:00
luohui2320@gmail.com f29989094c ADD I2C BUS device type
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2130 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-05-22 18:10:03 +00:00
dzzxzz@gmail.com 1641c9db4f add memory heap object in module
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2113 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-05-07 06:23:30 +00:00
bernard.xiong@gmail.com 87195cf84e Added memory heap object implementation; Added RT_LIST_OBJECT_INIT macro.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2046 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-04-14 03:52:56 +00:00
bernard.xiong@gmail.com 0f519b6721 move src\kservice.h to include\rtservice.h.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2005 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-03-22 06:11:44 +00:00
bernard.xiong@gmail.com 3b805a8137 remove the duplicated rt_sprintf declaration.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2002 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-03-21 04:03:20 +00:00
qiuyiuestc@gmail.com 407f922a5b fix module unload issue
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@2001 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-03-18 04:26:22 +00:00
dzzxzz 12b5e56f46 unify the coding style of kernel
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1998 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-03-17 06:43:49 +00:00
bernard.xiong@gmail.com 5d2d94eb3d add RTTHREAD_VERSION definition.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1965 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-02-18 15:03:21 +00:00
goprife@gmail.com 4f72d1cba1 remove some warning in jffs2, and fix armcc compile error when using scons
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1929 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-01-31 01:29:22 +00:00
bernard.xiong@gmail.com 18888679cd add alignment memory allocation.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1928 bbd45198-f89e-11dd-88c7-29a3b14d5316
2012-01-30 12:22:57 +00:00
bernard.xiong@gmail.com 6b31d549c7 cleanup some comments.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1898 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-12-31 08:58:40 +00:00
bernard.xiong@gmail.com bcf0bd361b fix a spell issue.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1896 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-12-31 07:04:05 +00:00
dzzxzz 86c5646fc0 change the version from 0.4.0 to 1.0.0
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1893 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-12-31 06:22:46 +00:00
bernard.xiong@gmail.com f6f81eb0ce Add more device type.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1835 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-12-11 15:14:25 +00:00
dzzxzz 7926109356 cleanup kernel code
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1722 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-09-23 05:57:31 +00:00
bernard.xiong@gmail.com 472cc9334a add errno implementation in RT-Thread.
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1682 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-08-28 15:57:10 +00:00
qiuyiuestc@gmail.com a8f51bf63a fix compile error
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1670 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-08-15 14:05:41 +00:00
qiuyiuestc@gmail.com cea21370a4 rewrite module memory allocator
git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1618 bbd45198-f89e-11dd-88c7-29a3b14d5316
2011-07-04 23:48:07 +00:00