kernel
唐大大鹏
Go Big or Go Home!
展开
-
Ethernet phy调试记录
Ethernet phy调试记录1,phy介绍1.1 IEEE标准phy接口寄存器0~15寄存器是标准的寄存器,每一个都有特定的意义,有些特定的也不按照这个来。2,phy驱动流程1.0 读取id以适配对应的phy驱动1.1 初始化配置配置延时,是否自动协商等1.2 获取phy当前的速度、link状态可以是如下这种获取link,也可以强制告诉mac当前phy的速度link状态...原创 2020-11-05 11:33:23 · 1154 阅读 · 0 评论 -
SPI总线驱动、设备驱动
SPI驱动分析zynq SPI控制器理解记录SPI总线SPI Master控制器驱动SPI Device驱动其他外设使用SPI通信源码记录问题记录一次传递一定数量的时候出现了超时的现象zynq SPI控制器理解记录如下:spi一般都由一下两个不通的模式组合成四个模式:自动/手到发送数据:自动:当TxFIFO有数据就进行发送;无数据则停止发送。手动:通过使能发送位进行数据的发送。自动/手...原创 2018-10-17 21:28:48 · 2065 阅读 · 0 评论 -
Linux内核设计与实现(1)--内核开发的特点
1. 内核编程时既不能访问C库也不能访问标准的C头文件       其中的原因有很多种。其一,C标准库的很多函数实现都是基于内核实现的,这内核编译的时候都还没有内核,所以就不存在这些函数,这个就是先有鸡还是先有蛋这个悖论。其二,其主主要的的原因是熟读和大小。对于内核来说,完整的C库–哪怕是它的一个子集,都太大且太低效了。    &原创 2018-10-18 20:49:32 · 331 阅读 · 0 评论 -
MODULE_DEVICE_TABLE宏的作用(转)
1. MODULE_DEVICE_TABLE (usb, skel_table);该宏生成一个名为__mod_pci_device_table的局部变量,该变量指向第二个参数。内核构建时,depmod程序会在所有模块中搜索符号__mod_pci_device_table,把数据(设备列表)从模块中抽出,添加到映射文件/lib/modules...转载 2018-10-10 11:27:00 · 483 阅读 · 0 评论 -
qspi flash驱动开发记录
目录序驱动概括驱动框架演变1,设备和驱动在一起2,设备和驱动分离3,设备树的引入设备树qspi flash预备知识zynq qspi memory 控制器介绍qspi协议介绍qspi flash介绍块设备驱动框架介绍qspi flash驱动介绍出现的问题记录1. 系统无法软重启////////////////////////////////欢迎使用Markdown编辑器新的改变功能快捷键合理的创建...原创 2018-10-10 22:17:11 · 7921 阅读 · 1 评论 -
内核调试方法
1 .打印       跟普通应用程序一样,打印信息是最直接的调试手段,通过打印信息来获得内核运行的情况和状态。1.1 printk       功能:通过控制台把内核信息按照日志级别打印出来。      &a原创 2018-11-21 22:29:03 · 923 阅读 · 0 评论 -
linux内核设计与实现(2)-- 中断和中断处理
中断       中断就是一些外设硬件发送通知给处理器的通道。外设可以不在cpu的干预下执行一些动作,在完成这些任务后通过中断通知CPU。每个中断都有一个系统唯一的中断号。中断上半部和下半部       为了解决中断处理函数运行得快且完成尽量多的工作量的矛盾,我们一般把中断处理切为两部分。原创 2019-01-13 23:17:15 · 301 阅读 · 0 评论 -
UTF、GBK等编码以及嵌入式linux支持中文显示
1 各种字符编码1.1 ASCII Ascii:ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,采用单字节编码,即一个字符只占用一字节。我们所长用的只有0-127共128个字符,128~255是扩展字...原创 2019-05-20 18:34:53 · 3965 阅读 · 0 评论