问题:ETH0是通的,ETH1找不到PHY(连接到GMII2RGMII转换器时,找不到该设备),dts和vivado该如何配置?
系统:Zynq 7Z015
Vivado:2018.3
内核:4.6
VIVADO工程如下:
在内核设备树文件中,配置如下:
aliases {
ethernet0 = "/amba/eth@e000b000";
ethernet1 = "/amba/eth1@e000c000";
serial0 = "/amba/serial@e0001000";
};
eth@e000b000 {
compatible = "xlnx,ps7-ethernet-1.00.a";
reg = <0xe000b000 0x1000>;
interrupts = <0x0 0x16 0x4>;
interrupt-parent = <0x1>;
#address-cells = <0x1>;
#size-cells = <0x0>;
clock-names = "ref_clk", "aper_clk";
clocks = <0x2 0xd 0x2 0x1e>;
xlnx,enet-clk-freq-hz = <0x17d7840>;
xlnx,enet-reset = "MIO 11";
xlnx,enet-slcr-1000mbps-div0 = <0x8>;
xlnx,enet-slcr-1000mbps-div1 = <0x1>;
xlnx,enet-slcr-100mbps-div0 = <0x8>;
xlnx,enet-slcr-100mbps-div1 = <0x5>;
xlnx,enet-slcr-10mbps-div0 = <0x8>;
xlnx,enet-slcr-10mbps-div1 = <0x32>;
xlnx,eth-mode = <0x1>;
xlnx,has-mdio = <0x1>;
xlnx,ptp-enet-clock = <0x69f6bcb>;
phy-handle = ;
phy-mode = "rgmii-id";
phy0:phy@0 {
device_type = "ethernet-phy";
reg = <0x0>;
marvell,reg-init = <0x3 0x10 0xff00 0x1e 0x3 0x11 0xfff0 0xa>;
linux,phandle = <0x6>;
phandle = <0x6>;
};
};
eth1@e000c000 {
compatible = "xlnx,ps7-ethernet-1.00.a";
reg = <0xe000c000 0x1000>;
interrupts = <0x0 0x17 0x4>;
interrupt-parent = <0x1>;
#address-cells = <0x1>;
#size-cells = <0x0>;
clock-names = "ref_clk", "aper_clk";
clocks = <0x2 0xd 0x2 0x1e>;
xlnx,enet-clk-freq-hz = <0x17d7840>;
xlnx,enet-reset = "MIO 11";
xlnx,enet-slcr-1000mbps-div0 = <0x8>;
xlnx,enet-slcr-1000mbps-div1 = <0x1>;
xlnx,enet-slcr-100mbps-div0 = <0x8>;
xlnx,enet-slcr-100mbps-div1 = <0x5>;
xlnx,enet-slcr-10mbps-div0 = <0x8>;
xlnx,enet-slcr-10mbps-div1 = <0x32>;
xlnx,eth-mode = <0x1>;
xlnx,has-mdio = <0x1>;
xlnx,ptp-enet-clock = <0x69f6bcb>;
gmii2rgmii-phy-handle = ;
phy-mode = "gmii";
phy1:phy@8 {