[GTER] Programador de EEPROM SFP/SFP+

Paulo Coimbra coimbra.root at gmail.com
Thu Mar 23 11:01:07 -03 2017


Obrigado Luiz. Os endereços da eeprom que tenho que alterar sao,
basicamente esses:

Addr.  0x37 a 0x39 == 3 bytes == Vendor OUI SFP transceiver vendor IEEE
company ID

Além dos endereços do Checksum 0x63 (CC_Base) e 0x95 (CC_Ext)[1]

Os endereços do Vendor OUI, nao dá erro ao gravar. Nos checksum dá erro, a
funcao wiringPiCWrite retorna -1.


[1]https://ta.snia.org/kws/public/download/617/INF-8074.PDF



sds,

Paulo

Em 23/03/2017 10:44, "Luiz Otavio O Souza" <lists.br at gmail.com> escreveu:

> 2017-03-22 9:20 GMT-03:00 Paulo Coimbra:
> > Olá,
> > Usei a biblioteca WiringPi, a leitura/gravacao se dá byte a byte
> > (unsigned char). A leitura está ok. A gravacao nos bytes que preciso,
> > estão ok (a funcao int wiringPiI2CWriteReg8 (int fd, int reg, int
> > data)  retorna 0==OK), porém quando tento gravar o checksum a funcao
> > retorna -1 (Erro).
>
> Que registro você esta escrevendo ?
>
> A grande maioria das eeproms não tem registros, você simplesmente
> escreve o offset e le ou escreve no dispositivo.
>
> A função correta para accesso a eeproms seria a wiringPiI2CWrite().
>
> Veja que se você tem uma eeprom pequena (24c02:
> http://www.atmel.com/images/doc0180.pdf) o offset é 8 bits, se você
> tem uma eeprom maior (24c64: http://www.atmel.com/images/doc0336.pdf)
> o offset é 16 bits.  Essas são apenas algumas das diferenças
> (importantes nesse caso) que você pode encontrar dependendo do
> dispositivo que você tentando usar.
>
> Tente identificar o modelo exato da eeprom.
>
> > Talvez seja pelo fato de o SFP estar com a EEPROM em modo protegido?
>
> Também... ou algum dos problemas acima.
>
> -l
> --
> gter list    https://eng.registro.br/mailman/listinfo/gter



More information about the gter mailing list