Skip to content

Adding new interface CEILR and CEILR_ER#2256

Open
prafull-brcm wants to merge 6 commits intoopencomputeproject:masterfrom
prafull-brcm:patch-4
Open

Adding new interface CEILR and CEILR_ER#2256
prafull-brcm wants to merge 6 commits intoopencomputeproject:masterfrom
prafull-brcm:patch-4

Conversation

@prafull-brcm
Copy link
Contributor

Adding new electrical interface CEILR for normal reach and CEILR_ER to enable extended reach option in SERDES.

SAI_PORT_INTERFACE_TYPE_USXGMII,

/** Interface type CEILR */
SAI_PORT_INTERFACE_TYPE_CEILR,

Choose a reason for hiding this comment

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

could you please clarify which technology is meant here ?

Copy link
Contributor Author

@prafull-brcm prafull-brcm Feb 24, 2026

Choose a reason for hiding this comment

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

This is optical common electrical interface for LR as normal reach and LR_ER for extended reach backplane mode for chip to chip interface connected with copper cable for ethernet lane data rate 56G, 112G, 212G etc .

Choose a reason for hiding this comment

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

Is it some proprietary technology or standard one ?

Copy link
Contributor Author

@prafull-brcm prafull-brcm Feb 25, 2026

Choose a reason for hiding this comment

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

CEILR is OIF standard electrical interface for backplane copper cable to connect module to module or chip to chip.

@tjchadaga
Copy link
Collaborator

@prafull-brcm - are you able to discuss this in the SAI community meeting on 3/12?

@prafull-brcm
Copy link
Contributor Author

@tjchadaga I can discuss this on 3/12 meeting in SAI community meeting.

Adding new electrical interface CEILR for normal reach and CEILR_ER to enable extended reach option in SERDES.

Signed-off-by: Prafull Singh <56103377+prafull-brcm@users.noreply.github.com>
Signed-off-by: Prafull Singh <56103377+prafull-brcm@users.noreply.github.com>
Copy link
Contributor Author

@prafull-brcm prafull-brcm left a comment

Choose a reason for hiding this comment

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

CEIMR interface is added for medium reach interconnect cable < 50cm length to connect chip to chip on same PCB.
CEILR and CEILR_ER (extended reach) interface is added to connect with cable (twin-axial copper cable backplane) < 1 m for communication interface between two cards across a backplane.
These interfaces follows OIF’s (Optical Internetworking Forum ) Common Electrical Interface.

@tjchadaga tjchadaga added the reviewed PR is discussed in SAI Meeting label Mar 12, 2026
@tjchadaga
Copy link
Collaborator

@prafull-brcm - As discussed in the community meeting, please update the PR with a detailed description of the types and usage examples

@tjchadaga
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@tjchadaga
Copy link
Collaborator

Please also address the metachecker failure by adding CEILR & CEIMR to meta/acronyms

WARNING: Word 'CEILR' is misspelled or is acronym, add to acronyms.txt? saiport.h 513:    /** Interface type CEILR */
WARNING: Word 'CEIMR' is misspelled or is acronym, add to acronyms.txt? saiport.h 510:    /** Interface type CEIMR */

Signed-off-by: Prafull Singh <56103377+prafull-brcm@users.noreply.github.com>
…tch-4

Signed-off-by: Prafull Singh <56103377+prafull-brcm@users.noreply.github.com>
@prafull-brcm
Copy link
Contributor Author

@tjchadaga @vmittal-msft
As discussed adding usage details for these new interfaces:
The inteface type is set during create port using attribute SAI_PORT_ATTR_INTERFACE_TYPE and new interfaces (CEILR, CEILR_ER and CEIMR) are added to enum sai_port_interface_type_t.
Here is the ussage detail:
/**
* @brief Configure Interface type
*
* @type sai_port_interface_type_t
* @flags CREATE_AND_SET
* @default SAI_PORT_INTERFACE_TYPE_NONE
*/
SAI_PORT_ATTR_INTERFACE_TYPE,

Line side attributes are set like this:
line_attr[2].id = sys_attr[2].id = SAI_PORT_ATTR_INTERFACE_TYPE;
line_attr[2].value.u32 = sys_attr[2].value.u32 = SAI_PORT_INTERFACE_TYPE_KR;

Newly added interfaces can be configured similar way:
line_attr[2].value.u32 = sys_attr[2].value.u32 = SAI_PORT_INTERFACE_TYPE_CEILR;

Call the create port using line side attribute:
rv = pai_port_apis_ptr->create_port(&line_port_id[phy_index], switch_id[phy_index],
COUNTOF(line_attr),
line_attr);

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

Labels

reviewed PR is discussed in SAI Meeting

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants