New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 666117 link

Starred by 1 user

Issue metadata

Status: Assigned
Owner:
Last visit > 30 days ago
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 2
Type: Bug



Sign in to add a comment

Type-C Display Port Mode Intermittent on SKL

Project Member Reported by bhthompson@google.com, Nov 17 2016

Issue description

We have had reports of SKL systems not identifying a display connected to a DP based docks, e.g. https://www.startech.com/Cards-Adapters/Laptop-docking-stations/usb-c-laptop-dock~MST30C2DPPD

This seems to have started in R55 based on dogfooder feedback. With some local testing this appears to be intermittent. 

Shawn was taking the first look at this, and so far we appear to be switching the high speed muxes, so we should be exposing DP to the SoC, however more debug needs to be done.

In the failure case modetest shows the DP interfaces disconnected. 
 
Was this the watermarks regression? If so it should be gone on ToT. If this is only on kernel 3.18, it might be worth retesting.

Comment 2 by sha...@chromium.org, Nov 17 2016

I can figure this out this myself, but it would save me time if someone could point out how 'modetest' determines whether a display is connected and point out the (display driver?) code. Does it rely on the HPD input signal or some other method? 
Yes it uses the HPD pin. But for type-C the HPD signal is generated by the EC because there is some muxing that has to happen first.

Comment 4 by sha...@chromium.org, Nov 17 2016

A cursory check of our mux regs shows that we're consistently configured to USB + DP when the dock is attached, and our HPD output GPIO is getting asserted.

I updated to a fresh test image (8996.0.0) on my lars unit and things seem to be working consistently now. I'm not yet completely convinced that updating the image was the actual fix, there may be something else going on. I will try a few more tests.

Comment 5 by sha...@chromium.org, Nov 18 2016

I rolled back to some earlier R55 OS images and DP is still functioning, so I don't think updating my image caused my device to become fixed. Maybe an EC reset fixed things, or maybe the dock itself is in a different state. The HS mux part here is very simple and hard to misconfigure (unless we get polarity wrong, somehow) - there is a single register that configures USB3 / DP / polarity settings, and we're reading it back + decoding it correctly when we do "typec 0" on the EC console. HPD generation is done through a simple GPIO, and I verified it was in the proper state previously (and even tried toggling it by hand, to see if it would help).

I no longer have a unit that doesn't work with this dock, so please ping me if you have a (preferably lars, but I'll take anything) device that doesn't work.

Comment 6 by dbehr@chromium.org, Nov 18 2016

Cc: dbehr@chromium.org
Status: Assigned (was: Untriaged)

Sign in to add a comment