Skip to content

sb: el: sync 2026.25.01 and 2026.27.01 release updates#2743

Open
S-J-Tang wants to merge 29 commits into
facebook:mainfrom
S-J-Tang:sb-el-20262701-release
Open

sb: el: sync 2026.25.01 and 2026.27.01 release updates#2743
S-J-Tang wants to merge 29 commits into
facebook:mainfrom
S-J-Tang:sb-el-20262701-release

Conversation

@S-J-Tang

@S-J-Tang S-J-Tang commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

Summary

This PR syncs the Santa Barbara Electra release updates from 2026.25.01 through 2026.27.01.

The changes mainly cover CPLD / SMBALRT event handling updates, power sequence and power-good mapping updates, INA238 sensor support, GPIO and hardware configuration updates, FRU string handling improvements, and related shell/debug enhancements.

Features

  • Add shell command for CPLD power good status

    • Show CPLD power good status
    • Support EVB-specific P3V3 OSFP power good check
  • Update ADC mechanism for DC on/off pin switching and CS conflict handling

    • Switch A12 pin between GPIO and CS1 in DC on/off ISR
    • Pull CS1 / NUWA0_CNV high before ADC polling to avoid CS conflict
  • Change NUWA chip strap control from CPLD to GPIO

    • Update NUWA0 / NUWA1 CHIP_STRAP_0/1 to GPIO-based handling
    • Keep existing CPLD and IO expander strap behavior unchanged
  • Update power sequence, PWRGD mapping, and related shell display

    • Add VDDQ related sequence and PWRGD entries
    • Rename VDDQC related names to VDDC
    • Update PLL_VDDA related mapping and log strings
    • Consolidate shared power good status types and tables
  • Improve FRU / board information handling

    • Support longer board product string
    • Increase board info field length to avoid truncation of board product and custom data fields
  • Add and refine SMBALRT / fault event handling

    • Add VDDQ HBM0246 SMBAlert monitoring
    • Add ASIC CATTRIP event monitoring and reporting to BMC
    • Add and update SMBALRT event sources for VDDQ / VDDC rails
    • Refine SMBALRT polling to honor configured fault masks and changed bits only
    • Update CPLD event log names for VDDQ SMBALRT
    • Modify CPLD_UNEXPECTED_VAL_TRIGGER_CAUSE blackbox event to show SMBALRT rail names and STATUS_WORD
    • Add support for the new CPLD SMBALERT register 0xC4
  • Update GPIO and hardware-related configuration

    • Change GPIO03 from open-drain to push-pull
    • Enable GPIOC0 U626_OE as open-drain with default high
    • Fix JTAG MUX comment to match hardware mapping
  • Add INA238 support and related updates

    • Add INA238 config and sensor definition
    • Enable INA238 sensor polling
    • Fix INA238 config read flow and conversion handling
    • Add INA238 quick VR sensors and slot-based address selection
    • Limit INA238 sensor exposure in sensor list to REV_ID_EVT1B and later
  • Update sensor threshold configuration

    • Update sensor UCR and LCR thresholds for ARKE sensors

Included releases

  • 2026.25.01
  • 2026.27.01

Test Plan

  • Build code: Pass
  • Function check: Pass
  • Verify SMBALRT / fault event handling works as expected
  • Verify INA238 sensor polling and sensor list behavior
  • Verify updated sensor thresholds through sensor_threshold get all
  • Verify FRU board information fields are displayed correctly

S-J-Tang and others added 28 commits July 9, 2026 15:26
Summary:
- Add shell command to show CPLD power good status
- Support EVB-specific P3V3 OSFP power good check

Test Plan:
- Build code: Pass
Summary:
- Modify dc on/off ISR to switch A12 pin between GPIO and CS1.
- Pull CS1, NUWA0_CNV, NUWA0_CNV high before ADC polling to avoid CS1 interfering with CS0 communication.
Test Plan:
- Build code: Pass
Summary:

* Change NUWA0/NUWA1 CHIP_STRAP_0/1 from STRAP_TYPE_CPLD to STRAP_TYPE_GPIO
* Use GPIO number instead of CPLD offset 0x1a for NUWA chip strap control
* Add GPIO read/write handling in bootstrap strap flow
* Keep existing CPLD and IO expander strap behavior unchanged

Test Plan:

* Build code: Pass
* Function check: Pass
Summary:
- Increase board product buffer size from 32 to 64 bytes
- Decode board product field directly into destination buffer
- Prevent board product string truncation when FRU field length exceeds 31 bytes

Test Plan:
- Build code: Pass
- Verify FRU information parsing: Pass
- Verify long board product string is displayed correctly: Pass
Summary:
- Remove unused `PLL_VDDA15_HBM` power sequence and PWRGD mapping
- Add `P1V2_PLL_VDDA_OWL` and `P1V2_PLL_VDDA_SOC` sequence entries
- Rename `VDDQC` related power sequence and PWRGD names to `VDDC`
- Add `VDDQ` related sequence and PWRGD mapping into power control flow
- Align `steps_on[]` and power good tables with current platform rail definition

Test Plan:
- Build code: Pass
Summary:
- Update power sequence mapping in `shell_plat_power_sequence.c`
- Add `VDDQ` related entries to sequence and PWRGD tables
- Rename `VDDQC` related entries to `VDDC`
- Update PLL VDDA related rail mapping to match current platform definition

Test Plan:
- Build code: Pass
Summary:
- Update `VR_POWER_FAULT_4_REG` log strings in `shell_plat_power_sequence.c`
- Change `PLL_VDDA15_HBM*` related log names to `VDDQ_HBM*` and `P1V2_PLL_VDDA_*`
- Align fault event log output with current rail naming

Test Plan:
- Build code: Pass
Summary:
- Fix JTAG MUX comment to match hardware mapping.
Test Plan:
- Build code: Pass
Summary:
- Increase board product buffer size from 64 to 48 bytes
- Increase board custom data buffer size from 32 to 48 bytes
- Prevent truncation of longer FRU board information fields

Test Plan:
- Build code: Pass
- Verify FRU information parsing: Pass
- Verify board product and custom data fields are displayed correctly: Pass

Related-to: 4c64b54
Summary:
- Add VDDQ_HBM0246 SMBAlert event entry to the CPLD info table
- Handle VDDQ_HBM0246 SMBAlert events separately from HBM CATTRIP
- Trigger VR temperature status check for the new SMBAlert source
- Assert ASIC_VR_HOT when a VR temperature fault is detected

Test Plan:
- Build code: Pass
Summary:
- Add `OWL_W_SOC_CATTRIP_R` `OWL_E_SOC_CATTRIP_R` `HAMSA_CATTRIP_SITE_R`
  monitoring and send event to bmc when triggered
Test Plan:
- Build code: Pass
- Blackbox test: Pass
Summary:
- Change GPIO03 configuration from open-drain to push-pull

Test Plan:
- Build code: Pass
Summary:
- Move power_good_status struct, and power_good_status_type enum from .c files into shell_arke_power.h
- Remove duplicate table and definitions in shell_power_good_status.c, reuse power_good_status_table_for_steps_on
- Replace direct array indexing in cmd_arke_steps_on with find_pwrgd_entry() lookup

Test Plan:
- Build code: Pass
Summary:
- Version commit for 2026.25.01.
Test Plan:
- Build code: Pass
- Function check: Pass
Summary:
- Rename VDDQC-related SMBALRT event names to VDDC
- Add `ARKE_VDDC_VDDQ_1357_SMBALRT_N`
- Add `ARKE_VDDC_VDDQ_0246_SMBALRT_N`
- Align SMBALRT event source definitions with current rail naming

Test Plan:
- Build code: Pass
Summary:
- Add `ARKE_VDDQ_1357_SMBALRT_N` event entry in `vr_fault_table`
- Add `ARKE_VDDQ_0246_SMBALRT_N` event entry in `vr_fault_table`
- Extend VR SMBALRT event source mapping for VDDQ rails

Test Plan:
- Build code: Pass
Summary:
- Update `plat_poll_cpld_info_table()` to check only SMBALRT bits covered by `bit_check_mask`
- Skip unrelated SMBALRT bits during CPLD fault polling
- Move `vr_hot_switch` variable outside the inner loop for cleaner handling

Test Plan:
- Build code: Pass
Summary:
- Add VDDQ HBM0246 SMBALRT mapping in `vr_error_callback_info_table`
- Update `plat_poll_cpld_info_table()` to check only changed SMBALRT bits
- Extend `get_error_data()` to handle the new SMBALRT source correctly
- Reduce unnecessary SMBALRT processing for unchanged bits

Test Plan:
- Build code: Pass
Summary:
- Update `arke_event_source` enum
- Rename `ARKE_MAX_N_VDDRXTX_SMBALRT_N` to `ARKE_MAX_N_SMBALRT_N`

Test Plan:
- Build code: Pass
Summary:
- Update SMBALRT-related names in `cpld_bit_name_table`
- Map `VDDQ_0246_SMBALRT_N` to `VR_SMBUS_ALERT_EVENT_LOG_REG`
- Map `VDDQ_1357_SMBALRT_N` to `ASIC_CATTRIP_REG`

Test Plan:
- Build code: Pass
Summary:
- Modify blackbox VR SMBALRT
- Show SMBALRT rails name and STATUS_WORD
Test Plan:
- Build code: Pass
Summary:
- Update UCR and LCR threshold settings for ARKE sensors
- Adjust temperature, voltage, current, and power sensor threshold values
- Align sensor threshold configuration with latest platform requirement

Test Plan:
- Build code: Pass
- Verify updated sensor thresholds through `sensor_threshold get all`
Summary:
- Enable INA238 Sensor Polling
Test Plan:
- Build code: Pass
Summary:
- Add `ENABLE_INA238` define in `plat_def`
- Add INA238 address and init arguments
- Add `SENSOR_NUM_INA238_VOLT_VBUS_A` sensor entry

Test Plan:
- Build code: Pass
Summary:
- Move `SENSOR_NUM_INA238_VOLT_VBUS_A`, `SENSOR_NUM_INA238_CURR_A`, and `SENSOR_NUM_INA238_PWR_W` from `plat_pldm_sensor_evb_table` to `plat_pldm_sensor_quick_vr_table`
- Remove `SENSOR_NUM_INA238_VOLT_VSHUNT_A`
- Add slot-based INA238 address selection
- Define `INA238_ADDR_EVB`, `INA238_ADDR_0`, `INA238_ADDR_1`, `INA238_ADDR_2`, and `INA238_ADDR_3`
- Limit INA238 sensor exposure in the sensor list to `REV_ID_EVT1B` and later

Test Plan:
- Build code: Pass
Summary:
- Add handling for VDDQ_HBM1_HBM3_HBM5_HBM7_SMBALERT_R1_N via the new
CPLD register 0xC4. This register is a temporary hardware workaround
for an SMBUS alert pin layout error on the current PCB revision, and
will be removed once the next hardware revision corrects the layout.
Test Plan:
- Build code: Pass
- Function test: Pass
Summary:
- Enable `GPIOC0` for `U626_OE`
- Configure `GPIOC0` as open-drain
- Set default output state to high

Test Plan:
- Build code: Pass
Summary:
- Version commit for 2026.27.01.
Test Plan:
- Build code: Pass
- Function check: Pass
@meta-cla meta-cla Bot added the CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed. label Jul 9, 2026
@meta-codesync

meta-codesync Bot commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

This pull request has been imported. If you are a Meta employee, you can view this in D111200199. (Because this pull request was imported automatically, there will not be any future comments.)

Summary:
- Fix code formatting issues with clang-format
- Align source formatting with project style

Test Plan:
- Build code: Pass
@facebook-github-tools

Copy link
Copy Markdown

@S-J-Tang 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

Labels

CLA Signed This label is managed by the Facebook bot. Authors need to sign the CLA before a PR can be reviewed.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants