Overview#

Laptop was stuck at 5 V over USB-C with no proper PD contract negotiation, making the system appear dead.

Even after replacing a visibly damaged power-path component, behavior stayed unchanged, which indicated a deeper control-layer fault.

Technical Highlights#

  • Diagnosed NX20P5090 failure in the USB-C power path
  • Measured CC and VBUS behavior during PD negotiation
  • Verified behavior after TPS65988 replacement
  • Identified external SPI configuration dependency
  • Regenerated and reflashed TPS65988 configuration
  • Restored full USB-C PD negotiation

Key Lessons#

  • Hardware repair now includes firmware and configuration state
  • A valid power rail set does not guarantee functional system behavior
  • Controller configuration memory can be as critical as controller silicon

Technologies#

  • USB-C Power Delivery
  • NX20P5090
  • TPS65988
  • Oscilloscope-based signal validation
  • SPI flash reprogramming
  • TI configuration tooling
Flowchart
flowchart TD
    A[Laptop stuck at 5V over USB-C] --> B[Replaced NX20P5090 power switch]
    B --> C[PD negotiation still failed]
    C --> D[Measured CC and VBUS behavior]
    D --> E[Replaced TPS65988 controller]
    E --> F[Behavior unchanged]
    F --> G[Checked external SPI flash configuration]
    G --> H[Regenerated and reflashed TI configuration]
    H --> I[PD negotiation restored]
Details
This repair started as a power-path failure and quickly turned into a mixed hardware and firmware fault analysis. The first confirmed fault was the NX20P5090 USB-PD protection and switch device. Replacing it restored basic path integrity but did not recover PD contract negotiation. Signal-level checks on CC and VBUS showed the policy engine was not completing valid negotiation states. Replacing the TPS65988 controller also produced no functional change. That narrowed the fault domain to external dependencies, specifically the SPI flash used for TPS65988 configuration. After rebuilding and flashing the configuration image with TI tooling, the controller resumed normal policy behavior and negotiated correctly. Key lesson: do not treat PD controllers as standalone silicon. Configuration memory is part of the active control plane.

Gallery

4 images