Gem.e000b000 Aguardando a negociação automática PHY ser concluída… TIMEOUT?

1

O u-boot imprime isso antes de lançar o kernel

Gem.e000b000 Waiting for PHY auto negotiation to complete......... TIMEOUT !
BOOTP broadcast 1
BOOTP broadcast 2
BOOTP broadcast 3
BOOTP broadcast 4
BOOTP broadcast 5
Retry count exceeded; 

Existe alguma maneira de contornar essa negociação automática? O bootdelay é 0, então eu não terei nenhum acesso em um sistema em execução, então eu gostaria de modificar isso em um código fonte.

    
por user2799508 03.04.2014 / 12:34

1 resposta

2

Eu não estou familiarizado com o seu alvo em particular (Xilinx / Zynq?)

Parece que a ethernet de destino não está conectada a uma rede em funcionamento. Há dois sinais lá, 1) PHY auto negotiation TIMEOUT, 2) seu bootcmd inclui dhcp ou bootp para obter um endereço IP dinâmico para ethernet. Ambos devem ser controlados por configurações de variáveis de ambiente.

Geralmente é fácil modificar variáveis de ambiente em tempo de execução, seja no prompt de comando do u-boot ou com o utilitário linux fw_setenv. Normalmente, é mais difícil alterar / construir a fonte, depois atualizar o código do programa u-boot.

Se você não precisa trabalhar com ethernet, deve ser possível alterar sua variável de ambiente bootcmd (remova os comandos relacionados à ethernet, como o bootp). E para PHY, verifique a documentação da versão de inicialização do seu destino, ele deve informar algo (por exemplo, excluir a variável de ambiente ethact).

    
por 03.04.2014 / 17:50

Tags