So that's round 2.
- imx8mm-evk
- Totalphase PD sniffer (Google Twinkie)
- Apple PSU 61W
What I'm trying to do is provide supply through USBC hub to the evk board on USB2 primary supply port J302
indentical software configuration of the other issue please look here.
By looking on the negotiation, these are the Source Caps
evk is requesting Pos 2, 9V/3AMax and in u-boot I see following prints:
TCPC: Vendor ID [0x1fc9], Product ID [0x5110], Addr [I2C1 0x52]
SNK.Power3.0 on CC1
PDO 0: type 0, 5000 mV, 3000 mA [E]
PDO 1: type 0, 9000 mV, 3000 mA []
PDO 2: type 0, 15000 mV, 3000 mA []
PDO 3: type 0, 20000 mV, 3000 mA []
Requesting PDO 1: 9000 mV, 3000 mA
Source accept request
PD source ready!
that's pretty good and I see VBUS transition to 9V. Then the Apple PSU is sending
DiscIdentity
and the evk is answering with CRC okay but no answer at all, they stay in this loop forever
until the Apple PSU is cutting out Vbus with apparently no reason (current consumption for the whole section never exceed 321mA)
so to sum up the evk board never boots and stay in u-boot forever with spurious power supply
cycles.
UPDATE: so far I've seen in current u-boot dts ptn5110_2 is missing interrupt line. Re-tested but doesn't solve the problem. Below the patch.
@igorpadykov can you help me in deliver the message to the correct support channel? I'm currently unable to work with pd on usbc on i.MX 8M Mini EVK
Hi Massimo
since that issue can be reproduced only on specific customer configuration
may be suggested to proceed with help of NXP Professional Services:
https://contact.nxp.com/new-prof-svcs-sw-tech
Best regards
igor
@igorpadykov please note that it's not "specific customer configuration". It's official NXP evk with official yocto distro without changes.
I've only discovered that if I power the EVK with an Apple PSU instead of the PSU provided (the adapter in my kit is UK only anyway) the evk doesn't work.
After inspecting the u-boot code I've understood the state machine that is handling power delivery is very simple and quit after power supply sends PS_RDY. The problem is that it may not be true with every power supply. For example this one from Apple is sending DiscIdentity message some seconds after PS_RDY but no one is there for responding since u-boot code has already quitted and is preparing kernel boot.
>The problem is that it may not be true with every power supply.
sorry that means that this case is "specific customer configuration".
Best regards
igor
@igorpadykov yeah no problem with that, only consider that power delivery is a standard. That means that if you have a usbc PSU that is capable of supplying the given voltage/current, then it should work. I suspect current u-boot code has a simplicistic implementation that will fails with many usbc adapters.
Will try to report this issue to developers also to know if they're already working on this or if there are plans to improve existing code.