摘要: 1.网卡驱动描述 网卡的驱动其实很简单,它还是与硬件相关,主要是负责收发网络的数据包,它将上层协议传递下来的数据包以特定的媒介访问控制方式进行发送, 并将接收到的数据包传递给上层协议。 网卡设备与字符设备和块设备不同, 网络设备并不对应于/dev目录下的文件,不过会存放在/sys/class/net 阅读全文
posted @ 2019-10-19 18:13 一个不知道干嘛的小萌新 阅读(870) 评论(0) 推荐(0)
摘要: 1.nor硬件介绍: 从原理图中我们能看到NOR FLASH有地址线,有数据线,它和我们的SDRAM接口相似,能直接读取数据,但是不能像SDRAM直接写入数据,需要有命令才行。 阅读全文
posted @ 2019-10-19 13:51 一个不知道干嘛的小萌新 阅读(201) 评论(0) 推荐(0)
摘要: 1. 阅读全文
posted @ 2019-10-19 13:50 一个不知道干嘛的小萌新 阅读(168) 评论(0) 推荐(0)
摘要: 1.本节使用的nand flash型号为K9F2G08U0M,它的命令如下 1.1我们以上图的read id(读ID)为例,它的时序图如下: 首先需要使能CE片选 1)使能CLE 2)发送0X90命令,并发出WE写脉冲(就是低电平变成高电平) 3)复位CLE,然后使能ALE 4)发送0X00地址,并 阅读全文
posted @ 2019-10-18 16:23 一个不知道干嘛的小萌新 阅读(676) 评论(0) 推荐(0)
摘要: 相关命令使用: ifconfig -a 检查所有的网卡参数 ifconfig eth0 up 启动eth0 setenv PHY_addr 2 在uboot模式下设置phy地址 setenv mdio_intf rmii 在uboot模式下设置phy得接口 问题: 根据SDK里面的默认配置,编译出来 阅读全文
posted @ 2019-10-18 14:54 一个不知道干嘛的小萌新 阅读(6948) 评论(0) 推荐(0)
摘要: 一、宏的定义与撤销 需要注意的是: (1)宏定义应注意添加括号,这样语义会比较清晰。 (2)使用#undef可以撤销宏定义。 (3)引号中的宏定义不会被替换。 (4)宏定义的宏名必须是合法的标识符。 (5)宏定义中单、双引号必须成对出现。 二、带有参数的宏定义 需要注意的是: (1)宏调用时参数的个 阅读全文
posted @ 2019-10-18 12:34 一个不知道干嘛的小萌新 阅读(2028) 评论(0) 推荐(0)
摘要: 参考内核自带的块设备驱动程序: drivers/block /xd.c drivers/block /z2ram.c 1.本节需要的结构体如下: 1.1 gendisk磁盘结构体: 1.2 request申请结构体: 2.本节需要的函数如下: 创建一个块设备,当major==0时,表示动态创建,创建 阅读全文
posted @ 2019-10-17 17:45 一个不知道干嘛的小萌新 阅读(438) 评论(0) 推荐(0)
摘要: 1.有可能存在多个PHY setenv PHY_addr 2 2.修改PHY和MAC控制器的接口 setenv mdio_intf rmii(确认开发板的网卡是什么接口) 相关文章: https://blog.csdn.net/u011425939/article/details/80901226 阅读全文
posted @ 2019-10-17 14:48 一个不知道干嘛的小萌新 阅读(2756) 评论(0) 推荐(0)
摘要: 1、MAC控制器、网卡、PHY、MDIO、mii、gmii、rgmii概念扫盲 网卡在功能上包含OSI模型的两个层,数据链路层和物理层。物理层定义了数据传送与接收所需要的电与光信号、线路状态、时钟基准、数据编码和电路等,并向数据链路层设备提供标准接口。数据链路层则提供寻址机构、数据帧的构建、数据差错 阅读全文
posted @ 2019-10-17 10:52 一个不知道干嘛的小萌新 阅读(1668) 评论(0) 推荐(0)
摘要: 了解一下电梯算法 1.之前我们学的都是字符设备驱动,先来回忆一下 字符设备驱动: 当我们的应用层读写(read()/write())字符设备驱动时,是按字节/字符来读写数据的,期间没有任何缓存区,因为数据量小,不能随机读取数据,例如:按键、LED、鼠标、键盘等 2.块设备驱动 块设备: 块设备是i/ 阅读全文
posted @ 2019-10-16 15:40 一个不知道干嘛的小萌新 阅读(432) 评论(0) 推荐(0)