• Vadim Pasternak's avatar
    mlxsw: core: Extend QSFP EEPROM size for ethtool · a45bfb5a
    Vadim Pasternak authored
    Extend the size of QSFP EEPROM for the cable types SSF8436 and SFF8636
    from 256 to 640 bytes in order to expose all the EEPROM pages by
    ethtool.
    
    For SFF-8636 and SFF-8436 specifications, the driver exposes 256 bytes
    of data for ethtool's get_module_eeprom() callback. This is because the
    driver uses the below defines to specify SFF module length in ethtool's
    get_module_info() callback:
    'ETH_MODULE_SFF_8636_LEN' and 'ETH_MODULE_SFF_8436_LEN' (both are 256).
    
    As a result of exposing 256 bytes only, ethtool shows wrong "zero" info
    for pages 1, 2, 3.
    
    The patch changes the length returned by callback for get_module_info()
    to the values from the next defines: 'ETH_MODULE_SFF_8636_MAX_LEN' and
    'ETH_MODULE_SFF_8436_MAX_LEN' (both are 640) to allow exposing of upper
    page 1, 2 and 3.
    Signed-off-by: default avatarVadim Pasternak <vadimp@mellanox.com>
    Acked-by: default avatarJiri Pirko <jiri@mellanox.com>
    Signed-off-by: default avatarIdo Schimmel <idosch@mellanox.com>
    Signed-off-by: default avatarJakub Kicinski <jakub.kicinski@netronome.com>
    a45bfb5a
core_env.c 6.79 KB