Bug 38333

Summary: ATA drives only UDMA33 after APM standby
Product: Base System Reporter: Bourne-again Superuser <toor>
Component: kernAssignee: Søren Schmidt <sos>
Status: Closed FIXED    
Severity: Affects Only Me    
Priority: Normal    
Version: Unspecified   
Hardware: Any   
OS: Any   

Description Bourne-again Superuser 2002-05-20 11:20:02 UTC
After waking up from APM standby mode, the IDE interfaces are reset, and
my Secondary Master (ad2), which was in UDMA 66 before, is in UDMA 33
mode henceforth.

dmesg:

resumed from suspended mode (slept 00:00:01)
ata0: resetting devices .. done
ata1: resetting devices .. ad2: DMA limited to UDMA33, non-ATA66 cable or device
done
ad2: DMA limited to UDMA33, non-ATA66 cable or device


I know for sure I have short 80-ribbon connectors for all drives,
and on initial boot-up everything is fine, dmesg again: 

ad0: 58610MB <Maxtor 4W060H4> [119081/16/63] at ata0-master UDMA66
ad2: 43979MB <IBM-DTLA-307045> [89355/16/63] at ata1-master UDMA66
ad3: 19470MB <WDC AC420400D> [39560/16/63] at ata1-slave UDMA66


This cannot be cured with atacontrol:

# atacontrol mode 1 UDMA66 UDMA66
Master = UDMA33
Slave  = UDMA66

options ATA_STATIC_ID is enabled.

Here's the list:
ATA channel 0:
    Master:  ad0 <Maxtor 4W060H4/AAH41310> ATA/ATAPI rev 6
    Slave:       no device present
ATA channel 1:
    Master:  ad2 <IBM-DTLA-307045/TX6OA6AA> ATA/ATAPI rev 5
    Slave:   ad3 <WDC AC420400D/J58OA30K> ATA/ATAPI rev 4

Fix: 

unknown. No workaround known other than reboot.
How-To-Repeat: apm -Z
dmesg
Comment 1 matthias.andree 2002-05-20 15:37:25 UTC
Sorry, I hosed my canonical mapping in Postfix. Use 
<matthias.andree@web.de> to reply.
Comment 2 matthias.andree 2002-05-21 00:22:14 UTC
One more way to reproduce this:

"atacontrol reinit 1" will also reset the primary master to UDMA33 (when
it was UDMA66 previously)

If there is anything I should look at with a serial gdb attached, let me
know.
Comment 3 matthias.andree 2002-05-22 12:32:01 UTC
Of course, that's "secondary master"
Comment 4 Johan Karlsson freebsd_committer freebsd_triage 2002-08-20 19:36:35 UTC
Responsible Changed
From-To: freebsd-bugs->sos

Over to ATA maintainer.
Comment 5 Søren Schmidt freebsd_committer freebsd_triage 2003-04-28 19:47:02 UTC
State Changed
From-To: open->closed

This is belived fixed.