Linux-2.6.32.2 中固然有 DM9000 网卡驱动,但并不是完全的适合mini2440,导致挂载不上nfs文件系统
2015-11-24 15:29
836 查看
由于 Linux-2.6.32.2 中固然有 DM9000 网卡驱动,但并不是完全的适合mini2440,所以还是需要修改,修改DM9000 所用的位宽寄存器,在linux-2.6.32.2/ drivers/net/dm9000.c,添加下面的头文件
#if defined (CONFIG_ARCH_S3C2410)
#include <mach/regs-mem.h>
#endif
在dm9000设备的初始化函数中添加如下红色部分,这里是配置 DM9000 所用片选总线的时序,大约在1557行四周的位置,
static int __init
dm9000_init(void)
{
#if defined(CONFIG_ARCH_S3C2410)
unsigned int oldval_bwscon = *(volatile unsigned int*)S3C2410_BWSCON;
unsigned int oldval_bankcon4 = *(volatile unsigned int*)S3C2410_BANKCON4;
*((volatile unsigned int *)S3C2410_BWSCON) =
(oldval_bwscon & ~(3<<16)) | S3C2410_BWSCON_DW4_16 |
S3C2410_BWSCON_WS4 | S3C2410_BWSCON_ST4;
oldval_bankcon4 = 0x1f7c;
#endif
printk(KERN_INFO "%s Ethernet Driver, V%s\n", CARDNAME, DRV_VERSION);
return platform_driver_register(&dm9000_driver);
}
#if defined (CONFIG_ARCH_S3C2410)
#include <mach/regs-mem.h>
#endif
在dm9000设备的初始化函数中添加如下红色部分,这里是配置 DM9000 所用片选总线的时序,大约在1557行四周的位置,
static int __init
dm9000_init(void)
{
#if defined(CONFIG_ARCH_S3C2410)
unsigned int oldval_bwscon = *(volatile unsigned int*)S3C2410_BWSCON;
unsigned int oldval_bankcon4 = *(volatile unsigned int*)S3C2410_BANKCON4;
*((volatile unsigned int *)S3C2410_BWSCON) =
(oldval_bwscon & ~(3<<16)) | S3C2410_BWSCON_DW4_16 |
S3C2410_BWSCON_WS4 | S3C2410_BWSCON_ST4;
oldval_bankcon4 = 0x1f7c;
#endif
printk(KERN_INFO "%s Ethernet Driver, V%s\n", CARDNAME, DRV_VERSION);
return platform_driver_register(&dm9000_driver);
}
相关文章推荐
- 64位linux报错Could not initialize class java.awt.image.BufferedImage
- Linux内核中ioremap映射的透彻理解
- linux下安装mysql以及错误解决方案
- Linux下压缩某个文件夹(文件夹打包)
- Linux下python升级至2.7步骤
- Hadoop(2.7.0)伪分布式环境CentOS(7.0 64位)配置
- 使用 PAM 集成 OpenLDAP 实现 Linux 统一管理系统用户
- linux命令行任务管理
- (二)linux下ping不通的解决方法
- linux查看目录大小
- Centos6.7 ELK日志系统部署
- Linux编程——makefile编写技巧大全
- linux本地域名解析文件
- linux 下OTL连接SQLServer非配置版
- dhcp为大量pc设置固定ip脚本【转自《鸟哥的linux私房菜》】
- centos7 下安装mysql
- 32-linux任务调度定时备份mysql数据库和文件夹
- linux的vnc- rdesktop远程登录windows桌面
- Linux中GCC源码编译安装
- Linux发行版deepin及其软件包管理