linux 内核 网卡驱动 移植,linux-2.6.35内核移植—网卡驱动的移植

linux-2.6.35内核移植网卡驱动的移植一、移植环境:1、 Ubuntu 10.10发行版2、 u-boot.bin http://download.csdn.net/detail/baby_afu/44128263、 目标机:FS_S5PC100平台4、 交叉编译器 arm-cortex_a8-linux-gnueabi-gcc-----------------------------------

linux-2.6.35内核移植—网卡驱动的移植

一、移植环境:

1、  Ubuntu 10.10发行版

2、  u-boot.bin http://download.csdn.net/detail/baby_afu/4412826

3、  目标机:FS_S5PC100平台

4、  交叉编译器 arm-cortex_a8-linux-gnueabi-gcc

---------------------------------------------------------------------

二、移植步骤

1、平台代码修改

$ vim arch/arm/mach-s5pc100/mach-smdkc100.c

添加需要的头文件

#if defined(CONFIG_DM9000)

#include

#include

#endif  www.cit.cn

平台设备的添加

/** DM9000 Support **/

#if defined(CONFIG_DM9000)

static struct resource dm9000_resources[] = {

[0] = {

.start  = 0x88000000,

.end    = 0x88000000 + 0x3,

.flags  = IORESOURCE_MEM,

},

[1] = {

.start  = 0x88000000 + 0x4,

.end    = 0x88000000 + 0x4 + 0x3,

.flags  = IORESOURCE_MEM,

},

[2] = {

.start  = IRQ_EINT(10),

.end    = IRQ_EINT(10),

.flags  = IORESOURCE_IRQ | IRQ_TYPE_LEVEL_HIGH,

},

};  www.cit.cn

static struct dm9000_plat_data s5pc100_dm9000_platdata = {

.flags  = DM9000_PLATF_16BITONLY,

.dev_addr[0] = 0x00,

.dev_addr[1] = 0x00,

.dev_addr[2] = 0x3e,

.dev_addr[3] = 0x26,

.dev_addr[4] = 0x0a,

.dev_addr[5] = 0x00,

};

static struct platform_device s5pc100_device_dm9000 = {

.name   = "dm9000",

.id     = -1,

.num_resources  = ARRAY_SIZE(dm9000_resources),

.resource   = dm9000_resources,

.dev    = {

.platform_data  = & s5pc100_dm9000_platdata,

},

};

#endif

平台设备列表的添加

#if defined(CONFIG_DM9000)

&s5pc100_device_dm9000,

#endif

www.cit.cn

2、配置内核

$ make menuconfig

网络配置

[*] Networking support(NEW) --->

Networking option --->

Packet socket

Unix domain socket

[*] TCP/IP networking

[*] IP: multicasting

[*] IP: kernel level autoconfiguration

[*] IP: BOOTP support

网上驱动配置

[*] Device Drivers --->

[*] Network device support --->

[*] Ethernet(10 or 100Mbit) --->

DM9000 support

www.cit.cn

网络文件系统的配置

File systems --->

[*] Network File Systems --->

NFS client support

[*] NFS client support for NFS version 3

[*] NFS client support for the NFSv3 ACL protocol extension

[*] Root file system on NFS

---------------------------------------------------------------------

三、编译内核,并拷贝到tftpboot目录下

$ make zImage

$ cp  arch/arm/boot/zImage  /tftpboot

启动开发板,修改内核启动参数,通过NFS方式挂载根文件系统

作者 lr_ting

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值