Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 08 Nov 2007 13:14:34 +0300
From:      Alexander Sabourenkov <screwdriver@lxnt.info>
To:        =?UTF-8?B?U8O4cmVuIFNjaG1pZHQ=?= <sos@deepcore.dk>
Cc:        Nathan Butcher <n-butcher@fusiongol.com>, freebsd-current@freebsd.org
Subject:   Re: Remaining SATA (and other) issues
Message-ID:  <4732E18A.6040802@lxnt.info>
In-Reply-To: <4732DA32.3090601@deepcore.dk>
References:  <47326FB8.50602@fusiongol.com> <4732CEE3.3070003@lxnt.info> <4732DA32.3090601@deepcore.dk>

next in thread | previous in thread | raw e-mail | index | archive | help
Søren Schmidt wrote:
> You cant remove this, ATA uses the 0x54 reg to store interrupts, its a 
> gen purpose reg on the promises, this initialization is neededed.

Hmm. Cursory greps do not show writes there neither in vendor, nor in 
linux drivers.
I only found it in ata_piix.c from linux, as PIIX_IOCFG /* IDE I/O 
configuration register */.

Thus I'm not sure it is really needed, but I leave that up to your 
expertise.

> This part is wrong for older promise chips, as the port# is different.
> I also have a hard time seeing that this couldd change anything since 
> the registers are reset etc "my way" on each interrupt.

If that means ata_promise_mio_intr(), then no, it does not touch 0x60 
for PRSATA2, it touches 0x54 instead.

> Besides you *do not* want to pass the other bits through, they shoudl be 
> masked off and always written as 0's.

Why then vendor does pass them through?

-- 

./lxnt




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4732E18A.6040802>