Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 26 Nov 2000 22:13:55 +0800 (CST)
From:      Tai-hwa Liang <avatar@mmlab.cse.yzu.edu.tw>
To:        Soren Schmidt <sos@freebsd.dk>
Cc:        <freebsd-stable@FreeBSD.org>
Subject:   Re: 4.2-RELEASE ata0-master probe failed(solved)
Message-ID:  <Pine.BSF.4.30.0011262145430.591-100000@brahms.mmlab.cse.yzu.edu.tw>
In-Reply-To: <200011261323.OAA38044@freebsd.dk>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sun, 26 Nov 2000, Soren Schmidt wrote:
[...]
> >     /* if drive is busy it didn't interrupt */
> >     if (inb(scp->altioaddr) & ATA_S_BUSY)
> >     {
> > 	/* clear interrupt */
> > 	inb(scp->ioaddr + ATA_STATUS);
> > 	return;
> >     }
>
> This effectively disables the whole purpose of using the "alternative
> status" register. Using the alt reg does not clear the interrupt
> and we do not want to if this drive didn't interrupt. So this hack
> breaks the driver on systems with more than one controller on
> an interrupt (which is quiet common nowadays).
> Your problem might be that the altioaddr is not correct, so we get
> bogus status from it...
Whoops.... I'm wondering about whether there is any fix to get the
correct altioaddr on my laptop?

>
[...]
>

-- 
Regards,

Tai-hwa Liang <avatar@mmlab.cse.yzu.edu.tw>
Multimedia Laboratory, Dept. of Computer Science & Engineering
Yuan Ze University
Taiwan, Republic of China




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?Pine.BSF.4.30.0011262145430.591-100000>