Re: [PATCH v3 3/5] net: asix: Fix AX88772x resume failures

From: Jon Hunter
Date: Tue Nov 22 2016 - 10:38:31 EST


Hi Allan,

On 18/11/16 15:09, Jon Hunter wrote:
> Hi Allan,
>
> On 14/11/16 09:45, ASIX_Allan [Office] wrote:
>> Hi Jon,
>>
>> Please help to double check if the USB host controller of your Terga
>> platform had been powered OFF while running the ax88772_suspend() routine or
>> not?
>
> Sorry for the delay. Today I set up a local board to reproduce this on
> and was able to recreate the same problem. The Tegra xhci driver does
> not power off during suspend and simply calls xhci_suspend(). I also
> checked vbus to see if it was turning off but it is not. Furthermore I
> don't see a new USB device detected after the error and so I don't see
> any evidence that it ever disconnects.

In an attempt to isolate if this is a Tegra issue or not, I recompiled
v4.9-rc6 for x86 and I was able to reproduce the problem on my desktop ...

[ 256.030060] PM: Syncing filesystems ... done.
[ 256.113925] PM: Preparing system for sleep (mem)
[ 256.114119] Freezing user space processes ... (elapsed 0.002 seconds) done.
[ 256.116701] Freezing remaining freezable tasks ... (elapsed 0.001 seconds) done.
[ 256.118041] PM: Suspending system (mem)
[ 256.118058] Suspending console(s) (use no_console_suspend to debug)
[ 256.118324] asix 1-1.2:1.0 eth2: Failed to read reg index 0x0000: -19
[ 256.118327] asix 1-1.2:1.0 eth2: Error reading Medium Status register: ffffffed
[ 256.118329] asix 1-1.2:1.0 eth2: Failed to write reg index 0x0000: -19
[ 256.118332] asix 1-1.2:1.0 eth2: Failed to write Medium Mode mode to 0xfeed: ffffffed
[ 256.118374] sd 0:0:0:0: [sda] Synchronizing SCSI cache
[ 256.118471] sd 0:0:0:0: [sda] Stopping disk
[ 256.152992] hpet1: lost 1 rtc interrupts
[ 256.153893] serial 00:06: disabled
[ 256.153899] serial 00:06: System wakeup disabled by ACPI
[ 256.154068] e1000e: EEE TX LPI TIMER: 00000011
[ 256.628281] PM: suspend of devices complete after 509.782 msecs
[ 256.628620] PM: late suspend of devices complete after 0.336 msecs
[ 256.629366] ehci-pci 0000:00:1d.0: System wakeup enabled by ACPI
[ 256.629595] tg3 0000:03:00.0: System wakeup enabled by ACPI
[ 256.629601] ehci-pci 0000:00:1a.0: System wakeup enabled by ACPI
[ 256.629652] e1000e 0000:00:19.0: System wakeup enabled by ACPI
[ 256.629812] xhci_hcd 0000:00:14.0: System wakeup enabled by ACPI
[ 256.648347] PM: noirq suspend of devices complete after 19.713 msecs
[ 256.648685] ACPI: Preparing to enter system sleep state S3
[ 256.668275] PM: Saving platform NVS memory
[ 256.668283] Disabling non-boot CPUs ...

To reproduce this, I did the following:

1. Connect the asix device and noted the net interface (ie. eth2)
2. Disabled the interface (ie. sudo ifconfig eth2 down)
3. Ran a suspend-resume cycle using rtcwake (eg. sudo rtcwake -d rtc0 -m mem -s 5)

Cheers
Jon

--
nvpublic