Renesas/NEC 720202 ExpressCard USB 3.0 - HDD unmounted after S3 resume

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

 



Hi,
I have a problem with my new ExpressCard USB 3.0 Renesas 720202:

- PROBLEM DESCRIPTION: an external USB 3.0 drive is connected to the
Renesas ExpressCard USB 3.0 controller with a single ext4 primary
partition on it, mounted, with only a text file opened with geany; when
I put the system on S3 suspend (suspend to ram), on resume the drive is
unmounted and the /dev node is changed from /dev/sdc to /dev/sdd; if no
file is opened at suspend, the /dev node is not changed but the drive
is unmounted anyway. No problems on Windows. No problem either with the
system internal USB ports. I've heard of a quirk for Renesas 720202 but
I have not understood what was the reason for the quirk and what has
been resolved... Any hint for my problem? Thanks.

alessio


- MY SYSTEM: tried with two laptops with similar behavior (data
collected below refer to the Sony):
   Sony Vaio VPCEB4C5E (Intel i3, debian stretch)
      $ uname -r
      4.9.0-1-amd64
   Lenovo X220 (Intel i5, debian stretch)
      $ uname -r
      4.8.0-1-amd64)


- THE RENESAS/NEC 720202 USB 3.0 EXPRESSCARD CONTROLLER
  (tried two identical models):

$ lspci -vmnnd 1912:
Device:    05:00.0
Class:    USB controller [0c03]
Vendor:    Renesas Technology Corp. [1912]
Device:    uPD720202 USB 3.0 Host Controller [0015]
PhySlot:    1
Rev:    02
ProgIf:    30

$ lspci
00:00.0 Host bridge: Intel Corporation Core Processor DRAM Controller (rev 02)
00:01.0 PCI bridge: Intel Corporation Core Processor PCI Express x16
Root Port (rev 02)
00:16.0 Communication controller: Intel Corporation 5 Series/3400
Series Chipset HECI Controller (rev 06)
00:1a.0 USB controller: Intel Corporation 5 Series/3400 Series Chipset
USB2 Enhanced Host Controller (rev 05)
00:1b.0 Audio device: Intel Corporation 5 Series/3400 Series Chipset
High Definition Audio (rev 05)
00:1c.0 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI
Express Root Port 1 (rev 05)
00:1c.1 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI
Express Root Port 2 (rev 05)
00:1c.2 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI
Express Root Port 3 (rev 05)
00:1c.5 PCI bridge: Intel Corporation 5 Series/3400 Series Chipset PCI
Express Root Port 6 (rev 05)
00:1d.0 USB controller: Intel Corporation 5 Series/3400 Series Chipset
USB2 Enhanced Host Controller (rev 05)
00:1e.0 PCI bridge: Intel Corporation 82801 Mobile PCI Bridge (rev a5)
00:1f.0 ISA bridge: Intel Corporation HM55 Chipset LPC Interface
Controller (rev 05)
00:1f.2 SATA controller: Intel Corporation 5 Series/3400 Series
Chipset 4 port SATA AHCI Controller (rev 05)
00:1f.3 SMBus: Intel Corporation 5 Series/3400 Series Chipset SMBus
Controller (rev 05)
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc.
[AMD/ATI] Madison [Mobility Radeon HD 5650/5750 / 6530M/6550M]
01:00.1 Audio device: Advanced Micro Devices, Inc. [AMD/ATI] Redwood
HDMI Audio [Radeon HD 5000 Series]
02:00.0 Network controller: Qualcomm Atheros AR9285 Wireless Network
Adapter (PCI-Express) (rev 01)
03:00.0 SD Host controller: Ricoh Co Ltd MMC/SD Host Controller
03:00.1 System peripheral: Ricoh Co Ltd R5U2xx (R5U230 / R5U231 /
R5U241) [Memory Stick Host Controller]
03:00.4 SD Host controller: Ricoh Co Ltd MMC/SD Host Controller
04:00.0 Ethernet controller: Marvell Technology Group Ltd. Yukon
Optima 88E8059 [PCIe Gigabit Ethernet Controller with AVB] (rev 11)
05:00.0 USB controller: Renesas Technology Corp. uPD720202 USB 3.0
Host Controller (rev 02)
3f:00.0 Host bridge: Intel Corporation Core Processor QuickPath
Architecture Generic Non-core Registers (rev 02)
3f:00.1 Host bridge: Intel Corporation Core Processor QuickPath
Architecture System Address Decoder (rev 02)
3f:02.0 Host bridge: Intel Corporation Core Processor QPI Link 0 (rev 02)
3f:02.1 Host bridge: Intel Corporation 1st Generation Core i3/5/7
Processor QPI Physical 0 (rev 02)
3f:02.2 Host bridge: Intel Corporation 1st Generation Core i3/5/7
Processor Reserved (rev 02)
3f:02.3 Host bridge: Intel Corporation 1st Generation Core i3/5/7
Processor Reserved (rev 02)

$ ls -l /sys/bus/usb/devices/usb*
lrwxrwxrwx 1 root root 0 Feb 23 10:20 /sys/bus/usb/devices/usb1 ->
../../../devices/pci0000:00/0000:00:1c.5/0000:05:00.0/usb1
lrwxrwxrwx 1 root root 0 Feb 23 10:20 /sys/bus/usb/devices/usb2 ->
../../../devices/pci0000:00/0000:00:1c.5/0000:05:00.0/usb2
lrwxrwxrwx 1 root root 0 Feb 22 11:47 /sys/bus/usb/devices/usb3 ->
../../../devices/pci0000:00/0000:00:1a.0/usb3
lrwxrwxrwx 1 root root 0 Feb 22 11:47 /sys/bus/usb/devices/usb4 ->
../../../devices/pci0000:00/0000:00:1d.0/usb4


- HARD DISK DRIVE: tried with two different external USB 3.0 drives but
the info below refer to a 250G Hitachi disk on a 3.0 enclosure (but
similar results with a 2TB Toshiba Canvio Basics):

$lsusb
Bus 004 Device 004: ID 045e:0773 Microsoft Corp.
Bus 004 Device 003: ID 0480:a202 Toshiba America Inc Canvio Basics HDD
Bus 004 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 004 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
--> Bus 002 Device 009: ID 1f75:0621 Innostor Technology Corporation
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Bus 003 Device 003: ID 0c45:6464 Microdia
Bus 003 Device 002: ID 8087:0020 Intel Corp. Integrated Rate Matching Hub
Bus 003 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
  -NOTE: I've marked with --> the HDD connected to the renesas USB 3.0
  expresscard controller (250G Hitachi disk on a 3.0 enclosure)

$lsusb -v
...
Bus 002 Device 009: ID 1f75:0621 Innostor Technology Corporation
Couldn't open device, some information will be missing
Device Descriptor:
  bLength                18
  bDescriptorType         1
  bcdUSB               3.00
  bDeviceClass            0 (Defined at Interface level)
  bDeviceSubClass         0
  bDeviceProtocol         0
  bMaxPacketSize0         9
  idVendor           0x1f75 Innostor Technology Corporation
  idProduct          0x0621
  bcdDevice            0.36
  iManufacturer           4
  iProduct                5
  iSerial                 6
  bNumConfigurations      1
  Configuration Descriptor:
    bLength                 9
    bDescriptorType         2
    wTotalLength           44
    bNumInterfaces          1
    bConfigurationValue     1
    iConfiguration          0
    bmAttributes         0x80
      (Bus Powered)
    MaxPower              200mA
    Interface Descriptor:
      bLength                 9
      bDescriptorType         4
      bInterfaceNumber        0
      bAlternateSetting       0
      bNumEndpoints           2
      bInterfaceClass         8 Mass Storage
      bInterfaceSubClass      6 SCSI
      bInterfaceProtocol     80 Bulk-Only
      iInterface              0
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x81  EP 1 IN
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst              15
      Endpoint Descriptor:
        bLength                 7
        bDescriptorType         5
        bEndpointAddress     0x02  EP 2 OUT
        bmAttributes            2
          Transfer Type            Bulk
          Synch Type               None
          Usage Type               Data
        wMaxPacketSize     0x0400  1x 1024 bytes
        bInterval               0
        bMaxBurst              15
...


- KERNEL LOG AFTER RESUME:

$ dmesg -c
[  835.084085] sky2 0000:04:00.0 enp4s0: disabling interface
[  835.098326] PM: Syncing filesystems ... done.
[  835.291749] PM: Preparing system for sleep (mem)
[  835.292010] Freezing user space processes ... (elapsed 0.001 seconds) done.
[  835.293773] Freezing remaining freezable tasks ... (elapsed 0.001
seconds) done.
[  835.295047] PM: Suspending system (mem)
[  835.295107] Suspending console(s) (use no_console_suspend to debug)
[  835.295463] sd 6:0:0:0: [sdb] Synchronizing SCSI cache
[  835.295609] sd 0:0:0:0: [sda] Synchronizing SCSI cache
[  835.317330] ACPI : EC: event blocked
[  835.388770] sd 0:0:0:0: [sda] Stopping disk
[  836.172975] PM: suspend of devices complete after 877.636 msecs
[  836.173526] PM: late suspend of devices complete after 0.547 msecs
[  836.173860] ACPI : EC: interrupt blocked
[  836.332682] PM: noirq suspend of devices complete after 159.148 msecs
[  836.332987] ACPI: Preparing to enter system sleep state S3
[  836.333494] ACPI : EC: EC stopped
[  836.333495] PM: Saving platform NVS memory
[  836.333843] Disabling non-boot CPUs ...
[  836.334399] Broke affinity for irq 31
[  836.335419] smpboot: CPU 1 is now offline
[  836.336176] Broke affinity for irq 16
[  836.336187] Broke affinity for irq 23
[  836.336363] Broke affinity for irq 26
[  836.336407] Broke affinity for irq 31
[  836.337583] smpboot: CPU 2 is now offline
[  836.338265] Broke affinity for irq 1
[  836.338274] Broke affinity for irq 9
[  836.338278] Broke affinity for irq 12
[  836.338283] Broke affinity for irq 16
[  836.338292] Broke affinity for irq 23
[  836.338481] Broke affinity for irq 26
[  836.338516] Broke affinity for irq 31
[  836.338517] Broke affinity for irq 35
[  836.339530] smpboot: CPU 3 is now offline
[  836.340838] ACPI: Low-level resume complete
[  836.340910] ACPI : EC: EC started
[  836.340911] PM: Restoring platform NVS memory
[  836.341366] Suspended for 7.048 seconds
[  836.341432] Enabling non-boot CPUs ...
[  836.341518] x86: Booting SMP configuration:
[  836.341518] smpboot: Booting Node 0 Processor 1 APIC 0x4
[  836.344015]  cache: parent cpu1 should not be sleeping
[  836.344423] CPU1 is up
[  836.344484] smpboot: Booting Node 0 Processor 2 APIC 0x1
[  836.346866]  cache: parent cpu2 should not be sleeping
[  836.347300] CPU2 is up
[  836.347379] smpboot: Booting Node 0 Processor 3 APIC 0x5
[  836.349752]  cache: parent cpu3 should not be sleeping
[  836.350289] CPU3 is up
[  836.352589] ACPI: Waking up from system sleep state S3
[  836.798524] ACPI : EC: interrupt unblocked
[  836.818675] sdhci-pci 0000:03:00.0: MMC controller base frequency
changed to 50Mhz.
[  836.958841] PM: noirq resume of devices complete after 160.528 msecs
[  836.959181] PM: early resume of devices complete after 0.296 msecs
[  836.959269] ACPI : EC: event unblocked
[  837.102699] ath: phy0: ASPM enabled: 0x42
[  837.102927] usb usb1: root hub lost power or was reset
[  837.102930] usb usb2: root hub lost power or was reset
[  837.106653] sd 0:0:0:0: [sda] Starting disk
[  837.116613] [drm] PCIE GART of 1024M enabled (table at 0x000000000014C000).
[  837.116731] radeon 0000:01:00.0: WB enabled
[  837.116734] radeon 0000:01:00.0: fence driver on ring 0 use gpu
addr 0x0000000040000c00 and cpu addr 0xffff895a8f410c00
[  837.116735] radeon 0000:01:00.0: fence driver on ring 3 use gpu
addr 0x0000000040000c0c and cpu addr 0xffff895a8f410c0c
[  837.117109] radeon 0000:01:00.0: fence driver on ring 5 use gpu
addr 0x000000000005c418 and cpu addr 0xffff9a0101a1c418
[  837.133679] [drm] ring test on 0 succeeded in 1 usecs
[  837.133686] [drm] ring test on 3 succeeded in 3 usecs
[  837.166511] rtc_cmos 00:01: System wakeup disabled by ACPI
[  837.319871] [drm] ring test on 5 succeeded in 1 usecs
[  837.319877] [drm] UVD initialized successfully.
[  837.319929] [drm] ib test on ring 0 succeeded in 0 usecs
[  837.319972] [drm] ib test on ring 3 succeeded in 0 usecs
[  837.420185] ata2: SATA link up 1.5 Gbps (SStatus 113 SControl 300)
[  837.421022] ata6: SATA link down (SStatus 0 SControl 300)
[  837.425604] ata2.00: configured for UDMA/100
[  837.610022] sdhci-pci 0000:03:00.0: Will use DMA mode even though
HW doesn't fully claim to support it.
[  837.610024] sdhci-pci 0000:03:00.4: Will use DMA mode even though
HW doesn't fully claim to support it.
[  837.994211] [drm] ib test on ring 5 succeeded
[  838.554123] ata1: SATA link up 3.0 Gbps (SStatus 123 SControl 300)
[  838.555249] ata1.00: ACPI cmd f5/00:00:00:00:00:00 (SECURITY FREEZE
LOCK) filtered out
[  838.556901] ata1.00: ACPI cmd f5/00:00:00:00:00:00 (SECURITY FREEZE
LOCK) filtered out
[  838.557387] ata1.00: configured for UDMA/133
[  840.019532] xhci_hcd 0000:05:00.0: Cannot set link state.
[  840.019623] usb usb2-port1: cannot disable (err = -32)
[  840.019954] PM: resume of devices complete after 3060.658 msecs
[  840.020274] PM: Finishing wakeup.
[  840.020275] Restarting tasks ...
[  840.020888] usb 2-1: USB disconnect, device number 9
[  840.031730] done.
[  840.099367] video LNXVIDEO:01: Restoring backlight state
[  840.282742] usb 2-1: new SuperSpeed USB device number 10 using xhci_hcd
[  840.307126] usb 2-1: New USB device found, idVendor=1f75, idProduct=0621
[  840.307131] usb 2-1: New USB device strings: Mfr=4, Product=5, SerialNumber=6
[  840.307134] usb 2-1: SerialNumber: 20160820
[  840.308866] usb-storage 2-1:1.0: USB Mass Storage device detected
[  840.309075] scsi host8: usb-storage 2-1:1.0
[  840.614640] IPv6: ADDRCONF(NETDEV_UP): enp4s0: link is not ready
[  840.618128] sky2 0000:04:00.0 enp4s0: enabling interface
[  840.618864] IPv6: ADDRCONF(NETDEV_UP): enp4s0: link is not ready
[  840.621565] IPv6: ADDRCONF(NETDEV_UP): wlp2s0: link is not ready
[  841.627429] scsi 8:0:0:0: Direct-Access     HITACHI
HTS723225A7A365   OPA PQ: 0 ANSI: 6
[  841.628179] sd 8:0:0:0: Attached scsi generic sg3 type 0
[  841.628685] sd 8:0:0:0: [sdd] 488397168 512-byte logical blocks:
(250 GB/233 GiB)
[  841.629882] sd 8:0:0:0: [sdd] Write Protect is off
[  841.629889] sd 8:0:0:0: [sdd] Mode Sense: 3b 00 00 00
[  841.631031] sd 8:0:0:0: [sdd] No Caching mode page found
[  841.631036] sd 8:0:0:0: [sdd] Assuming drive cache: write through
[  841.956149]  sdd: sdd1
[  841.960020] sd 8:0:0:0: [sdd] Attached SCSI disk
[  842.613467] sky2 0000:04:00.0 enp4s0: Link is up at 100 Mbps, full
duplex, flow control both
[  842.613526] IPv6: ADDRCONF(NETDEV_CHANGE): enp4s0: link becomes ready


- this is all I can see from dmesg reported above regarding the
renesas controller:
...
[  837.102927] usb usb1: root hub lost power or was reset
[  837.102930] usb usb2: root hub lost power or was reset
...
[  840.019532] xhci_hcd 0000:05:00.0: Cannot set link state.
[  840.019623] usb usb2-port1: cannot disable (err = -32)
[  840.019954] PM: resume of devices complete after 3060.658 msecs
[  840.020274] PM: Finishing wakeup.
  -NOTE: 0000:05:00.0 seems to be the pci address of the renesas...
  -NOTE: if I connect the HDD to the second port of the renesas I can
  read usb2-port2 here instead of usb2-port1 )
...
[  840.020888] usb 2-1: USB disconnect, device number 9
[  840.031730] done.
  -NOTE: here refer to the HDD connected to renesas
...
[  840.282742] usb 2-1: new SuperSpeed USB device number 10 using xhci_hcd
[  840.307126] usb 2-1: New USB device found, idVendor=1f75, idProduct=0621
[  840.307131] usb 2-1: New USB device strings: Mfr=4, Product=5, SerialNumber=6
[  840.307134] usb 2-1: SerialNumber: 20160820
[  840.308866] usb-storage 2-1:1.0: USB Mass Storage device detected
[  840.309075] scsi host8: usb-storage 2-1:1.0
  -NOTE: idVendor=1f75, idProduct=0621 are vendor and product id of the
  HDD hitachi on a USB 3.0 enclosure
...
[  841.627429] scsi 8:0:0:0: Direct-Access     HITACHI
HTS723225A7A365   OPA PQ: 0 ANSI: 6
[  841.628179] sd 8:0:0:0: Attached scsi generic sg3 type 0
[  841.628685] sd 8:0:0:0: [sdd] 488397168 512-byte logical blocks:
(250 GB/233 GiB)
[  841.629882] sd 8:0:0:0: [sdd] Write Protect is off
[  841.629889] sd 8:0:0:0: [sdd] Mode Sense: 3b 00 00 00
[  841.631031] sd 8:0:0:0: [sdd] No Caching mode page found
[  841.631036] sd 8:0:0:0: [sdd] Assuming drive cache: write through
[  841.956149]  sdd: sdd1
[  841.960020] sd 8:0:0:0: [sdd] Attached SCSI disk
  -NOTE: this is the hitachi disk on a usb 3.0 enclosure... but quite
  the same results with a toshiba canvio basics 2tb
...



- CONCLUSION: after resume the HDD has become Device 010 instead of 009:

$ lsusb
...
Bus 002 Device 010: ID 1f75:0621 Innostor Technology Corporation
...

moreover the device node of the HDD was /dev/sdc before suspend, but
after resume it has become /dev/sdd and it's not mounted anymore (while
/dev/sdc has gone):

$ ls -l /dev/sd*
brw-rw---- 1 root disk 8,  0 Feb 23 12:43 /dev/sda
brw-rw---- 1 root disk 8,  1 Feb 23 12:43 /dev/sda1
brw-rw---- 1 root disk 8,  2 Feb 23 12:43 /dev/sda2
brw-rw---- 1 root disk 8,  3 Feb 23 12:43 /dev/sda3
brw-rw---- 1 root disk 8,  4 Feb 23 12:43 /dev/sda4
brw-rw---- 1 root disk 8,  5 Feb 23 12:43 /dev/sda5
brw-rw---- 1 root disk 8, 16 Feb 23 12:43 /dev/sdb
brw-rw---- 1 root disk 8, 17 Feb 23 12:43 /dev/sdb1
brw-rw---- 1 root disk 8, 48 Feb 23 12:57 /dev/sdd
brw-rw---- 1 root disk 8, 49 Feb 23 12:57 /dev/sdd1

if HDD is connected to the system USB ports no problem at all...
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



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

  Powered by Linux