Skip to content

Conversation

@lihua-cls
Copy link
Contributor

@lihua-cls lihua-cls commented Oct 11, 2025

Description

This PR is the follow-up updates/fix for Santa Barbara(tahansb800bc) platform mapping:

  • Add two new ProfileIDs for backplane ports speed 200G and 400G.
image

Note: ProfileID 57 will be added by PR #585, so I add the new ID begin from 58 to avoid conflicts.

  • Add 2x400G (ProfileId 38) and 8x100G (ProfileId 47) in port_profile_mapping.csv for front panel ports.
image
  • Update si_settings.csv, add items for all 8 lanes per core. Note: the value still default (referenced from icecube), need to be updated in future.

  • Fix an issue in static_mapping.csv for core ID 58 and 59.

Test Plan

  • Verify the tahansb800bc_platform_mapping.json can be generated successfully.
image
  • Sanity test sai_agent_test/link_test/ping_test cases. Results passed.
[       OK ] warm_boot.AgentNeighborResolutionTest/3.ResolveNeighborAndCheckCache (7988 ms)
[       OK ] warm_boot.AgentNeighborResolutionTest/4.ResolveNeighborAndCheckCache (14759 ms)
[       OK ] warm_boot.AgentNeighborResolutionTest/5.ResolveNeighborAndCheckCache (8052 ms)
[       OK ] warm_boot.AgentNeighborResolutionTest/6.ResolveNeighborAndCheckCache (14946 ms)
[       OK ] warm_boot.AgentNeighborResolutionTest/7.ResolveNeighborAndCheckCache (8233 ms)
[       OK ] warm_boot.AgentNeighborOnMultiplePortsTest/0.ResolveOnTwoPorts (26187 ms)
[       OK ] warm_boot.AgentNeighborOnMultiplePortsTest/1.ResolveOnTwoPorts (26490 ms)
[       OK ] warm_boot.AgentNeighborMetadataTest/0.ResolvePendingEntryThenChangeLookupClass (28781 ms)
[       OK ] warm_boot.AgentNeighborMetadataTest/1.ResolvePendingEntryThenChangeLookupClass (15012 ms)
[       OK ] warm_boot.AgentNeighborMetadataTest/2.ResolvePendingEntryThenChangeLookupClass (25446 ms)
[       OK ] warm_boot.AgentNeighborMetadataTest/3.ResolvePendingEntryThenChangeLookupClass (14589 ms)
[       OK ] warm_boot.AgentNeighborMetadataTest/4.ResolvePendingEntryThenChangeLookupClass (25742 ms)
[       OK ] warm_boot.AgentNeighborMetadataTest/5.ResolvePendingEntryThenChangeLookupClass (9684 ms)
[       OK ] warm_boot.AgentNeighborMetadataTest/6.ResolvePendingEntryThenChangeLookupClass (26402 ms)
[       OK ] warm_boot.AgentNeighborMetadataTest/7.ResolvePendingEntryThenChangeLookupClass (9241 ms)
[       OK ] warm_boot.AgentOlympicQosTests.VerifyDscpQueueMapping (29885 ms)
[       OK ] warm_boot.AgentNetworkAIQosTests.VerifyDscpQueueMapping (26367 ms)
[       OK ] warm_boot.AgentPortBandwidthPpsTest.VerifyPps (64931 ms)
[       OK ] warm_boot.AgentPortBandwidthPpsTest.VerifyPpsDynamicChanges (99560 ms)
[       OK ] warm_boot.AgentSendPacketToQueueTest.SendPacketSwitchedToDefaultUCQueue (17312 ms)
[       OK ] warm_boot.AgentRxReasonTests.InsertAndRemoveRxReason (14899 ms)
[       OK ] warm_boot.AgentHwAclLookupClassQualifierTest.AclIp4LookupClassNeighbor (26282 ms)
[       OK ] warm_boot.AgentHwAclLookupClassQualifierTest.AclIp6LookupClassNeighbor (26802 ms)

[       OK ] cold_boot.LinkTest.asicLinkFlap (73182 ms)
[       OK ] cold_boot.LinkTest.getTransceivers (62159 ms)
[       OK ] cold_boot.LinkTest.trafficRxTx (62473 ms)
[       OK ] cold_boot.LinkTest.iPhyInfoTest (62810 ms)
[       OK ] cold_boot.EmptyLinkTest.CheckInit (67653 ms)
(unidiag)[root@localhost fboss]# ./bin/fboss2 show interface
+-----------+--------+-------+------+------+-------------------------+-------------+
| Interface | Status | Speed | VLAN | MTU  | Addresses               | Description |
------------------------------------------------------------------------------------
| eth1/1/1  | up     | 400G  | 2001 | 9000 | 10.0.0.1/24             |             |
|           |        |       |      |      | 2400::1/64              |             |
|           |        |       |      |      | fe80::a0:c9ff:fe00:0/64 |             |
+-----------+--------+-------+------+------+-------------------------+-------------+
| eth1/1/3  | up     | 400G  | 2003 | 9000 | 12.0.0.1/24             |             |
|           |        |       |      |      | 2402::1/64              |             |
|           |        |       |      |      | fe80::a0:c9ff:fe00:0/64 |             |
+-----------+--------+-------+------+------+-------------------------+-------------+
| eth1/1/5  | up     | 400G  | 2005 | 9000 | 14.0.0.1/24             |             |
|           |        |       |      |      | 2404::1/64              |             |
|           |        |       |      |      | fe80::a0:c9ff:fe00:0/64 |             |
+-----------+--------+-------+------+------+-------------------------+-------------+
| eth1/1/7  | up     | 400G  | 2007 | 9000 | 16.0.0.1/24             |             |
|           |        |       |      |      | 2406::1/64              |             |
|           |        |       |      |      | fe80::a0:c9ff:fe00:0/64 |             |
+-----------+--------+-------+------+------+-------------------------+-------------+

(unidiag)[root@localhost fboss]# ping 10.0.0.2
PING 10.0.0.2 (10.0.0.2) 56(84) bytes of data.
64 bytes from 10.0.0.2: icmp_seq=1 ttl=63 time=0.459 ms
64 bytes from 10.0.0.2: icmp_seq=2 ttl=63 time=0.530 ms
64 bytes from 10.0.0.2: icmp_seq=3 ttl=63 time=0.535 ms
^C
--- 10.0.0.2 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2047ms
rtt min/avg/max/mdev = 0.459/0.508/0.535/0.034 ms
(unidiag)[root@localhost fboss]#

(unidiag)[root@localhost fboss]# ping6 2400::2
PING 2400::2(2400::2) 56 data bytes
64 bytes from 2400::2: icmp_seq=3 ttl=63 time=0.460 ms
64 bytes from 2400::2: icmp_seq=4 ttl=63 time=0.521 ms
64 bytes from 2400::2: icmp_seq=5 ttl=63 time=0.272 ms
64 bytes from 2400::2: icmp_seq=6 ttl=63 time=0.572 ms
64 bytes from 2400::2: icmp_seq=7 ttl=63 time=0.514 ms
^C
--- 2400::2 ping statistics ---
7 packets transmitted, 5 received, 28.5714% packet loss, time 6182ms
rtt min/avg/max/mdev = 0.272/0.467/0.572/0.104 ms
(unidiag)[root@localhost fboss]#

@meta-cla meta-cla bot added the CLA Signed label Oct 11, 2025
jcyu-accton added a commit to jcyu-accton/fboss that referenced this pull request Oct 11, 2025
Description:
This PR is used to add Profile IDs which will be added to  Wedge800CA platform.
  PROFILE_200G_4_PAM4_RS544_OPTICAL = 61,
  PROFILE_200G_4_PAM4_RS544_COPPER = 62,
  PROFILE_400G_4_PAM4_RS544_OPTICAL = 63,
  PROFILE_400G_4_PAM4_RS544_COPPER = 64,
  PROFILE_800G_8_PAM4_RS544_OPTICAL = 65,
  PROFILE_800G_8_PAM4_RS544_COPPER = 66,

Note:
1. ProfileID 57 will be added by PR#585(facebook#585).
2. ProfileID 58 and 59 will be added by PR#586(facebook#586).
3. So I add the new ID begin from 60.
jcyu-accton added a commit to jcyu-accton/fboss that referenced this pull request Oct 12, 2025
Description:
This PR is used to add Profile IDs which will be added to  Wedge800CA platform.
  PROFILE_200G_4_PAM4_RS544_OPTICAL = 60
  PROFILE_200G_4_PAM4_RS544_COPPER = 61
  PROFILE_400G_4_PAM4_RS544_OPTICAL = 62
  PROFILE_400G_4_PAM4_RS544_COPPER = 63
  PROFILE_800G_8_PAM4_RS544_OPTICAL = 64
  PROFILE_800G_8_PAM4_RS544_COPPER = 65

Note:
1. ProfileID 57 will be added by PR#585(facebook#585).
2. ProfileID 58 and 59 will be added by PR#586(facebook#586).
3. So I add the new ID begin from 60.
jcyu-accton added a commit to jcyu-accton/fboss that referenced this pull request Oct 13, 2025
Description:
This PR is used to add Profile IDs which will be added to  Wedge800CA platform.
  PROFILE_200G_4_PAM4_RS544_OPTICAL = 60
  PROFILE_200G_4_PAM4_RS544_COPPER = 61
  PROFILE_400G_4_PAM4_RS544_OPTICAL = 62
  PROFILE_400G_4_PAM4_RS544_COPPER = 63
  PROFILE_800G_8_PAM4_RS544_OPTICAL = 64
  PROFILE_800G_8_PAM4_RS544_COPPER = 65

Note:
1. ProfileID 57 will be added by PR#585(facebook#585).
2. ProfileID 58 and 59 will be added by PR#586(facebook#586).
3. So I add the new ID begin from 60.
@meta-codesync
Copy link

meta-codesync bot commented Oct 13, 2025

@birdsoup has imported this pull request. If you are a Meta employee, you can view this in D84514197.

400000,NPU,TRANSCEIVER,2,PAM4,RS544_2N,OPTICAL,SR2,
400000,NPU,TRANSCEIVER,4,PAM4,RS544_2N,OPTICAL,SR4,
800000,NPU,TRANSCEIVER,4,PAM4,RS544_2N,OPTICAL,SR4,
400000,NPU,BACKPLANE,2,PAM4,RS544_2N,BACKPLANE,KR2,
Copy link
Contributor

Choose a reason for hiding this comment

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

Do we expect the backplane ports to use COPPER instead of BACKPLANE as the media type?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

When I used "BACKPLANE" as media type, got a compile error when generate the "platform_mapping.json":

File "/tmp/fbcode_builder_getdeps-ZvarZFBOSSZfbossZfboss_lihuaZbuildZfbcode_builder-root/build/fboss/fboss-platform-mapping-gen/fboss/lib/platform_mapping_v2/profile_settings.py", line 58, in get_speed_setting
Exception: ("Can't find speed setting for profile ", 58)
Failed to run target fboss-platform-mapping-gen
[root@7d5d7e12725e fboss_lihua]#

So I referred to tahan800bc_profile_settings.csv which also used COPPER as backplane media type.
However, I'll try to use BACKPLANE again and fix the compile issue, this may need to update the fboss/lib/platform_mapping_v2/helpers.py.

Copy link
Contributor

Choose a reason for hiding this comment

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

If tahan800bc is using copper it should be fine to use it here as well, thanks

279,279,eth1/63/3,51,,,,0,0
280,280,eth1/63/5,51,,,,0,0
281,281,eth1/63/7,51,,,,0,0
1,1,eth1/1/1,38-47-51-52-53,,,,0,0
Copy link
Contributor

Choose a reason for hiding this comment

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

Why do we have both 38 and 51? Do we need to support both 400g on 4 lanes and 400g and 2 lanes?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yes, according to the requirement, need supports below speed mode for front panel ports:

OSFP speed mode

  • 2 x 800G
  • 4 x 400G
  • 8 x 200G
  • 2 x 400G
  • 8 x 100G

@birdsoup
Copy link
Contributor

Also looks like tests are failing on the PR

@lihua-cls
Copy link
Contributor Author

Also looks like tests are failing on the PR

I cannot see nor download the detailed logs of "Facebook Internal - Builds & Tests", could you help to send the logs to me if possible?
The other build failings may not relate to the code changes in PR. There was a fix in recent code base, I'll rebase to latest fboss code and see whether the failing checks can be resolved.

@birdsoup
Copy link
Contributor

Fixed some issues causing internal test failures. Should be able to merge this

@lihua-cls
Copy link
Contributor Author

Fixed some issues causing internal test failures. Should be able to merge this

Hi @birdsoup
Do I still need to rebase the code to latest and re-trigger the test?

@facebook-github-bot
Copy link
Contributor

@lihua-cls has updated the pull request. You must reimport the pull request before landing.

@lihua-cls
Copy link
Contributor Author

lihua-cls commented Oct 15, 2025

Hi @birdsoup

I rebased the code, and also made some modifications as below:

  1. changed the medium type to BACKPLANE profile_settings.csv.

If I used COPPER, I found that the diag_shell shown its medium type as "COPPER", and some of the ports seem difficult to link up, after I changed to BACKPLANE, they all able to UP:

image

To solve the platform_mapping.json generating error below:

"File "/tmp/fbcode_builder_getdeps-ZvarZFBOSSZfbossZfboss_lihuaZbuildZfbcode_builder-root/build/fboss/fboss-platform-mapping-gen/fboss/lib/platform_mapping_v2/profile_settings.py", line 58, in get_speed_setting
Exception: ("Can't find speed setting for profile ", 58)"

need to change the helper.py, I changed the same way as PR#585:

image

Please take a look whether it's OK.

  1. added mgmt port eth1/9/1 in port_profile_mapping.csv
+++ b/fboss/lib/platform_mapping_v2/platforms/tahansb800bc/tahansb800bc_port_profile_mapping.csv
@@ -63,6 +63,7 @@ Global_PortID,Logical_PortID,Port_Name,Supported_Port_Profiles,Attached_CoreID,A
 62,62,eth1/8/6,47-53,,,,0,0
 63,63,eth1/8/7,47-51-53,,,,0,0
 64,64,eth1/8/8,47-53,,,,0,0
+65,65,eth1/9/1,23,,,,4,0

Thanks

@facebook-github-bot
Copy link
Contributor

@lihua-cls has updated the pull request. You must reimport the pull request before landing.

@birdsoup
Copy link
Contributor

If I used COPPER, I found that the diag_shell shown its medium type as "COPPER", and some of the ports seem difficult to link up, after I changed to BACKPLANE, they all able to UP:

Confirmed with our HW team, backplane should be the correct media type

@lihua-cls
Copy link
Contributor Author

If I used COPPER, I found that the diag_shell shown its medium type as "COPPER", and some of the ports seem difficult to link up, after I changed to BACKPLANE, they all able to UP:

Confirmed with our HW team, backplane should be the correct media type

Hi @birdsoup

Thanks for confirm, it's correct media type "Backplane" now, refer to diag_shell_client "ps" output below:

drivshell>ps
ps
              ena/        speed/ link auto    STP                  lrn             max    cut                 loop
        port  link  Lns   duplex scan neg?   state   pause  discrd ops   medium  frame   thru            FEC  back
    cd0(  1)  up     2  400G  FD   SW  No   Forward          None   FA Backplane  9412   No   RS544-2xN-IEEE
    cd1(  2)  up     2  400G  FD   SW  No   Forward          None   FA Backplane  9412   No   RS544-2xN-IEEE
    cd2(  3)  up     2  400G  FD   SW  No   Forward          None   FA Backplane  9412   No   RS544-2xN-IEEE
    cd3(  4)  up     2  400G  FD   SW  No   Forward          None   FA Backplane  9412   No   RS544-2xN-IEEE
    cd4(  5)  up     2  400G  FD   SW  No   Forward          None   FA Backplane  9412   No   RS544-2xN-IEEE
    cd5(  6)  up     2  400G  FD   SW  No   Forward          None   FA Backplane  9412   No   RS544-2xN-IEEE
    cd6(  7)  up     2  400G  FD   SW  No   Forward          None   FA Backplane  9412   No   RS544-2xN-IEEE
    cd7(  8)  up     2  400G  FD   SW  No   Forward          None   FA Backplane  9412   No   RS544-2xN-IEEE
    cd8( 18)  up     2  400G  FD   SW  No   Forward          None   FA Backplane  9412   No   RS544-2xN-IEEE
    cd9( 19)  up     2  400G  FD   SW  No   Forward          None   FA Backplane  9412   No   RS544-2xN-IEEE
   cd10( 20)  up     2  400G  FD   SW  No   Forward          None   FA Backplane  9412   No   RS544-2xN-IEEE
   cd11( 21)  up     2  400G  FD   SW  No   Forward          None   FA Backplane  9412   No   RS544-2xN-IEEE
   cd12( 22)  up     2  400G  FD   SW  No   Forward          None   FA Backplane  9412   No   RS544-2xN-IEEE
   cd13( 23)  up     2  400G  FD   SW  No   Forward          None   FA Backplane  9412   No   RS544-2xN-IEEE
   cd14( 24)  up     2  400G  FD   SW  No   Forward          None   FA Backplane  9412   No   RS544-2xN-IEEE
   cd15( 25)  up     2  400G  FD   SW  No   Forward          None   FA Backplane  9412   No   RS544-2xN-IEEE
   cd16( 36)  up     2  400G  FD   SW  No   Forward          None   FA     Fiber  9412   No   RS544-2xN-IEEE
   cd17( 37)  up     2  400G  FD   SW  No   Forward          None   FA     Fiber  9412   No   RS544-2xN-IEEE
   cd18( 38)  up     2  400G  FD   SW  No   Forward          None   FA     Fiber  9412   No   RS544-2xN-IEEE
   cd19( 39)  up     2  400G  FD   SW  No   Forward          None   FA     Fiber  9412   No   RS544-2xN-IEEE
   cd20( 40)  up     2  400G  FD   SW  No   Forward          None   FA     Fiber  9412   No   RS544-2xN-IEEE
   cd21( 41)  up     2  400G  FD   SW  No   Forward          None   FA     Fiber  9412   No   RS544-2xN-IEEE
   cd22( 42)  up     2  400G  FD   SW  No   Forward          None   FA     Fiber  9412   No   RS544-2xN-IEEE
   cd23( 43)  up     2  400G  FD   SW  No   Forward          None   FA     Fiber  9412   No   RS544-2xN-IEEE
   cd24( 54)  up     2  400G  FD   SW  No   Forward          None   FA     Fiber  9412   No   RS544-2xN-IEEE
   cd25( 55)  up     2  400G  FD   SW  No   Forward          None   FA     Fiber  9412   No   RS544-2xN-IEEE
   cd26( 56)  up     2  400G  FD   SW  No   Forward          None   FA     Fiber  9412   No   RS544-2xN-IEEE
   cd27( 57)  up     2  400G  FD   SW  No   Forward          None   FA     Fiber  9412   No   RS544-2xN-IEEE
   cd28( 58)  up     2  400G  FD   SW  No   Forward          None   FA     Fiber  9412   No   RS544-2xN-IEEE
   cd29( 59)  up     2  400G  FD   SW  No   Forward          None   FA     Fiber  9412   No   RS544-2xN-IEEE
   cd30( 60)  up     2  400G  FD   SW  No   Forward          None   FA     Fiber  9412   No   RS544-2xN-IEEE
   cd31( 61)  up     2  400G  FD   SW  No   Forward          None   FA     Fiber  9412   No   RS544-2xN-IEEE
   cd32( 72)  up     2  400G  FD   SW  No   Forward          None   FA Backplane  9412   No   RS544-2xN-IEEE
   cd33( 73)  up     2  400G  FD   SW  No   Forward          None   FA Backplane  9412   No   RS544-2xN-IEEE
   cd34( 74)  up     2  400G  FD   SW  No   Forward          None   FA Backplane  9412   No   RS544-2xN-IEEE
   cd35( 75)  up     2  400G  FD   SW  No   Forward          None   FA Backplane  9412   No   RS544-2xN-IEEE
   cd36( 90)  up     2  400G  FD   SW  No   Forward          None   FA Backplane  9412   No   RS544-2xN-IEEE
   cd37( 91)  up     2  400G  FD   SW  No   Forward          None   FA Backplane  9412   No   RS544-2xN-IEEE
   cd38( 92)  up     2  400G  FD   SW  No   Forward          None   FA Backplane  9412   No   RS544-2xN-IEEE
   cd39( 93)  up     2  400G  FD   SW  No   Forward          None   FA Backplane  9412   No   RS544-2xN-IEEE
...

@meta-codesync
Copy link

meta-codesync bot commented Oct 16, 2025

@birdsoup merged this pull request in e1fd438.

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.

3 participants