1. 概述

在Linux驱动框架下,MDIO总线总共划分为三个小框架,这三个框架共同构成MDIO总线框架,分别为:MII ManagementPHY DevicePHY Drivers

2. MDIO接口的抽象

  • 针对MII Management 抽象为struct mii_bus

  • 针对 PHY Device 抽象为struct phy_device

  • 针对 PHY Drivers 抽象为 struct phy_driver

  • 大致框架如下:
    每一个phy_device 都有一个driver指针,通过该指针可以将dev和drv关联起来;然后mii_bus又可以通过mdio map将所有的phy_device关联起来,统一由MII Management管理

Linux ARM平台开发系列讲解(网络篇)1.2 MDIO总线驱动框架分析相关推荐

  1. Linux ARM平台开发系列讲解(SPI与TTY实战) 2.6.1 SPI主设备驱动WK2124实战

    1. 概述 本次主要讲解wk2124 SPI转四路串口的驱动,比较新手而言难度过大,建议看完spi章节再看看后续uart章节,再来学习该驱动. 2. wk2124 驱动源码下载 本驱动只可以参考学习, ...

  2. Linux ARM平台开发系列讲解(IIO子系统) 2.8.1 IIO驱动开发分析

    1. 概述 工业场合里面也有大量的模拟量和数字量之间的转换,也就是我们常说的 ADC 和 DAC.而且随着手机.物联网.工业物联网和可穿戴设备的爆发,传感器的需求只持续增强.比如手机或者手环里面的加速 ...

  3. Linux ARM平台开发系列讲解(网络篇) 2.3 Marvell 88EA6321/88EA6320 Switch 设备树的配置分析

    1. 概述 交换机设备树主要是要配置它的端口数量,每个Port的物理模式(例如Mac to Phy).双工模式.连接速度.地址和与之连接的PHY地址等等,这一节就以88EA6321做例子解析一下DSA ...

  4. Linux ARM平台开发系列讲解(网络篇) 2.1 Marvell 88EA6321/6320 Switch 数据手册阅读之了解芯片功能

    1. 概述 注意:88EA6321/88EA6320 和 88E6321/88E6320软件上无区别,区别在于硬件外围电源上 Marvell 88EA6321/88EA6320设备是一个集成了7端口千 ...

  5. Linux ARM平台开发系列讲解(入门篇) 1.1.3 开发板、Ubuntu和windows三者相互连接,无需路由器,全网最详细

    1 . 本次使用的是没有路由器的情况,采用网线让开发板和电脑直接相连,如果有路由器或者集线器的话尽量使用,不然直接相连有时候会出现奇奇怪怪的问题,下面就是我平时的配置环境.开发板网线直连电脑,然后电脑 ...

  6. Linux ARM平台开发系列讲解(GMSL摄像头篇)1.2 MAX9296 GMSL链路配置

    1. 概述 GMSL摄像头主要是由sensor + 串行器 +解串器组成,软件需要做的就是写这三部分的驱动,让摄像头数据能到达SOC内部处理,如下图是max9286和max96705的链路,其它同类型 ...

  7. Linux ARM平台开发系列讲解(GMSL摄像头篇)1.1 GMSL协议介绍

    1. 概述 Maxim集成公司发布了GMSL作为汽车行业视频应用程序的通信链接.GMSL基于SerDes( 串行器-解串器)技术,这意味着它在传输端使用序列化,在接收端使用反序列化.它是专门为高级驾驶 ...

  8. Linux ARM平台开发系列讲解(摄像头V4L2子系统) 2.12.5 V4L2 control的原理和实现

    1. 概述 既然涉及到视频输入,就会有很多与 ISP 相关的效果,比如对比度.饱和度.色温.白平衡等等,这些都是通用的.必须的控制项,并且大多数仅需要设置一个整数值即可.Linux 内核中V4L2已经 ...

  9. Linux ARM平台开发系列讲解(自旋锁) 3.3.1 Linux内核自旋锁描述

    1. 概述 原子操作只能对整形变量或者位进行保护,但是,在实际的使用环境中怎么可能只有整形变量或位这么简单的临界区.举个最简单的例子,设备结构体变量就不是整型变量,我们对于结构体中成员变量的操作也要保 ...

  10. Linux ARM平台开发系列讲解(TTY) 2.5.2 串口TTY子系统驱动源码分析

    1. TTY驱动流程 如下图,整个TTY驱动流程基本如下,后续会逐一分析,先记住这个框架. 2. TTY驱动流程分析 2.1 驱动入口和出口 2.1.1 函数接口用法分析 根据自己选择的驱动模型,调用 ...

最新文章

  1. Java 设计模式之命令模式
  2. [原创] 域模式下的ASP.NET 发邮件代码
  3. YbtOJ-相似子串【SA,RMQ,二分】
  4. java 8 update 11_从Java 8升级到Java 11应该注意的问题
  5. 国内做三维GIS的公司总结-cesium和threejs
  6. 各种光纤接口类型介绍
  7. 科目三远光灯怎么开图解?科三远光灯是往上还是往下
  8. 我们到底是万物之灵? 还是另一种昆虫?
  9. 2022-2028年中国航空货运产业发展动态及竞争战略分析报告
  10. 程序猿是怎么找对象的
  11. 计算机学业水平考试的选择题,信息技术学业水平考试选择题带答案.doc
  12. win10 iso安装包中的两个setup.exe如何使用
  13. 基于Cortex M0+的STM32L0系列简介
  14. 中国的手机支付在全球遥遥领先
  15. java雪花_Java实现雪花算法(snowflake)
  16. 手写一套迷你版HTTP服务器
  17. GPS网检验重复边和同步环是否合格
  18. 北京内推 | 微软亚洲研究院机器学习组招聘强化学习方向研究型实习生
  19. z301摄像头的驱动移植
  20. jenkins搭建记录

热门文章

  1. 3559A对接IMX577 4lane 12M
  2. 清华大学马少平:一款智能硬件背后的“AI争霸”...
  3. 【转】Steam 开发者收入计算
  4. 编译原理实验:miniC语言编译器
  5. 服务器系统报ata6,ATA_5.4考试管理系统使用手册[最终版].doc
  6. 软件项目计划书的内容
  7. Sklearn聚类算法之meanshift
  8. 基于javaweb+jsp的员工薪资工资管理系统(JavaWeb JSP MySQL Servlet SSM SpringBoot Layui Ajax)
  9. request.getParameter()与request.getParameterValues()的区别和使用方式
  10. 堆排序算法实现(最小堆)