Bug 1215760

Summary: steam deck usb stop working after waking up from sleep
Product: [openSUSE] openSUSE Tumbleweed Reporter: ted chang <monkeyboyted>
Component: KernelAssignee: openSUSE Kernel Bugs <kernel-bugs>
Status: NEW --- QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None    
Version: Current   
Target Milestone: ---   
Hardware: x86-64   
OS: openSUSE Tumbleweed   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: dmesg > file.txt
sudo journalctl -xe

Description ted chang 2023-09-27 11:51:44 UTC
Created attachment 869790 [details]
dmesg > file.txt

Step to reproduce.
1. Plugin in power cable
2. Let the device sleep
3. Wake up the device with the power button
4. The keyboard doesn't work

Observation

The deck seems to sleep with the screen on screen on. I might try to sleep with cli

[23927.566139] xhci_hcd 0000:04:00.3: Error while assigning device slot ID: Command Aborted
[23927.566160] xhci_hcd 0000:04:00.3: Max number of devices this xHCI host supports is 64.
[23927.566171] usb usb1-port1: couldn't allocate usb_device
[23927.644041] xhci_hcd 0000:04:00.3: WARN: xHC save state timeout
[23927.644083] xhci_hcd 0000:04:00.3: PM: suspend_common(): xhci_pci_suspend+0x0/0x1d0 [xhci_pci] returns -110
[23927.644106] xhci_hcd 0000:04:00.3: can't suspend (hcd_pci_runtime_suspend [usbcore] returned -110)
doof@steamdeck:~> 

The usb port works again after a power cycle

Expectation
The usb port works on wake up.

Other notes:

The screen is on while the system sleeps. I did have time to test it with other methods.
Comment 1 ted chang 2023-09-27 11:54:01 UTC
doof@steamdeck:~> lsb_release -a
LSB Version:    n/a
Distributor ID: openSUSE
Description:    openSUSE Tumbleweed
Release:        20230922
Codename:       n/a
doof@steamdeck:~> uname -k
uname: invalid option -- 'k'
Try 'uname --help' for more information.
doof@steamdeck:~> uname -a
Linux steamdeck.lan 6.5.0-7.gb5edcad-default #1 SMP PREEMPT_DYNAMIC Thu Aug 31 09:34:10 UTC 2023 (b5edcad) x86_64 x86_64 x86_64 GNU/Linux
doof@steamdeck:~>
Comment 2 ted chang 2023-09-27 11:55:51 UTC
I tested `echo mem | sudo tee -a /sys/power/state` and the screen turn off. I wonder if sleeping with the screen on matters for this bug to trigger.
Comment 3 ted chang 2023-09-27 11:56:13 UTC
The screen is black with the backlight on.
Comment 4 ted chang 2023-09-27 11:59:44 UTC
I tested the power button and couldn't reproduce the bug. I think the black screen with the backlight on is needed to reproduce the bug.
Comment 5 ted chang 2023-09-27 12:09:11 UTC
Created attachment 869791 [details]
sudo journalctl -xe

I think I reproduce it even with the backlight turn off on sleep. This time the bluetooth needs to be waked up after enabled. 

I think the common theme is the power cable to be plugged in with mem sleep


Sep 27 05:03:35 steamdeck.lan tlp[7912]: Error: tlp.service is not enabled, power saving will not apply on boot.
Sep 27 05:03:35 steamdeck.lan tlp[7912]: >>> Invoke 'systemctl enable tlp.service' to correct this!
Sep 27 05:03:35 steamdeck.lan tlp[7913]: Error: tlp.service is not enabled, power saving will not apply on boot.
Sep 27 05:03:35 steamdeck.lan tlp[7913]: >>> Invoke 'systemctl enable tlp.service' to correct this!
Sep 27 05:03:36 steamdeck.lan tlp[8050]: Error: tlp.service is not enabled, power saving will not apply on boot.
Sep 27 05:03:36 steamdeck.lan tlp[8050]: >>> Invoke 'systemctl enable tlp.service' to correct this!
Sep 27 05:03:36 steamdeck.lan acpid[1377]: input device has been disconnected, fd 14
Sep 27 05:03:36 steamdeck.lan org_kde_powerdevil[4891]: QObject::disconnect: Unexpected nullptr parameter
Sep 27 05:03:36 steamdeck.lan org_kde_powerdevil[4891]: QObject::disconnect: Unexpected nullptr parameter
Sep 27 05:03:58 steamdeck.lan kernel: xhci_hcd 0000:04:00.3: Error while assigning device slot ID: Command Aborted
Sep 27 05:03:58 steamdeck.lan kernel: xhci_hcd 0000:04:00.3: Max number of devices this xHCI host supports is 64.
Sep 27 05:03:58 steamdeck.lan kernel: usb usb1-port1: couldn't allocate usb_device
Sep 27 05:03:58 steamdeck.lan kernel: xhci_hcd 0000:04:00.3: WARN: xHC save state timeout
Sep 27 05:03:58 steamdeck.lan kernel: xhci_hcd 0000:04:00.3: PM: suspend_common(): xhci_pci_suspend+0x0/0x1d0 [xhci_pci] returns -110
Sep 27 05:03:58 steamdeck.lan kernel: xhci_hcd 0000:04:00.3: can't suspend (hcd_pci_runtime_suspend [usbcore] returned -110)
Sep 27 05:04:32 steamdeck.lan kernel: input: TrackPoint Keyboard II as /devices/virtual/misc/uhid/0005:17EF:60E1.000B/input/input34
Sep 27 05:04:32 steamdeck.lan kernel: lenovo 0005:17EF:60E1.000B: input,hidraw1: BLUETOOTH HID v0.47 Keyboard [TrackPoint Keyboard II] on 14:13:33:d6:>
Sep 27 05:04:32 steamdeck.lan systemd-logind[1548]: Watching system buttons on /dev/input/event4 (TrackPoint Keyboard II)
Sep 27 05:04:32 steamdeck.lan tlp[8104]: Error: tlp.service is not enabled, power saving will not apply on boot.
Sep 27 05:04:32 steamdeck.lan tlp[8104]: >>> Invoke 'systemctl enable tlp.service' to correct this!
Comment 6 ted chang 2023-09-27 12:17:54 UTC
Step to reproduce the problem
1. plugin the power cable. I used an apple usb c laptop charger
2. echo mem | sudo tee -a /sys/power/state
3. Press the power button
4. Unplug the power cable and plug in the usb c keyboard
5. The keyboard doesn't work


Interesting the bluetooth stopped working too.


Sep 27 05:11:16 steamdeck.lan kernel: wlo1: Limiting TX power to 30 (30 - 0) dBm as advertised by f0:72:ea:95:94:8d
Sep 27 05:11:26 steamdeck.lan kernel: Bluetooth: hci0: AOSP extensions version v1.00
Sep 27 05:11:26 steamdeck.lan kernel: Bluetooth: hci0: AOSP quality report is supported
Sep 27 05:11:31 steamdeck.lan kernel: wlo1: disconnect from AP f0:72:ea:95:94:8d for new auth to cc:f4:11:7e:13:fd
Sep 27 05:11:31 steamdeck.lan kernel: wlo1: authenticate with cc:f4:11:7e:13:fd
Sep 27 05:11:31 steamdeck.lan kernel: wlo1: send auth to cc:f4:11:7e:13:fd (try 1/3)
Sep 27 05:11:31 steamdeck.lan kernel: wlo1: authenticated
Sep 27 05:11:31 steamdeck.lan kernel: wlo1: associate with cc:f4:11:7e:13:fd (try 1/3)
Sep 27 05:11:31 steamdeck.lan kernel: wlo1: RX ReassocResp from cc:f4:11:7e:13:fd (capab=0x1011 status=0 aid=5)
Sep 27 05:11:31 steamdeck.lan kernel: wlo1: associated
Sep 27 05:11:32 steamdeck.lan kernel: wlo1: Limiting TX power to 30 (30 - 0) dBm as advertised by cc:f4:11:7e:13:fd
Sep 27 05:11:44 steamdeck.lan kernel: xhci_hcd 0000:04:00.3: Error while assigning device slot ID: Command Aborted
Sep 27 05:11:44 steamdeck.lan kernel: xhci_hcd 0000:04:00.3: Max number of devices this xHCI host supports is 64.
Sep 27 05:11:44 steamdeck.lan kernel: usb usb1-port1: couldn't allocate usb_device
Sep 27 05:11:44 steamdeck.lan kernel: xhci_hcd 0000:04:00.3: WARN: xHC save state timeout
Sep 27 05:11:44 steamdeck.lan kernel: xhci_hcd 0000:04:00.3: PM: suspend_common(): xhci_pci_suspend+0x0/0x1d0 [xhci_pci] returns -110
Sep 27 05:11:44 steamdeck.lan kernel: xhci_hcd 0000:04:00.3: can't suspend (hcd_pci_runtime_suspend [usbcore] returned -110)
Sep 27 05:11:49 steamdeck.lan kernel: lenovo 0005:17EF:60E1.000A: item fetching failed at offset 197/198
Sep 27 05:11:49 steamdeck.lan kernel: lenovo 0005:17EF:60E1.000A: hid_parse failed
Sep 27 05:11:49 steamdeck.lan kernel: lenovo: probe of 0005:17EF:60E1.000A failed with error -22
Sep 27 05:12:09 steamdeck.lan kernel: lenovo 0005:17EF:60E1.000B: item fetching failed at offset 197/198
Sep 27 05:12:09 steamdeck.lan kernel: lenovo 0005:17EF:60E1.000B: hid_parse failed
Sep 27 05:12:09 steamdeck.lan kernel: lenovo: probe of 0005:17EF:60E1.000B failed with error -22
Sep 27 05:12:53 steamdeck.lan kernel: Bluetooth: hci0: AOSP extensions version v1.00
Sep 27 05:12:53 steamdeck.lan kernel: Bluetooth: hci0: AOSP quality report is supported
Sep 27 05:12:59 steamdeck.lan kernel: lenovo 0005:17EF:60E1.000C: item fetching failed at offset 197/198
Sep 27 05:12:59 steamdeck.lan kernel: lenovo 0005:17EF:60E1.000C: hid_parse failed
Sep 27 05:12:59 steamdeck.lan kernel: lenovo: probe of 0005:17EF:60E1.000C failed with error -22
Sep 27 05:13:15 steamdeck.lan kernel: wlo1: deauthenticating from cc:f4:11:7e:13:fd by local choice (Reason: 3=DEAUTH_LEAVING)
Sep 27 05:13:19 localhost.localdomain kernel: [drm] Failed to add display topology, DTM TA is not initialized.
Sep 27 05:13:19 localhost.localdomain kernel: kauditd_printk_skb: 64 callbacks suppressed
Comment 7 ted chang 2023-09-27 12:18:41 UTC
The bios is upgraded to A116.

I have the steam os 3.5 beta in the other partition
Comment 8 ted chang 2023-09-27 12:23:43 UTC
# dmidecode 3.5
Getting SMBIOS data from sysfs.
SMBIOS 3.3.0 present.
Table at 0x796FA000.

Handle 0x0000, DMI type 0, 26 bytes
BIOS Information
        Vendor: Valve
        Version: F7A0116
        Release Date: 05/12/2023
        Address: 0xE0000
        Runtime Size: 128 kB
        ROM Size: 16 MB
        Characteristics:
                PCI is supported
                BIOS is upgradeable
                BIOS shadowing is allowed
                Boot from CD is supported
                Selectable boot is supported
                EDD is supported
                Japanese floppy for NEC 9800 1.2 MB is supported (int 13h)
                Japanese floppy for Toshiba 1.2 MB is supported (int 13h)
                5.25"/360 kB floppy services are supported (int 13h)
                5.25"/1.2 MB floppy services are supported (int 13h)
                3.5"/720 kB floppy services are supported (int 13h)
                3.5"/2.88 MB floppy services are supported (int 13h)
                8042 keyboard services are supported (int 9h)
                CGA/mono video services are supported (int 10h)
                ACPI is supported
                USB legacy is supported
                BIOS boot specification is supported
                Targeted content distribution is supported
                UEFI is supported
        BIOS Revision: 1.16
        Firmware Revision: 1.14