Skip to content

[Mellanox] Add platform API support for CPO modules#42

Open
tshalvi wants to merge 6 commits intomasterfrom
master_single_asic_cpo
Open

[Mellanox] Add platform API support for CPO modules#42
tshalvi wants to merge 6 commits intomasterfrom
master_single_asic_cpo

Conversation

@tshalvi
Copy link
Owner

@tshalvi tshalvi commented Oct 28, 2025

Why I did it

To add support for CPO (Co-Packaged Optics) on Mellanox platforms.
Unlike traditional pluggable transceivers, CPO modules are integrated directly next to the ASIC. This design is becoming increasingly important in high-speed systems, as it enables better signal integrity, lower latency, and reduced power consumption.

Work item tracking
  • Microsoft ADO (number only):

How I did it

Implemented platform API-level support for CPO by introducing a new class to represent CPO modules and updating the chassis initialization flow to create CpoPort objects for all ports identified as CPO.

Since CPO is not yet part of the CMIS standard, port identification is currently based on the hwsku.json file (to be upstreamed later) rather than on module EEPROM data (planned for future updates).

In the relevant platform SKU file, each CPO port should include the following field:

{
    "interfaces": {
        "Ethernet0": {
            "default_brkout_mode": "2x400G[200G]",
            "port_type": "CPO"
        },
        "Ethernet8": {
            "default_brkout_mode": "2x400G[200G]",
            "port_type": "CPO"
        },
        "Ethernet16": {
            "default_brkout_mode": "2x400G[200G]",
            "port_type": "CPO"
        }
    }
}

How to verify it

  1. All relevant unit tests passed.
  2. Manual validation completed successfully on the target platform.

Which release branch to backport (provide reason below if selected)

  • 202205
  • 202211
  • 202305
  • 202311
  • 202405
  • 202411
  • 202505

Tested branch (Please provide the tested image version)

Description for the changelog

Link to config_db schema for YANG module changes

A picture of a cute animal (not mandatory but encouraged)

@tshalvi tshalvi changed the title [Mellanox] Add CPO support [Mellanox] Add platform API support for CPO modules Oct 28, 2025
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.

1 participant