提交 1f42e27e 编写于 作者: qiuyiuestc's avatar qiuyiuestc

[mini2440]use long filename feature

git-svn-id: https://rt-thread.googlecode.com/svn/trunk@655 bbd45198-f89e-11dd-88c7-29a3b14d5316
上级 005d4141
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
#define __RTTHREAD_CFG_H__ #define __RTTHREAD_CFG_H__
/* RT_NAME_MAX*/ /* RT_NAME_MAX*/
#define RT_NAME_MAX 8 #define RT_NAME_MAX 32
/* RT_ALIGN_SIZE*/ /* RT_ALIGN_SIZE*/
#define RT_ALIGN_SIZE 4 #define RT_ALIGN_SIZE 4
...@@ -91,6 +91,10 @@ ...@@ -91,6 +91,10 @@
/* using DFS support */ /* using DFS support */
#define RT_USING_DFS #define RT_USING_DFS
#define RT_USING_DFS_ELMFAT #define RT_USING_DFS_ELMFAT
/* use long file name feature */
#define RT_DFS_ELM_USE_LFN 1
/* the max number of file length */
#define RT_DFS_ELM_MAX_LFN 32
/* #define RT_USING_DFS_YAFFS2 */ /* #define RT_USING_DFS_YAFFS2 */
/* #define DFS_USING_WORKDIR */ /* #define DFS_USING_WORKDIR */
......
...@@ -30,6 +30,8 @@ if rtconfig_ns.has_key('RT_USING_DFS'): ...@@ -30,6 +30,8 @@ if rtconfig_ns.has_key('RT_USING_DFS'):
if rtconfig_ns.has_key('RT_USING_DFS_ELMFAT'): if rtconfig_ns.has_key('RT_USING_DFS_ELMFAT'):
RT_USING_DFS_ELMFAT = True RT_USING_DFS_ELMFAT = True
if rtconfig_ns.has_key('RT_DFS_ELM_USE_LFN'):
RT_DFS_ELM_USE_LFN = True
if rtconfig_ns.has_key('RT_USING_DFS_YAFFS2'): if rtconfig_ns.has_key('RT_USING_DFS_YAFFS2'):
RT_USING_DFS_YAFFS2 = True RT_USING_DFS_YAFFS2 = True
...@@ -107,7 +109,7 @@ elif PLATFORM == 'armcc': ...@@ -107,7 +109,7 @@ elif PLATFORM == 'armcc':
LFLAGS = DEVICE + ' --strict --info sizes --info totals --info unused --info veneers --list rtthread-mini2440.map --ro-base 0x30000000 --entry Entry_Point --first Entry_Point' LFLAGS = DEVICE + ' --strict --info sizes --info totals --info unused --info veneers --list rtthread-mini2440.map --ro-base 0x30000000 --entry Entry_Point --first Entry_Point'
CFLAGS += ' -I"' + EXEC_PATH + '/ARM/RV31/INC"' CFLAGS += ' -I"' + EXEC_PATH + '/ARM/RV31/INC"'
LFLAGS += ' --libpath "' + EXEC_PATH + '/ARM/RV31/LIB"' LFLAGS += ' --libpath "' + EXEC_PATH + '/ARM/RV31/LIB"' + ' --keep __RTMsym_*'
EXEC_PATH += '/arm/bin40/' EXEC_PATH += '/arm/bin40/'
...@@ -134,4 +136,4 @@ elif PLATFORM == 'iar': ...@@ -134,4 +136,4 @@ elif PLATFORM == 'iar':
CFLAGS = '' CFLAGS = ''
AFLAGS = '' AFLAGS = ''
LFLAGS = '' LFLAGS = ''
\ No newline at end of file
...@@ -56,10 +56,13 @@ if rtconfig.RT_USING_DFS_YAFFS2: ...@@ -56,10 +56,13 @@ if rtconfig.RT_USING_DFS_YAFFS2:
src_local = src_local + yaffs2_main + yaffs2_comm src_local = src_local + yaffs2_main + yaffs2_comm
path = path + [RTT_ROOT + '/components/dfs/filesystems/yaffs2', RTT_ROOT + '/components/dfs/filesystems/yaffs2/direct'] path = path + [RTT_ROOT + '/components/dfs/filesystems/yaffs2', RTT_ROOT + '/components/dfs/filesystems/yaffs2/direct']
if rtconfig.RT_DFS_ELM_USE_LFN:
elmfat += ['filesystems/elmfat/option/cc936.c']
if rtconfig.RT_USING_DFS_ELMFAT: if rtconfig.RT_USING_DFS_ELMFAT:
src_local = src_local + elmfat src_local = src_local + elmfat
# path = path + [RTT_ROOT + '/components/dfs/filesystems/elmfat'] # path = path + [RTT_ROOT + '/components/dfs/filesystems/elmfat']
# group definitions # group definitions
group = {} group = {}
group['name'] = 'Filesystem' group['name'] = 'Filesystem'
......
...@@ -84,9 +84,14 @@ ...@@ -84,9 +84,14 @@
/ 1 - ASCII only (Valid for non LFN cfg.) / 1 - ASCII only (Valid for non LFN cfg.)
*/ */
#ifdef RT_DFS_ELM_USE_LFN
#define _USE_LFN RT_DFS_ELM_USE_LFN
#define _MAX_LFN RT_DFS_ELM_MAX_LFN
#else
#define _USE_LFN 0 /* 0, 1 or 2 */ #define _USE_LFN 0 /* 0, 1 or 2 */
#define _MAX_LFN 255 /* Maximum LFN length to handle (12 to 255) */ #define _MAX_LFN 255 /* Maximum LFN length to handle (12 to 255) */
#endif
/* The _USE_LFN option switches the LFN support. /* The _USE_LFN option switches the LFN support.
/ /
/ 0: Disable LFN. _MAX_LFN and _LFN_UNICODE have no effect. / 0: Disable LFN. _MAX_LFN and _LFN_UNICODE have no effect.
......
...@@ -93,27 +93,27 @@ void rt_timer_timeout_sethook(void (*hook)(struct rt_timer* timer)); ...@@ -93,27 +93,27 @@ void rt_timer_timeout_sethook(void (*hook)(struct rt_timer* timer));
/* /*
* thread interface * thread interface
*/ */
RTT_API rt_err_t rt_thread_init(struct rt_thread* thread, rt_err_t rt_thread_init(struct rt_thread* thread,
const char* name, const char* name,
void (*entry)(void* parameter), void* parameter, void (*entry)(void* parameter), void* parameter,
void* stack_start, rt_uint32_t stack_size, void* stack_start, rt_uint32_t stack_size,
rt_uint8_t priority, rt_uint32_t tick); rt_uint8_t priority, rt_uint32_t tick);
RTT_API rt_err_t rt_thread_detach(rt_thread_t thread); rt_err_t rt_thread_detach(rt_thread_t thread);
RTT_API rt_thread_t rt_thread_create (const char* name, rt_thread_t rt_thread_create (const char* name,
void (*entry)(void* parameter), void* parameter, void (*entry)(void* parameter), void* parameter,
rt_uint32_t stack_size, rt_uint32_t stack_size,
rt_uint8_t priority, rt_uint32_t tick); rt_uint8_t priority, rt_uint32_t tick);
RTT_API rt_thread_t rt_thread_self(void); rt_thread_t rt_thread_self(void);
RTT_API rt_thread_t rt_thread_find(char* name); rt_thread_t rt_thread_find(char* name);
RTT_API rt_err_t rt_thread_startup(rt_thread_t thread); rt_err_t rt_thread_startup(rt_thread_t thread);
RTT_API rt_err_t rt_thread_delete(rt_thread_t thread); rt_err_t rt_thread_delete(rt_thread_t thread);
RTT_API rt_err_t rt_thread_yield(void); rt_err_t rt_thread_yield(void);
RTT_API rt_err_t rt_thread_delay(rt_tick_t tick); rt_err_t rt_thread_delay(rt_tick_t tick);
RTT_API rt_err_t rt_thread_control(rt_thread_t thread, rt_uint8_t cmd, void* arg); rt_err_t rt_thread_control(rt_thread_t thread, rt_uint8_t cmd, void* arg);
RTT_API rt_err_t rt_thread_suspend(rt_thread_t thread); rt_err_t rt_thread_suspend(rt_thread_t thread);
RTT_API rt_err_t rt_thread_resume(rt_thread_t thread); rt_err_t rt_thread_resume(rt_thread_t thread);
RTT_API void rt_thread_timeout(void* parameter); void rt_thread_timeout(void* parameter);
/* /*
* idle thread interface * idle thread interface
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册