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