Re: [Intel IOMMU][patch 7/8] Support for legacy ISA devices

Ashok Raj
2007-04-24T20:41:13Z

On Tue, Apr 24, 2007 at 09:31:09PM +0200, Andi Kleen wrote:
> On Tuesday 24 April 2007 08:03:06 Ashok Raj wrote:
> > Floppy disk drivers dont work well with DMA remapping.
>
> What is the problem? You can't allocate mappings <16MB?

No.. these drivers dont call DMA mapping api's.. thats the problem.

>
> > Its possible to
> > extend the current use for x86_64, but the gain is very little. If someone
> > feels compelled to clean this up, its up for grabs. Since these use 16M, we
> > just provide a unity map for the ISA bridge device.
> >
>
> While it's probably not worth for the floppy there are other devices
> with similar weird addressing limitations. Some generic handling of it
> would be nice.
>

In the intro we had outlined a way to handle this via a generic unity
map for all devices, we could do that, i.e

- implement a generic 1-1 map if the device is not calling dma api's and
dynamically dissociate it if the device does start using dma apis.

For some of the addr reservation as well, we could use set_dma_mask()
to ensure there is some dma space. Problem is some drivers may not use
dma apis. Also it might be difficult to address device hotplugged that
has a weird requirement.