笔记 34 - 7 :网卡 DM9000AE; uboot 网络协议栈,里的函数调用流程

(295)uboot 中网络协议栈。

网卡的驱动,对于上层协议来说,已经封装好了发送和接收数据的接口,那么上层协议栈只需要按照顺序调用对应的网卡驱动函数就可以进行网络数据的收发。uboot 中的协议栈相对来说比较简单,有以下几个特点:

+传输层只支持 UDP 协议;

+目前只支持 ICMP、TFTP、NFS、DNS、DHCP、CDP、SNTP 等几种协议;

+网卡采用 poll 接收数据包,而不是中断方式;

+数据包的发送和接收操作是串行操作,不支持并发。

(296) 谢谢彭老师的图, 地址在这里:

++ 老师接着以 dns 报文来讲解 :

++

(297)这里记录了 uboot 里重要的命令封装宏 U_BOOT_CMD

(298)开始以 dns 命令举例 :

++ 接着是公共的网络函数 NetLoop (...) :

++

++

++

++

(299)另起一个分支, 图 1 里放 for 循环 :

(300) 收包部分 :

++ 至此, 命令的 dns 实现函数 do_dns (...) 就可以返回了,见上面的图。

++ ping 的代码执行流程分析,老师说,咱们可以自己对比着来进行。

++ 搞清 9000A 的裸机驱动,是分析 linux 内核里 9000A 的驱动的基础。

(301)

谢谢

相关推荐
剑指offer.21 小时前
ARM裸机开发-SPI
arm开发·嵌入式硬件·嵌入式·arm
susplus4 天前
【ARM 裸机开发 (IMX6ULL-mini)】I2C协议详解
嵌入式·arm·i2c
今年下半年5 天前
【运维】windows虚拟机安装arm(aarch64)服务器
运维·windows·arm·虚拟机·aarch64
额额额对了6 天前
SPI通信
linux·c语言·汇编·单片机·嵌入式硬件·arm
一直C6 天前
【ARM嵌入式开发】LCD液晶屏显示原理、色彩模式与显存地址映射详解
lcd·嵌入式·arm·寄存器·cortex-a7
susplus6 天前
【ARM 裸机开发 (IMX6ULL-mini)】PWM 背光调节与 GT9147 多点触摸驱动
lcd·arm·多点触控·pwm背光调节
凉、介7 天前
深入理解 ARM SCP Firmware 的 Event 与 Notification 机制
学习·scp·嵌入式·arm
susplus7 天前
【ARM 裸机开发 (IMX6ULL-mini)】SPI 协议与ADXL345 三轴加速度传感器
arm·spi·adxl345加速度传感器
susplus7 天前
【ARM 裸机开发 (IMX6ULL-mini)】RGB-LCD 驱动与时序详解
arm·rgb_lcd
额额额对了7 天前
嵌入式 ADC 从入门到实战:基于 i.MX6ULL 的裸机驱动开发
驱动开发·嵌入式硬件·arm