Date: Mon, 5 Jan 2004 13:40:21 -0500 From: gary.rafe@utoledo.edu (Dr. Gary E. RAFE) To: freebsd-current@freebsd.org Subject: 5.2-RC2: APM suspend/resume ata0 reset problem Message-ID: <200401051840.i05IeLZh014560@green.eng.utoledo.edu>
next in thread | raw e-mail | index | archive | help
Here's another data point regarding the APM suspend/resume ata reset problem with 5.2-RC2. I currently run 4.8-R on my Toshiba Satellite Pro 6100 (I burned a 4.9-R CD when it became available, but haven't had time to work through the upgrade). In an open partition, I installed 5.2-RC2 during the recent holiday. I was pleased to find most everything working correctly (e.g., XFree86 with the nVidia, WiFi through cbb/pccard, pcm, usb, and so on). I did give ACPI a go, but found that suspending the system only managed to hang it without powering anything down. When I got to testing APM suspend/resume, I noted that: 1) The system hangs upon resume during the ata0 reset: pci_cfgintr: 0:29 INTA BIOS irq 11 pci_cfgintr: 0:29 INTB BIOS irq 11 pci_cfgintr: 0:29 INTC BIOS irq 11 pci_cfgintr: 0:31 INTA BIOS irq 11 pci_cfgintr: 0:31 INTB BIOS irq 11 pci_cfgintr: 0:31 INTB BIOS irq 11 pci_cfgintr: 1:0 INTA BIOS irq 10 pci_cfgintr: 2:8 INTA BIOS irq 11 pci_cfgintr: 2:10 INTA BIOS irq 11 pci_cfgintr: 2:11 INTA BIOS irq 11 pci_cfgintr: 2:11 INTB BIOS irq 11 pci_cfgintr: 2:13 INTA BIOS irq 11 ata0: resetting devices .. [stuck here with the disk activity LED on] 2) With a "verbose" kernel boot, the system resumes OK, but USB goes away: ... wakeup from sleeping state (slept 15:33:52) atkbd: the current kbd controller command byte 0065 atkbd: keyboard ID 0x41ab (2) kbdc: RESET_KBD return code:00fa kbdc: RESET_KBD status:00aa ata0: resetting devices .. ata0: reset tp1 mask=03 ostat0=50 ostat1=00 ad0: stat=0x50 err=0x01 lsb=0x00 msb=0x00 ata0-slave: stat=0x00 err=0x01 lsb=0x00 msb=0x00 ata0: reset tp2 mask=03 stat0=50 stat1=00 devices=0x1<ATA_MASTER> ad0: pio=0x0c wdma=0x22 udma=0x45 cable=80pin ad0: setting PIO4 on Intel ICH3 chip ad0: setting UDMA100 on Intel ICH3 chip ad0: setting UDMA100 on Intel ICH3 chip done ata1: resetting devices .. ata1: reset tp1 mask=03 ostat0=50 ostat1=00 acd0: stat=0x00 err=0x01 lsb=0x14 msb=0xeb ata1-slave: stat=0x00 err=0x04 lsb=0x00 msb=0x00 ata1: reset tp2 mask=03 stat0=00 stat1=00 devices=0x4<ATAPI_MASTER> acd0: pio=0x0c wdma=0x22 udma=0x42 cable=40pin acd0: setting PIO4 on Intel ICH3 chip acd0: setting PIO4 on Intel ICH3 chip done uhub1: at uhub0 port 1 (addr 2) disconnected ums0: detached uhub1: detached ... (probe0:ata0:0:0:0): error 22 (probe0:ata0:0:0:0): Unretryable Error (probe1:ata0:0:1:0): error 22 (probe1:ata0:0:1:0): Unretryable Error (probe3:ata1:0:1:0): error 22 (probe3:ata1:0:1:0): Unretryable Error uhub0: device problem, disabling port 1 uhub0: device problem, disabling port 1 uhub0: port error, restarting port 1 uhub0: device problem, disabling port 1 In the second case above, I found that the system hangs during a *subsequent* suspend/resume cycle. Once we returned from our holiday travel, I tried the simple patch to ata-all.c proposed by Hiroyuki Aizu, but this code had no positive result to the ata0 reset hang problem. The ATA controller here, as reported by the 5.2-RC2 kernel: atapci0: <Intel ICH3 UDMA100 controller> port 0xcfa0-0xcfaf, 0xcfe4-0xcfe7,0xcfe8-0xcfef,0xcff4-0xcff7,0xcff8-0xcfff irq 11 at device 31.1 on pci0 Looking forward to a solution to this "show stopper" ! Cheers, -- Dr. Gary E. RAFE gary.rafe@utoledo.edu
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200401051840.i05IeLZh014560>