Skip to content

add cpo bailly xcvr cmis#672

Merged
prgeor merged 1 commit into
sonic-net:masterfrom
KroosMicas:master
Jun 5, 2026
Merged

add cpo bailly xcvr cmis#672
prgeor merged 1 commit into
sonic-net:masterfrom
KroosMicas:master

Conversation

@KroosMicas

Copy link
Copy Markdown
Contributor

Description

Add CPO Bailly-related CMIS APIs/MEM maps/Code/Fields as well as the CPO management base class

Motivation and Context

Run Bailly using the community framework

How Has This Been Tested?

Additional Information (Optional)

@mssonicbld

Copy link
Copy Markdown
Collaborator

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

Comment thread sonic_platform_base/sonic_xcvr/bailly_optoe_base.py
@mssonicbld

Copy link
Copy Markdown
Collaborator

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld

Copy link
Copy Markdown
Collaborator

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld

Copy link
Copy Markdown
Collaborator

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld

Copy link
Copy Markdown
Collaborator

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld

Copy link
Copy Markdown
Collaborator

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld

Copy link
Copy Markdown
Collaborator

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld

Copy link
Copy Markdown
Collaborator

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld

Copy link
Copy Markdown
Collaborator

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld

Copy link
Copy Markdown
Collaborator

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld

Copy link
Copy Markdown
Collaborator

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@prgeor prgeor left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

@KroosMicas are we aligned to the latest design?

@KroosMicas

Copy link
Copy Markdown
Contributor Author

@KroosMicas are we aligned to the latest design?

Yes, for memmap, we have implemented it using the latest single-page approach. And it has been fully verified through the latest optical driver.

@AndrewQu-Micas AndrewQu-Micas left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

changes are good

@AndrewQu-Micas AndrewQu-Micas left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

changes are good.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Adds Bailly CPO (ELS) support to sonic_platform_common’s transceiver framework by introducing Bailly-specific CMIS extensions (codes, fields, memory map, and API) plus a new CPO Optoe base class and unit tests.

Changes:

  • Add Bailly-specific CMIS extensions: codes (BaillyCodes), fields/constants (bailly_consts), and memory map (BaillyMemMap).
  • Add Bailly-specific API (BaillyApi) that extends CMIS behavior and augments get_transceiver_info().
  • Add a new CpoOptoeBase helper and unit tests for the new Bailly components; update packaging list in setup.py.

Reviewed changes

Copilot reviewed 8 out of 12 changed files in this pull request and generated 9 comments.

Show a summary per file
File Description
tests/sonic_xcvr/test_bailly_optoe_base.py New unit tests for CpoOptoeBase JSON/config, EEPROM access, and presence logic
tests/sonic_xcvr/test_bailly_cmis.py New unit tests for BaillyApi/BaillyCodes (includes a broken patch target needing fixes)
sonic_platform_base/sonic_xcvr/mem_maps/bailly/bailly_mem_map.py New Bailly CMIS page definitions (B0/B1/B2) and memory map class
sonic_platform_base/sonic_xcvr/mem_maps/bailly/init.py Package init for Bailly mem maps
sonic_platform_base/sonic_xcvr/fields/bailly/bailly_consts.py New Bailly field name constants used by mem map/API
sonic_platform_base/sonic_xcvr/fields/bailly/init.py Package init for Bailly fields
sonic_platform_base/sonic_xcvr/codes/bailly/bailly_codes.py New Bailly code dictionaries (identifiers, interfaces, laser-related enums)
sonic_platform_base/sonic_xcvr/codes/bailly/init.py Package init for Bailly codes
sonic_platform_base/sonic_xcvr/bailly_optoe_base.py New CPO Optoe base class and cpo.json reader (has several robustness issues)
sonic_platform_base/sonic_xcvr/api/bailly/bailly_api.py New Bailly API extending CMIS and enriching transceiver info
sonic_platform_base/sonic_xcvr/api/bailly/init.py Package init for Bailly API
setup.py Register new Bailly packages for distribution

Comment thread sonic_platform_base/sonic_xcvr/bailly_optoe_base.py Outdated
Comment thread sonic_platform_base/sonic_xcvr/bailly_optoe_base.py
Comment thread sonic_platform_base/sonic_xcvr/bailly_optoe_base.py
Comment thread sonic_platform_base/sonic_xcvr/bailly_optoe_base.py Outdated
Comment thread tests/sonic_xcvr/test_bailly_cmis.py
Comment thread sonic_platform_base/sonic_xcvr/codes/bailly/bailly_codes.py
Comment thread sonic_platform_base/sonic_xcvr/codes/bailly/bailly_codes.py
Comment thread sonic_platform_base/sonic_xcvr/api/bailly/bailly_api.py
Comment thread tests/sonic_xcvr/test_bailly_cmis.py

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

@KroosMicas this is NOT aligned with the design. but we should fix this later.

@linux-foundation-easycla

Copy link
Copy Markdown

CLA Not Signed

@mssonicbld

Copy link
Copy Markdown
Collaborator

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

Signed-off-by: Kroos <kroos@micasnetworks.com>
@mssonicbld

Copy link
Copy Markdown
Collaborator

/azp run

@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines successfully started running 1 pipeline(s).

@prgeor prgeor left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

@KroosMicas where is the RLM API and memory map?

@KroosMicas

KroosMicas commented Jun 5, 2026

Copy link
Copy Markdown
Contributor Author

@KroosMicas where is the RLM API and memory map?
@prgeor Newly added content within bailly_mem_map.py and bailly_api.py is mostly ELS-related, while OE leverages the existing CmisMemMap and CmisApi.

@prgeor prgeor left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

@KroosMicas agreed that the code will be re-arranged later.

@prgeor prgeor merged commit 0b5b4a6 into sonic-net:master Jun 5, 2026
6 checks passed
AnoopKamath pushed a commit to AnoopKamath/sonic-platform-common that referenced this pull request Jun 9, 2026
Signed-off-by: Kroos <kroos@micasnetworks.com>
Co-authored-by: Griffin Gao <griffin@micasnetworks.com>
AnoopKamath pushed a commit to AnoopKamath/sonic-platform-common that referenced this pull request Jun 9, 2026
Signed-off-by: Kroos <kroos@micasnetworks.com>
Co-authored-by: Griffin Gao <griffin@micasnetworks.com>
@yejianquan

Copy link
Copy Markdown

Hi @vaibhavhd , could you please back port this commit to 202605 ,it's a key change of CPO Bailly, and is safe to other non-CPO devices

@mssonicbld

Copy link
Copy Markdown
Collaborator

Cherry-pick PR to 202605: #689

@mssonicbld

Copy link
Copy Markdown
Collaborator

@KroosMicas cherry pick PR didn't pass PR checker after retry. Please help check! Thanks.
#689

---Powered by SONiC BuildBot

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

10 participants