REVELPROG-IS programmer supports MSA compliant transceivers. MSA (Multi-Source Agreement) is an agreement between multiple manufacturers. It defines standards for form factors, electrical and optical interface for various transceivers. From programming point of view we are interested only with management interface. I'm sharing below direct links to standards, but please check latest speficiations on SNIA organization page: https://www.snia.org/technology-communi ... ifications to keep up to date
If you would like to find information how transceivers is coded, which bytes you should change, how to interpret bytes in memory you need to check it in MSA specification, I selected most popular standards based on transceiver type:
SFP / SFP+ / SFP28
SFF-8472 or CMIS
SFP-DD MIS or CMIS
QSFP / QSFP+ / QSFP28
SFF-8436 or SFF-8636 or CMIS
QSFP-DD / QSFP-DD800
As a general rule, in SFF higher number means newer standard. Additionaly for newest transceivers with multiple lines manufacturers are using CMIS standard which has been desgined largely after the QSFP so it's quite similar to SFF-8636 - memory map has been changed in order to accomodate more electrical lanes.
How do you know if you have SFP+ in SFF-8472 standard or CMIS standard? Or QSFP+ in SFF-8636 standard or CMIS standard? First solution is to check in manufacturer datasheet. Second solution is to read A0 block on memory and check first byte. Please check SFF-8024 Module Reference Codes page 16.
For example, if first byte is 03h - you have SFP/SFP+/SFP28 transceiver in SFF-8472 standard. If first byte is 20h - you have SFP+ in CMIS standard. If first byte is 0D - it's QSFP/QSFP+ in SFF standard. If first byte is 1Eh - it's QSFP+ in CMIS standard. And so on...
Please check also Memory organization tutorial for SFP, QSFP and XFP transceivers - more details how EEPROM and is organized, which bytes you can change, how to programm it using REVELPROG-IS programmer with one of the adapter boards.