diff --git a/platform/mellanox/mlnx-platform-api/sonic_platform/sfp.py b/platform/mellanox/mlnx-platform-api/sonic_platform/sfp.py index 0e76f947b839a..663038082d8ad 100644 --- a/platform/mellanox/mlnx-platform-api/sonic_platform/sfp.py +++ b/platform/mellanox/mlnx-platform-api/sonic_platform/sfp.py @@ -678,7 +678,9 @@ def get_error_description(self): if self.is_sw_control(): api = self.get_xcvr_api() return api.get_error_description() if api else None - except: + except NotImplementedError: + return 'Not supported' + except Exception: return self.SFP_STATUS_INITIALIZING oper_status, error_code = self._get_module_info(self.sdk_index) diff --git a/platform/mellanox/mlnx-platform-api/tests/test_sfp.py b/platform/mellanox/mlnx-platform-api/tests/test_sfp.py index fecfadc1d93cb..6f4f4a9051c44 100644 --- a/platform/mellanox/mlnx-platform-api/tests/test_sfp.py +++ b/platform/mellanox/mlnx-platform-api/tests/test_sfp.py @@ -94,6 +94,9 @@ def test_sfp_get_error_status(self, mock_get_error_code, mock_control): mock_control.side_effect = RuntimeError('') description = sfp.get_error_description() assert description == 'Initializing' + + mock_control.side_effect = NotImplementedError('') + assert description == 'Not supported' @mock.patch('sonic_platform.sfp.SFP._get_page_and_page_offset') @mock.patch('sonic_platform.sfp.SFP._is_write_protected')