上一页 1 2 3 4 5 6 7 8 9 ··· 15 下一页
摘要: 简介 前两节我们介绍串口驱动的框架和tty core部分。这节我们介绍和硬件紧密相关的串口驱动部分。 UART驱动部分依赖于硬件平台,而TTY驱动和具体的平台无关。虽然UART部分依赖于平台,但是不管是哪个硬件平台,驱动的思路都是一致的,下面分模块来分别介绍。 关键数据结构 struct uart_ 阅读全文
posted @ 2023-11-30 22:13 学习,积累,成长 阅读(452) 评论(0) 推荐(0) 编辑
摘要: 前言 tty这个名称源于电传打字节的简称,在linux表示各种终端,终端通常都跟硬件相对应。比如对应于输入设备键盘鼠标,输出设备显示器的控制终端和串口终端。也有对应于不存在设备的pty驱动。在如此众多的终端模型之中,linux是怎么将它们统一建模的呢?这就是我们今天要讨论的问题。 tty驱动概貌 t 阅读全文
posted @ 2023-11-30 22:09 学习,积累,成长 阅读(505) 评论(3) 推荐(0) 编辑
摘要: 区分不同的终端类型 串行端口终端(/dev/ttySn) 串行端口终端(Serial Port Terminal)是使用计算机串行端口连接的终端设备。计算机把每个串行端口都看作是一个字符设备。 有段时间这些串行端口设备通常被称为终端设备,因为 那时它的最大用途就是用来连接终端。这些串行端口所对应的设 阅读全文
posted @ 2023-11-30 22:03 学习,积累,成长 阅读(211) 评论(0) 推荐(0) 编辑
摘要: 背景 最近在排查一个网络问题,ifconfig eth0 up 后,网卡link up比较慢。因此,分析了下从ifconfig up 到网络驱动的调用流程。这里顺便作个记录。 ifconfig eth0 up 调用的是busybox 的命令,因此从busybox 源码入手,逐步分析下调用流程。代码介 阅读全文
posted @ 2023-11-28 22:57 学习,积累,成长 阅读(703) 评论(0) 推荐(1) 编辑
摘要: 1. 简介 在调试网口驱动的过程中发现phy芯片的驱动框架结构还有点复杂,不仔细研究的话还不好搞懂,另外百度到的资料也不够全面,这篇就总结梳理一下这方面的知识。 我们知道一个 phy 驱动的原理是非常简单的,一般流程如下: 1、用轮询/中断的方式通过 mdio 总线读取 phy 芯片的状态。 2、在 阅读全文
posted @ 2023-04-30 11:17 学习,积累,成长 阅读(6226) 评论(0) 推荐(1) 编辑
摘要: 1. 概述 PHY芯片为OSI的最底层-物理层(Physical Layer),通过MII/GMII/RMII/SGMII/XGMII等多种媒体独立接口(介质无关接口)与数据链路层的MAC芯片相连,并通过MDIO接口实现对PHY状态的监控、配置和管理。 PHY与MAC整体的大致连接框架如下(图片来源 阅读全文
posted @ 2023-04-30 11:16 学习,积累,成长 阅读(2476) 评论(0) 推荐(0) 编辑
摘要: PHY 寄存器的地址空间为 5 位,从 0 到 31 最多可以定义 32 个寄存器(随着芯片功能不断增加,很多 PHY 芯片采用分页技术来扩展地址空间以定义更多的寄存器),IEEE802.3 定义了地址为 0-15 这 16 个寄存器的功能,地址16 - 31的寄存器留给芯片制造商自由定义,如下表所 阅读全文
posted @ 2023-04-30 11:15 学习,积累,成长 阅读(5330) 评论(0) 推荐(0) 编辑
摘要: 本文主要介绍以太网的MAC(Media Access Control,即媒体访问控制子层协议)和PHY(物理层)之间的MII(Media Independent Interface ,媒体独立接口),以及MII的各种衍生版本——GMII、SGMII、RMII、RGMII等。 简介 从硬件的角度看,以 阅读全文
posted @ 2023-04-30 11:13 学习,积累,成长 阅读(4778) 评论(0) 推荐(1) 编辑
摘要: 1 内核错误处理方式 当内核出现致命错误时,只要cpu还能正常运行,那么最重要的就是向用户输出详细的错误信息,以及保存问题出现时的错误现场。以上致命错误可包含以下两种类型: (1)硬件能检测到的错误,如非法内存访问,非法指令等,此时cpu会触发异常,并进入异常处理流程。在异常处理流程中会触发oops 阅读全文
posted @ 2023-04-30 11:12 学习,积累,成长 阅读(1134) 评论(0) 推荐(0) 编辑
摘要: 没有完美的代码 没有完美的人,更没有完美的代码。虽然教科书上说deadlock(死锁)多么不好不好,但是在现实生活中,很难把它完全消灭。假设不小心内核出现了deadlock,可能你得干瞪眼。CPU就在那里空等着,空转着,叫天天不应,叫地地不灵。等到海枯石烂,CPU生锈的那一天,它还会那么痴痴地等着那 阅读全文
posted @ 2023-04-30 11:11 学习,积累,成长 阅读(373) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 9 ··· 15 下一页