Skip to content

Added DPC role support for SmartSwitch.#18157

Merged
prabhataravind merged 2 commits intosonic-net:masterfrom
nnelluri-cisco:Dpc-role-fix
Jul 29, 2025
Merged

Added DPC role support for SmartSwitch.#18157
prabhataravind merged 2 commits intosonic-net:masterfrom
nnelluri-cisco:Dpc-role-fix

Conversation

@nnelluri-cisco
Copy link
Contributor

Description of PR

Summary:added support for subtype for smartswicth
Fixes # (issue)

Type of change

  • Bug fix
  • [X ] Testbed and Framework(new/improvement)
  • New Test case
    • Skipped for non-supported platforms
  • Test case improvement

Back port request

  • 202012
  • 202205
  • 202305
  • 202311
  • [X ] 202405
  • [ X] 202411

Approach

What is the motivation for this PR?

The SmartSwitch platform introduced new backplane interfaces that require role configuration.

How did you do it?

added new config in device specific template.
ansible/templates/minigraph_device.j2

How did you verify/test it?

Deployed the minigraph and confirmed that the DPU configuration is present for all backplane interfaces.

Any platform specific information?

HwSKU: Cisco-8102-28FH-DPU-O

Supported testbed topology if it's a new test case?

t1-28-lag

Documentation

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@nnelluri-cisco
Copy link
Contributor Author

@prabhataravind @rameshraghupathy @bhavani
Please review

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@mssonicbld
Copy link
Collaborator

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

Copy link
Contributor

@prabhataravind prabhataravind left a comment

Choose a reason for hiding this comment

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

lgtm

@prabhataravind
Copy link
Contributor

@congh-nvidia @wen587 please review if there are any concerns as this is generic code..

@prabhataravind
Copy link
Contributor

@kperumalbfn could you help add this to 202411?

mssonicbld pushed a commit to mssonicbld/sonic-mgmt that referenced this pull request Jul 29, 2025
* added support for subtype for smartswicth

* checking subtype only if its defined in lab file
@mssonicbld
Copy link
Collaborator

Cherry-pick PR to 202411: #19894

mssonicbld pushed a commit that referenced this pull request Jul 30, 2025
* added support for subtype for smartswicth

* checking subtype only if its defined in lab file
mssonicbld pushed a commit to mssonicbld/sonic-mgmt that referenced this pull request Jul 30, 2025
* added support for subtype for smartswicth

* checking subtype only if its defined in lab file
@mssonicbld
Copy link
Collaborator

Cherry-pick PR to 202505: #19902

mssonicbld pushed a commit that referenced this pull request Jul 30, 2025
* added support for subtype for smartswicth

* checking subtype only if its defined in lab file
<MultiPortsInterface>false</MultiPortsInterface>
<PortName>0</PortName>
<Priority>0</Priority>
{% if subtype is defined and subtype == 'SmartSwitch' and index > 27 %}
Copy link
Contributor

Choose a reason for hiding this comment

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

Hi @prabhataravind @nnelluri-cisco , looks like this will cause issue on the hwsku with more than 28 ports like Mellanox-SN4280-O8C40, And I still don't understand why we need this since we can add the Dpc role in the hwsku.json and when deploying mingraph it will be taken to the config_db.json automatically by sonic.
For example: https://github.com/sonic-net/sonic-buildimage/blob/3e0bdc60b22e68e11c8b513c4e63f0eab1529147/device/mellanox/x86_64-nvidia_sn4280-r0/Mellanox-SN4280-O8C40/hwsku.json#L247
It doesn't look like a proper way to handle this in test.

Copy link
Contributor

Choose a reason for hiding this comment

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

@nnelluri-cisco please check and update on the plan to address this without breaking any other platform.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@prabhataravind
will check and Ramesh and will address the issue.

Copy link

@rameshraghupathy rameshraghupathy Aug 5, 2025

Choose a reason for hiding this comment

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

@prabhataravind @nnelluri-cisco You don't have to check the index at all. You can check only the role as shown

{% for index in range(num_of_intf) %}
  <a:EthernetInterface>
    <ElementType>DeviceInterface</ElementType>
    <AlternateSpeeds i:nil="true"/>
    <EnableFlowControl>true</EnableFlowControl>
    <Index>1</Index>
    <InterfaceName>{{ port_alias[index] }}</InterfaceName>
    <InterfaceType i:nil="true"/>
    <MultiPortsInterface>false</MultiPortsInterface>
    <PortName>0</PortName>
    <Priority>0</Priority>
{% set intf = port_alias[index] %}
{% if subtype is defined and subtype == 'SmartSwitch' and intf[8:]|int >= 224 %}
    <role>Dpc</role>
{% endif %}
  </a:EthernetInterface>
{% endfor %}

nissampa pushed a commit to nissampa/sonic-mgmt_dpu_test that referenced this pull request Aug 7, 2025
* added support for subtype for smartswicth

* checking subtype only if its defined in lab file
ashutosh-agrawal pushed a commit to ashutosh-agrawal/sonic-mgmt that referenced this pull request Aug 14, 2025
* added support for subtype for smartswicth

* checking subtype only if its defined in lab file
vidyac86 pushed a commit to vidyac86/sonic-mgmt that referenced this pull request Oct 23, 2025
* added support for subtype for smartswicth

* checking subtype only if its defined in lab file
wangxin pushed a commit to wangxin/sonic-mgmt that referenced this pull request Oct 27, 2025
Code sync sonic-net/sonic-mgmt:202411 => 202412

```
*   c3fd4c0 (HEAD -> code-sync-202412, origin/code-sync-202412) r12f 250802:1704 - Merge remote-tracking branch 'base/202411' into code-sync-202412
|\
| * a7a638a (base/202411) nnelluri-cisco 250722:1131 - cherry pick for the PR#17101 (sonic-net#19748)
| * fd4ae21 siva-prasad-cisco 250731:0002 - Ignore log analyzer error message related to source port GID mapping in kernel (sonic-net#19879)
| * f986cfa Xu Chen 250730:2120 - Fix saithrift URL generation for Mellanox on internal-202411 branch sonic-net#19899
| * a07fb04 nnelluri-cisco 250604:1347 - filterd backplane ports while checking 'sudo sfputil show error-status' (sonic-net#17859)
| * d707fcf nnelluri-cisco 250729:1208 - Added DPC role support for SmartSwitch. (sonic-net#18157)
| * 80ea05a dypet 250414:1059 - Fix BFD status check and ipv6 PTF intermittent issue. (sonic-net#17819)
| * fc623da Xu Chen 250725:1036 - support dynamic saithrift URL generation (sonic-net#19528)
| * 0e5fc8a Mai Bui 250724:1807 - [202411] Ignore auditd error in loganalyzer (sonic-net#19767)
| * d03770d Hua Liu 250218:1409 - [TACACS] Increase tacacs server reachability check timeout (sonic-net#16971)
| * e8111ac nnelluri-cisco 250717:1033 - Generate new npu-dpu ports Ethernet224 To Ethernet280 for cisco smartswicth "Cisco-8102-28FH-DPU-O" (sonic-net#19257)
| * e0060fa Zain Budhwani 250716:1109 - Remove yang_validate option from 202411 (sonic-net#19674)
| * 89c4281 AharonMalkin 250715:2042 - Add Nvidia to supported platforms on intf_fec test (sonic-net#19398)
| * f35fc20 mssonicbld 250716:0129 - Fix buffer queue cnt test to account for different BUFFER_QUEUE configs (sonic-net#19310) (sonic-net#19466)
| * 3e0cabd Chuan Wu 250704:0327 - Update vlan ping test to override the affection of secondary vlan ip (sonic-net#18867)
| * ff9d112 Longxiang Lyu 250714:1508 - [dualtor-io] Fix `test_active_link_admin_down_config_reload_link_up_downstream_standby` on Cisco/MLNX (sonic-net#18829) (sonic-net#19511)
| * e870d66 Yawen 250714:1246 - [manual cherry-pick] add topo dualtor-aa-64-breakout to qos_sai_base.py (sonic-net#19543)
| * 8369780 prabhataravind 250711:0929 - Enable skipped BFD and VxLAN tests on smartswitch T1 (sonic-net#19498)
```
opcoder0 pushed a commit to opcoder0/sonic-mgmt that referenced this pull request Dec 8, 2025
* added support for subtype for smartswicth

* checking subtype only if its defined in lab file

Signed-off-by: opcoder0 <[email protected]>
gshemesh2 pushed a commit to gshemesh2/sonic-mgmt that referenced this pull request Dec 16, 2025
* added support for subtype for smartswicth

* checking subtype only if its defined in lab file

Signed-off-by: Guy Shemesh <[email protected]>
AharonMalkin pushed a commit to AharonMalkin/sonic-mgmt that referenced this pull request Dec 16, 2025
* added support for subtype for smartswicth

* checking subtype only if its defined in lab file

Signed-off-by: Aharon Malkin <[email protected]>
gshemesh2 pushed a commit to gshemesh2/sonic-mgmt that referenced this pull request Dec 21, 2025
* added support for subtype for smartswicth

* checking subtype only if its defined in lab file

Signed-off-by: Guy Shemesh <[email protected]>
venu-nexthop pushed a commit to venu-nexthop/sonic-mgmt that referenced this pull request Jan 13, 2026
* added support for subtype for smartswicth

* checking subtype only if its defined in lab file
gshemesh2 pushed a commit to gshemesh2/sonic-mgmt that referenced this pull request Jan 26, 2026
* added support for subtype for smartswicth

* checking subtype only if its defined in lab file

Signed-off-by: Guy Shemesh <[email protected]>
ytzur1 pushed a commit to ytzur1/sonic-mgmt that referenced this pull request Feb 2, 2026
* added support for subtype for smartswicth

* checking subtype only if its defined in lab file

Signed-off-by: Yael Tzur <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

9 participants