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

[saibcm-modules] Broadcom SAI Library Development #21881

Open
seongm71 opened this issue Feb 27, 2025 · 3 comments
Open

[saibcm-modules] Broadcom SAI Library Development #21881

seongm71 opened this issue Feb 27, 2025 · 3 comments
Assignees
Labels
Triaged this issue has been triaged

Comments

@seongm71
Copy link

I would like to develop an SAI library for Broadcom switching ASICs.
Currently, I am planning to develop the SAI library using the SDK available on the OpenBCM site.

As far as I know, there is no open-source SAI library specifically for Broadcom.
Is there any open-source project that I can refer to for SAI library development?

Additionally, I understand that SONiC builds kernel modules for Broadcom switch ASICs using the sources located in platform/broadcom/saibcm-modules/.
I would like to test these compiled Broadcom kernel modules with the SDK built from the OpenBCM site.

However, it seems that the BCM kernel modules built from SONiC's sonic-buildimage and the bcm.user built from OpenBCM are not compatible with each other.
Could you please advise on how I can ensure that the bcm.user built with OpenBCM correctly works with the Broadcom kernel modules built from SONiC's sonic-buildimage?

Thank you in advance for your help.

@arlakshm
Copy link
Contributor

@adyeung can you please help

@arlakshm arlakshm added the Triaged this issue has been triaged label Mar 12, 2025
@adyeung
Copy link
Collaborator

adyeung commented Mar 12, 2025

@seongm71 BRCM SAI is compiled as part of SONiC binary, can you share more info about your usecase? Which platform vendor and environment is this for?

@seongm71
Copy link
Author

Thank you for your reply.

My goal is to develop libsaibcm for Broadcom ASICs. The reason we are developing libsaibcm is to extend and customize libsai directly to meet our customers' requirements.

Currently, as I understand, the libsaibcm used in SONiC is developed by Broadcom and is not compiled from source within sonic-buildimage but instead used as a precompiled binary file that is downloaded.

As the first step, we are considering the following environment:

  • Broadcom Trident3
  • Baremetal Switch: AS5835-54X

Once development is completed in this environment, we plan to expand support for the following Broadcom ASICs:

  • XGS: Trident (TD2, TD3, TD4), Tomahawk (TH, TH2, TH3)
  • DNX: Ramon, Qumran (Q2A, Q2U, Q2C), Jericho (JR2, J2C)

For this purpose, it would be great to have open-source projects or other resources that we can reference or utilize. Here are some open-source projects I am aware of:

Would you happen to know of any other resources we could refer to? Ideally, having access to Broadcom SAI implementation reference sources would be the most helpful.

Thank you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Triaged this issue has been triaged
Projects
None yet
Development

No branches or pull requests

3 participants