Estou tentando instalar o Linux em uma placa FPGA. O sabor do linux é petalinux para chips Xilinx FPGA.
O atual Xilinx SoC possui um processador Cortex A9 e uma lógica de hardware programável, ou seja, FPGA. Capturei a mensagem de inicialização no 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
Estou especificamente interessado nessas linhas:
[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
Pergunta 1: Acho que essas linhas são para TCP / IP?
Como pode ser visto, cerca de 12 segundos são desperdiçados aqui. O problema é que preciso de um sistema de inicialização rápida e não precisaria de TCP / IP no aplicativo final.
O Linux que eu instalei até agora estava usando uma imagem pré-criada fornecida pelo Xilinx. Agora, para me livrar da parte TCP / IP (já que não preciso dela, e se não a tiver no SO, esses 12 segundos podem ser salvos - este é o meu entendimento), estou planejando construir o meu próprio kernel Linux.
Então eu baixei o código fonte do PetaLinux, supondo que eu precise compilá-lo do meu sistema host.
Pergunta 2: Mas quero saber como posso excluir a parte TCP / IP da fonte do SO, para que, quando o SO inicializar, ele nunca execute as rotinas TCP / IP demoradas?
Pergunta nº 3: Também não tenho certeza se na imagem pré-criada podemos ter alguma opção para desativar a parte TCP / IP?
Meu objetivo é livrar-se dessas linhas durante o processo de inicialização:
[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