(struct phy_device*dev,struct ethtool_wolinfo*wol);void(*link_change_notify)(struct phy_device*dev);int(*read_mmd)(struct phy_device*dev,int devnum,u16 regnum);int(*write_mmd)(struct phy_device*dev,int devnum,u16 regnum,u16 val);int(*read_page)(struct phy_device*dev);int(*write_...
int(*read_status)(struct phy_device *phydev); int(*ack_interrupt)(struct phy_device *phydev); int(*config_intr)(struct phy_device *phydev); int(*did_interrupt)(struct phy_device *phydev); void(*remove)(struct phy_device *phydev); int(*match_phy_device)(struct phy_device *phydev...
phy_device *dev, struct ethtool_wolinfo *wol); void (*link_change_notify)(struct phy_device *dev); int (*read_mmd)(struct phy_device *dev, int devnum, u16 regnum); int (*write_mmd)(struct phy_device *dev, int devnum, u16 regnum, u16 val); int (*read_page)(struct phy_...
argv); if (retval < 0) { printf("Unexcept error for phy read!\n"); return -1; } } else if(argv[1][0] == 'w') { phy_write(argc, argv); } else if (argv[1][0] == 'm') { if (argv[1][1] == 'w') { phy_mmd_write(argc, argv); } else ...
1.1 MAC和PHY介绍 嵌入式网络硬件分为两部分:MAC 和 PHY,大家都是通过看数据手册来判断一款 SOC 是否支持网络,如果一款芯片数据手册说自己支持网络,一般都是说的这款 SOC 内置 MAC,MAC 类似 I2C 控制器、SPI 控制器一样的外设。 光有MAC 还不能直接驱动网络,还需要另外一个芯片:PHY,因此对于内置 MAC 的 SOC...
1.5.2 PHY芯片 PHY 是 IEEE 802.3 规定的一个标准模块。 PHY 芯片寄存器地址空间为5位,地址 0~31 共 32 个寄存器,IEEE 定义了 0~15 这 16 个寄存器的功能,16~31 这 16 个寄存器由厂商自行实现。 仅靠0~15这 16 个寄存器是完全可以驱动起 PHY 芯片,因此Linux 内核的通用 PHY 驱动是绝对可以让你这 PH...
一、phy执行的枚举状态定义 代码语言:javascript 代码运行次数:0 运行 AI代码解释 enum phy_state { PHY_DOWN=0, //down 如关闭网卡,ifconfig eth0 down PHY_STARTING, //1 PHY_READY, //2 phy设备注册成功 PHY_PENDING, //3 phy芯片挂起 PHY_UP, //4 开启网卡,ifconfig eth0 up PHY_AN, //5 网...
一、phy执行的枚举状态定义 enumphy_state{ PHY_DOWN=0,//down 如关闭网卡,ifconfig eth0 down PHY_STARTING,//1 PHY_READY,//2 phy设备注册成功 PHY_PENDING,//3 phy芯片挂起 PHY_UP,//4 开启网卡,ifconfig eth0 up PHY_AN,//5 网卡自动协商 ...
示例代码33.2.7.12 修改后的genphy_update_link函数 221int genphy_update_link(struct phy_device *phydev) 222{ 223unsignedint mii_reg; 224 225 #ifdef CONFIG_PHY_SMSC 226staticint lan8720_flag =0; 227int bmcr_reg =0; 228if(lan8720_flag ==0){ 229 bmcr_reg = phy_read(phydev, MDIO_DE...
We read every piece of feedback, and take your input very seriously. Include my email address so I can be contacted Cancel Submit feedback Saved searches Use saved searches to filter your results more quickly Cancel Create saved search Sign in Sign up Reseting focus {...