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

Introduce a new role for DPU-NPU Interconnect #92

Closed
wants to merge 3 commits into from
Closed

Conversation

vivekrnv
Copy link
Owner

@vivekrnv vivekrnv commented Mar 19, 2024

Why I did it

  • Platform api related to xcvr and sfp should not be called for internal ports of SmartSwitch
  • To avoid doing this from platform agnostic code of SONiC, a new role called 'Dpc' is added, which would mean DPU-NPU Data Port
  • Any new sku which is used as a smartswitch should add this argument to hwsku.json for the ports that fit this category
Work item tracking
  • Microsoft ADO (number only):

How I did it

How to verify it

root@mtvr-leopard-01:/home/admin# show interfaces status
  Interface                            Lanes    Speed    MTU    FEC    Alias    Vlan    Oper    Admin                                             Type    Asym PFC
-----------  -------------------------------  -------  -----  -----  -------  ------  ------  -------  -----------------------------------------------  ----------
  Ethernet0                  0,1,2,3,4,5,6,7     400G   9100    N/A     etp1  routed    down       up  QSFP-DD Double Density 8X Pluggable Transceiver         N/A
  Ethernet8            8,9,10,11,12,13,14,15     400G   9100    N/A     etp2  routed    down       up  QSFP-DD Double Density 8X Pluggable Transceiver         N/A
 Ethernet16          16,17,18,19,20,21,22,23     400G   9100    N/A     etp3  routed    down       up  QSFP-DD Double Density 8X Pluggable Transceiver         N/A
 Ethernet24          24,25,26,27,28,29,30,31     400G   9100    N/A     etp4  routed    down       up  QSFP-DD Double Density 8X Pluggable Transceiver         N/A
 Ethernet32          32,33,34,35,36,37,38,39     400G   9100    N/A     etp5  routed    down       up  QSFP-DD Double Density 8X Pluggable Transceiver         N/A
 Ethernet40          40,41,42,43,44,45,46,47     400G   9100    N/A     etp6  routed    down       up  QSFP-DD Double Density 8X Pluggable Transceiver         N/A
 Ethernet48          48,49,50,51,52,53,54,55     400G   9100    N/A     etp7  routed    down       up  QSFP-DD Double Density 8X Pluggable Transceiver         N/A
 Ethernet56          56,57,58,59,60,61,62,63     400G   9100    N/A     etp8  routed    down       up  QSFP-DD Double Density 8X Pluggable Transceiver         N/A
 Ethernet64          64,65,66,67,68,69,70,71     400G   9100    N/A     etp9  routed    down       up  QSFP-DD Double Density 8X Pluggable Transceiver         N/A
..........................
Ethernet208  208,209,210,211,212,213,214,215     400G   9100    N/A    etp27  routed    down       up  QSFP-DD Double Density 8X Pluggable Transceiver         N/A
Ethernet216  216,217,218,219,220,221,222,223     400G   9100    N/A    etp28  routed    down       up  QSFP-DD Double Density 8X Pluggable Transceiver         N/A
Ethernet224  224,225,226,227,228,229,230,231     400G   9100    N/A    etp29  routed     N/A       up                                DPU-NPU Data Port         N/A
Ethernet232  232,233,234,235,236,237,238,239     400G   9100    N/A    etp30  routed     N/A       up                                DPU-NPU Data Port         N/A
Ethernet240  240,241,242,243,244,245,246,247     400G   9100    N/A    etp31  routed     N/A       up                                DPU-NPU Data Port         N/A
Ethernet248  248,249,250,251,252,253,254,255     400G   9100    N/A    etp32  routed     N/A       up                                DPU-NPU Data Port         N/A
root@mtvr-leopard-01:/home/admin# sfputil show presence
Port         Presence
-----------  ----------
Ethernet0    Present
Ethernet8    Present
Ethernet16   Present
Ethernet24   Present
Ethernet32   Present
Ethernet40   Present
Ethernet48   Present
Ethernet56   Present
Ethernet64   Present
Ethernet72   Present
Ethernet80   Present
Ethernet88   Present
Ethernet96   Present
Ethernet104  Present
Ethernet112  Present
Ethernet120  Present
Ethernet128  Present
Ethernet136  Present
Ethernet144  Present
Ethernet152  Present
Ethernet160  Present
Ethernet168  Present
Ethernet176  Present
Ethernet184  Present
Ethernet192  Present
Ethernet200  Present
Ethernet208  Present
Ethernet216  Present

Nothing related to Dpc ports is populated in the XCVRD tables

root@mtvr-leopard-01:/home/admin# redis-cli -n 6 keys "TRANSCEIVER_INFO*"
 1) "TRANSCEIVER_INFO|Ethernet112"
 2) "TRANSCEIVER_INFO|Ethernet88"
 3) "TRANSCEIVER_INFO|Ethernet160"
 4) "TRANSCEIVER_INFO|Ethernet192"
 5) "TRANSCEIVER_INFO|Ethernet0"
 6) "TRANSCEIVER_INFO|Ethernet72"
 7) "TRANSCEIVER_INFO|Ethernet16"
 8) "TRANSCEIVER_INFO|Ethernet64"
 9) "TRANSCEIVER_INFO|Ethernet40"
10) "TRANSCEIVER_INFO|Ethernet208"
11) "TRANSCEIVER_INFO|Ethernet104"
12) "TRANSCEIVER_INFO|Ethernet152"
13) "TRANSCEIVER_INFO|Ethernet48"
14) "TRANSCEIVER_INFO|Ethernet184"
15) "TRANSCEIVER_INFO|Ethernet176"
16) "TRANSCEIVER_INFO|Ethernet56"
17) "TRANSCEIVER_INFO|Ethernet200"
18) "TRANSCEIVER_INFO|Ethernet128"
19) "TRANSCEIVER_INFO|Ethernet120"
20) "TRANSCEIVER_INFO|Ethernet96"
21) "TRANSCEIVER_INFO|Ethernet216"
22) "TRANSCEIVER_INFO|Ethernet8"
23) "TRANSCEIVER_INFO|Ethernet144"
24) "TRANSCEIVER_INFO|Ethernet32"
25) "TRANSCEIVER_INFO|Ethernet168"
26) "TRANSCEIVER_INFO|Ethernet24"
27) "TRANSCEIVER_INFO|Ethernet136"
28) "TRANSCEIVER_INFO|Ethernet80"

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)

@vivekrnv
Copy link
Owner Author

@dgsudharsan FYI added this check to the api

if not port.startswith(front_panel_prefix()):
        return False

@vivekrnv vivekrnv closed this Mar 25, 2024
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