misc/59876: APM suspend/resume broken with FreeBSD 5.2-BETA on IBM Thinkpad A30p

Serge Semenenko serge at a1.com.ua
Wed Mar 17 10:50:31 PST 2004


The following reply was made to PR misc/59876; it has been noted by GNATS.

From: Serge Semenenko <serge at a1.com.ua>
To: freebsd-gnats-submit at FreeBSD.org, jesse at wingnet.net
Cc:  
Subject: Re: misc/59876: APM suspend/resume broken with FreeBSD 5.2-BETA on
 IBM Thinkpad A30p
Date: Wed, 17 Mar 2004 20:44:21 +0200

 On my Thinkpad T20 I use followed patch to 5.2-RELEASE :
 
 --- ata-all.c.saved     Wed Mar 17 00:39:08 2004
 +++ ata-all.c   Wed Mar 17 17:22:07 2004
 @@ -238,11 +238,20 @@
 
      /* reset the HW */
      ata_printf(ch, -1, "resetting devices ..\n");
 -    ATA_FORCELOCK_CH(ch, ATA_CONTROL);
 -    ch->running = NULL;
      devices = ch->devices;
 +    /* initialize the softc basics */
 +    ata_generic_hw(ch);
 +    ch->device[MASTER].channel = ch;
 +    ch->device[MASTER].unit = ATA_MASTER;
 +    ch->device[MASTER].mode = ATA_PIO;
 +    ch->device[SLAVE].channel = ch;
 +    ch->device[SLAVE].unit = ATA_SLAVE;
 +    ch->device[SLAVE].mode = ATA_PIO;
 +    ch->state = ATA_IDLE;
 +    /* initialise device(s) on this channel */
 +    ch->locking(ch, ATA_LF_LOCK);
      ch->hw.reset(ch);
 -    ATA_UNLOCK_CH(ch);
 +    ch->locking(ch, ATA_LF_UNLOCK);
 
      /* detach what left the channel during reset */
      if ((misdev = devices & ~ch->devices)) {
 
 
 Serge
 


More information about the freebsd-bugs mailing list