设为首页 加入收藏

TOP

Linux内核 网卡 和 jffs2 移植
2014-11-24 07:34:50 来源: 作者: 【 】 浏览:0
Tags:Linux 内核 网卡 jffs2 移植

准备交叉编译工具链arm-linux-xxx
并将交叉编译工具链的路径加到环境变量里面
下载2.6.22.6的内核源码linux-2.6.22.6.tar.bz2
将内核源码放到linux系统下,解压
root@linuxidc:/source/kernel/linux-2.6.22.6# tar -jxvf linux-2.6.22.6.tar.bz2
进入解压后的目录
root@linuxidc:/source/kernel/linux-2.6.22.6# cd linux-2.6.22.6


移植内核
修改Makefile,修改编译器和目标平台

185 ARCH = $(SUBARCH)
186 CROSS_COMPILE =
改为
185 ARCH := arm
186 CROSS_COMPILE := arm-linux-
注意:请再次确认一下环境变量中是否有交叉编译工具链
root@linuxidc:/source/kernel/linux-2.6.22.6# arm-linux-gcc -v
复制参考板的config文件到内核源码树根目录
root@linuxidc:/source/kernel/linux-2.6.22.6# cp arch/arm/configs/s3c2410_defconfig ./.config
移植网卡
编写网卡驱动,修改相应的Makefile和Kconfig文件
我是在linux把网卡驱动写好,然后复制到源码树的响应目录
root@linuxidc:/source/kernel/linux-2.6.22.6# cp /mnt/hgfs/shared/network/cs8900a.* drivers/net/
然后修改Makefile,
root@linuxidc:/source/kernel/linux-2.6.22.6# vim drivers/net/Makefile
添加
obj-$(CONFIG_CS8900a) += cs8900a.o
修改Kconfig
root@linuxidc:/source/kernel/linux-2.6.22.6# vim drivers/net/Kconfig

866 config DM9000
867 tristate "DM9000 support"
868 depends on (ARM || MIPS) && NET_ETHERNET
869 select CRC32
870 select MII
871 ---help---
872 Support for DM9000 chipset.
873
874 To compile this driver as a module, choose M here and read
875 . The module will be
876 called dm9000.
后添加
878 config CS8900a
879 tristate "CS8900a support"
880 depends on ARM && NET_ETHERNET
881 --help---
882 support for cs8900a chipset
883 to compile this driver as a module,
884
配置内核
make menuconfig
Network device support --->
Ethernet (10 or 100Mbit) --->
<*> CS8900a support


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Linux awk 内置变量使用介绍 下一篇Linux-2.6.32.24内核移植

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Redis 分布式锁全解 (2025-12-25 17:19:51)
·SpringBoot 整合 Red (2025-12-25 17:19:48)
·MongoDB 索引 - 菜鸟 (2025-12-25 17:19:45)
·What Is Linux (2025-12-25 16:57:17)
·Linux小白必备:超全 (2025-12-25 16:57:14)