driver/net/phy/phy.c:phy_init()里通过宏CONFIG_PHY_MARVELL来初始化具体phy芯片,宏的定义在xxx_config.h中;
driver/net/phy/marvell.c:phy_marvell_init()中phy_register(&M88E1518_driver)来注册具体型号的phy芯片;
phy_register()的定义在phy.c,struct phy_driver的定义在include/phy.h中;
driver/net/phy/marvell.c:phy_marvell_init()中phy_register(&M88E1518_driver)来注册具体型号的phy芯片;
phy_register()的定义在phy.c,struct phy_driver的定义在include/phy.h中;
phy_device_create
create_phy_by_mask
get_phy_device_by_mask
get_phy_device
miiphy_reset
phy_find_by_mask
phy_connect
zynq_gem_init(driver/net/zynq_gem.c,其中struct eth_device定义在include/net.h)
zynq_gem_initialize
board_eth_init(board/xilinx/zynq/board.c)
get_phy_device_by_mask