1,首先从模块加载函数module_init(fec_enet_module_init); static int __init fec_enet_module_init(void) { struct net_device *dev; int i, j, err; DECLARE_MAC_BUF(mac); printk(“FEC ENET Version 0.2\n”); for (i = 0; (i < FEC_MAX_PORTS); i++) { dev = alloc_etherdev(sizeof...
我们先来从fec.c这 个与硬件直接相关的看起: 首先找到module_init(fec_enet_module_init);这里fec_enet_module_init为入口点 fec_enet_module_init() 首先调用fec_arch_init,它调用gpio_fec_active设置GPIO为FEC模式,然后如果有电源管理的话,就调用 mxc_fec_power_on开启电源。接着调用clk_get,clk_enable, ...
static void __init imx6q_enet_phy_init(void) { if (IS_BUILTIN(CONFIG_PHYLIB)) { phy_register_fixup_for_uid(PHY_ID_KSZ9021, MICREL_PHY_ID_MASK, ksz9021rn_phy_fixup); phy_register_fixup_for_uid(PHY_ID_KSZ9031, MICREL_PHY_ID_MASK, ksz9031rn_phy_fixup); phy_register_fixup_fo...
MX8MP_IOMUXC_ENET_MDIO__ENET_QOS_MDIO 0x3 MX8MP_IOMUXC_ENET_TD3__ENET_QOS_RGMII_TD3 0x1f MX8MP_IOMUXC_ENET_TD2__ENET_QOS_RGMII_TD2 0x1f MX8MP_IOMUXC_ENET_TD1__ENET_QOS_RGMII_TD1 0x1f MX8MP_IOMUXC_ENET_TD0__ENET_QOS_RGMII_TD0 0x1f MX8MP_IOMUXC_ENET_RD...
@@ -713,44 +703,6 @@ static int fec_enet_ipc_handle_init(struct fec_enet_private *fep) return imx_scu_get_handle(&fep->ipc_handle); } -static void fec_enet_ipg_stop_set(struct fec_enet_private *fep, bool enabled) -{ - struct device_node *np = fep->pdev->dev.of_node; ...
extension_util models __init__.py enet_paper.py spatial_dropout.py config_utils.py experiments img pretrained_model .gitignore Description.md README.md caffe_to_chainer.py calculate_class_weight.py demo.py test.py train.pyBreadcrumbs ENet_chainer /enet /models / spatial_dropou...
我们先来从fec.c这个与硬件直接相关的看起:首先找到module_init(fec_enet_module_init);这里fec_enet_module_init为入口点 fec_enet_module_init...() 首先调用fec_arch_init,它调用gpio_fec_active设置GP...
fec.c: fec_probe pdata->init: 0 --- FEC GPIO INIT (start) --- --- ENET_PWR OK --- --- ENET_PHY_RESET OK --- --- FEC GPIO INIT (end) --- fec.c: fec_probe fec_enet_init:0 fec.c: fec_probe mii_init fec.c: fec_probe register_netdev:0 fec.c: ...
After that has finished, the MII polling code notices the link has come up, calls "fec_enet_adjust_link()" and that calls "fec_restart()" and wipes them out again. So it now can't receive the multicasts. If you're really lucky with exactly the right timing in ...
Have you looked at the performance counters (ENET_IEEE_x) to see if any reported failures correlate with the dropped packets? I assume you've seen our results at http://boundarydevices.com/i-mx6-ethernet/, and I assume you know about the bandwidth limitations on the receive side. We have...