Skip to content

[Mellanox] Change NVIDIA SDK build to cmake method#22

Closed
dprital wants to merge 2 commits intomasterfrom
master-build-sdk-with-cmake
Closed

[Mellanox] Change NVIDIA SDK build to cmake method#22
dprital wants to merge 2 commits intomasterfrom
master-build-sdk-with-cmake

Conversation

@dprital
Copy link
Owner

@dprital dprital commented Jun 9, 2023

Why I did it

Up to now, building Mellanox SDK debian packages was done by "autotools" method.
Lately, Mellanox SDK team added the support to build by "cmake" method.
The benefit of using "cmake" is with decrease time of SDK build as "cmake" make it faster then "auto build".

When moving to "cmake" method, all SDK debians:

  • applibs
  • sx_complib
  • sx_example
  • sx-gen-utils
  • sx-scew
  • sxd-libs
  • python-sdk-api
  • sx-acl-helper
  • wjh-libs
  • sx-hash-calc
  • sx-kernel

will be replaced by single debian - sys_sdk.

Work item tracking

How I did it

Change SDK Makefiles, delete all Makefiles of removed debians and add new Makefile for building sys_sdk.
Change sdk.mk and sdk.dep acordingly.
sx-kernel package was remain since it is consumed by the host as well and I didn't want to consume sys_sdk in host.

From: one-image.mk
$(SONIC_ONE_IMAGE)_INSTALLS += $(SX_KERNEL) $(KERNEL_MFT) $(MFT_OEM) $(MFT) $(MLNX_HW_MANAGEMENT)

How to verify it

  • Enter syncd docker and verify the list of SDK packages are sx-kernel and sys-sdk only
  • Run regression tests and verify there is no degradation
  • Test the build time when using "cmake" for building SDK packages, compare to "auto build"

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

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

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)

@dprital dprital changed the title Change NVIDIA SDK build to cmake method [Mellanox] Change NVIDIA SDK build to cmake method Jun 9, 2023
Copy link

@stepanblyschak stepanblyschak left a comment

Choose a reason for hiding this comment

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

SYSSDK_DBGSYM = $(SYSSDK)
ifeq ($(SDK_FROM_SRC),y)
$(eval $(call add_derived_package,$(SXD_LIBS),$(SXD_LIBS_DBGSYM)))
$(eval $(call add_derived_package,$(SYSSDK)))

Choose a reason for hiding this comment

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

add_derived_package needs 2 arguments - https://github.com/sonic-net/sonic-buildimage/blob/master/rules/functions#L88.
Could you please elaborate?

if [ -f autogen.sh ]; then
./autogen.sh
fi
cmake -B builds/cmake -DSKIP_UNINSTALL_INSTALL_DEPENDENCY=on -DSKIP_DEPMOD_IN_INSTALL_PHASE=on -DUSE_API_TESTER=OFF -DCMAKE_PROJECT_VERSION=$(MLNX_SDK_DEB_VERSION)

Choose a reason for hiding this comment

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

Does it works with SONIC_DEBUGGING_ON, SONIC_PROFILING_ON?
(https://github.com/sonic-net/sonic-buildimage/blob/master/rules/config#L95)

Copy link
Owner Author

Choose a reason for hiding this comment

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

Need to check. Thanks for this comment

dprital pushed a commit that referenced this pull request Dec 18, 2023
Update the sonic-pins submodule. This brings in the following commit:

56a7762 Use json.hpp from nlohmann-json-dev instead of from swss-common (#22)

Signed-off-by: Saikrishna Arcot <[email protected]>
@dprital dprital closed this Mar 17, 2024
dprital pushed a commit that referenced this pull request Jul 3, 2024
…sonic-net#19155)

#### Why I did it
src/dhcpmon
```
* 099e148 - (HEAD -> 202311, origin/202311) Merge pull request #22 from yaqiangz/202311_cherry_pick (2 hours ago) [Ying Xie]
* efff8a9 - Fix revert (#21) (2 hours ago) [kellyyeh]
* 617066f - Revert DHCP Counter (#20) (2 hours ago) [kellyyeh]
```
#### How I did it
#### How to verify it
#### Description for the changelog
dprital pushed a commit that referenced this pull request Jul 17, 2024
…tically (sonic-net#19550)

#### Why I did it
src/sonic-dash-api
```
* 1fd0b7d - (HEAD -> 202405, origin/202405) [202405 build] Update pool sonicbld to sonic-ububtu-1c since it's deprecated (#22) (11 days ago) [Jianquan Ye]
```
#### How I did it
#### How to verify it
#### Description for the changelog
dprital pushed a commit that referenced this pull request Jul 7, 2025
Why I did it
This updates the kernel to 6.1.123 to bring in bug and security fixes. This also includes a submodule update for sonic-linux-kernel and platform/broadcom/saibcm-modules-dnx.

sonic-linux-kernel:

aec83ae Update to Linux 6.1.123 (sonic-net#454)
platform/broadom/saibcm-modules-dnx:

13a2b7a Update to Linux 6.1.123 (#22)
This also includes a hw-mgmt update for Mellanox platforms.

Work item tracking
Microsoft ADO (number only): 32198326

How to verify it
Verified that KVM and a physical device boots up, and verified that warm reboot of physical device works.

Signed-off-by: Saikrishna Arcot <[email protected]>
Co-authored-by: Vivek <[email protected]>
dprital pushed a commit that referenced this pull request Oct 12, 2025
…t back to back Paladin ports up with Arista-7060X6-16PE-384C-O128S2 (sonic-net#22719)

<!--
 Please make sure you've read and understood our contributing guidelines:
 https://github.com/Azure/SONiC/blob/gh-pages/CONTRIBUTING.md

 failure_prs.log skip_prs.log Make sure all your commits include a signature generated with `git commit -s` **

 If this is a bug fix, make sure your description includes "fixes #xxxx", or
 "closes #xxxx" or "resolves #xxxx"

 Please provide the following information:
-->

#### Why I did it

Currently when we loaded HWSKU `Arista-7060X6-16PE-384C-O128S2` on two moby devices and connect their Paladin ports back to back, we can't get link up. It may help if we can get these links up and run the tests.

##### Work item tracking
- Microsoft ADO **(number only)**:

#### How I did it

Created a new `FANOUT` HWSKU containing special lanemap and polarity configs so that we can load `Arista-7060X6-16PE-384C-O128S2` on one Moby and `Arista-7060X6-16PE-384C-O128S2-FANOUT` and get Paladin ports up when connecting them back to back with the following setup:
```
Moby1 Moby2
HWSKU: Arista-7060X6-16PE-384C-O128S2 HWSKU: Arista-7060X6-16PE-384C-O128S2-FANOUT
#17 <-> #18
#19 <-> #20
#21 <-> #22
#23 <-> #24

#18 <-> #17
#20 <-> #19
#22 <-> #21
#24 <-> #23
```

#### How to verify it
Verified that all the Paladin ports can link up with the above setup.

<!--
If PR needs to be backported, then the PR must be tested against the base branch and the earliest backport release branch and provide tested image version on these two branches. For example, if the PR is requested for master, 202211 and 202012, then the requester needs to provide test results on master and 202012.
-->

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

<!--
- Note we only backport fixes to a release branch, *not* features!
- Please also provide a reason for the backporting below.
- e.g.
- [x] 202006
-->

- [ ] 201811
- [ ] 201911
- [ ] 202006
- [ ] 202012
- [ ] 202106
- [ ] 202111
- [ ] 202205
- [ ] 202211
- [ ] 202305
- [x] msft-202412

#### Tested branch (Please provide the tested image version)

<!--
- Please provide tested image version
- e.g.
- [x] 20201231.100
-->

- [ ] <!-- image version 1 -->
- [ ] <!-- image version 2 -->
- [x] msft-202412

#### Description for the changelog
<!--
Write a short (one line) summary that describes the changes in this
pull request for inclusion in the changelog:
-->
Created `Arista-7060X6-16PE-384C-O128S2-FANOUT` based on `Arista-7060X6-16PE-384C-O128S2` and only update lanemap and polarity settings in bcm config.

<!--
 Ensure to add label/tag for the feature raised. example - PR#2174 under sonic-utilities repo. where, Generic Config and Update feature has been labelled as GCU.
-->

#### Link to config_db schema for YANG module changes
<!--
Provide a link to config_db schema for the table for which YANG model
is defined
Link should point to correct section on https://github.com/Azure/sonic-buildimage/blob/master/src/sonic-yang-models/doc/Configuration.md
-->

#### A picture of a cute animal (not mandatory but encouraged)
dprital pushed a commit that referenced this pull request Oct 12, 2025
* Update the kernel to 6.1.123 (sonic-net#21711)

Why I did it
This updates the kernel to 6.1.123 to bring in bug and security fixes. This also includes a submodule update for sonic-linux-kernel and platform/broadcom/saibcm-modules-dnx.

sonic-linux-kernel:

aec83ae Update to Linux 6.1.123 (sonic-net#454)
platform/broadom/saibcm-modules-dnx:

13a2b7a Update to Linux 6.1.123 (#22)
This also includes a hw-mgmt update for Mellanox platforms.

Work item tracking
Microsoft ADO (number only): 32198326

How to verify it
Verified that KVM and a physical device boots up, and verified that warm reboot of physical device works.

Signed-off-by: Saikrishna Arcot <[email protected]>
Co-authored-by: Vivek <[email protected]>

* Fix submodule hash to point to 202505 branch

Signed-off-by: Saikrishna Arcot <[email protected]>

---------

Signed-off-by: Saikrishna Arcot <[email protected]>
Co-authored-by: Vivek <[email protected]>
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.

2 participants