Re: DAC960 in 2.5.38, with new changes

David Mosberger (davidm@napali.hpl.hp.com)
Tue, 24 Sep 2002 11:21:45 -0700


>>>>> On Tue, 24 Sep 2002 10:28:43 -0700, Dave Olien <dmo@osdl.org> said:

Dave> Hmm, interesting. A big part of what I'm doing to the driver
Dave> right now is plugging in calls to the PCI DMA interfaces.

That's fine (actually, it's more than that: it's great!).

Dave> So unless the underlying implementation is aware of these
Dave> platform limitations and "doing the right thing", I'm adding
Dave> a bunch of bounce buffer activity for many ia64 platforms.
Dave> That would be too bad.

The idea is to do something along these lines:

o Use PCA DMA interface for managing all DMA buffers.

o If sizeof(dma_addr_t) > 4, turn on DAC mode and call
pci_set_dma_mask(dev, MAX_ADDR), where MAX_ADDR is the maximum
address that can be reached by the controller (i.e.,
0xffffffffffffffff for a truly 64-bit-capable PCI controller).

This way, everything should work out correctly and with good
performance on all imaginable platforms (ia64 with and without
hardware I/O TLB, plain x86, x86 with >4GB RAM, SPARC64 with 32-bit
dma_addr_t, etc.).

--david
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/