Skip to content

Commit

Permalink
Merge pull request #971 from shyam77git/patch-1
Browse files Browse the repository at this point in the history
Added feature enablement workflow to enable/disable 400G Interface link bring-up sequence
  • Loading branch information
prgeor authored May 10, 2022
2 parents 9d800b1 + c2752a2 commit 05de04c
Showing 1 changed file with 14 additions and 5 deletions.
19 changes: 14 additions & 5 deletions doc/sfp-cmis/Interface-Link-bring-up-sequence.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,15 +23,17 @@ Deterministic Approach for Interface Link bring-up sequence
* [Table 2: References](#table-2-references)

# Revision
| Rev | Date | Author | Change Description |
|:---:|:-----------:|:----------------------------------:|-----------------------------------|
| Rev | Date | Author | Change Description |
|:---:|:-----------:|:----------------------------------:|-------------------------------------|
| 0.1 | 08/16/2021 | Shyam Kumar | Initial version
| 0.2 | 12/13/2021 | Shyam Kumar, Jaganathan Anbalagan | Added uses-cases, workflows
| 0.3 | 01/19/2022 | Shyam Kumar, Jaganathan Anbalagan | Addressed review-comments
| 0.4 | 01/26/2022 | Shyam Kumar, Jaganathan Anbalagan | Addressed further review-comments
| 0.5 | 01/28/2022 | Shyam Kumar, Jaganathan Anbalagan | Addressed further review-comments
| 0.6 | 02/02/2022 | Shyam Kumar | Added feature-enablement workflow
| 0.7 | 02/02/2022 | Jaganathan Anbalagan | Added Breakout Handling
| 0.8 | 02/16/2022 | Shyam Kumar | Updated feature-enablement workflow
| 0.9 | 04/05/2022 | Shyam Kumar | Addressed review comments |


# About this Manual
Expand Down Expand Up @@ -149,11 +151,18 @@ Please refer to the flow/sequence diagrams which covers the following required
# Feature enablement
This feature (optics Interface Link bring-up sequence) would be enabled on per platform basis.
There could be cases where vendor(s)/platform(s) may take time to shift from existing codebase to the model (work-flows) described in this document.
In order to avoid any breakage and ensure gradual migration of different platforms/vendors to this model, there would be new field (flag) in xcvrd to enable/disable this feature.
When xcvrd spawns on LC/board, it would invoke platform plugin to check with the platform (hwsku) whether this feature is yet supported on underlying platform (board/LC) or not
In order to avoid any breakage and ensure gradual migration of different platforms/vendors to this model, will add this new workflow to enable/disable this feature:

In order to enable this feature, the platform would set ‘skip_xcvrd_cmis_mgr’ to ‘false’ in their respective pmon_daemon_control.json as part of platform bootstrap. When xcvrd would spawn on that hwsku (LC/board), it would parse ‘skip_xcvrd_cmis_mgr’ and if found 'false', it would launch CMIS task manager. This implies enabling this feature.

Else, if ‘skip_xcvrd_cmis_mgr’ is set/found 'true' by xcvrd, it would skip launching CMIS task manager and this feature would remain disabled.
If a platform/vendor does not specify/set ‘skip_xcvrd_cmis_mgr’, xcvrd would exercise the default workflow (i.e. when xcvrd detects QSFP-DD, it would luanch CMIS task manager and initialize the module per CMIS specification).

Note: This feature flag (skip_xcvrd_cmis_mgr) was added as a flexibility in case vendor/platform intend to disable this feature and not use CMIS task manager. However, techinically, as mentioned in this document, that should not be the case.

Workflow :
![Enabling 'Interface link bring-up sequence' feature(3)](https://user-images.githubusercontent.com/69485234/152266723-050377ce-d4de-4c67-a405-5acc66474d46.png)
![Enabling 'Interface link bring-up sequence' feature(2)](https://user-images.githubusercontent.com/69485234/154403945-654b49d7-e85f-4a7a-bb4d-e60a16b826a7.png)



# Transceiver Initialization
Expand Down

0 comments on commit 05de04c

Please sign in to comment.