Skip to content

Conversation

@brandonchuang
Copy link
Contributor

Summary:

This commit introduces the initial fan_service.json configuration for the WEDGE800BACT platform.
It defines the fan topology, PWM control parameters, watchdog behavior, LED mappings,
and RPM/presence sysfs paths as specified by the platform hardware design.

The configuration ensures that the fan controller operates at a fixed PWM level of 45%,
correctly handles fan presence detection, drives the blue/amber status LEDs,
and integrates with the fan watchdog framework.
All eight fans are grouped under a single cooling zone (zone1) with consistent PWM control parameters.

This serves as the baseline configuration for fan behavior on WEDGE800BACT and enables
functional validation of fan control, LED indication, and watchdog response under FBOSS fan_service.

Test Plan:

Summary:
This commit introduces the initial fan_service.json configuration for the WEDGE800BACT platform.
It defines the fan topology, PWM control parameters, watchdog behavior, LED mappings,
and RPM/presence sysfs paths as specified by the platform hardware design.

The configuration ensures that the fan controller operates at a fixed PWM level of 45%,
correctly handles fan presence detection, drives the blue/amber status LEDs,
and integrates with the fan watchdog framework.
All eight fans are grouped under a single cooling zone (zone1) with consistent PWM control parameters.

This serves as the baseline configuration for fan behavior on WEDGE800BACT and enables functional validation
of fan control, LED indication, and watchdog response under FBOSS fan_service.

Test Plan:
- Launch fan_service and verify that all fan telemetry is read correctly and that the PWM value is fixed at 45% as defined in the configuration.
  [20251118_w800b_fan_service.txt](https://github.com/user-attachments/files/23619927/20251118_w800b_fan_service.txt)
- Run fan_service_hw_test and confirm that all test cases pass.
  [20251118_w800b_fan_service_hw_test.txt](https://github.com/user-attachments/files/23619929/20251118_w800b_fan_service_hw_test.txt)
- Sequentially unplug fans fan1 → fan8 and verify that fan_service reports the correct fan-failure events for each module.
  [20251118_w800b_fan_service_plug_unplug.txt](https://github.com/user-attachments/files/23619930/20251118_w800b_fan_service_plug_unplug.txt)
- Run sensors w800_fancpld-i2c-15-33 and confirm that each fan’s RPM is displayed correctly.
  [20251118_w800b_sensors_w800_fancpld.txt](https://github.com/user-attachments/files/23619933/20251118_w800b_sensors_w800_fancpld.txt)
- Validate fan-module LED behavior by checking /sys/class/leds/fan1 (and corresponding entries for other fans) and confirm the I2C register values using i2cget.
  [20251118_w800b_fan_module_led_test.txt](https://github.com/user-attachments/files/23619926/20251118_w800b_fan_module_led_test.txt)
- Trigger the fan watchdog timeout and verify that the PWM behavior matches the expected fallback/timeout behavior.
  [20251118_w800b_fan_watchdog_test.txt](https://github.com/user-attachments/files/23619932/20251118_w800b_fan_watchdog_test.txt)
@meta-cla meta-cla bot added the CLA Signed label Nov 19, 2025
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.

1 participant