[SCSI] aacraid: remove x86_64 IOMMU dependent code
authorSalyzyn, Mark <mark_salyzyn@adaptec.com>
Mon, 26 Jun 2006 12:37:39 +0000 (08:37 -0400)
committerJames Bottomley <jejb@mulgrave.il.steeleye.com>
Mon, 26 Jun 2006 21:47:46 +0000 (16:47 -0500)
This may seem like a DILLIGAF, but after chatting with the F/W folks,
there is no harm in dropping the page calculation as denoted in the
enclosed patch for these older adapters in this new age of 4GB+ memory
sticks. Any resource optimization within the old-old-old adapters for
systems with less than 4G of memory is of little consequence. The
existing AAC_QUIRK_31BIT flag in linit.c should look after the rest of
the legacy hardware DMA limitations.

Signed-off-by: Mark Salyzyn <aacraid@adaptec.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
drivers/scsi/aacraid/comminit.c

index 35b0a6ebd3f5133075a1870065e7f100514068e1..1cd3584ba7ff6ee39cf3c4e40bb8b0ce5c3741e0 100644 (file)
@@ -92,28 +92,7 @@ static int aac_alloc_comm(struct aac_dev *dev, void **commaddr, unsigned long co
        init->AdapterFibsPhysicalAddress = cpu_to_le32((u32)phys);
        init->AdapterFibsSize = cpu_to_le32(fibsize);
        init->AdapterFibAlign = cpu_to_le32(sizeof(struct hw_fib));
-       /* 
-        * number of 4k pages of host physical memory. The aacraid fw needs
-        * this number to be less than 4gb worth of pages. num_physpages is in
-        * system page units. New firmware doesn't have any issues with the
-        * mapping system, but older Firmware did, and had *troubles* dealing
-        * with the math overloading past 32 bits, thus we must limit this
-        * field.
-        *
-        * This assumes the memory is mapped zero->n, which isnt
-        * always true on real computers. It also has some slight problems
-        * with the GART on x86-64. I've btw never tried DMA from PCI space
-        * on this platform but don't be surprised if its problematic.
-        */
-#ifndef CONFIG_GART_IOMMU
-       if ((num_physpages << (PAGE_SHIFT - 12)) <= AAC_MAX_HOSTPHYSMEMPAGES) {
-               init->HostPhysMemPages = 
-                       cpu_to_le32(num_physpages << (PAGE_SHIFT-12));
-       } else 
-#endif 
-       {
-               init->HostPhysMemPages = cpu_to_le32(AAC_MAX_HOSTPHYSMEMPAGES);
-       }
+       init->HostPhysMemPages = cpu_to_le32(AAC_MAX_HOSTPHYSMEMPAGES);
 
        init->InitFlags = 0;
        if (dev->new_comm_interface) {