移植了很多东西以后,今天打算编写简单的驱动了。
那么首先便是安装交叉编译环境。
突然发现一个问题,Ping不通了。慢慢的问题更严重。输入ifconfig命令,竟然什么内容也没有。
难道是我的网卡驱动坏了(我是已经移植好了网卡驱动了)。还是需要重新配置一下,在开发板上编
辑了一个脚本文件ipconfig
ifconfig eth0 down
ifconfig eth0 hw ether 00:00:AA:BB:CC:DD
ifconfig eth0 210.46.98.112
ifconfig eth0 up
chmod 777 ipconfig
./ipconfig
接着发生一个警告
dm9000 dm9000.0: WARNING: no IRQ resource flags set.
然后重新检查了一遍驱动的代码,发现并没有问题
那么问题出在哪呢?
除了内核,难道是根文件系统。
索性试一试
在网上找到了针对于我开发板的一个官方的文件系统
发现竟然是好使了。
仔细思考一下,回顾一下这几天的。确实我的文件系统是重新编译过的,可能相比于第一个是缺少一下
初始化语句。
然后在网上找到一篇关于网卡初始化的文章。
在 /etc/inittab中加入如下代码
echo "network interface"
/sbin/ifconfig lo 127.0.0.1
/sbin/ifconfig eth0 210.46.98.112 up
route add default gw 210.46.98.112
之后重启系统
网卡好使,但是有一个问题我还是想不明白
那就是我自己编写的脚步文件和在系统中初始化的文件,作用是相同的,为什么我的回不好使呢?难道只是因为没有声明
环回接口。
为了验证我的猜想,将/sbin/ifconfig lo 127.0.0.1 这句话注释掉
重启发现,果真是这个问题。
细节决定成败啊。很多次的问题都是出在根文件系统上,看来那一部分都不要小视。