07-27-2012 02:56 PM
Hi,
I'm trying to load linux kernel in an Avnet LX9 microboard. I'm working with xilinx-14.1-build version and using the Xilinx AXI Ethernet Driver, but when I run linux and type the command: 'ifconfig eth0 up'
I receive: ifconfig: SIOCGIFFLAGS: No such device
Is posible that does not exist a valid Ethernet driver for this board?
What I may do?
Thanks
07-27-2012 03:46 PM
No experience with this platform. Some generic things to try. What does just "ifconfig -a" display? You could try the "ifup" and "ifdown" command scripts. Depends on how your file system is arranged.
07-27-2012 07:01 PM
The Ethernet driver isn't board specific, so it should work fine with the AXI Ethernet core on the Spartan-6 LX9 microboard. Do you have the Ethernet core in your DTS file, and did you fully build support for the AXI Ethernet driver into the kernel?
--Rob
07-28-2012 02:58 AM
Hi, I've tried these commands, and their replies are :
'ifconfig -a'
lo Link encap:Local Loopback
LOOPBACK MTU:16436 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
'ifup eth0'
ifup: can't open '/etc/network/interfaces': No such file or directory
And this is the code section of my DTS and .config files:
DTS:
axi4lite_0: axi@0 {
#address-cells = <1>;
#size-cells = <1>;
compatible = "xlnx,axi-interconnect-1.03.a", "simple-bus";
ranges ;
Ethernet_MAC: ethernet@40e00000 {
compatible = "xlnx,axi-ethernetlite-1.00.a", "xlnx,xps-ethernetlite-1.00.a";
device_type = "network";
interrupt-parent = <µblaze_0_intc>;
interrupts = < 1 0 >;
local-mac-address = [ 00 0a 35 1e bc 00 ];
phy-handle = <&phy0>;
reg = < 0x40e00000 0x10000 >;
xlnx,duplex = <0x1>;
xlnx,family = "spartan6";
xlnx,include-global-buffers = <0x0>;
xlnx,include-internal-loopback = <0x0>;
xlnx,include-mdio = <0x1>;
xlnx,include-phy-constraints = <0x1>;
xlnx,rx-ping-pong = <0x0>;
xlnx,s-axi-aclk-period-ps = <0x3a98>;
xlnx,s-axi-id-width = <0x1>;
xlnx,s-axi-supports-narrow-burst = <0x0>;
xlnx,tx-ping-pong = <0x0>;
mdio {
#address-cells = <1>;
#size-cells = <0>;
phy0: phy@7 {
compatible = "marvell,88e1111";
device_type = "ethernet-phy";
reg = <7>;
} ;
} ;
} ;
.config file
#
# MII PHY device drivers
#
CONFIG_MARVELL_PHY=y
# CONFIG_DAVICOM_PHY is not set
# CONFIG_QSEMI_PHY is not set
# CONFIG_LXT_PHY is not set
# CONFIG_CICADA_PHY is not set
# CONFIG_VITESSE_PHY is not set
# CONFIG_SMSC_PHY is not set
# CONFIG_BROADCOM_PHY is not set
# CONFIG_ICPLUS_PHY is not set
# CONFIG_REALTEK_PHY is not set
CONFIG_NATIONAL_PHY=y
# CONFIG_STE10XP is not set
# CONFIG_LSI_ET1011C_PHY is not set
# CONFIG_MICREL_PHY is not set
# CONFIG_FIXED_PHY is not set
# CONFIG_MDIO_BITBANG is not set
# CONFIG_NET_ETHERNET is not set
CONFIG_NETDEV_1000=y
# CONFIG_XILINX_LL_TEMAC is not set
CONFIG_XILINX_AXI_ETHERNET=y
# CONFIG_XILINX_TEMAC is not set
CONFIG_XILINX_LLTEMAC=y
# CONFIG_XILINX_LLTEMAC_MARVELL_88E1111_RGMII is not set
# CONFIG_XILINX_LLTEMAC_MARVELL_88E1111_GMII is not set
# CONFIG_XILINX_LLTEMAC_MARVELL_88E1111_MII is not set
CONFIG_XILINX_LLTEMAC_NATIONAL_DP83865_GMII=y
# CONFIG_STMMAC_ETH is not set
CONFIG_NETDEV_10000=y
CONFIG_WLAN=y
# CONFIG_HOSTAP is not set
I have added the Ethernet core in DTS file and Ethernet AXI driver in .config file.
I'm working with ramdisk (root=/dev/ram), it could be the problem?
Thanks
07-28-2012 08:37 AM
Sounds like the driver is in place. But the only the local loopback is being configured. The DTS file, "chosen" section, the "bootargs" should have an "ip" argument like:
ip=:::::eth0:dhcp
Assumes you have a DHCP server on your network. Static ip definition is a more complicated. You might want to add "earlyprintk" as well. Just in case nothing prints out during boot. The ramdisk shouldn't be a problem. Ramdisks appears to be the Xilinx way. Anything in the boot messages that mention the network driver?
07-28-2012 12:44 PM
Thanks for reply norman.
In other forum, suggested me to use an older kernel version. Now I'm usign xilinx_v2.6.37.
With this version after run linux and type command 'ifconfig -a' I get this response:
eth0 Link encap:Ethernet HWaddr 00:0A:35:A1:E8:00
BROADCAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
Interrupt:1 Memory:40e00000-40e0ffff
lo Link encap:Local Loopback
LOOPBACK MTU:16436 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 B) TX bytes:0 (0.0 B)
I can see eth0 interface, but when I try 'ifconfig eth0 up' command appeared this new error:
net eth0: of_phy_connect() failed
As you say, I put this argument on boot: 'console=ttyUL0 root=/dev/ram ip=:::::eth0:dhcp'
and during the boot messages appears this error:
Fixed MDIO Bus: probed
of:xilinx_emaclite 40e00000.ethernet: Device Tree Probing
Xilinx Emaclite MDIO: probed
mdio_bus c000bd0c: error probing PHY at address 7
of:xilinx_emaclite 40e00000.ethernet: MAC address is now 00:0a:35:a1:e8:00
of:xilinx_emaclite 40e00000.ethernet: Xilinx EmacLite at 0x40E00000 mapped to 0xC40A0000, irq=1
TCP cubic registered
NET: Registered protocol family 17
Any suggestion?
Thanks
07-28-2012 02:33 PM
The simplistic response would be to say thay the PHY ID on your board is not 7. This ID is probably hard wired by pins on the 88e1111. Unfortunately my ignorance of the board might lead you astray. You could try to figure out how the 88e1111 is ID pins are strapped down and change the DTS file to match. Sorry that's all I got. Maybe "ra" will have a more informed response.
08-13-2014 10:02 AM
I know there has been long time from last post , but is there some one have been solved this problem?
when i want to assign
06-17-2016 07:03 AM
I'm also interested in a solution. I'm facing the same problem (probably).
10-20-2018 07:13 PM
Hi,
This problem says you are using the wrong PHY or PHY address. You should check your device tree to make sure your have correct PHY. An example as following,
axi_ethernet_eth_buf: ethernet@40c00000 { axistream-connected = <&axi_dma_1>; axistream-control-connected = <&axi_dma_1>; clock-frequency = <100000000>; clocks = <&clk_bus_0>; compatible = "xlnx,axi-ethernet-1.00.a"; device_type = "network"; interrupt-parent = <µblaze_1_axi_intc>; interrupts = <4 2>; reg = <0x40c00000 0x40000>; xlnx,phy-type = <0x4>; xlnx,phyaddr = <0x1>; xlnx,rxcsum = <0x0>; xlnx,rxmem = <0x8000>; xlnx,txcsum = <0x0>; phy-handle = <&phy0>; mdio { #address-cells = <1>; #size-cells = <0>; phy0: phy@7 { device_type = "ethernet-phy"; reg = <7>; }; }; };
10-05-2020 05:09 AM
Hi ,
just verify whether this CONFIG_XILINX_PHY macro is enabled or not.