[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-id: <45283D23.9080500@shaw.ca>
Date: Sat, 07 Oct 2006 17:49:55 -0600
From: Robert Hancock <hancockr@...w.ca>
To: Jeff Garzik <jeff@...zik.org>
Cc: linux-kernel <linux-kernel@...r.kernel.org>,
linux-ide@...r.kernel.org, prakash@...noor.de
Subject: Re: [RFC PATCH] nForce4 ADMA with NCQ: It's aliiiive..
Jeff Garzik wrote:
>> -Jeff will probably cringe at how I implemented the
>> bmdma_stop/start/status/setup functions. This kludge of toggling
>> ATA_FLAG_MMIO off for the call into libata was needed since this
>> controller is almost what libata calls ATA_FLAG_MMIO, but not quite
>> (the ATA taskfile registers are MMIO but the BMDMA registers are PIO).
>> This is also why I needed the patch to libata-sff.c to use the
>> adapter's bmdma_status function rather than hardcoded ata_bmdma_status.
>
> *shrug* I don't cringe if that's the most expedient way to do something.
>
> But I really don't think that is necessary. I will take a look at docs
> and see how things match up, when I am much more awake. Most likely you
> need to be using another set of registers, and be all MMIO, all the time.
>
> Jeff
Hopefully that is the case, it would clean things up a bit..
I've cut another patch, this one against 2.6.18-mm3. I've fixed a couple
of issues:
-Error handling now pushes the port back into port-register mode so that
the reset will actually work properly.
-It seems there was a problem with the checks for deciding whether to
scan the CPB list in the interrupt handler that occasionally caused
interrupts to get lost and commands to time out (which unintentionally
tested the EH fix above). I think this is fixed now.
Signed-off-by: Robert Hancock <hancockr@...w.ca>
--
Robert Hancock Saskatoon, SK, Canada
To email, remove "nospam" from hancockr@...pamshaw.ca
Home Page: http://www.roberthancock.com/
View attachment "sata_nv-adma-ncq-v2.patch" of type "text/plain" (30353 bytes)
Powered by blists - more mailing lists