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

[buildimage] Add support for PoE feature #19636

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

SerhiyBoikoPLV
Copy link

@SerhiyBoikoPLV SerhiyBoikoPLV commented Jul 19, 2024

Why I did it

To add PoE capabilities to SONiC

Work item tracking

How I did it

Support for the PoE feature relies on changes in multiple repositories:

HLD: sonic-net/SONiC#1631

Changes in this PR include:

  • added poe_vs hwsku (which is based on Force10-S6000)
  • added a target for the poesyncd vs container
  • added POE_PORT yang model

How to verify it

Run in a vs build:

$ docker ps | grep poe

a449d72059b5     docker-poesyncd-vs:latest     "/usr/local/bin/supe…"     3 days ago     Up About a minute     poesyncd

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

  • 201811
  • 201911
  • 202006
  • 202012
  • 202106
  • 202111
  • 202205
  • 202211
  • 202305

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)

Copy link

linux-foundation-easycla bot commented Jul 19, 2024

CLA Signed

The committers listed above are authorized under a signed CLA.

  • ✅ login: SerhiyBoikoPLV / name: Serhiy Boiko (e1fafd3)

Copy link
Contributor

Choose a reason for hiding this comment

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

Why is this needed? does PoE syncd have any interaction with "regular" (npu) syncd?

Copy link
Author

Choose a reason for hiding this comment

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

syncd is needed for interraction between PoE hardware (PSE) and SAI APIs to synchronize state changes from application and control plane with PSE.
Also syncd contains serialization for PoE specific attribute types (e.g. sai_poe_port_power_consumption_t in function sai_serialize_poe_port_power_consumption()).

Copy link
Contributor

@FengPan-Frank FengPan-Frank left a comment

Choose a reason for hiding this comment

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

Could we split PR into smaller ones? at least YANG model could be dedicated one.

@SerhiyBoikoPLV
Copy link
Author

Could we split PR into smaller ones? at least YANG model could be dedicated one.

yes, I'll move the changes to yang models to a new PR

Add target for poesyncd container
Add poe_vs hwsku
Add build flag to disable PoE feature (enabled by default).
Add cleanup of PoE database during config reload.

Signed-off-by: Serhiy Boiko <[email protected]>
Change-Id: I2f2b8d7ed3285193b1d58b9fc666dcb8bf1bfcd9
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.

3 participants