DM9000网卡驱动移植
2014-03-09 23:38
239 查看
网卡驱动移植
步骤1 确定相异性
步骤2 修改代码
一般就是修改 IOBASE 和中断
按照原理图,其片选信号可能是往固定段落内存写数据,即是片选到这个设备。这个也是统一编址的一种方式。
根据原理图,修改其中段引脚,把其IRQ修改为原理图上面的IRO.
网卡中本来就有内存,当网卡接受到数据时候,就会产生中断,在中断服务程序里面把数据拿出来构造一个SK buffer 提交上去,发送也是一样从sk buffer吧数据提取出来丢给网卡。
网卡是内存一样的接口(设置网卡的寄存器和通过访问内存来实现的),所以要访问这段内存,必须要设置内存控制器的时序(按照网卡内存芯片的内存时须来设置),才能对网卡芯片进行访问。在本案中网卡接在了bank4上面。所以需要设置内存控制器的时间参数,也就是timing~~~~位宽 等待信号 等等 以及 片选寄存器,总线位宽,等待寄存器等待
时间参数的寄存器叫 bank control 寄存器,通过设置他的各项值和DM9000的内存进行匹配,从而达到最优化,如果搞不懂可以全部设置为最大值~~~~~~但是不是最
时间参数:T ACS = 地址和片选信号的时间间隔
T COS = 片选信号发出多久之后才能发出读信号呢
T ACC = 发出读写信号之后 地址信号需要维持多长时间
未完待续~~~~
步骤1 确定相异性
步骤2 修改代码
一般就是修改 IOBASE 和中断
按照原理图,其片选信号可能是往固定段落内存写数据,即是片选到这个设备。这个也是统一编址的一种方式。
根据原理图,修改其中段引脚,把其IRQ修改为原理图上面的IRO.
网卡中本来就有内存,当网卡接受到数据时候,就会产生中断,在中断服务程序里面把数据拿出来构造一个SK buffer 提交上去,发送也是一样从sk buffer吧数据提取出来丢给网卡。
网卡是内存一样的接口(设置网卡的寄存器和通过访问内存来实现的),所以要访问这段内存,必须要设置内存控制器的时序(按照网卡内存芯片的内存时须来设置),才能对网卡芯片进行访问。在本案中网卡接在了bank4上面。所以需要设置内存控制器的时间参数,也就是timing~~~~位宽 等待信号 等等 以及 片选寄存器,总线位宽,等待寄存器等待
时间参数的寄存器叫 bank control 寄存器,通过设置他的各项值和DM9000的内存进行匹配,从而达到最优化,如果搞不懂可以全部设置为最大值~~~~~~但是不是最
时间参数:T ACS = 地址和片选信号的时间间隔
T COS = 片选信号发出多久之后才能发出读信号呢
T ACC = 发出读写信号之后 地址信号需要维持多长时间
未完待续~~~~