知识点
mdio子模块属于总线型驱动

NAPI(New API)
网卡数据处理API,用于提高网络处理效率。NAPI是中断和轮询poll的结合,数据量低时采用中断,数据量高时采用轮询

通用phy驱动genphy。符合802.3,phy寄存器地址统一

流程梳理
以RK3399(Android7.1.2)为例
路径为: kernel/drivers/net/ethernet/stmicro/stmmac/

dts(“rockchip,rk3399-gmac”)
 ->rk_gmac_probe(dwmac-rk.c),gmac时钟、电源等配置
 ->stmmac_dvr_probe(stmmac_main.c)mac时钟使能、mac硬件初始化、net_device和NAPI绑定(netif_napi_add)、register_netdev()等等
 ->stmmac_mdio_register->mdiobus_register
 ->

..............

作者: Shell