You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
It turns out that PMBus devices like to set this bit bascially any time they saw any kind of I2C behavior that makes them feel uncomfortable. We probably don't want to produce an ereport every time an I2C Thing makes a VRM uncomfortable. So this commit masks out PMBus alerts for STATUS_CML's "other communication fault" bit, since it's annoying and not a big deal.
This branch does a bit of extra refactoring on top of the change from #2511. Since we are now setting even more SMBALERT_MASKs in initialize_pmbus_alerts, I thought it would be nice to have some shared utilities for trying to do this.
hawkw
changed the title
[WIP] mask STATUS_CML bit 2 to not get annoying pmbus alerts about it
[WIP] mask STATUS_CML bit 1 to not get annoying pmbus alerts about it
May 19, 2026
hm this build failure is, i believe, due to GitHub Jank and is not my fault?
hawkw
changed the title
[WIP] mask STATUS_CML bit 1 to not get annoying pmbus alerts about it
cosmo_seq: mask STATUS_CML bit 1 to not get annoying pmbus alerts about it
May 19, 2026
okay, so i have not actually been able to come up with a way to reproduce a condition that actually asserts this particular bit --- the best i could manage with humility i2c, (writing too many bytes to a register or scanning registers that don't exist) assert bits 5 (PEC failure) and 7 (invalid command) instead. i think asserting bit 1 requires glitching the bus in a way that Humility is too well-behaved to do, such as sending a STOP mid-transaction or just messing with SCL at unexpected moments. i am, however, confident enough that this probably does do the right thing, and have validated that all the refactoring has, at least, not broken the previously working masking of the spurious overcurrent errors. i am going to exercise my best judgement and declare this good enough.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
It turns out that PMBus devices like to set this bit bascially any time they saw any kind of I2C behavior that makes them feel uncomfortable. We probably don't want to produce an ereport every time an I2C Thing makes a VRM uncomfortable. So this commit masks out PMBus alerts for STATUS_CML's "other communication fault" bit, since it's annoying and not a big deal.
This branch does a bit of extra refactoring on top of the change from #2511. Since we are now setting even more
SMBALERT_MASKs ininitialize_pmbus_alerts, I thought it would be nice to have some shared utilities for trying to do this.