# Suspend/Resume problems with External HDD and display



## uruz (Jul 21, 2021)

edit, Jul 30, 2021:
The USB 3.0 external HDD (WD My Passport) enters its own suspend mode after 30 minutes of inactivity, and appears to resume with the system.  If I figure out the display or monitor, I'll give a further update and mark this solved.
--

Hello, all.

I just installed FreeBSD 13.0 after an attempt with 12.1 last year.  My desktop computer has had a problem with both versions with suspend/resume.  Following the Handbook, I also tested a Linux distribution, and it was able to suspend and resume all devices properly from live USB, so I assume this is a driver issue on FreeBSD.

I want to help by submitting the drivers to the mailing list, but how do I determine which ones are the problem?  If it is a matter of disabling them one-by-one, how would I do that?  And lastly, is there anything I can do to get things running, like installing specific drivers, or is that way above a rank amateur?

-
Here is a description of what I experience:

`acpiconf -s 3`
Everything apparently shuts down (fans spin down, mouse and keyboard lights go off, Western Digital MyBook external HDD light goes off), but Western Digital MyPassport external HDD light stays on and it continues to run (vibrates -- disc spinning).

Press power button -> keyboard lights up, MyBook light comes on.  But monitor does not come on and does not awaken with keyboard movement or typing.

`shutdown -r now`
Computer reboots, even though I can't see any text input.

With an Arch Linux installation USB, everything appears to suspend and resume properly.

-
Edit:
I also ran the following and took pictures of the screen:
	
	



```
# sysctl debug.bootverbose=1
# sysctl debug.acpi.suspend_bounce=1
# acpiconf -s 3
```
If that would be helpful, I can post the pictures or try transcribing all the text.  Google photos has a handy way to copy text from each photo, but it makes mistakes.  It would just take me a day or so to edit all of it.


----------



## uruz (Jul 22, 2021)

I've been trying to understand the verbose debugging of `acpiconf -s 3`, and will post the full output below.  I can't see anything relating to the monitor or display (ASUS VH236H monitor), but the following are lines 56-65 showing the problematic external hard drive being suspended:

```
ugen0.8: <Western Digital My Passport 25E2> at usbus0 (disconnected)
umass3: at uhub1, port 18, addr 7 (disconnected)
da3 at umass-sim3 bus 3 scbus10 target 0 lun 0
da3: <WD My Passport 25E2 4004> s/n 575832314437373748463548 detached
ses1 at umass-sim3 bus 3 scbus10 target 0 lun 1
ses1: <WD SES Device 4004> s/n 575832314437373748463548 detached
(ses1:umass-sim3:3:0:1): Periph destroyed
(da3:umass-sim3:3:0:0): Periph destroyed
umass3: detached
uhub1: detached
```
And here are lines 259-284, which involve the drive being resumed:

```
ugen0.8: <Western Digital My Passport 25E2> at usbus0
umass3 on uhub1
umass3: <Western Digital My Passport 25E2, class 0/0, rev 3.00/40.04, addr 7> on usbus0
umass3: SCSI over Bulk-Only; quirks = 0x8000
umass3:10:3: Attached to scbus10
pass7 at umass-sim3 bus 3 scbus10 target 0 lun 0
pass7: <WD My Passport 25E2 4004> Fixed Direct Access SPC-4
pass7: Serial Number 575832314437373748463548
pass7: 400.000MB/s transfers
GEOM: new disk da3
da3 at umass-sim3 bus 3 scbus10 target 0 lun 0
da3: <WD My Passport 25E2 4004> Fixed Direct Access SPC-4 SCSI device
da3: Serial Number 575832314437373748463548
da3: 400.000MB/s transfers
da3: 3815415MB (7813969920 512 byte sectors)
da3: quirks=0x2<NO_6_BYTE>
da3: Delete methods: <UNMAP(*), ZERO>
ses1 at umass-sim3 bus 3 scbus10 target 0 lun
ses1: <WD SES Device 4004> Fixed Enclosure Services SPC-4 SCSI device
ses1: Serial Number 575832314437373748463548
ses1: 400.000MB/s transfers
ses1: SES Device
pass8 at umass-sim3 bus 3 scbus10 target 0 lun 1
pass8: <WD SES Device 4004> Fixed Enclosure Services SPC-4 SCSI device
pass8: Serial Number 575832314437373748463548
pass8: 400.000MB/s transfers
```
Frankly, nothing stands out to me and I would appreciate any feedback on whether I can work with FreeBSD to get the drive and monitor to suspend properly, or if there is at least something I can report to help hardware support in the future.  From what I see and understand, My Passport is recognized and has a driver, but the driver does not suspend as I'd expect.  The monitor is still a mystery.
Below is the full `acpiconf -s 3` output:

```
root@fbsd:~ # sysctl debug.bootverbose=1
debug.bootverbose: 0 -> 1
root@fbsd:~ # sysctl debug.acpi.suspend_bounce=1
debug.acpi.suspend_bounce: 0 -> 1
root@fbsd:~ # acpiconf -s 3
acpi_timer0: switching timecounter, TSC-low -> ACPI-fast
(ada0:ahcich1:0:0:0): spin-down
(ada1:ahcich4:0:0:0): spin-down
pci0:0:31:6: Transition from D0 to D3
pci0:0:31:3: Transition from D0 to D3
pci0: set ACPI power state D3 on \_SB_.PCI0.HDAS
pci0:5:0:0: Transition from D0 to D3
pci0:0:29:0: Transition from D0 to D3
pci0:0:28:6: Transition from D0 to D3
uhub0: at usbus1, port 1, addr 1 (disconnected)
ugen1.2: <Western Digital My Book> at usbus1 (disconnected)
umass0: at uhub0, port 4, addr 1 (disconnected)
da0 at umass-sim0 bus 0 scbus7 target 0 lun 0
da0: <WD 10EAVS External 1.65> s/n 57442D574341553431303236303936 detached
(da0:umass-sim0:0:0:0): Periph destroyed
umass0: detached
uhub0: detached
pci0:3:0:0: Transition from D0 to D3
pci0:0:28:0: Transition from D0 to D3
pci0:2:0:0: Transition from D0 to D3
pci0:0:27:0: Transition from D0 to D3
pc10:0:23:0: Transition from D0 to D3
uhub1: at usbus0, port 1, addr 1 (disconnected)
ugen0.2: <Best Buy Geek Squad> at usbus0 (disconnected)
umass1: at uhub1, port 1, addr 1 (disconnected)
da1 at umass-sim1 bus 1 scbus8 target 0 lun 0
da1: <Best Buy Geek Squad 7.01> s/n 01657111560057EF detached
(da1:umass-sim1:1:0:0): Periph destroyed
umass1: detached
ugen0.3: <Generic Mass Storage> at usbus0 (disconnected)
umass2: at uhub1, port 5, addr 2 (disconnected)
da2 at umass-sim2 bus 2 scbus9 target 0 lun 0
da2: <Generic Flash Disk 8.07> s/n 2344E0F3 detached
(da2:umass-sim2:2:0:0): Periph destroyed
umass2: detached
ugen0.4: <vendor 0x1bcf USB Optical Wheel Mouse> at usbus0 (disconnected)
ums0: at uhub1, port 7, addr 3 (disconnected)
ums0: detached
ugen0.5: <Logitech G513 Carbon GX Blue> at usbus0 (disconnected)
ukbd0: at uhub1, port 8, addr 4 (disconnected)
ukbd0: detached
ukbd1: at uhub1, port 8, addr 4 (disconnected)
ukbd1: detached
ugen0.6: <SCM Microsystems SCR33xx v2.0 USB SC Reader> at usbus0 (disconnected)
ugen0.7: <Schiit Audio Schiit Modi Uber> at usbus0 (disconnected)
uaudio0: at uhub1, port 12, addr 6 (disconnected)
pcm6: detached
uaudio0: detached
uhid0: at uhub1, port 12, addr 6 (disconnected)
uhid0: detached
ugen0.8: <Western Digital My Passport 25E2> at usbus0 (disconnected)
umass3: at uhub1, port 18, addr 7 (disconnected)
da3 at umass-sim3 bus 3 scbus10 target 0 lun 0
da3: <WD My Passport 25E2 4004> s/n 575832314437373748463548 detached
ses1 at umass-sim3 bus 3 scbus10 target 0 lun 1
ses1: <WD SES Device 4004> s/n 575832314437373748463548 detached
(ses1:umass-sim3:3:0:1): Periph destroyed
(da3:umass-sim3:3:0:0): Periph destroyed
umass3: detached
uhub1: detached
pci0:0:20:0: Transition from D0 to D3
pci0: set ACPI power state D3 on \_SB_.PCI0.XHC_
pci0:1:0:1: Transition from D0 to D3
pci0:1:0:0: Transition from D0 to D3
pci0:0:1:0: Transition from D0 to D3
pci0: set ACPI power state D3 on \_SB_.PCI0.PEG0
acpi0: cleared fixed power button status
cpu0: set ACPI power state D0 on \_PR_.CPU0
cpu1: set ACPI power state D0 on \_PR_.CPU1
cpu2: set ACPI power state D0 on \_PR_.CPU2
cpu3: set ACPI power state D0 on \_PR_.CPU3
acpi_sysresource0: set ACPI power state D0 on \_SB_.PCI0.LPCB.SIO1
acpi_sysresource1: set ACPI power state D0 on \_SB_.PCI0.LPCB.LDRC
acpi_sysresource2: set ACPI power state D0 on \_SB_.PCI0.LPCB.LDR2
acpi_sysresource3: set ACPI power state D0 on \_SB_.PCI0.LPCB.CWDT
acpi_sysresource4: set ACPI power state D0 on \_SB_.PCI0.PDRC
acpi_sysresource5: set ACPI power state D0 on \_SB_.PCI0.IOTR
acpi_sysresource6: set ACPI power state D0 on \_SB_.PTID
hpet0: set ACPI power state D0 on \_SB_.PCI0.LPCB.HPET
atrtc0: set ACPI power state D0 on \_SB_.PCI0.LPCB.RTC_
attimer0: set ACPI power state D0 on \_SB_.PCI0.LPCB.TIMR
pci_link0: set ACPI power state D0 on \_SB_.LNKA
pci_link1: set ACPI power state D0 on \_SB_.LNKB
pci_link2: set ACPI power state D0 on \_SB_.LNKC
pci_link3: set ACPI power state D0 on \_SB_.LNKD
pci_link4: set ACPI power state D0 on \_SB_.LNKE
pci_link5: set ACPI power state D0 on \_SB_.LNKF
pci_link6: set ACPI power state D0 on \_SB_.LNKG
pci_link7: set ACPI power state D0 on \_SB_.LNKH
pcib0: set ACPI power state D0 on \_SB_.PCI0
acpi_button0: set ACPI power state D0 on \_SB_.SLPB
acpi_wmi0: set ACPI power state D0 on \_SB_.WTBT
acpi_button1: set ACPI power state D0 on \_SB_.PWRB
acpi_wmil: set ACPI power state D0 on \_SB_.WMIO
acpi_tz0: set ACPI power state D0 on \_TZ_.TZ00
acpi_tz1: set ACPI power state D0 on \_TZ_.TZ01
acpi_wmi2: set ACPI power state D0 on \_SB_.PCI0.WMI1
ppc1: set ACPI power state D0 on \_SB_.PCI0.LPCB.LPTE
fpupnp0: set ACPI power state D0 on \_SB_.PCI0.LPCB.MATH
pci0: set ACPI power state D0 on \_SB_.PCI0.DSC0
pci0: set ACPI power state D0 on \_SB_.PCI0.PEG0
pci0:0:1:0: Transition from D3 to D0
pci1: set ACPI power state D0 on \_SB_.PCI0.PEG0.PEGP
pci0:1:0:0: Transition from D3 to D0
pci0:1:0:1: Transition from D3 to D0
pci0: set ACPI power state D0 on \_SB_.PCI0.RP21
pci0:0:27:0: Transition from D3 to D0
pci2: set ACPI power state D0 on \_SB_.PCI0.RP21.PXSX
pci0:2:0:0: Transition from D3 to D0
pci0: set ACPI power state D0 on \_SB_.PCI0.RP05
pci0:0:28:0: Transition from D3 to D0
pci3: set ACPI power state D0 on \_SB_.PCI0.RP05.PXSX
pci0:3:0:0: Transition from D3 to D0
pci0: set ACPI power state D0 on \_SB_.PCI0.RP07
pci0:0:28:6: Transition from D3 to D0
pci0: set ACPI power state D0 on \_SB_.PCI0.RP09
pci0:0:29:0: Transition from D3 to D0
pci5: set ACPI power state D0 on \_SB_.PCI0.RP09.PXSX
pci0:5:0:0: Transition from D3 to D0
pci0: set ACPI power state D0 on \_SB_.PCI0.LPCB
pci0: set ACPI power state D0 on \_SB_.PCI0.XHC_
pci0: set ACPI power state D0 on \_SB_.PCI0.SAT0
pci0:0:23:0: Transition from D3 to D0
ahcich0: AHCI reset...
ahcich0: SATA connect time=1900us status=00000113
ahcich0: AHCI reset: device found
ahcich0: AHCI reset: device ready after 1ms
ahcich1: AHCI reset...
ahcich1: SATA connect time=100us status-00000133
ahcich1: AHCI reset: device found
ahcich2: AHCI reset...
ahcich2: SATA offline status=00000004
ahcich2: AHCI reset: device not found
ahcich3: AHCI reset...
ahcich3: SATA offline status=00000004
ahcich3: AHCI reset: device not found
ahcich4: AHCI reset...
ahcich4: SATA connect time=100us status-00000133
ahcich4: AHCI reset: device found
ahcich5: AHCI reset...
ahcich5: SATA offline status-00000004
ahcich5: AHCI reset: device not found
pci0: set ACPI power state D0 on \_SB_.PCI0.HDAS
pci0:0:31:3: Transition from D3 to D0
pci0: set ACPI power state D0 on \_SB_.PCI0.SBUS
pci0: set ACPI power state D0 on \_SB_.PCI0.GLAN
pci0:0:31:6: Transition from D3 to D0
ahcich0: SNTF 0x0001
atkbd: the current kbd controller command byte 006d
atkbd: keyboard ID 0xffffffff (1)
atkbd: failed to reset the keyboard.
ahcich1: AHCI reset: device ready after 100ms
ahcich4: AHCI reset: device ready after 100ms
uhub0 on usbus1
uhub0: <0x1b21 XHCI root HUB, class 9/0, rev 3.00/1.00, addr 1> on usbus1
uhub1 on usbus0
uhub1: <0x8086 XHCI root HUB, class 9/0, rev 3.00/1.00, addr 1> on usbus0
uhub0: 4 ports with 4 removable, self powered
uhub1: 22 ports with 22 removable, self powered
SMP: passed TSC synchronization test
efirtc0: providing initial system time
(ada0:ahcich1:0:0:0): resume
(ada1:ahcich4:0:0:0): resume
acpi_timer0: restoring timecounter, ACPI-fast -> TSC-low
ugen1.2: <Western Digital My Book> at usbus1
umass0 on uhub0
umass0: <Western Digital My Book, class 0/0, rev 2.00/1.65, addr 1> on usbus1
umass0: SCSI over Bulk-Only; quirks = 0x0100
umass0: 7:0: Attached to scbus7
pass4 at umass-sim0 bus 0 scbus7 target 0 lun 0
pass4: <WD 10EAVS External 1.65> Fixed Direct Access
pass4: Serial Number 57442D574341553431303236303936
pass4: 40.000MB/s transfers
GEOM: new disk da0
da0 at umass-sim0 bus 0 scbus7 target 0 lun 0
da0: <WD 10EAVS External 1.65> Fixed Direct Access SPC-2 SCSI device
da0: Serial Number 57442D574341553431303236303936
da0: 40.000MB/s transfers
da0: 953869MB (1953525168 512 byte sectors)
da0: quirks=0x2<NO_6_BYTE>
da0: Delete methods: <NONE(*), ZERO>
em0: Link is up 100 Mbps Full Duplex
ugen0.2: <Best Buy Geek Squad> at usbus0
umass1 on uhub1
umass1: <Best Buy Geek Squad, class 0/0, rev 2.00/2.00, addr 1> on usbus0
umass1:  SCSI over Bulk-Only; quirks = 0x4100
umass1:8:1: Attached to scbus8
(probe0:umass-sim1:1:0:0): Down reving Protocol Version from 2 to 0?
pass5 at umass-sim1 bus 1 scbus8 target 0 lun 0
pass5: <Best Buy Geek Squad 7.01> Removable Direct Access SCSI device
pass5: Serial Number 01657111560057EF
pass5: 40.000MB/s transfers
da1 at umass-sim1 bus 1 scbus8 target 0 lun 0
da1: <Best Buy Geek Squad 7.01> Removable Direct Access SCSI device
da1: Serial Number 01657111560057EF
da1: 40.000MB/s transfers
da1: 7663MB (15695871 512 byte sectors)
da1: quirks=0x2<NO_6_BYTE>
da1: Delete methods: <NONE(*), ZERO>
ugen0.3: <Generic Mass Storage> at usbus0
umass2 on uhub1
umass2: <Generic Mass Storage, class 0/0, rev 2.00/1.03, addr 2> on usbus0
umass2: SCSI over Bulk-Only; quirks = 0x4101
umass2:9:2: Attached to scbus9
pass6 at umass-sim2 bus 2 scbus9 target 0 lun 0
pass6: <Generic Flash Disk 8.07> Removable Direct Access SCSI-2 device
pass6: Serial Number 2344E0F3
pass6: 40.000MB/s transfers
da2 at umass-sim2 bus 2 scbus9 target 0 lun 0
da2: <Generic Flash Disk 8.07> Removable Direct Access SCSI-2 device
da2: Serial Number 2344E0F3
da2: 40.000MB/s transfers
da2: 981MB (2009088 512 byte sectors)
da2: quirks=0x2<NO_6_BYTE>
da2: Delete methods: <NONE(*), ZERO>
ugen0.4: <vendor 0x1bcf USB Optical Wheel Mouse> at usbus0
ums0 on uhub1
ums0: <vendor 0x1bcf USB Optical Wheel Mouse, class 0/0, rev 2.00/1.12, addr 3> on usbus0
ums0: 5 buttons and [XYZ] coordinates ID=0
ugen0.5: <Logitech G513 Carbon GX Blue> at usbus0
ukbd0 on uhub1
ukbd0: <Logitech G513 Carbon GX Blue, class 0/0, rev 2.00/19.00, addr 4> on usbus0
kbd2 at ukbd0
kbd2: ukbd0, generic (0), config: 0x0, flags:0x3d0000
ukbd1 on uhub1
ukbd1: <Logitech G513 Carbon GX Blue, class 0/0, rev 2.00/19.00, addr 4> on usbus0
kbd3 at ukbd1
kbd3: ukbd1, generic (0), config: 0x0, flags:0x3d0000
ugen0.6: <SCM Microsystems SCR33xx v2.0 USB SC Reader> at usbus0
GEOM: new disk dal
GEOM: new disk da2
(da2:umass-sim2:2:0:0): PREVENT ALLOW MEDIUM REMOVAL not supported.
ugen0.7: <Schiit Audio Schiit Modi Uber> at usbus0
uaudio0 on uhub1
uaudio0: <Schiit Modi Uber> on usbus0
uaudio0: Play[0]: 384000 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Play[0]: 352800 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Play[0]: 192000 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Play[0]: 176400 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Play[0]: 96000 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Play[0]: 88200 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Play[0]: 88000 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Play[0]: 80000 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Play[0]: 72000 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Play[0]: 64000 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Play[0]: 56000 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Play[0]: 48000 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Play[0]: 44100 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Play[0]: 40000 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Play[0]: 32000 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Play[0]: 24000 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Play[0]: 22050 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Play[0]: 16000 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Play[0]: 11025 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio0: Play[0]: 8000 Hz, 2 ch, 32-bit S-LE PCM format, 2x8ms buffer.
uaudio0: No recording.
uaudio0: No MIDI sequencer.
pcm6: <USB audio> on uaudio0
pcm6: Mixer "vol" -> "none": child=0x00000010
pcm6: Mixer "pcm": parent="vol'
pcm6: Soft PCM mixer ENABLED
uaudio0: No HID volume keys found.
uhid0 on uhub1
uhid0: <Schiit Audio Schiit Modi Uber, class 239/2, rev 2.00/1.07, addr 6> on usbus0
ugen0.8: <Western Digital My Passport 25E2> at usbus0
umass3 on uhub1
umass3: <Western Digital My Passport 25E2, class 0/0, rev 3.00/40.04, addr 7> on usbus0
umass3: SCSI over Bulk-Only; quirks = 0x8000
umass3:10:3: Attached to scbus10
pass7 at umass-sim3 bus 3 scbus10 target 0 lun 0
pass7: <WD My Passport 25E2 4004> Fixed Direct Access SPC-4
pass7: Serial Number 575832314437373748463548
pass7: 400.000MB/s transfers
GEOM: new disk da3
da3 at umass-sim3 bus 3 scbus10 target 0 lun 0
da3: <WD My Passport 25E2 4004> Fixed Direct Access SPC-4 SCSI device
da3: Serial Number 575832314437373748463548
da3: 400.000MB/s transfers
da3: 3815415MB (7813969920 512 byte sectors)
da3: quirks=0x2<NO_6_BYTE>
da3: Delete methods: <UNMAP(*), ZERO>
ses1 at umass-sim3 bus 3 scbus10 target 0 lun
ses1: <WD SES Device 4004> Fixed Enclosure Services SPC-4 SCSI device
ses1: Serial Number 575832314437373748463548
ses1: 400.000MB/s transfers
ses1: SES Device
pass8 at umass-sim3 bus 3 scbus10 target 0 lun 1
pass8: <WD SES Device 4004> Fixed Enclosure Services SPC-4 SCSI device
pass8: Serial Number 575832314437373748463548
pass8: 400.000MB/s transfers
```


----------

