以太网开发指导FAQ
FAQ001: 以太网唤醒
问:唤醒包是任意包还是特定包?
答:唤醒包是特定包,magic packet,下面是唤醒包参考脚本
#!/usr/bin/env python3
# coding=utf-8
import sysfrom socket
import *
def main():
if len(sys.argv) != 3:
print("Usage %s dev count"%(sys.argv[0]))
return
print("Transmit %s frames via dev %s"%(sys.argv[2],sys.argv[1]))
s = socket(AF_PACKET, SOCK_RAW)
s.bind((sys.argv[1], 0))
src_addr = b"\x00\x00\x00\x11\x22\x33"
dst_addr = b"\xff\xff\xff\xff\xff\xff"
ethertype = b"\x11\x22"
src_addr = b"\x00\x00\x00\x11\x22\x33"
dst_addr = b"\xff\xff\xff\xff\xff\xff"
#dst_addr = b"\x00\x11\x22\x33\x44\x55"
payload_0 = (b"\xff\xff\xff\xff\xff\xff")
# 5a:c3:4f:a7:03:d2
payload_1 = (b"\x00\x11\x22\x33\x44\x55"*16) #wake up mac address
for i in range(int(sys.argv[2])):
s.send(dst_addr + src_addr + ethertype + payload_0 + payload_1)
print("Send frame %d"%(i))
s.close()
return
if __name__ == "__main__": main()
FAQ002: vlan与tso
问:如果配置了vlan进行数据收发的话,是不是必须把tso给关掉?
答:TSO是 tcp segment offload,vlan是二层的,收发vlan包与关不关TSO没有关系
FAQ003: IP与MAC
问:保存在EMMC里面的MAC和IP,是否有保护措施,让用户没有机会随便修改,如果有,能否介绍下?
答:DVB板子上 emmc的MAC和IP可以hrut_ip和hrut_mac命令修改。一般OEM会修改defaultip.sh固定IP/MAC及vlan不会提供修改接口。
FAQ004: TSN
问:我们支持哪些TSN标准?
答:基于信用的整形器机制(credit-based shaper,CBS)(IEEE 802.1-Qav)
增强型整形机制(Enhancements to Scheduled Traffic, EST)(IEEE 802.1Qbv-2015)
帧抢占(Frame Preemption, FPE)(IEEE 802.1Qbu-2016)
FAQ005: 硬件特性
问:matrix5-双J5的MAC1接的PHY芯片是88EA1512,但是看驱动里面PHY1的compatible是”marvell,88E1518”,请问下这两个是什么关系?
答:同一系列的芯片,PHY驱动的适配是根据PHY ID匹配的
问:ETH工作电压是否支持3.0V mode?
答:硬件设计指导已明确不支持3.0 mode