[U-Boot] Ethernet persistence
Anthony Mahar
anthony.j.mahar at gmail.com
Thu Feb 27 17:09:15 CET 2014
How can I make the ethernet connection persistent (after first use), rather
than reconnecting/re initializing on each reuse?
I'm working with a Xilinx Zynq zc706 board and am up and running u-boot
quite successfully. My main use case is to store u-boot in on-board flash,
and have u-boot tftp get / boot the bitstream, kernel image, devicetree, and
ramdisk image. The following script functions well:
"qspiboot=echo Configure PL and booting Linux from TFTP... && " \
"fpga info 0;" \
"tftp 0x1000000 system.bin;" \
"fpga load 0 0x1000000 cb44bc;" \
"tftp 0x3000000 ${kernel_image};" \
"tftp 0x2A00000 ${devicetree_image};" \
"tftp 0x2000000 ${ramdisk_image};" \
"bootm 0x3000000 0x2000000 0x2A00000\0" \
The ethernet (Zynq's gem.e000b000) will get initialized on first use, as
appropriate, however the Ethernet is reinitialized and auto negotiated again
for each subsequent tftp request which shouldn't be necessary. A snippet is
listed below. Each 'reconnection' takes several seconds... a few to auto
negotiate, then a few more for the Windows based TFTP server to recognize
the connection and allow connections to the server. Multiply this by the
number of transfers and it takes a very long time to transfer a very little
amount of data.
Snippet:
Xilinx Device
Descriptor @ 0x3ffbaf78
Family: Zynq PL
Interface type: Device configuration interface (Zynq)
Device Size: 13321404 bytes
Cookie: 0x45 (69)
Device name: 7z045
No Device Function Table.
Gem.e000b000 Waiting for PHY auto negotiation to complete....... done
Using Gem.e000b000 device
TFTP from server 192.168.2.1; our IP address is 192.168.2.10
Filename 'system.bin'.
Load address: 0x1000000
Loading: T #################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
#################################################################
###############################################################
953.1 KiB/s
done
Bytes transferred = 13321404 (cb44bc hex)
Gem.e000b000:7 is connected to Gem.e000b000. Reconnecting to Gem.e000b000
Gem.e000b000 Waiting for PHY auto negotiation to complete....... done
Using Gem.e000b000 device
TFTP from server 192.168.2.1; our IP address is 192.168.2.10
Filename 'uImage'.
Load address: 0x3000000
Loading: T #################################################################
#################################################################
#################################################################
################
429.7 KiB/s
done
--
View this message in context: http://u-boot.10912.n7.nabble.com/Ethernet-persistence-tp174934.html
Sent from the U-Boot mailing list archive at Nabble.com.
More information about the U-Boot
mailing list