aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDavid Mosberger <davidm@tiger.hpl.hp.com>2003-04-11 05:49:38 -0700
committerDavid Mosberger <davidm@tiger.hpl.hp.com>2003-04-11 05:49:38 -0700
commite786b2b9970e4898ba6f348e21144f743ab5f10e (patch)
tree13e4410ee806df43d2ab607bedf12139df34a382
parentbdfd88c29a2d2438ff0aa0eee7b84bc8bff5acac (diff)
downloadhistory-e786b2b9970e4898ba6f348e21144f743ab5f10e.tar.gz
ia64: Make sba_iommu get detected early enough again.lia64-v2.5.67
-rw-r--r--arch/ia64/hp/common/sba_iommu.c13
1 files changed, 6 insertions, 7 deletions
diff --git a/arch/ia64/hp/common/sba_iommu.c b/arch/ia64/hp/common/sba_iommu.c
index 89ed7fb703287..cf75396e0df60 100644
--- a/arch/ia64/hp/common/sba_iommu.c
+++ b/arch/ia64/hp/common/sba_iommu.c
@@ -302,7 +302,7 @@ sba_dump_pdir_entry(struct ioc *ioc, char *msg, uint pide)
printk(KERN_DEBUG "%s %2d %p %016Lx\n",
(rcnt == (pide & (BITS_PER_LONG - 1)))
? " -->" : " ",
- rcnt, ptr, *ptr );
+ rcnt, ptr, (unsigned long long) *ptr );
rcnt++;
ptr++;
}
@@ -1451,9 +1451,9 @@ ioc_iova_init(struct ioc *ioc)
iov_order = get_order(ioc->iov_size >> (IOVP_SHIFT - PAGE_SHIFT));
ioc->pdir_size = (ioc->iov_size / IOVP_SIZE) * sizeof(u64);
- DBG_INIT("%s() hpa 0x%lx IOV %dMB (%d bits) PDIR size 0x%0x\n",
- __FUNCTION__, ioc->ioc_hpa, ioc->iov_size >> 20,
- iov_order + PAGE_SHIFT, ioc->pdir_size);
+ DBG_INIT("%s() hpa %p IOV %dMB (%d bits) PDIR size 0x%0x\n",
+ __FUNCTION__, ioc->ioc_hpa, ioc->iov_size >> 20,
+ iov_order + PAGE_SHIFT, ioc->pdir_size);
/* FIXME : DMA HINTs not used */
ioc->hint_shift_pdir = iov_order + PAGE_SHIFT;
@@ -1552,7 +1552,7 @@ ioc_iova_init(struct ioc *ioc)
if (!addr)
panic(PFX "Couldn't allocate PDIR spill page\n");
- poison_addr = (u64) addr;
+ poison_addr = addr;
for ( ; (u64) poison_addr < addr + IOVP_SIZE; poison_addr += poison_size)
memcpy(poison_addr, spill_poison, poison_size);
@@ -1824,7 +1824,6 @@ sba_proc_init(void)
create_proc_info_entry(ioc_list->name, 0, proc_mckinley_root, sba_proc_info);
create_proc_info_entry("bitmap", 0, proc_mckinley_root, sba_resource_map);
}
- return 0;
}
#endif
@@ -1919,7 +1918,7 @@ sba_init(void)
return 0;
}
-device_initcall(sba_init);
+subsys_initcall(sba_init); /* must be initialized after ACPI etc., but before any drivers... */
static int __init
nosbagart(char *str)