Skip to content

Firmware mitigation options for BMR491 voltage droop defect #2321

@cbiffle

Description

@cbiffle

Flex has proposed a firmware mitigation for existing BMR491 IBCs that have the intermittent voltage droop issue. I'm creating this tracking issue so we can document its implementation in the firmware (or our decision not to implement it, should we decide it's not right!).

The suggestion is, concretely,

  • To disable the input undervoltage check by writing VIN_OFF to 0. (All register names in this list are in the PMBus interface.)
  • Send VOUT_COMMAND of 0x0060 (sets the ranges for the subsequent commands)
  • Override MAX_DUTY to 0.95 / 0xF8EA
  • Set VOUT_UV_FAULT_LIMIT to 0x0058
  • Set VOUT_UV_FAULT_RESPONSE to 0x80 (disable, do not retry)

They then suggest using STORE_USER_ALL to make this persist.

My interpretation of their doc against the PMBus spec suggests that the fix is plausible. It should effectively disable the input undervoltage monitor, which makes some sense -- it's the input stage for that circuit that has the out-of-tolerance components on the BMR491. To compensate it enables VOUT undervoltage monitoring, which should be less prone to false detection.

We don't appear to do much programming of the BMR491 online right now, so I think we'd need to do this in manufacturing on any defective BMR491s. For systems already in the field, we'd probably want to distribute a firmware update that applies the mitigation at startup. This raises the question of whether we can reliably detect a defective (or potentially defective) '491 in-system, which we need to double check.

@hawkw @ericaasen - did I miss things?

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions