Re: [PATCH v3] usb: warm-reset ports on hub resume, if requested

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Am 25.01.19 um 16:14 schrieb Mathias Nyman:
> On 18.01.2019 13:28, Jan-Marek Glogowski wrote:
>> Just adding some CC of commit signers from get_maintainer.pl
>>
>> Am 16.01.19 um 18:07 schrieb Jan-Marek Glogowski:
>>> On plug-in of my USB-C device, its USB_SS_PORT_LS_SS_INACTIVE
>>> link state bit is set. Greping all the kernel for this bit shows
>>> that the port status requests a warm-reset this way.
>>>
>>> This just happens, if its the only device on that hub and the
>>> hub resumes, so we don't call port_event, which would otherwise
>>> warm-reset ports. The device works ok without this patch, if
>>> there is already any other device connected to the hub.
>>>
> 
> I've heard about issues with bad port redrivers/retimers causing similar issues
> at resume.
> 
> One reason why port_event() isn't called is that hub thread failed to report
> any activity for those ports.
> 
> At bus resume we start polling the roothub, which calls
> xhci_hub_status_data(). This function will check if there are any interesting
> changes going on, and mark these ports.
> If no activity then it asks usb core to stop roothub polling.
> 
> xhci_hub_status_data() does not check for USB_PORT_LS_SS_INACTIVE, or compliance mode,
> or USB3 polling state, which all would need more attention.
> 
> Could make sense to add those.
> Does the below code help your situation?
> 
> diff --git a/drivers/usb/host/xhci-hub.c b/drivers/usb/host/xhci-hub.c
> index e2eece6..70f9b26 100644
> --- a/drivers/usb/host/xhci-hub.c
> +++ b/drivers/usb/host/xhci-hub.c
> @@ -1458,7 +1458,7 @@ int xhci_hub_status_data(struct usb_hcd *hcd, char *buf)
>         struct xhci_hcd *xhci = hcd_to_xhci(hcd);
>         int max_ports;
>         struct xhci_bus_state *bus_state;
> -       bool reset_change = false;
> +       bool poll_roothub = false;
>         struct xhci_hub *rhub;
>         struct xhci_port **ports;
>  
> @@ -1491,16 +1491,23 @@ int xhci_hub_status_data(struct usb_hcd *hcd, char *buf)
>                 trace_xhci_hub_status_data(i, temp);
>  
>                 if ((temp & mask) != 0 ||
> -                       (bus_state->port_c_suspend & 1 << i) ||
> -                       (bus_state->resume_done[i] && time_after_eq(
> +                   (bus_state->port_c_suspend & 1 << i) ||
> +                   (temp & PORT_PLS_MASK) == XDEV_COMP_MODE ||
> +                   (temp & PORT_PLS_MASK) == XDEV_INACTIVE ||
> +                   (bus_state->resume_done[i] && time_after_eq(
>                             jiffies, bus_state->resume_done[i]))) {
>                         buf[(i + 1) / 8] |= 1 << (i + 1) % 8;
>                         status = 1;
>                 }
> -               if ((temp & PORT_RC))
> -                       reset_change = true;
> +               /*
> +                * don't stop roothub polling if port is in polling state as it
> +                * can end up in compliance mode without issuing any event
> +                */
> +               if ((temp & PORT_RC) ||
> +                   (temp & PORT_PLS_MASK) == XDEV_POLLING)
> +                       poll_roothub = true;
>         }
> -       if (!status && !reset_change) {
> +       if (!status && !poll_roothub) {
>                 xhci_dbg(xhci, "%s: stopping port polling.\n", __func__);
>                 clear_bit(HCD_FLAG_POLL_RH, &hcd->flags);
>         }
> 

No changes for me with this patch. This is still from 5.0rc2.

>>>> Test-Script (./r)
#!/bin/sh

set -e

LSMOD="$(lsmod)"

rm_mod()
{
	if echo "$LSMOD" | grep -q "$1"; then
		sudo rmmod "$1"
	fi
}

rm_mod uas
rm_mod usb_storage
rm_mod xhci_pci
rm_mod xhci_hcd
rm_mod usbcore

if [ "$#" -eq 1 ]; then
	sudo dmesg -C
	sudo insmod core/usbcore.ko dyndbg=+mfp
	sudo insmod xhci-hcd.ko dyndbg=+mfp
	sudo insmod xhci-pci.ko dyndbg=+mfp
fi
<<<<

Run "./r 1"
[ 2311.984239] ACPI: bus type USB registered
[ 2311.984255] usbcore: registered new interface driver usbfs
[ 2311.984260] usbcore: registered new interface driver hub
[ 2311.984277] usbcore: registered new device driver usb
[ 2312.006999] xhci_hcd 0000:00:14.0: xHCI Host Controller
[ 2312.007003] xhci_hcd 0000:00:14.0: new USB bus registered, assigned bus number 1
[ 2312.007016] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: // Halt the HC
[ 2312.007020] xhci_hcd:xhci_gen_setup: xhci_hcd 0000:00:14.0: Resetting HCD
[ 2312.007021] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: // Reset the HC
[ 2312.008020] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: Wait for controller to be ready for doorbell rings
[ 2312.008021] xhci_hcd:xhci_gen_setup: xhci_hcd 0000:00:14.0: Reset complete
[ 2312.008023] xhci_hcd:xhci_gen_setup: xhci_hcd 0000:00:14.0: Enabling 64-bit DMA addresses.
[ 2312.008023] xhci_hcd:xhci_gen_setup: xhci_hcd 0000:00:14.0: Calling HCD init
[ 2312.008024] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: xhci_init
[ 2312.008026] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: xHCI doesn't need link TRB QUIRK
[ 2312.008028] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: Supported page size register = 0x1
[ 2312.008029] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: Supported page size of 4K
[ 2312.008030] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: HCD page size set to 4K
[ 2312.008032] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: // xHC can handle at most 64 device slots.
[ 2312.008033] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: // Setting Max device slots reg = 0x40.
[ 2312.008036] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: // Device context base array address = 0x44f2c9000 (DMA), 000000000d5687b1 (virt)
[ 2312.008038] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: Allocated command ring at 0000000004285dce
[ 2312.008039] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: First segment DMA is 0x44ebd4000
[ 2312.008041] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: // Setting command ring address to 0x000000044ebd4001
[ 2312.008044] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: // Doorbell array is located at offset 0x3000 from cap regs base addr
[ 2312.008045] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: // Allocating event ring
[ 2312.008047] xhci_hcd:xhci_check_trb_in_td_math: xhci_hcd 0000:00:14.0: TRB math tests passed.
[ 2312.008049] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: // Write ERST size = 1 to ir_set 0 (some bits preserved)
[ 2312.008050] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: // Set ERST entries to point to event ring.
[ 2312.008051] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: // Set ERST base address for ir_set 0 = 0x45324d000
[ 2312.008055] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: // Write event ring dequeue pointer, preserving EHB bit
[ 2312.008056] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: Wrote ERST address to ir_set 0.
[ 2312.008057] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: Allocating 34 scratchpad buffers
[ 2312.008084] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: Ext Cap 0000000059b07030, port offset = 1, count = 16, revision = 0x2
[ 2312.008086] xhci_hcd:xhci_add_in_port: xhci_hcd 0000:00:14.0: PSIV:1 PSIE:2 PLT:0 PFD:0 LP:0 PSIM:12
[ 2312.008088] xhci_hcd:xhci_add_in_port: xhci_hcd 0000:00:14.0: PSIV:2 PSIE:1 PLT:0 PFD:0 LP:0 PSIM:1500
[ 2312.008090] xhci_hcd:xhci_add_in_port: xhci_hcd 0000:00:14.0: PSIV:3 PSIE:2 PLT:0 PFD:0 LP:0 PSIM:480
[ 2312.008091] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: xHCI 1.0: support USB2 hardware lpm
[ 2312.008094] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: Ext Cap 0000000061bddd60, port offset = 17, count = 6, revision = 0x3
[ 2312.008096] xhci_hcd:xhci_add_in_port: xhci_hcd 0000:00:14.0: PSIV:4 PSIE:3 PLT:0 PFD:1 LP:0 PSIM:5
[ 2312.008098] xhci_hcd:xhci_add_in_port: xhci_hcd 0000:00:14.0: PSIV:5 PSIE:3 PLT:0 PFD:1 LP:0 PSIM:10
[ 2312.008100] xhci_hcd:xhci_add_in_port: xhci_hcd 0000:00:14.0: PSIV:6 PSIE:2 PLT:0 PFD:1 LP:0 PSIM:1248
[ 2312.008102] xhci_hcd:xhci_add_in_port: xhci_hcd 0000:00:14.0: PSIV:7 PSIE:2 PLT:0 PFD:1 LP:0 PSIM:2496
[ 2312.008103] xhci_hcd:xhci_add_in_port: xhci_hcd 0000:00:14.0: PSIV:8 PSIE:2 PLT:0 PFD:1 LP:0 PSIM:4992
[ 2312.008105] xhci_hcd:xhci_add_in_port: xhci_hcd 0000:00:14.0: PSIV:9 PSIE:2 PLT:0 PFD:1 LP:0 PSIM:1457
[ 2312.008107] xhci_hcd:xhci_add_in_port: xhci_hcd 0000:00:14.0: PSIV:10 PSIE:2 PLT:0 PFD:1 LP:0 PSIM:2915
[ 2312.008109] xhci_hcd:xhci_add_in_port: xhci_hcd 0000:00:14.0: PSIV:11 PSIE:2 PLT:0 PFD:1 LP:0 PSIM:5830
[ 2312.008110] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: Found 16 USB 2.0 ports and 6 USB 3.0 ports.
[ 2312.008112] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: Finished xhci_init
[ 2312.008113] xhci_hcd:xhci_gen_setup: xhci_hcd 0000:00:14.0: Called HCD init
[ 2312.008114] xhci_hcd 0000:00:14.0: hcc params 0x20007fc1 hci version 0x110 quirks 0x0000000000009810
[ 2312.008115] xhci_pci:xhci_pci_setup: xhci_hcd 0000:00:14.0: Got SBRN 49
[ 2312.008118] xhci_hcd 0000:00:14.0: cache line size of 64 is not supported
[ 2312.008119] xhci_pci:xhci_pci_reinit: xhci_hcd 0000:00:14.0: Finished xhci_pci_reinit
[ 2312.008120] usbcore:usb_add_hcd: xhci_hcd 0000:00:14.0: supports USB remote wakeup
[ 2312.008121] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: xhci_run
[ 2312.008123] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: Failed to enable MSI-X
[ 2312.008165] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: ERST deq = 64'h453d7b000
[ 2312.008166] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: // Set the interrupt modulation register
[ 2312.008169] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: // Enable interrupts, cmd = 0x4.
[ 2312.008171] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: // Enabling event ring interrupter 00000000e794492e by writing 0x2 to irq_pending
[ 2312.008172] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: Finished xhci_run for USB2 roothub
[ 2312.008267] usbcore:usb_get_langid: usb usb1: default language 0x0409
[ 2312.008273] usbcore:usb_new_device: usb usb1: udev 1, busnum 1, minor = 0
[ 2312.008275] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 5.00
[ 2312.008276] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 2312.008277] usb usb1: Product: xHCI Host Controller
[ 2312.008277] usb usb1: Manufacturer: Linux 5.0.0-rc2+ xhci-hcd
[ 2312.008278] usb usb1: SerialNumber: 0000:00:14.0
[ 2312.008336] usbcore:usb_probe_device: usb usb1: usb_probe_device
[ 2312.008337] usbcore:usb_choose_configuration: usb usb1: configuration #1 chosen from 1 choice
[ 2312.008339] xhci_hcd:xhci_check_args: xHCI xhci_add_endpoint called for root hub
[ 2312.008340] xhci_hcd:xhci_check_args: xHCI xhci_check_bandwidth called for root hub
[ 2312.008345] usbcore:usb_set_configuration: usb usb1: adding 1-0:1.0 (config #1, interface 0)
[ 2312.008359] usbcore:usb_probe_interface: hub 1-0:1.0: usb_probe_interface
[ 2312.008360] usbcore:usb_probe_interface: hub 1-0:1.0: usb_probe_interface - got id
[ 2312.008361] hub 1-0:1.0: USB hub found
[ 2312.008377] hub 1-0:1.0: 16 ports detected
[ 2312.008378] usbcore:hub_configure: hub 1-0:1.0: standalone hub
[ 2312.008379] usbcore:hub_configure: hub 1-0:1.0: no power switching (usb 1.0)
[ 2312.008380] usbcore:hub_configure: hub 1-0:1.0: individual port over-current protection
[ 2312.008381] usbcore:hub_configure: hub 1-0:1.0: Single TT
[ 2312.008382] usbcore:hub_configure: hub 1-0:1.0: TT requires at most 8 FS bit times (666 ns)
[ 2312.008383] usbcore:hub_configure: hub 1-0:1.0: power on to power good time: 20ms
[ 2312.008387] usbcore:hub_configure: hub 1-0:1.0: local power source is good
[ 2312.014022] usbcore:hub_power_on: hub 1-0:1.0: trying to enable port power on non-switchable hub
[ 2312.014038] xhci_hcd:xhci_set_port_power: xhci_hcd 0000:00:14.0: set port power, actual port 0 status  = 0x2a0
[ 2312.014045] xhci_hcd:xhci_set_port_power: xhci_hcd 0000:00:14.0: set port power, actual port 1 status  = 0x2a0
[ 2312.014050] xhci_hcd:xhci_set_port_power: xhci_hcd 0000:00:14.0: set port power, actual port 2 status  = 0x2a0
[ 2312.014056] xhci_hcd:xhci_set_port_power: xhci_hcd 0000:00:14.0: set port power, actual port 3 status  = 0x2a0
[ 2312.014061] xhci_hcd:xhci_set_port_power: xhci_hcd 0000:00:14.0: set port power, actual port 4 status  = 0x2a0
[ 2312.014066] xhci_hcd:xhci_set_port_power: xhci_hcd 0000:00:14.0: set port power, actual port 5 status  = 0x2a0
[ 2312.014071] xhci_hcd:xhci_set_port_power: xhci_hcd 0000:00:14.0: set port power, actual port 6 status  = 0x2a0
[ 2312.014076] xhci_hcd:xhci_set_port_power: xhci_hcd 0000:00:14.0: set port power, actual port 7 status  = 0x2a0
[ 2312.014081] xhci_hcd:xhci_set_port_power: xhci_hcd 0000:00:14.0: set port power, actual port 8 status  = 0x2a0
[ 2312.014086] xhci_hcd:xhci_set_port_power: xhci_hcd 0000:00:14.0: set port power, actual port 9 status  = 0x2a0
[ 2312.014092] xhci_hcd:xhci_set_port_power: xhci_hcd 0000:00:14.0: set port power, actual port 10 status  = 0x2a0
[ 2312.014097] xhci_hcd:xhci_set_port_power: xhci_hcd 0000:00:14.0: set port power, actual port 11 status  = 0x2a0
[ 2312.014102] xhci_hcd:xhci_set_port_power: xhci_hcd 0000:00:14.0: set port power, actual port 12 status  = 0x2a0
[ 2312.014107] xhci_hcd:xhci_set_port_power: xhci_hcd 0000:00:14.0: set port power, actual port 13 status  = 0x2a0
[ 2312.014112] xhci_hcd:xhci_set_port_power: xhci_hcd 0000:00:14.0: set port power, actual port 14 status  = 0x2a0
[ 2312.014117] xhci_hcd:xhci_set_port_power: xhci_hcd 0000:00:14.0: set port power, actual port 15 status  = 0x2a0
[ 2312.014203] xhci_hcd 0000:00:14.0: xHCI Host Controller
[ 2312.014206] xhci_hcd 0000:00:14.0: new USB bus registered, assigned bus number 2
[ 2312.014208] xhci_hcd 0000:00:14.0: Host supports USB 3.1 Enhanced SuperSpeed
[ 2312.014209] usbcore:usb_add_hcd: xhci_hcd 0000:00:14.0: supports USB remote wakeup
[ 2312.014214] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: // Turn on HC, cmd = 0x5.
[ 2312.014216] xhci_hcd:xhci_dbg_trace: xhci_hcd 0000:00:14.0: Finished xhci_run for USB3 roothub
[ 2312.014231] usbcore:usb_parse_endpoint: usb usb2: skipped 1 descriptor after endpoint
[ 2312.014234] usbcore:usb_get_langid: usb usb2: default language 0x0409
[ 2312.014240] usbcore:usb_new_device: usb usb2: udev 1, busnum 2, minor = 128
[ 2312.014242] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003, bcdDevice= 5.00
[ 2312.014243] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[ 2312.014244] usb usb2: Product: xHCI Host Controller
[ 2312.014245] usb usb2: Manufacturer: Linux 5.0.0-rc2+ xhci-hcd
[ 2312.014246] usb usb2: SerialNumber: 0000:00:14.0
[ 2312.014298] usbcore:usb_probe_device: usb usb2: usb_probe_device
[ 2312.014300] usbcore:usb_choose_configuration: usb usb2: configuration #1 chosen from 1 choice
[ 2312.014302] xhci_hcd:xhci_check_args: xHCI xhci_add_endpoint called for root hub
[ 2312.014303] xhci_hcd:xhci_check_args: xHCI xhci_check_bandwidth called for root hub
[ 2312.014309] usbcore:usb_set_configuration: usb usb2: adding 2-0:1.0 (config #1, interface 0)
[ 2312.014323] usbcore:usb_probe_interface: hub 2-0:1.0: usb_probe_interface
[ 2312.014324] usbcore:usb_probe_interface: hub 2-0:1.0: usb_probe_interface - got id
[ 2312.014325] hub 2-0:1.0: USB hub found
[ 2312.014337] hub 2-0:1.0: 6 ports detected
[ 2312.014338] usbcore:hub_configure: hub 2-0:1.0: standalone hub
[ 2312.014339] usbcore:hub_configure: hub 2-0:1.0: no power switching (usb 1.0)
[ 2312.014340] usbcore:hub_configure: hub 2-0:1.0: individual port over-current protection
[ 2312.014341] usbcore:hub_configure: hub 2-0:1.0: TT requires at most 8 FS bit times (666 ns)
[ 2312.014342] usbcore:hub_configure: hub 2-0:1.0: power on to power good time: 20ms
[ 2312.014346] usbcore:hub_configure: hub 2-0:1.0: local power source is good
[ 2312.014433] usbcore:link_peers_report: usb usb2-port1: peered to usb1-port1
[ 2312.014515] usbcore:link_peers_report: usb usb2-port2: peered to usb1-port6
[ 2312.014765] usbcore:link_peers_report: usb usb2-port3: peered to usb1-port3
[ 2312.015100] usbcore:link_peers: usb: failed to peer usb2-port4 and usb1-port1 by location (usb2-port4:none) (usb1-port1:usb2-port1)
[ 2312.015102] usbcore:link_peers_report: usb usb2-port4: failed to peer to usb1-port1 (-16)
[ 2312.015102] usb: port power management may be unreliable
[ 2312.015258] usbcore:link_peers_report: usb usb2-port5: peered to usb1-port5
[ 2312.015403] usbcore:link_peers: usb: failed to peer usb2-port6 and usb1-port3 by location (usb2-port6:none) (usb1-port3:usb2-port3)
[ 2312.015404] usbcore:link_peers_report: usb usb2-port6: failed to peer to usb1-port3 (-16)
[ 2312.015408] usbcore:hub_power_on: hub 2-0:1.0: trying to enable port power on non-switchable hub
[ 2312.015420] xhci_hcd:xhci_set_port_power: xhci_hcd 0000:00:14.0: set port power, actual port 0 status  = 0x802a0
[ 2312.015431] xhci_hcd:xhci_set_port_power: xhci_hcd 0000:00:14.0: set port power, actual port 1 status  = 0x802a0
[ 2312.015437] xhci_hcd:xhci_set_port_power: xhci_hcd 0000:00:14.0: set port power, actual port 2 status  = 0x2a0
[ 2312.015443] xhci_hcd:xhci_set_port_power: xhci_hcd 0000:00:14.0: set port power, actual port 3 status  = 0x802a0
[ 2312.015449] xhci_hcd:xhci_set_port_power: xhci_hcd 0000:00:14.0: set port power, actual port 4 status  = 0x802a0
[ 2312.015455] xhci_hcd:xhci_set_port_power: xhci_hcd 0000:00:14.0: set port power, actual port 5 status  = 0x802a0
[ 2312.121249] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 0 status  = 0x802a0
[ 2312.121254] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x2002a0
[ 2312.121270] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 0 status  = 0x2a0
[ 2312.121276] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x100
[ 2312.121352] xhci_hcd:xhci_clear_port_change_bit: xhci_hcd 0000:00:14.0: clear port warm(BH) reset change, actual port 0 status  = 0x2a0
[ 2312.121372] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 1 status  = 0x2a0
[ 2312.121377] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x100
[ 2312.121441] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 1 status  = 0x802a0
[ 2312.121446] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x2002a0
[ 2312.121463] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 2 status  = 0x2a0
[ 2312.121468] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x100
[ 2312.121524] xhci_hcd:xhci_clear_port_change_bit: xhci_hcd 0000:00:14.0: clear port warm(BH) reset change, actual port 1 status  = 0x2a0
[ 2312.121546] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 3 status  = 0x2a0
[ 2312.121551] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x100
[ 2312.121611] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 2 status  = 0x2a0
[ 2312.121615] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x2a0
[ 2312.121632] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 4 status  = 0x2a0
[ 2312.121637] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x100
[ 2312.121692] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 3 status  = 0x802a0
[ 2312.121697] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x2002a0
[ 2312.121719] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 5 status  = 0x2a0
[ 2312.121724] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x100
[ 2312.121785] xhci_hcd:xhci_clear_port_change_bit: xhci_hcd 0000:00:14.0: clear port warm(BH) reset change, actual port 3 status  = 0x2a0
[ 2312.121804] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 6 status  = 0x2a0
[ 2312.121809] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x100
[ 2312.121862] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 4 status  = 0x802a0
[ 2312.121867] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x2002a0
[ 2312.121889] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 7 status  = 0x2a0
[ 2312.121894] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x100
[ 2312.121940] xhci_hcd:xhci_clear_port_change_bit: xhci_hcd 0000:00:14.0: clear port warm(BH) reset change, actual port 4 status  = 0x2a0
[ 2312.121972] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 8 status  = 0x2a0
[ 2312.121977] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x100
[ 2312.122011] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 5 status  = 0x802a0
[ 2312.122016] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x2002a0
[ 2312.122064] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 9 status  = 0x2a0
[ 2312.122069] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x100
[ 2312.122090] xhci_hcd:xhci_clear_port_change_bit: xhci_hcd 0000:00:14.0: clear port warm(BH) reset change, actual port 5 status  = 0x2a0
[ 2312.122145] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 10 status  = 0x2a0
[ 2312.122150] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x100
[ 2312.122230] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 11 status  = 0x2a0
[ 2312.122234] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x100
[ 2312.122311] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 12 status  = 0x2a0
[ 2312.122317] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x100
[ 2312.122351] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 13 status  = 0x2a0
[ 2312.122355] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x100
[ 2312.122380] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 14 status  = 0x2a0
[ 2312.122384] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x100
[ 2312.122407] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 15 status  = 0x2a0
[ 2312.122411] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x100
[ 2312.122438] usbcore:hub_event: hub 1-0:1.0: state 7 ports 16 chg 0000 evt 0000
[ 2312.122450] usbcore:hub_suspend: hub 1-0:1.0: hub_suspend
[ 2312.122465] usbcore:hcd_bus_suspend: usb usb1: bus auto-suspend, wakeup 1
[ 2312.122504] xhci_hcd:xhci_hub_status_data: xhci_hcd 0000:00:14.0: xhci_hub_status_data: stopping port polling.
[ 2312.225254] usbcore:hub_event: hub 2-0:1.0: state 7 ports 6 chg 0000 evt 0000
[ 2312.225284] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: set port remote wake mask, actual port 0 status  = 0xe0002a0
[ 2312.225319] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: set port remote wake mask, actual port 1 status  = 0xe0002a0
[ 2312.225339] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: set port remote wake mask, actual port 2 status  = 0xe0002a0
[ 2312.225360] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: set port remote wake mask, actual port 3 status  = 0xe0002a0
[ 2312.225378] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: set port remote wake mask, actual port 4 status  = 0xe0002a0
[ 2312.225396] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: set port remote wake mask, actual port 5 status  = 0xe0002a0
[ 2312.225408] usbcore:hub_suspend: hub 2-0:1.0: hub_suspend
[ 2312.225423] usbcore:hcd_bus_suspend: usb usb2: bus auto-suspend, wakeup 1
[ 2312.225447] xhci_hcd:xhci_hub_status_data: xhci_hcd 0000:00:14.0: xhci_hub_status_data: stopping port polling.

USB device is plugged here

[ 2316.733514] xhci_hcd:handle_port_status: xhci_hcd 0000:00:14.0: Port Status Change Event for port 19
[ 2316.733525] xhci_hcd:handle_port_status: xhci_hcd 0000:00:14.0: resume root hub
[ 2316.733540] xhci_hcd:handle_port_status: xhci_hcd 0000:00:14.0: handle_port_status: starting port polling.
[ 2316.733604] usbcore:usb_remote_wakeup: usb usb2: usb wakeup-resume
[ 2316.733613] usbcore:hcd_bus_resume: usb usb2: usb auto-resume
[ 2316.733634] usbcore:hub_resume: hub 2-0:1.0: hub_resume
[ 2316.733651] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 0 status  = 0x2a0
[ 2316.733656] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x2a0
[ 2316.733686] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 1 status  = 0x2a0
[ 2316.733690] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x2a0
[ 2316.733705] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 2 status  = 0x4002c0
[ 2316.733710] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x4002c0
[ 2316.733728] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 3 status  = 0x2a0
[ 2316.733732] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x2a0
[ 2316.733747] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 4 status  = 0x2a0
[ 2316.733751] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x2a0
[ 2316.733768] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 5 status  = 0x2a0
[ 2316.733772] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x2a0
[ 2316.733796] usbcore:hub_event: hub 2-0:1.0: state 7 ports 6 chg 0000 evt 0000
[ 2316.733812] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: set port remote wake mask, actual port 0 status  = 0xe0002a0
[ 2316.733835] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: set port remote wake mask, actual port 1 status  = 0xe0002a0
[ 2316.733850] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: set port remote wake mask, actual port 2 status  = 0xe4002c0
[ 2316.733867] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: set port remote wake mask, actual port 3 status  = 0xe0002a0
[ 2316.733883] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: set port remote wake mask, actual port 4 status  = 0xe0002a0
[ 2316.733899] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: set port remote wake mask, actual port 5 status  = 0xe0002a0
[ 2316.733911] usbcore:hub_suspend: hub 2-0:1.0: hub_suspend
[ 2316.733926] usbcore:hcd_bus_suspend: usb usb2: bus auto-suspend, wakeup 1
[ 2316.733945] usbcore:hcd_bus_suspend: usb usb2: suspend raced with wakeup event
[ 2316.733950] usbcore:hcd_bus_resume: usb usb2: usb auto-resume
[ 2316.749178] usbcore:hub_resume: hub 2-0:1.0: hub_resume
[ 2316.749193] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 0 status  = 0x2a0
[ 2316.749197] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x2a0
[ 2316.749227] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 1 status  = 0x2a0
[ 2316.749231] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x2a0
[ 2316.749247] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 2 status  = 0x4002c0
[ 2316.749251] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x4002c0
[ 2316.749266] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 3 status  = 0x2a0
[ 2316.749270] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x2a0
[ 2316.749283] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 4 status  = 0x2a0
[ 2316.749288] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x2a0
[ 2316.749303] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: get port status, actual port 5 status  = 0x2a0
[ 2316.749307] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: Get port status returned 0x2a0
[ 2316.749328] usbcore:hub_event: hub 2-0:1.0: state 7 ports 6 chg 0000 evt 0000
[ 2316.749345] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: set port remote wake mask, actual port 0 status  = 0xe0002a0
[ 2316.749361] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: set port remote wake mask, actual port 1 status  = 0xe0002a0
[ 2316.749376] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: set port remote wake mask, actual port 2 status  = 0xe4002c0
[ 2316.749391] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: set port remote wake mask, actual port 3 status  = 0xe0002a0
[ 2316.749407] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: set port remote wake mask, actual port 4 status  = 0xe0002a0
[ 2316.749422] xhci_hcd:xhci_hub_control: xhci_hcd 0000:00:14.0: set port remote wake mask, actual port 5 status  = 0xe0002a0
....



[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux