The PDO selection logic is triggered once the PD
controller port is in an Attach. SNK state and the port partner (far end) has
advertized its source capabilities. The PDOs received are captured in 0x30 RX
Source Capabilities Register. The PDO selection algorithm iteratively
processes these PDOs to identify the best fit PDO based on the criteria below:
- The Autonegotiate behavior is not applicable even
if AutoNgt=1 if SNKIntrusiveMode = 1 (Bit 9, Port Control
Register [0x29]).
- The autocomputed / user selected Minimum Power for the Sink port is compared with every
single Source PDO to find a best fit.
- The Sink PDO voltage range must match or fall within the selected Source PDO advertized
voltage.
- The Source PDO supply type (eg: Fixed / Variable / Battery) matches the supply type of the Sink
PDO that closely matches the Minimum Power requirement (applicable to
a perfect PDO match).
- In the process of Autonegotiation, if a perfectly matching Source PDO is found, the iteration
ends here. A matching PDO would have the below characteristics:
- Minimum Power requirement is satisfied by the selected Source
PDO.
- If there are multiple Source PDOs that can satisfy the Minimum
Power requirement, the latest one from the list of PDOs that
satisfies the criteria is chosen.
- Capability mismatch bit is not set.
- If a perfectly matching PDO is not found, then the iteration resets until a Source
PDO matches the setting chosen for OfferPriority. The setting of Highest
Voltage / Current / Power in OfferPriority allows a Source PDO selection
that meets the Highest Voltage / Current / Power parameters of the Sink PDO
fully / closely matching the Minimum Power value.
The flowchart below shows the Autonegotiate Sink behavior for selecting a PDO.
Note: - For Variable Sink PDOs, the power computed is a
product of Operating Current and Maximum Voltage of the
PDO.
- For Variable Source PDOs, the PDO power computed is a product of the Operating Current
and Minimum Voltage advertized.
- For Battery Sink PDOs, the Operating Power
is used.
- RDO requested current is limited by the Cable's
Maximum current rating.
- External EC's intervention is asynchronous.