add components initialization (draft).

git-svn-id: https://rt-thread.googlecode.com/svn/trunk@1921 bbd45198-f89e-11dd-88c7-29a3b14d5316
This commit is contained in:
bernard.xiong@gmail.com 2012-01-15 13:17:09 +00:00
parent cb98336dc1
commit d74a78795d
3 changed files with 91 additions and 0 deletions

View File

@ -0,0 +1,8 @@
from building import *
cwd = GetCurrentDir()
src = Glob('*.c')
CPPPATH = [cwd]
group = DefineGroup('ComponentsInit', src, depend = ['RT_USING_COMPONENTS_INIT'], CPPPATH = CPPPATH)
Return('group')

View File

@ -0,0 +1,68 @@
#include <rtthread.h>
#include "components_init.h"
#ifdef RT_USING_LWIP
#include <lwip/sys.h>
#include <lwip/api.h>
#include <netif/ethernetif.h>
#endif
#ifdef RT_USING_DFS
#endif
void rt_components_init(void)
{
#ifdef RT_USING_LWIP
/* initialize lwip stack */
extern void lwip_sys_init(void);
/* register ethernetif device */
eth_system_device_init();
/* initialize lwip system */
lwip_sys_init();
rt_kprintf("TCP/IP initialized!\n");
#endif
#ifdef RT_USING_DFS
/* initialize the device filesystem */
dfs_init();
#ifdef RT_USING_DFS_ELMFAT
/* initialize the elm chan FatFS filesystam*/
elm_init();
#endif
#if defined(RT_USING_DFS_NFS) && defined(RT_USING_LWIP)
extern void nfs_init(void);
/* initialize NFSv3 client filesystem */
nfs_init();
#endif
#ifdef RT_USING_DFS_YAFFS2
yaffs2_init();
#endif
#ifdef RT_USING_DFS_UFFS
uffs_init();
#endif
#ifdef RT_USING_DFS_JFFS2
jffs2_init();
#endif
#ifdef RT_USING_DFS_ROMFS
romfs_init();
#endif
#ifdef RT_USING_DFS_DEVFS
devfs_init();
#endif
#endif
#ifdef RT_USING_RTGUI
#endif
return;
}

View File

@ -0,0 +1,15 @@
/*
* components_init.h
*
*/
#ifndef __COMPONENTS_INIT_H__
#define __COMPONENTS_INIT_H__
/**
* Initializes components in RT-Thread
* notes: this function must be invoked in thread
*/
void rt_components_init(void);
#endif