[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <896139.88121.qm@web31812.mail.mud.yahoo.com>
Date: Tue, 29 Jan 2008 14:09:52 -0800 (PST)
From: Luben Tuikov <ltuikov@...oo.com>
To: linux-arch@...r.kernel.org, ide <linux-ide@...r.kernel.org>,
linux-kernel <linux-kernel@...r.kernel.org>,
linux-scsi@...r.kernel.org, Robert Hancock <hancockr@...w.ca>
Subject: Re: DMA mapping on SCSI device?
--- On Mon, 1/28/08, Robert Hancock <hancockr@...w.ca> wrote:
> The trick is that if an ATAPI device is connected, we (as
> far as I'm
> aware) can't use ADMA mode, so we have to switch that
> port into legacy
> mode.
Can you double check this with the HW architect of the
HW DMA engine of the ASIC?
> This means it's only capable of 32-bit DMA.
> However the other port
> on the controller may be connected to a hard drive and
> therefore still
> capable of 64-bit DMA.
If this is indeed the case as you've presented it here,
it sounds like a HW shortcoming. I cannot see how the device
type (or protocol) dictate how the DMA engine operates.
They live in two different domains.
> The ideal solution would be to do mapping against a
> different struct
> device for each port, so that we could maintain the proper
> DMA mask for
> each of them at all times. However I'm not sure if
> that's possible. The
> thought of using the SCSI struct device for DMA mapping was
> brought up
> at one point.. any thoughts on that?
The reason for this is that the object that a struct scsi_dev
represents has nothing to do with HW DMA engines.
It looks like your current solution is correct and
x86_64's blk_queue_bounce_limit needs work.
Luben
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists