CodingBox Q&A Ask question

Turris Omnia recusa um stick GPON MA5671A desbloqueado: a eth2 nunca sobe no Turris OS 5.0.3

Asked Active Viewed 200 AI translation from English
4

Estou tentando substituir o terminal da operadora no meu rack de casa por um stick GPON direto no roteador, para a fibra cair numa caixa só em vez de duas. O stick é reconhecido, e é aí que as boas notícias acabam.

  • Turris Omnia no Turris OS 5.0.3, kernel de fábrica
  • stick GPON Huawei MA5671A com firmware desbloqueado, configurado para SGMII 1G
  • pigtail SC/APC da tomada de parede até o stick
  • eth2 é a porta SFP

O módulo é detectado, mas a interface nunca ativa:

# dmesg | grep sfp
SFP module encoding does not support 8b10b nor 64b66b

A eth2 fica down depois disso, sem carrier, nada nos contadores.

O que já tentei até agora:

  • regravei o stick de volta para o firmware de fábrica, o que me dá um erro de leitura de EEPROM em vez disso
  • forcei a taxa com ethtool -s eth2 1000 autoneg off duplex full, depois disso a interface fica em 10 Mbit half duplex
  • movi o mesmo stick para um roteador MikroTik, onde ele sobe assim que a velocidade da porta é configurada manualmente

Então o módulo em si está vivo e o lado da fibra está bem. O que tem no stick que o kernel rejeita, e quais sticks GPON realmente sobem num Omnia em vez de serem recusados?

Comments 4

Accepted answer

Isso é um problema do lado do host, não um módulo morto. A EEPROM nesses sticks GPON reaproveitados declara um encoding que o driver sfp mainline não mapeia, o phylink por isso recusa subir a porta, e a linha que você colou é o driver dizendo exatamente isso. Sua própria evidência aponta na mesma direção: o mesmo stick linka num MikroTik assim que a velocidade da porta é configurada manualmente, então o óptico e o lado PON estão bons.

A única coisa que fez diferença de verdade pra mim foi um kernel novo o bastante para carregar as particularidades por módulo, que no Omnia significou o branch de teste HBD com kernel 5.4. Aviso que essa é uma vitória parcial e depende muito de qual stick você tem. Nesse kernel:

  • MA5671A modificado: continuou recusado, agora reclamando module address swap to access page 0xA2 not supported
  • MA5671A de fábrica: failed to read EEPROM: -6, igual ao seu
  • ZISA OP151S: a porta mudou para inband/1000base-x mas nunca linkou
  • Nokia/Alcatel G-010S-A: rejeitado pelos códigos de compliance
  • ZTE DFP-34G-2C2: linkou em 1 Gbps e ficou estável

Então, se você quer o Omnia funcionando agora em vez de eventualmente, o DFP-34G-2C2 é o que eu colocaria na cage. Teste na sua própria caixa antes de se comprometer, os resultados aqui claramente variam entre sticks e até entre revisões de firmware do mesmo stick.

3 CanadalantechCA Show original (English) AI translation

Duas coisas vale a pena confirmar antes de qualquer um começar a chutar. Primeiro, de qual branch vem esse 5.0.3 e o que o uname reporta como kernel? As particularidades de SFP por módulo que esses sticks GPON reaproveitados precisam entraram depois, então um kernel estável lançado e um de teste se comportam muito diferente com exatamente o mesmo módulo.

Segundo, o serial da ONU está registrado do lado da operadora? Um stick que nunca é autorizado na OLT vai ficar ali parecendo morto, e muitas operadoras se recusam a registrar uma ONU de terceiros.

E quando você conecta, a porta chega a mudar para inband/1000base-x, ou o log para exatamente nessa mensagem de encoding?

0 United Statestxnode67US Show original (English) AI translation

Branch estável, kernel de fábrica do 5.0.3, nada customizado em cima. O lado da operadora não é o problema aqui, é a mesma fibra e o stick carrega o serial registrado.

O log para na linha de encoding, a porta nunca vira inband/1000base-x. O que aparece depende do firmware. Com o desbloqueado:

SFP module encoding does not support 8b10b nor 64b66b

mais uma falha de transmissão reportada pelo módulo. Com o firmware de fábrica nem chega até aí:

failed to read EEPROM: -6

E como eu disse, forçar a taxa não faz nada: depois de ethtool -s eth2 1000 autoneg off duplex full a interface continua em 10 Mbit half duplex.

1 GermanyqsfpadminDE Show original (English) AI translation

Mais um modo de falha para descartar no mesmo roteador, porque parece parecido e não tem nada a ver com o encoding. Um HALNy HL-GSFP no Turris OS HBS 6.2.4 foi detectado, a porta até mudou para inband/1000base-x, aí o link caiu e a eth2 ficou down.

Causa: esse stick é um computador pequeno por conta própria. Ele gasta algo como um minuto subindo o próprio firmware, e só depois disso responde à cage com alguma coisa que faça sentido. Um boot frio faz o roteador olhar para a cage bem antes desse ponto, então a detecção falha e a caixa volta silenciosamente para a magnética da WAN de cobre. Aumentar o delay do boot resolveu:

fw_setenv bootdelay 60

Sessenta segundos em vez dos três padrão, e outra pessoa com o mesmo stick confirmou. Mais duas coisas que ajudaram: desconectar o cabo WAN de cobre e reiniciar mais uma vez, e entrar no próprio módulo para ver em que estado ele está, via serial em 38400 8N1 ou via SSH em 192.168.77.154 porta 22666.

2 United Statestxnode67US Show original (English) AI translation
Log in to comment. Log in