[parisc-linux-cvs] [PATCH] Multi-iommu support for ccio

Ryan Bradetich rbradetich@uswest.net
Sun, 21 Oct 2001 23:16:54 -0600


--DocE+STaALJfprDB
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline

Hello parisc-linux hackers,

The following patch impliments Multi-iommu support into
ccio.  This was accomplished by adding an iommu pointer
to the pci_hba_data struct in <asm/pci.h>.  Any device
performing dma, must pass a pci_dev with a valid iommu
pointer to the correct iommu.  For non-pci devices,
I have added a pointer to a fake pci_dev that will
Do The Right Thing(tm).

I have gziped this patch since it was 15k in size.

Thanks,

- Ryan

--DocE+STaALJfprDB
Content-Type: application/octet-stream
Content-Disposition: attachment; filename="multi-iommu-driver.patch.gz"
Content-Transfer-Encoding: base64

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
o1Nx0b88RptINZT3NOT/AK150MwHPgAA

--DocE+STaALJfprDB--