Skip to content

BLACKWOLF800BANW: Add Initial Q4D ASIC definitions#882

Closed
dzarista wants to merge 132 commits intofacebook:mainfrom
dzarista:q4d_asic_support
Closed

BLACKWOLF800BANW: Add Initial Q4D ASIC definitions#882
dzarista wants to merge 132 commits intofacebook:mainfrom
dzarista:q4d_asic_support

Conversation

@dzarista
Copy link
Contributor

@dzarista dzarista commented Jan 30, 2026

Pre-submission checklist

  • I've ran the linters locally and fixed lint errors related to the files I modified in this PR. You can install the linters by running pip install -r requirements-dev.txt && pre-commit install
  • pre-commit run

Summary

This is the first PR in a series of PRs to add initial support for BLACKWOLF800BANW.

This PR adds the Q4D ASIC definitions that the BLACKWOLF800BANW platform mappings rely on.

PRs in this series, ordered by landing priority:

  1. BLACKWOLF800BANW: Add Initial Q4D ASIC definitions #882 (THIS PR)
  2. BLACKWOLF800BANW: Platform definition and platform mapping #883
  3. [arista] BLACKWOLF800BANW: BSP mapping #884
  4. [arista] BLACKWOLF800BANW: qsfp_service support #885
  5. [arista] BLACKWOLF800BANW: LED service support #886
  6. BLACKWOLF800BANW: Platform Mapping V2 #887
  7. BLACKWOLF800BANW: platform_manager support #851
  8. BLACKWOLF800BANW: sensor_service configs #852
  9. BLACKWOLF800BANW: fan_service configs #853

Landing Priority: This PR should be landed first.

Test Plan

Build passes.

Testing was also performed in an environment with all the PRs in this series combined, with the following results:
All sw_tests pass

platform_manager_hw_test pass:

[==========] Running 8 tests from 1 test suite.
[----------] Global test environment set-up.
[----------] 8 tests from PlatformManagerHwTest
[ RUN      ] PlatformManagerHwTest.ExploreAsDeployed
[       OK ] PlatformManagerHwTest.ExploreAsDeployed (39566 ms)
[ RUN      ] PlatformManagerHwTest.ExploreAfterUninstallingKmods
[       OK ] PlatformManagerHwTest.ExploreAfterUninstallingKmods (40526 ms)
[ RUN      ] PlatformManagerHwTest.ExploreAfterUnloadingKmods
[       OK ] PlatformManagerHwTest.ExploreAfterUnloadingKmods (121147 ms)
[ RUN      ] PlatformManagerHwTest.PmExplorationStatusTransitions
[       OK ] PlatformManagerHwTest.PmExplorationStatusTransitions (41180 ms)
[ RUN      ] PlatformManagerHwTest.Symlinks
[       OK ] PlatformManagerHwTest.Symlinks (39518 ms)
[ RUN      ] PlatformManagerHwTest.XcvrCtrlFiles
[       OK ] PlatformManagerHwTest.XcvrCtrlFiles (41287 ms)
[ RUN      ] PlatformManagerHwTest.XcvrIoFiles
[       OK ] PlatformManagerHwTest.XcvrIoFiles (40944 ms)
[ RUN      ] PlatformManagerHwTest.XcvrLedFiles
[       OK ] PlatformManagerHwTest.XcvrLedFiles (41487 ms)
[----------] 8 tests from PlatformManagerHwTest (405660 ms total)

[----------] Global test environment tear-down
[==========] 8 tests from 1 test suite ran. (405660 ms total)
[  PASSED  ] 8 tests.

sensor_service_hw_test pass:

[==========] Running 6 tests from 1 test suite.
[----------] Global test environment set-up.
[----------] 6 tests from SensorServiceHwTest
[ RUN      ] SensorServiceHwTest.GetAllSensors
[       OK ] SensorServiceHwTest.GetAllSensors (1055 ms)
[ RUN      ] SensorServiceHwTest.GetBogusSensor
[       OK ] SensorServiceHwTest.GetBogusSensor (1048 ms)
[ RUN      ] SensorServiceHwTest.GetSomeSensors
[       OK ] SensorServiceHwTest.GetSomeSensors (3315 ms)
[ RUN      ] SensorServiceHwTest.GetSomeSensorsViaThrift
[       OK ] SensorServiceHwTest.GetSomeSensorsViaThrift (8472 ms)
[ RUN      ] SensorServiceHwTest.SensorFetchODSCheck
[       OK ] SensorServiceHwTest.SensorFetchODSCheck (1054 ms)
[ RUN      ] SensorServiceHwTest.CheckAllSensors
[       OK ] SensorServiceHwTest.CheckAllSensors (1046 ms)
[----------] 6 tests from SensorServiceHwTest (15992 ms total)

[----------] Global test environment tear-down
[==========] 6 tests from 1 test suite ran. (15992 ms total)
[  PASSED  ] 6 tests.

fan_service_hw_test pass:

[==========] Running 5 tests from 1 test suite.
[----------] Global test environment set-up.
[----------] 5 tests from FanServiceHwTest
[ RUN      ] FanServiceHwTest.TransitionalPWM
[       OK ] FanServiceHwTest.TransitionalPWM (5 ms)
[ RUN      ] FanServiceHwTest.FanControl
[       OK ] FanServiceHwTest.FanControl (114722 ms)
[ RUN      ] FanServiceHwTest.FanStatusesThrift
[       OK ] FanServiceHwTest.FanStatusesThrift (20145 ms)
[ RUN      ] FanServiceHwTest.ODSCounters
[       OK ] FanServiceHwTest.ODSCounters (13722 ms)
[ RUN      ] FanServiceHwTest.LedWriteDidNotFail
[       OK ] FanServiceHwTest.LedWriteDidNotFail (12367 ms)
[----------] 5 tests from FanServiceHwTest (160963 ms total)

[----------] Global test environment tear-down
[==========] 5 tests from 1 test suite ran. (160963 ms total)
[  PASSED  ] 5 tests.

data_corral_service_hw_test pass:

[==========] Running 5 tests from 1 test suite.
[----------] Global test environment set-up.
[----------] 5 tests from DataCorralServiceHwTest
[ RUN      ] DataCorralServiceHwTest.FruLedProgrammingSysfsCheck
[       OK ] DataCorralServiceHwTest.FruLedProgrammingSysfsCheck (9 ms)
[ RUN      ] DataCorralServiceHwTest.FruLEDProgrammingODSCheck
[       OK ] DataCorralServiceHwTest.FruLEDProgrammingODSCheck (8 ms)
[ RUN      ] DataCorralServiceHwTest.getCachedFruid
[       OK ] DataCorralServiceHwTest.getCachedFruid (14879 ms)
[ RUN      ] DataCorralServiceHwTest.getUncachedFruid
[       OK ] DataCorralServiceHwTest.getUncachedFruid (13504 ms)
[ RUN      ] DataCorralServiceHwTest.testThrift
[       OK ] DataCorralServiceHwTest.testThrift (13765 ms)
[----------] 5 tests from DataCorralServiceHwTest (42168 ms total)

[----------] Global test environment tear-down
[==========] 5 tests from 1 test suite ran. (42168 ms total)
[  PASSED  ] 5 tests.

weutil_hw_test pass:

[==========] Running 4 tests from 1 test suite.
[----------] Global test environment set-up.
[----------] 4 tests from WeutilTest
[ RUN      ] WeutilTest.getWedgeInfo
[       OK ] WeutilTest.getWedgeInfo (10544 ms)
[ RUN      ] WeutilTest.getEepromPaths
[       OK ] WeutilTest.getEepromPaths (0 ms)
[ RUN      ] WeutilTest.ValidateAllEepromContents
[       OK ] WeutilTest.ValidateAllEepromContents (21034 ms)
[ RUN      ] WeutilTest.getInfoJson
[       OK ] WeutilTest.getInfoJson (42348 ms)
[----------] 4 tests from WeutilTest (73928 ms total)

[----------] Global test environment tear-down
[==========] 4 tests from 1 test suite ran. (73928 ms total)
[  PASSED  ] 4 tests.

@meta-codesync
Copy link

meta-codesync bot commented Jan 30, 2026

@RomanChoporov-Meta has imported this pull request. If you are a Meta employee, you can view this in D91922132.

Shrikrishna (Shri) Khare added 16 commits February 19, 2026 23:37
Summary: As titled.

Reviewed By: jasmeetbagga

Differential Revision: D90452041

fbshipit-source-id: 1a5759f89be790805e4683cfdeddf9f03a430342
Summary: See comments in the code for details.

Reviewed By: jasmeetbagga

Differential Revision: D90467874

fbshipit-source-id: dd3005dffb7b3ca1e0ce0fe4f82a84a43064e161
Summary: As titled.

Reviewed By: jasmeetbagga

Differential Revision: D90467880

fbshipit-source-id: 52809944a23b54ead50062adcbd29368138516e2
Summary: As titled.

Reviewed By: jasmeetbagga

Differential Revision: D90467881

fbshipit-source-id: 269474621c9ca03738317f0b23a74bb1fc1cc970
Summary: As titled.

Reviewed By: jasmeetbagga

Differential Revision: D90467882

fbshipit-source-id: c98be2aee03bfbd2d83d2bba860a91e5873fd60f
Summary: As titled.

Reviewed By: jasmeetbagga

Differential Revision: D90467875

fbshipit-source-id: 053e0cdbbcfa844d28d145e4ed579187bae53820
Summary: As titled.

Reviewed By: jasmeetbagga

Differential Revision: D90467877

fbshipit-source-id: 347185910b6bcc4905f464f94b9ec40bd2273650
Summary: As titled.

Reviewed By: jasmeetbagga

Differential Revision: D90467876

fbshipit-source-id: 3b8363395d7f9f4837a04c9f0db29ed01ab4e435
Summary:
As titled.
See comments in the code for additional context.

Reviewed By: jasmeetbagga

Differential Revision: D90467879

fbshipit-source-id: 1d57fd8a40ceb4b26e6a97b261db451e4cdfc3dc
Summary: As titled.

Reviewed By: jasmeetbagga

Differential Revision: D90467878

fbshipit-source-id: 22c65f8026244b6f93638c2e8530c0b03c3762c3
Summary:
While we qualify and roll out the new Firmware, test both.

This diff: no change in behavior, parameterize with the existing firmware.
Stacked diff will exercise the new Firmware.

Reviewed By: jasmeetbagga

Differential Revision: D90478329

fbshipit-source-id: 786b3941ee8f8c03b2c66aa3cb7b7610f9615b5c
Summary:
New firmware supports link disable.
New tests for exercising that functionality will be stacked.

Reviewed By: jasmeetbagga

Differential Revision: D90478330

fbshipit-source-id: bce118600648fd7eb349f9d2b98318407bdb6448
Summary:
As titled.
leveraged by stacked diff

Reviewed By: jasmeetbagga

Differential Revision: D90470646

fbshipit-source-id: 83a3e11b72d5f3f8df4ffe3a510f8cc8eb4d6432
Summary:
As titled.
Only carries test setup.
Verif will be stacked.

Reviewed By: jasmeetbagga

Differential Revision: D90468725

fbshipit-source-id: 9ea74c710b7d6399e21b65ddbfdc44986ae2c30c
Summary: As titled.

Reviewed By: jasmeetbagga

Differential Revision: D90470647

fbshipit-source-id: 3c6a51faa76029d791f35735d90b2b5fa39fec37
Summary: As titled.

Reviewed By: jasmeetbagga

Differential Revision: D90470826

fbshipit-source-id: 5a76a775c4d5fd8b38863f4b47e9d6a82103681d
nivinlawrence and others added 8 commits February 19, 2026 23:37
Summary:
Test utilities to support ECN probabilisitic marking.

The requirement to enable ECN probabilistic marking is in this post - https://fb.workplace.com/groups/907812870130827/permalink/1942155276696576/

Differential Revision: D91390648

fbshipit-source-id: b087375559539cdd745458f646df9d2551aa4d72
Summary:
Current code enforces a 100% ECN mark probability, relaxing this for TH5 where its explicitly
 validated that ECN probabilistic marking works.

The requirement to enable ECN probabilistic marking is in this post - https://fb.workplace.com/groups/907812870130827/permalink/1942155276696576/

Differential Revision: D91528055

fbshipit-source-id: 600bc734f7a180c697a56e42fcfc92211d2d13b7
Summary:
ECN probabilistic marking is validated and enabled only for TH5 for now, its an experimental feature,
hence adding a production feature to limit the tests to TH5 alone.

The requirement to enable ECN probabilistic marking is in this post - https://fb.workplace.com/groups/907812870130827/permalink/1942155276696576/

Differential Revision: D91528052

fbshipit-source-id: ddb99f8b37a1dbe02b982ee6f099f6aa9a3b2472
Summary:
New test to validate that if ECN marking probability is configured to be less than 100% and if the
ECN marking max limit is configured really high, ECN marking would still happen.

The requirement to enable ECN probabilistic marking is in this post - https://fb.workplace.com/groups/907812870130827/permalink/1942155276696576/

Differential Revision: D91390649

fbshipit-source-id: ec4e9139f626f98dff19ad60d030631ec9a27036
Summary:
I noticed some of our FBOSS on-diff CI jobs are still failing after D91748854
https://www.internalfb.com/sandcastle/workflow/1796936251334191448/artifact/actionlog.1796936251549171953.stdout.1?selectedLines=2445-2450-1-1
The problem is missing the liberror.a
```
/opt/rh/gcc-toolset-12/root/usr/libexec/gcc/x86_64-redhat-linux/12/ld: cannot find -lerror: No such file or directory
collect2: error: ld returned 1 exit status
```

This looks like a missing spot from D91495914 which changed all our "error" library to "fboss-error"

Reviewed By: shri-khare, KevinYakar

Differential Revision: D91783925

fbshipit-source-id: ee274c253a699e38d1eae6de13013040a22bb2b2
Reviewed By: joseph5wu

Differential Revision: D91783299

fbshipit-source-id: 3eae2b16ccbad3d75d74367773ea135151bf1c3b
Summary: Need to set pre coding on the backplane ports of Icetea/TahanSB. This attribute will be set in platform mapping and configured using SAI later in this diff stack

Differential Revision: D91748975

fbshipit-source-id: 98a2b8cd793cc1b186688a5ccd1c16aa2fc6f087
@facebook-github-bot
Copy link
Contributor

@dzarista has updated the pull request. You must reimport the pull request before landing.

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.