I'm trying to install Linux on an FPGA board. The linux flavour is petalinux for Xilinx FPGA chips.
The current Xilinx SoC has a Cortex A9 processor and a programmable hardware logic i.e FPGA. I captured the boot message on the terminal:
.....................U-boot time.......................partition....................................................... [Fri Dec 27 15:18:53.108 2013] Copying Linux from SD to RAM... [Fri Dec 27 15:18:53.129 2013] Device: SDHCI [Fri Dec 27 15:18:53.129 2013] Manufacturer ID: 2 [Fri Dec 27 15:18:53.129 2013] OEM: 544d [Fri Dec 27 15:18:53.129 2013] Name: SA04G [Fri Dec 27 15:18:53.129 2013] Tran Speed: 25000000 [Fri Dec 27 15:18:53.129 2013] Rd Block Len: 512 [Fri Dec 27 15:18:53.129 2013] SD version 1.10 [Fri Dec 27 15:18:53.129 2013] High Capacity: Yes [Fri Dec 27 15:18:53.129 2013] Capacity: 3951034368 [Fri Dec 27 15:18:53.129 2013] Bus Width: 1-bit [Fri Dec 27 15:18:53.129 2013] reading zImage [Fri Dec 27 15:18:59.367 2013] [Fri Dec 27 15:18:59.367 2013] 2304852 bytes read [Fri Dec 27 15:18:59.381 2013] reading devicetree.dtb [Fri Dec 27 15:18:59.475 2013] [Fri Dec 27 15:18:59.475 2013] 2709 bytes read [Fri Dec 27 15:18:59.491 2013] reading ramdisk8M.image.gz [Fri Dec 27 15:19:06.121 2013] [Fri Dec 27 15:19:06.121 2013] 2501584 bytes read [Fri Dec 27 15:19:06.144 2013] Trying to set up GEM link... [Fri Dec 27 15:19:06.144 2013] Resetting PHY... [Fri Dec 27 15:19:06.144 2013] [Fri Dec 27 15:19:06.144 2013] PHY reset complete. [Fri Dec 27 15:19:06.144 2013] Waiting for PHY to complete auto-negotiation... [Fri Dec 27 15:19:18.176 2013] ***Error: Auto-negotiation stalled... [Fri Dec 27 15:19:18.176 2013] ping failed; host 10.10.70.101 is not alive I'm specifically interested in these lines:
[Fri Dec 27 15:19:06.144 2013] PHY reset complete. [Fri Dec 27 15:19:06.144 2013] Waiting for PHY to complete auto-negotiation... [Fri Dec 27 15:19:18.176 2013] ***Error: Auto-negotiation stalled... [Fri Dec 27 15:19:18.176 2013] ping failed; host 10.10.70.101 is not alive Question #1: I guess these lines are for TCP/IP?
As can be seen about 12 seconds are wasted in here. The thing is I need a fast boot system, and would not be needing TCP/IP at all in the end application.
The Linux that I installed so far was using a pre-built image provided by Xilinx. Now to get rid of the TCP/IP part (since I don't need it, and if I don't have it in OS, this 12 seconds could be saved - this is my understanding), I'm planning to build my own Linux kernel.
So I downloaded the source code of for PetaLinux, assuming I'll have to cross compile it from my host system.
Question #2: But I want to know how can I exclude the TCP/IP part from the OS source, so that when the OS boots it will never execute those time consuming TCP/IP routines?
Question #3: I'm also not sure if in pre-built image can we have any option to disable TCP/IP part?
My aim is to get rid of these lines during the boot process:
[Fri Dec 27 15:19:06.144 2013] PHY reset complete. [Fri Dec 27 15:19:06.144 2013] Waiting for PHY to complete auto-negotiation... [Fri Dec 27 15:19:18.176 2013] ***Error: Auto-negotiation stalled... [Fri Dec 27 15:19:18.176 2013] ping failed; host 10.10.70.101 is not alive