]> pilppa.org Git - linux-2.6-omap-h63xx.git/blobdiff - arch/ia64/sn/pci/tioca_provider.c
Merge git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc
[linux-2.6-omap-h63xx.git] / arch / ia64 / sn / pci / tioca_provider.c
index 7571a402552925dccb1219fdcb0736fc38c779c0..e4aa839d0189f57eaa99d673793b0de1ca3a621e 100644 (file)
@@ -377,7 +377,7 @@ tioca_dma_mapped(struct pci_dev *pdev, u64 paddr, size_t req_size)
        struct tioca_dmamap *ca_dmamap;
        void *map;
        unsigned long flags;
-       struct pcidev_info *pcidev_info = SN_PCIDEV_INFO(pdev);;
+       struct pcidev_info *pcidev_info = SN_PCIDEV_INFO(pdev);
 
        tioca_common = (struct tioca_common *)pcidev_info->pdi_pcibus_info;
        tioca_kern = (struct tioca_kernel *)tioca_common->ca_kernel_private;
@@ -515,10 +515,16 @@ tioca_dma_unmap(struct pci_dev *pdev, dma_addr_t bus_addr, int dir)
  * use the GART mapped mode.
  */
 static u64
-tioca_dma_map(struct pci_dev *pdev, u64 paddr, size_t byte_count)
+tioca_dma_map(struct pci_dev *pdev, u64 paddr, size_t byte_count, int dma_flags)
 {
        u64 mapaddr;
 
+       /*
+        * Not supported for now ...
+        */
+       if (dma_flags & SN_DMA_MSI)
+               return 0;
+
        /*
         * If card is 64 or 48 bit addresable, use a direct mapping.  32
         * bit direct is so restrictive w.r.t. where the memory resides that
@@ -589,7 +595,7 @@ tioca_bus_fixup(struct pcibus_bussoft *prom_bussoft, struct pci_controller *cont
 
        /* sanity check prom rev */
 
-       if (sn_sal_rev() < 0x0406) {
+       if (is_shub1() && sn_sal_rev() < 0x0406) {
                printk
                    (KERN_ERR "%s:  SGI prom rev 4.06 or greater required "
                     "for tioca support\n", __FUNCTION__);