UEFI 中的Gmac网卡驱动实现

最近在龙芯平台完成了Gmac网卡驱动的迁移,目前已经在UEFI上跑起来了,经过大量的测试,gmac搭配Rtl或者intel的网卡进行pxe启动都是没有问题的。也算是完成了一个里程碑的事件,从此之后,龙芯平台7A桥片内集成的gmac 千兆网卡就能在BIOS使用了。下面将大体框架实现做个简单的总结。

网卡驱动框架

UEFI中的网络框架大致如下:

根据上面的框架,其实主要实现的就是UNDI层的代码,主要就是一些关于网卡硬件操作的代码,以及提供给SNP层调用的接口代码。SNP之上都是UEFI框架实现好的代码其中包括网络协议栈的代码,目前UEFI上是都有的基本不用做什么修改。所以gmac驱动重点实现的就是UNDI的接口代码。

浏览UEFI代码框架,网络驱动包含的模块:

·    MdeModulePkg/Universal/Network/SnpDxe/SnpDxe

UEFI 中的Gmac网卡驱动实现相关推荐

  1. 【NanoPi T2】 6.uboot gmac网卡驱动(2) - 寄存器介绍

    1.mac控制器,phy芯片,rgmii协议 2.寄存器介绍 3.驱动源码解析 4.nanopi t2 移植rtl8211e网卡驱动(首发) s5p4418 gmac概述 支持千兆速度,协议为RGMI ...

  2. 【NanoPi T2】 7.uboot gmac网卡驱动(3) - 驱动源码解析

    1.mac控制器,phy芯片,rgmii协议 2.寄存器介绍 3.驱动源码解析 4.nanopi t2 移植rtl8211e网卡驱动(首发) 驱动注册入口 驱动的注册分两个部分,一个部分是静态编译的时 ...

  3. 【NanoPi T2】 5.uboot gmac网卡驱动(1) - mac控制器,phy芯片,rgmii协议

    1.mac控制器,phy芯片,rgmii协议 2.寄存器介绍 3.驱动源码解析 4.nanopi t2 移植rtl8211e网卡驱动(首发) 硬件构成部分 以太网卡或者是ARM开发板的网络部分通常由M ...

  4. gmac网卡驱动1-------mac与phy基础知识

    GMAC简介 网卡 用于报文控制,一般有mac和phy组成. mac: 一般用于数据的过滤 phy: 操作数据实际的收发 mac 分类: mac按最大传输速率可以分为emac,gmac组成: 帧发送( ...

  5. 电脑中Realtek网卡驱动安装不了如何解决

    近日驱动人生收到用户咨询说,在电脑中安装Realtek网卡驱动安装不了,弹出错误窗口,显示The Realtek Network Controller was not found 现在小编就来说一下如 ...

  6. (超贴心)Centos7安装2.5G网卡驱动(Realtek 3000)

    文章目录 前言 准备 正题 问题1: 问题2 问题3 问题4 前言 首先跟大家聊聊我的情况吧.因为网络极其关键,要不然服务器还服务个毛,就会是一个废物. 我是在最小化安装Centos7系统的时候,设置 ...

  7. kali linux查看网卡_CentOS7.6安装无线网卡驱动|Linux如何安装网卡驱动|Linux如何让配置网卡...

    此前提到,Thinkpad E490安装CentOS7.6遇到内核崩溃的问题,解决之后,安装CentOS7.6操作系统成功. 安装时发现,系统能够检测到有线网卡,但无法检测到无线网卡,说明CentOS ...

  8. linux 内核 网卡驱动 移植,Linux内核移植步骤_添加DM9000网卡驱动(设备树).docx

    Linux内核移植步骤_添加DM9000网卡驱动(设备树) Linux内核移植步骤2015年05月13日星期三上午 11:05往设备树中添加网卡驱动:1.选平台,指定交叉编译工具链:(1).在Make ...

  9. linux 内核 网卡驱动 移植,linux内核移植步骤添加dm9000网卡驱动(设备树).docx

    linux内核移植步骤添加dm9000网卡驱动(设备树).docx LINUX内核移植步骤2015年05月13日星期三上午1105往设备树中添加网卡驱动1.选平台,指定交叉编译工具链1.在MAKEFI ...

最新文章

  1. DARPA可解释AI研究(XAI计划)的4年回顾与经验总结
  2. 2021年春季学期-信号与系统-第一次作业参考答案-第一题
  3. php5.5 mysql密码无法_MySQL密码正确却无法本地登录的解决方法
  4. sql语句练习(三):LeetCode
  5. 一个表单同时向两个页面传值
  6. 迁移.net framework 工程到.net core
  7. Go内存管理之代码的逃逸分析
  8. 人脸关键点:TCNN-Tweaked Convolutional Neural Networks
  9. 日期Date和String/Long之间的转换
  10. 阶段3 2.Spring_08.面向切面编程 AOP_9 spring基于注解的AOP配置
  11. 获得Oracle中刚插入的数据的ID(for produce)
  12. 八个小技巧教你做出舒服的MG动画
  13. 合并报表编制采用的理论_跟我一起学合并报表之——长期股权投资的抵消处理...
  14. Mysql - 聚簇索引和辅助索引
  15. python+request 哔哩哔哩视频下载
  16. canva画图 图片居中裁剪_html5 canvas 自定义画图裁剪图片
  17. IDEA-Translation插件更新TKK失败
  18. 谈学习中的改变——有病要诊断,有药要服用
  19. python学习之路day06
  20. Java程序员为何收入比其他行业收入高?原因是什么呢?

热门文章

  1. 玩转Mysq数据库(一):数据库的基础操作——创建、删除、查看
  2. EXCEL——自定义单元格格式
  3. H5性能测试(优化建议)
  4. CentOS上的硬盘分区
  5. 小米5s+刷+android+8.0,小米MIUI10技术难点已突破,小米5S系列升级安卓8.0看来稳了...
  6. 信奥中的数学:质数与合数
  7. centos7启动dhcp失败_CentOS7中DHCP配置
  8. ubuntu 18.04 卸载firebox
  9. FPGA概念理解之:ZYNQ、PS、PL、APU、ARM、SOC、URAT、GPIO...
  10. 类同属性不为null 拷贝赋值