Ich versuche Linux auf einer FPGA-Karte zu installieren. Das Linux-Aroma ist Petalinux für Xilinx-FPGA-Chips.
Der aktuelle Xilinx SoC verfügt über einen Cortex A9-Prozessor und eine programmierbare Hardwarelogik, dh FPGA. Ich habe die Startnachricht auf dem Terminal erfasst:
.....................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
Ich interessiere mich speziell für diese Zeilen:
[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
Frage 1: Ich denke, diese Zeilen sind für TCP / IP?
Wie zu sehen ist, werden hier ca. 12 Sekunden verschwendet. Die Sache ist, ich brauche ein Schnellstartsystem und würde in der Endanwendung überhaupt kein TCP / IP benötigen.
Das Linux, das ich bisher installiert habe, verwendete ein vorgefertigtes Image von Xilinx. Um den TCP / IP-Teil loszuwerden (da ich ihn nicht benötige und wenn ich ihn nicht im Betriebssystem habe, könnten diese 12 Sekunden gespeichert werden - das ist mein Verständnis), plane ich, meinen zu erstellen eigener Linux-Kernel.
Also habe ich den Quellcode von für PetaLinux heruntergeladen, vorausgesetzt, ich muss ihn von meinem Host-System aus kompilieren.
Frage 2: Aber ich möchte wissen, wie ich den TCP / IP-Teil von der Betriebssystemquelle ausschließen kann, damit beim Starten des Betriebssystems diese zeitaufwändigen TCP / IP-Routinen niemals ausgeführt werden.
Frage 3: Ich bin mir auch nicht sicher, ob wir in einem vorgefertigten Image eine Option zum Deaktivieren des TCP / IP-Teils haben können.
Mein Ziel ist es, diese Zeilen während des Startvorgangs zu entfernen:
[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