Skip to content

Conversation

@aalamsi22
Copy link
Contributor

@aalamsi22 aalamsi22 commented Jun 12, 2025

Description

NOTE: This is part of a series of PRs to add support for Glath05a-64o. The dependency chain of the PRs is as follows:

Glath05a-64o: define new platform #461
Glath05a-64o: platform manager #462
Glath05a-64o: add sensor_service support #467 – Depends on #462
Glath05a-64o: weutil config #468 – Depends on #462
Glath05a-64o: add fan_service config #469 – Depends on #467
Glath05a-64o: fw_util support #470 – Depends on #461
Glath05a-64o: bsp mapping #471 – Depends on #461
Glath05a-64o: platform mapping #472 – Depends on #471
Glath05a-64o: led service #473 – Depends on #472

  • Adds platform_manager config
  • Define scm and smb fpgas
  • Define smb and fan cplds
  • Define all i2cdevices (sensors, power controllers, etc)
  • Define Spidev
  • Define all 64 OSFP ports (xcvrs and leds)
  • Add a workaround in PlatformExplorer to workaround the meru idprom limitation documented here https://github.com/facebookexternal/fboss.bsp.arista/pull/31/files.

Chassis eeprom is implemented as a logical eeprom. See this for more details #774

Testing

Shortened platform_manager log showing a successful run.

Jun 12 17:37:24 qsfb101.sjc.aristanetworks.com systemd[1]: Starting FBOSS Platform Manager...
Jun 12 17:37:24 qsfb101.sjc.aristanetworks.com platform_manager[5455]: I0612 17:37:24.282233  5455 PlatformNameLib.cpp:55] Getting platform name from bios using dmidecode ...
Jun 12 17:37:24 qsfb101.sjc.aristanetworks.com platform_manager[5455]: I0612 17:37:24.285799  5455 PlatformNameLib.cpp:64] Platform name inferred from bios: GLATH05A-64O
Jun 12 17:37:24 qsfb101.sjc.aristanetworks.com platform_manager[5455]: I0612 17:37:24.285807  5455 PlatformNameLib.cpp:66] Platform name mapped: GLATH05A-64O
Jun 12 17:37:24 qsfb101.sjc.aristanetworks.com platform_manager[5455]: I0612 17:37:24.286470  5455 ConfigLib.cpp:33] Using config file: /opt/fboss/share/platform_configs/platform_manager.json
Jun 12 17:37:24 qsfb101.sjc.aristanetworks.com platform_manager[5455]: I0612 17:37:24.287183  5455 ConfigValidator.cpp:470] Validating the config
Jun 12 17:37:24 qsfb101.sjc.aristanetworks.com platform_manager[5455]: I0612 17:37:24.287191  5455 ConfigValidator.cpp:493] Validating SlotTypeConfig for Slot FAN_SLOT...
Jun 12 17:37:24 qsfb101.sjc.aristanetworks.com platform_manager[5455]: I0612 17:37:24.287195  5455 ConfigValidator.cpp:493] Validating SlotTypeConfig for Slot PSU_SLOT...
Jun 12 17:37:24 qsfb101.sjc.aristanetworks.com platform_manager[5455]: I0612 17:37:24.287199  5455 ConfigValidator.cpp:493] Validating SlotTypeConfig for Slot SCM_SLOT...
Jun 12 17:37:24 qsfb101.sjc.aristanetworks.com platform_manager[5455]: I0612 17:37:24.287205  5455 ConfigValidator.cpp:493] Validating SlotTypeConfig for Slot SMB_SLOT...
Jun 12 17:37:24 qsfb101.sjc.aristanetworks.com platform_manager[5455]: I0612 17:37:24.287209  5455 ConfigValidator.cpp:501] Validating PmUnitConfig for PmUnit FAN in Slot FAN_SLOT...
Jun 12 17:37:24 qsfb101.sjc.aristanetworks.com platform_manager[5455]: I0612 17:37:24.287213  5455 ConfigValidator.cpp:501] Validating PmUnitConfig for PmUnit PSU in Slot PSU_SLOT...
Jun 12 17:37:24 qsfb101.sjc.aristanetworks.com platform_manager[5455]: I0612 17:37:24.287218  5455 ConfigValidator.cpp:501] Validating PmUnitConfig for PmUnit SCM in Slot SCM_SLOT...
Jun 12 17:37:24 qsfb101.sjc.aristanetworks.com platform_manager[5455]: I0612 17:37:24.287241  5455 ConfigValidator.cpp:501] Validating PmUnitConfig for PmUnit SMB in Slot SMB_SLOT...
Jun 12 17:37:24 qsfb101.sjc.aristanetworks.com platform_manager[5455]: I0612 17:37:24.294969  5455 PkgManager.cpp:357] Unloading kernel modules based on kmods.json
...
Jun 12 18:13:10 qsfb101.sjc.aristanetworks.com platform_manager[6241]: I0612 18:13:10.205715  6241 PlatformExplorer.cpp:738] Reporting firmware version for FAN_CPLD - version string:1.9
Jun 12 18:13:10 qsfb101.sjc.aristanetworks.com platform_manager[6241]: I0612 18:13:10.207458  6241 PlatformExplorer.cpp:738] Reporting firmware version for GLATH05A-64O_SMB_CPLD - version string:3.1
Jun 12 18:13:10 qsfb101.sjc.aristanetworks.com platform_manager[6241]: I0612 18:13:10.207499  6241 PlatformExplorer.cpp:738] Reporting firmware version for GLATH05A-64O_SMB_FPGA_INFO_ROM - version string:3.1
Jun 12 18:13:10 qsfb101.sjc.aristanetworks.com platform_manager[6241]: I0612 18:13:10.207524  6241 PlatformExplorer.cpp:738] Reporting firmware version for MERU_SCM_CPLD_INFO_ROM - version string:4.16
Jun 12 18:13:10 qsfb101.sjc.aristanetworks.com platform_manager[6241]: I0612 18:13:10.207594  6241 PlatformExplorer.cpp:768] Reporting Production State: 1
Jun 12 18:13:10 qsfb101.sjc.aristanetworks.com platform_manager[6241]: I0612 18:13:10.207600  6241 PlatformExplorer.cpp:778] Reporting Production Sub-State: 1
Jun 12 18:13:10 qsfb101.sjc.aristanetworks.com platform_manager[6241]: I0612 18:13:10.207605  6241 PlatformExplorer.cpp:788] Reporting Variant Indicator: 0
Jun 12 18:13:10 qsfb101.sjc.aristanetworks.com platform_manager[6241]: I0612 18:13:10.207617  6241 ExplorationSummary.cpp:49] Successfully explored glath05a-64o...
Jun 12 18:13:10 qsfb101.sjc.aristanetworks.com platform_manager[6241]: I0612 18:13:10.207674  6241 Main.cpp:43] Sent sd_notify ready by running command
Jun 12 18:13:10 qsfb101.sjc.aristanetworks.com platform_manager[6241]: I0612 18:13:10.207679  6241 Main.cpp:78] Running PlatformManager thrift service...
Jun 12 18:13:10 qsfb101.sjc.aristanetworks.com systemd[1]: Started FBOSS Platform Manager.
Jun 12 18:13:10 qsfb101.sjc.aristanetworks.com platform_manager[6241]: I0612 18:13:10.208351  6241 ThriftServer.cpp:872] Using thread manager (resource pools not enabled) on address/port 5975: runtime: thriftFlagNotSet, , thrift flag: false, enable gflag: false, disable gflag: false

@facebook-github-bot
Copy link
Contributor

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

@somasun
Copy link
Contributor

somasun commented Sep 23, 2025

Note: #461 is not a dependency until #471 . The platform service PRs dont rely on #461.

platformConfig_.platformName().value() == "meru800bia" ||
platformConfig_.platformName().value() == "glath05a-64o") &&
(!(idpromConfig.busName()->starts_with("INCOMING")) &&
*idpromConfig.address() == "0x50")) {
Copy link
Contributor

Choose a reason for hiding this comment

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

Considering this is a new platform, can we pick a different address for SCM EEPROM (outside 0x50-0x57), so we dont have to do this hack. We want to avoid all platform-specific hacks in the service code.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Hi Somasun. This platform is using the same MERU cpu card and will require the same hack.

Copy link
Contributor

Choose a reason for hiding this comment

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

In https://github.com/facebookexternal/fboss.bsp.arista/pull/31, there was discussion on following up with Intel and fixing it cleanly upstream in i2c-1801. How far are we in that discussion/effort?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

let me follow up on that discussion and get back to you.

Copy link
Contributor

Choose a reason for hiding this comment

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

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Based on discussions with the maintainer of the i2c-1801 driver and Intel engineers, the ultimate recommendation was to patch the driver with a kernel param that will allow us to disable the automatic device binding feature. We will add the kernel param to the driver and share it with you for review, in the meantime we hope to use the existing workaround until we arrive at an agreed upon solution.

@facebook-github-bot
Copy link
Contributor

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

@aalamsi22 aalamsi22 force-pushed the glath05a_64o_platform_manager branch from 251af38 to 542764c Compare January 2, 2026 22:52
@facebook-github-bot
Copy link
Contributor

@aalamsi22 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.

4 participants