I'm having some issues with the DisplayPort alternate mode demo that is included in the EZ-PD CCGx SDK 3.0.2. I'm currently using PSoC Creator 3.3 Service Pack 2 (PSoC 4 refuses to compile the demo project).
I don't actually have the demo board, but I have a custom board that is very similar in operation. I decided to flash the demo project on to my board to see if the problem I'm observing persisted. It did. Other errors showed up in the EZ-PD Analyzer scans when using the demo program on my custom board, but I'm not sure if they are related or not.
I have tested this board and firmware on many different models of Apple Macbooks. Every Mac model with a USB-C or Thunderbolt 3 port has worked flawlessly, until the most recent MacbookPro 13" 2 TB3 ports (MacbookPro15,4) release. Here are the technical details of that model. I also have observed that the behavior I describe below only occurs on the MacbookPro15,4 and not the Macbook15,2 (which is the 13" 4 TB3 port model).
When negotiating for DisplayPort Alt mode, most Macbooks follow this sequence: `Enter`, `Status Update`, wait for hot plug, `Configure`, and DP AUX negotiations begin. On the MacbookPro15,4 the sequence I observe is `Enter`, `Status Update`, `Configure`, `NAK`.
It appears that the MacbookPro15,4 is attempting to set up the alt mode using pin assignment C and selecting configuration for USB instead of "Set configuration for UFP_U as UFP_D". What I'm actually expecting to happen is that the Macbook set up for pin assignment E since that's what the demo program is configured to do.
I have attached two EZ-PD Analyzer scans. `cypress-dp-demo-mbp14-3` is a scan on a 2017 MacbookPro 15" and acts similarly to many other Macbooks. `cypress-dp-demo-mbp15-4` is the 2019 MacbookPro 13" 2 TB3 Port model that is failing. In particular, lines 79 and 81 of the scan.
Is there some configuration setting that I can tweak to get this working for the Macbook15,4 model? If not, what is the most likely point of failure that is causing the Macbook to issue a pin C assignment instead of a pin E?