UNF@MHCP 发表于 2023-4-12 10:59

使用Linux ethtool命令对LAN 78xx系列EEPROM进行编程


lan78xx可用外部EEPROM存储USB描述符和MAC地址的默认值。复位后,EEPROM控制器尝试从EEPROM读取数据的第一个字节。如果从第一个地址中读取到值
A5h,则EEPROM控制器会假设存在已编程的外部串行EEPROM。随后,EEPROM控制器会将EEPROM的内容装载到内部512字节描述符SRAM中。使用ethtool对EEPROM编程的命令格式为:

ethtool –E DEVNAME magic 0x78A5 offset 0 length 512 < 512-byte-binary-file-that-has-A5-signature.bin
例如:ethtool –E eth1 magic 0x78A5 offset 0 length 512 < 512-byte-binary-file-that-has-A5-signature.bin

ethtool 命令需要以 root 权限运行。
lan78xx 驱动程序只允许 offset=0,length=512,并且 0xA5 位于偏移量零处。
DEVNAME 可以通过运行 Linux ifconfig 命令获得。

内核版本 4.5.x 或更高版本支持访问 LAN7800 EEPROM。
可从 microchip.com 下载的 MPLABConnect 配置器 (ProTouch) 或 7800WinCmd 工具创建二进制文件。
这些工具也可用于保存当前的 EEPROM 内容。

chenjun89 发表于 2023-4-13 08:00

还可以这样操作,学到了。
页: [1]
查看完整版本: 使用Linux ethtool命令对LAN 78xx系列EEPROM进行编程