Skip to content

DARWIN_NETOS: sync platform manager#639

Closed
aalamsi22 wants to merge 2 commits into
facebook:mainfrom
aalamsi22:darwin_netos_pm
Closed

DARWIN_NETOS: sync platform manager#639
aalamsi22 wants to merge 2 commits into
facebook:mainfrom
aalamsi22:darwin_netos_pm

Conversation

@aalamsi22

@aalamsi22 aalamsi22 commented Nov 6, 2025

Copy link
Copy Markdown
Contributor

Description

  • Initialize the qsfp ports (1-32) and generate the necessary symlinks.
  • Port leds support using scd-leds-darwin.
  • Initialize smbus buses
  • We have also resolved the issue encountered here 3281ee8 by preloading spidev similar to how the meru systems do it.

Testing

PlatformManagerHwTest 7/8 tests pass. NOTE that the failing test is due to the expectation of blue/amber leds to be present which are not supported on Darwin. Arista will add a special case in the test to account for this.

[  FAILED  ] PlatformManagerHwTest.XcvrLedFiles (35479 ms)
[----------] 8 tests from PlatformManagerHwTest (289530 ms total)

[----------] Global test environment tear-down
[==========] 8 tests from 1 test suite ran. (289530 ms total)
[  PASSED  ] 7 tests.
[  FAILED  ] 1 test, listed below:
[  FAILED  ] PlatformManagerHwTest.XcvrLedFiles

 1 FAILED TEST

PM Init of Xcvrs

Ports on Darwin reflect the expected values through the xcvr driver

# ls /run/devmap/xcvrs/
xcvr_1   xcvr_14  xcvr_19  xcvr_23  xcvr_28  xcvr_32  xcvr_8        xcvr_ctrl_12  xcvr_ctrl_17  xcvr_ctrl_21  xcvr_ctrl_26  xcvr_ctrl_30  xcvr_ctrl_6  xcvr_io_10  xcvr_io_15  xcvr_io_2   xcvr_io_24  xcvr_io_29  xcvr_io_4  xcvr_io_9
xcvr_10  xcvr_15  xcvr_2   xcvr_24  xcvr_29  xcvr_4   xcvr_9        xcvr_ctrl_13  xcvr_ctrl_18  xcvr_ctrl_22  xcvr_ctrl_27  xcvr_ctrl_31  xcvr_ctrl_7  xcvr_io_11  xcvr_io_16  xcvr_io_20  xcvr_io_25  xcvr_io_3   xcvr_io_5
xcvr_11  xcvr_16  xcvr_20  xcvr_25  xcvr_3   xcvr_5   xcvr_ctrl_1   xcvr_ctrl_14  xcvr_ctrl_19  xcvr_ctrl_23  xcvr_ctrl_28  xcvr_ctrl_32  xcvr_ctrl_8  xcvr_io_12  xcvr_io_17  xcvr_io_21  xcvr_io_26  xcvr_io_30  xcvr_io_6
xcvr_12  xcvr_17  xcvr_21  xcvr_26  xcvr_30  xcvr_6   xcvr_ctrl_10  xcvr_ctrl_15  xcvr_ctrl_2   xcvr_ctrl_24  xcvr_ctrl_29  xcvr_ctrl_4   xcvr_ctrl_9  xcvr_io_13  xcvr_io_18  xcvr_io_22  xcvr_io_27  xcvr_io_31  xcvr_io_7
xcvr_13  xcvr_18  xcvr_22  xcvr_27  xcvr_31  xcvr_7   xcvr_ctrl_11  xcvr_ctrl_16  xcvr_ctrl_20  xcvr_ctrl_25  xcvr_ctrl_3   xcvr_ctrl_5   xcvr_io_1    xcvr_io_14  xcvr_io_19  xcvr_io_23  xcvr_io_28  xcvr_io_32  xcvr_io_8

Port 1 is expected to be present

# cat /run/devmap/xcvrs/xcvr_ctrl_1/xcvr_present_1
0 <-- 0 is present

Testing with a non-existing xcvr

# cat /run/devmap/xcvrs/xcvr_ctrl_5/xcvr_present_5
1  <---- 1 is absent

Port Leds

Verified that the green led is on at first, and turning on yellow leds turns off the green led:
E.g. Setting Port 1 LED to yellow # echo 1 > port1_led1\:yellow\:status/brightness
image
image

@meta-cla meta-cla Bot added the CLA Signed label Nov 6, 2025
@meta-codesync

meta-codesync Bot commented Nov 18, 2025

Copy link
Copy Markdown
Contributor

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

Comment thread fboss/platform/configs/darwin/platform_manager.json Outdated
"/run/devmap/i2c-busses/SCD_SMBUS1_CH4": "/[SCD_SMBUS1@4]",
"/run/devmap/i2c-busses/SCD_SMBUS1_CH5": "/[SCD_SMBUS1@5]",
"/run/devmap/i2c-busses/SCD_SMBUS1_CH6": "/[SCD_SMBUS1@6]",
"/run/devmap/i2c-busses/SCD_SMBUS1_CH7": "/[SCD_SMBUS1@7]",

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Why do we need symlinks created for all these i2c-busses?

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

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

We are trying to match your use case. We see i2c-busses symlinks being created on your sample config. Let us know how we should move forward and we will adapt.

@somasun

somasun commented Nov 18, 2025

Copy link
Copy Markdown
Contributor

that the failing test is due to the expectation of blue/amber leds to be present which are not supported on Darwin.

Curious, aren't these tri-color leds? Is it possible make the color blue/amber?

@facebook-github-bot

Copy link
Copy Markdown
Contributor

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

@aalamsi22

Copy link
Copy Markdown
Contributor Author

that the failing test is due to the expectation of blue/amber leds to be present which are not supported on Darwin.

Curious, aren't these tri-color leds? Is it possible make the color blue/amber?

Not on darwin, blue leds aren't supported.

@facebook-github-bot

Copy link
Copy Markdown
Contributor

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

@joancaneus

Copy link
Copy Markdown
Contributor

@aalamsi22 -- are the changes in this diff part of the netos_darwin platform manager?

I don't mind merging it, but the darwin_netOS is the important one for now bc that's what will get deployed

@aalamsi22 aalamsi22 changed the title Darwin: sync platform manager Dec 2, 2025
@facebook-github-bot

Copy link
Copy Markdown
Contributor

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

@joancaneus

Copy link
Copy Markdown
Contributor

@aalamsi22 -- relating to the comment

" NOTE that the failing test is due to the expectation of blue/amber leds to be present which are not supported on Darwin. Arista will add a special case in the test to account for this."

Is there a PR for it?

@aalamsi22

Copy link
Copy Markdown
Contributor Author

@aalamsi22 -- relating to the comment

" NOTE that the failing test is due to the expectation of blue/amber leds to be present which are not supported on Darwin. Arista will add a special case in the test to account for this."

Is there a PR for it?

Will post early next week

@joancaneus

Copy link
Copy Markdown
Contributor

@aalamsi22 -- relating to the comment
" NOTE that the failing test is due to the expectation of blue/amber leds to be present which are not supported on Darwin. Arista will add a special case in the test to account for this."
Is there a PR for it?

Will post early next week

@aalamsi22 let me know when you post the test so that I can merge this one.

@aalamsi22

Copy link
Copy Markdown
Contributor Author

@aalamsi22 -- relating to the comment
" NOTE that the failing test is due to the expectation of blue/amber leds to be present which are not supported on Darwin. Arista will add a special case in the test to account for this."
Is there a PR for it?

Will post early next week

@aalamsi22 let me know when you post the test so that I can merge this one.
The test fix is addressed by this PR.
#739

@facebook-github-bot

Copy link
Copy Markdown
Contributor

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

2 similar comments
@facebook-github-bot

Copy link
Copy Markdown
Contributor

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

@facebook-github-bot

Copy link
Copy Markdown
Contributor

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

@facebook-github-bot

Copy link
Copy Markdown
Contributor

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

@facebook-github-bot

Copy link
Copy Markdown
Contributor

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

@meta-codesync

meta-codesync Bot commented Jan 16, 2026

Copy link
Copy Markdown
Contributor

@joancaneus merged this pull request in 3c2a6a4.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

4 participants