Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Credo AEC 400G firmware v4.1 needs to set low power mode when change to DPDeinit state #587

Open
wants to merge 3 commits into
base: master
Choose a base branch
from

Conversation

CharlieChenEC
Copy link

Credo AEC 400G firmware v4.1 needs to set low power mode when change to DPDeinit state

Description
Credo AEC 400G needs to set low power mode when changing to DPDeinit state on firmware v4.1. After #254 is merged, low power mode will not be set when changing to DPDeinit state.

Motivation and Context
This patch adds the code to set low power mode only when changing to DPDeinit state when the transceiver's vendor is 'Credo' and 'host_assign' is '1'(Which means the application mode only has 1 logical port on the transceiver). With this patch, the Credo AEC 400G can work correctly.

How Has This Been Tested?
Insert AEC 400G on AS9716 and verify the cable is link up.

…to DPDeinit state

Description
Credo AEC 400G needs to set low power mode when changing to DPDeinit state
on firmware v4.1. After sonic-net#254
is merged, low power mode will not be set when changing to DPDeinit state.

Motivation and Context
This patch adds the code to set low power mode only when changing to
DPDeinit state when the transceiver's vendor is 'Credo' and 'host_assign'
is '1'(Which means the application mode only has 1 logical port on the transceiver).
With this patch, the Credo AEC 400G can work correctly.
@mssonicbld
Copy link
Collaborator

/azp run

Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mihirpat1
Copy link
Contributor

@CharlieChenEC Please fix the coverage check

@mssonicbld
Copy link
Collaborator

/azp run

Copy link

Azure Pipelines successfully started running 1 pipeline(s).

…it_set_power_expired()' in test_xcvrd.py to enhance the test code coverage.
@mssonicbld
Copy link
Collaborator

/azp run

Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@@ -1144,6 +1144,31 @@ def wait_for_port_config_done(self, namespace):
if key in ["PortConfigDone", "PortInitDone"]:
break

def need_lp_mode_for_dpdeinit(self, api, appl):
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@CharlieChenEC I don't think we can keep add vendor specific checks in a code that is generic and expects all modules to follow CMIS spec

Copy link
Collaborator

@prgeor prgeor left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@CharlieChenEC please get the module updated to the firmware that is fully CMIS compliant. A module should honor low power mode at any time.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants