Skip to content

[sonic_xcvr]create_xcvr_api don't support port_id=0x0c #330

@jostar-yang

Description

@jostar-yang

We try to call get_power_set() as below and found it get None.
api = self.get_xcvr_api()
power_set = api.get_power_set()

So check xcvr_api_factory.py and found below code,
def create_xcvr_api(self):
...................................

QSFP28

    elif id == 0x11:
        codes = Sff8636Codes
        mem_map = Sff8636MemMap(codes)
        xcvr_eeprom = XcvrEeprom(self.reader, self.writer, mem_map)
        api = Sff8636Api(xcvr_eeprom)
    # QSFP+
    elif id == 0x0D:
        codes = Sff8436Codes
        mem_map = Sff8436MemMap(codes)
        xcvr_eeprom = XcvrEeprom(self.reader, self.writer, mem_map)
        api = Sff8436Api(xcvr_eeprom)

As I know QSFP(port_id=0xC) should follow SFF8436.
But it seems create_xcvr_api() lack of id==0x0C.
Could someone help check it?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions