Bug #256

X201: Not probing for dock on wakeup

Added by Stefan Ott 2 months ago. Updated 2 months ago.

Status:NewStart date:03/19/2020
Priority:NormalDue date:
Assignee:-% Done:

0%

Category:-
Target version:-

Description

With stock BIOS and older versions of coreboot (4.9-7f520c8f), the Thinkpad X201 re-attaches itself to the docking station if it was docked while suspended; with the current master (and 4.11 release) this does not work anymore, i.e. it only detects the dock if the docking event occurs while the machine is awake.

coreboot-4.9-powerup.log Magnifier (6.98 KB) Stefan Ott, 03/19/2020 05:59 PM

coreboot-4.9-redock.log Magnifier (2.75 KB) Stefan Ott, 03/19/2020 05:59 PM

coreboot-4.9-wakeup.log Magnifier (2.75 KB) Stefan Ott, 03/19/2020 05:59 PM

coreboot-4.11-powerup.log Magnifier (27.1 KB) Stefan Ott, 03/19/2020 05:59 PM

coreboot-4.11-redock.log Magnifier (17.5 KB) Stefan Ott, 03/19/2020 05:59 PM

coreboot-4.11-wakeup.log Magnifier (17.5 KB) Stefan Ott, 03/19/2020 05:59 PM

coreboot-x201-dock-attach.patch Magnifier (1.96 KB) Stefan Ott, 03/20/2020 12:44 PM

History

#1 Updated by Paul Menzel 2 months ago

Please attach the logs cbmem -1 with the old-working and regressed coreboot versions.

I believe your issue has the higher chances to be fixed, if you bisect the commit causing the regression (git bisect).

#2 Updated by Stefan Ott 2 months ago

Paul Menzel wrote:

Please attach the logs cbmem -1 with the old-working and regressed coreboot versions.

I believe your issue has the higher chances to be fixed, if you bisect the commit causing the regression (git bisect).

I did some debugging with cbmem and noticed that coreboot does detect the dock (it says "dock is connected") on resume, it just seems to fail to tell the OS about it; the logs are attached.

#3 Updated by Stefan Ott 2 months ago

Here we go, I made a bunch of logs. For coreboot 4.9 (works) and 4.11 (does not work) I took a cbmem -1 log after bootup (docked), wakeup (docked) and after a docking procedure (while awake).

#4 Updated by Stefan Ott 2 months ago

I found the commit that broke it with git bisect, it appears to be 72f13e5 ("Make dock init in ramstage fully mainboard-specific").

#5 Updated by Stefan Ott 2 months ago

And indeed, if I revert that commit, it works. I'll attach a crude patch to show what I had to change.

Also available in: Atom PDF