Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 02 Nov 2000 12:59:32 +0100
From:      Janusz Szpilewski <janusz.szpilewski@vz.cit.alcatel.fr>
To:        freebsd-stable@FreeBSD.ORG
Subject:   ATA, Aladdin & DMA
Message-ID:  <3A015724.5832AC36@vz.cit.alcatel.fr>

next in thread | raw e-mail | index | archive | help
Hello,

Recently, after incorporating last patches (CTM 294 and above), I found
some problems with mounting the root partion on my box:


Mounting root from ufs:/dev/ad0s2a
ad0: READ command timeout tag=0 serv=0 - resetting
ata0: resetting devices .. ata0: mask=01 status0=50 status1=00
ata0-master: success setting WDMA2 on Aladdin chip
done

etc. and falling back to PIO4

After some research I have discovered that now the controller is trying
to use WDMA2 (and fails) and previously it was UDMA33.
Examining it further I found that in the file:

sys/dev/ata/ata-dma.c 
version: 1.35.2.5 
line: 287

the condition qualifying for UDMA33 was changed from:
if (udmamode >= 2)
to:
if (udmamode >= 2 && pci_get_revid(parent) > 0x20)

It happened that revid of my controller is 0x20. So after replacing '>'
with '>=' the system boots and works fine as before. 
But I am curious why this extra condition is added (it's MFC as I found)
and what is wrong with controllers version 0x20 and below.

Some other info about ATA on my box (Compaq Prosignia 150 notebook): 

atapci0: <AcerLabs Aladdin ATA33 controller> port 0xfc90-0xfc9f irq 0 at
device 16.0 on pci0
ata0: at 0x1f0 irq 14 on atapci0

ad0: <HITACHI_DK239A-65/00X5A0A1> ATA-4 disk at ata0-master
ad0: 6194MB (12685680 sectors), 13424 cyls, 15 heads, 63 S/T, 512 B/S
ad0: 16 secs/int, 1 depth queue, UDMA33
ad0: piomode=4 dmamode=2 udmamode=2 cblid=0
ad0: 6194MB <HITACHI_DK239A-65> [13424/15/63] at ata0-master UDMA33



Greetings,
Janusz


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-stable" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3A015724.5832AC36>