Merge master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6
* master.kernel.org:/pub/scm/linux/kernel/git/gregkh/pci-2.6: [PATCH] i386: export memory more than 4G through /proc/iomem [PATCH] 64bit Resource: finally enable 64bit resource sizes [PATCH] 64bit Resource: convert a few remaining drivers to use resource_size_t where needed [PATCH] 64bit resource: change pnp core to use resource_size_t [PATCH] 64bit resource: change pci core and arch code to use resource_size_t [PATCH] 64bit resource: change resource core to use resource_size_t [PATCH] 64bit resource: introduce resource_size_t for the start and end of struct resource [PATCH] 64bit resource: fix up printks for resources in misc drivers [PATCH] 64bit resource: fix up printks for resources in arch and core code [PATCH] 64bit resource: fix up printks for resources in pcmcia drivers [PATCH] 64bit resource: fix up printks for resources in video drivers [PATCH] 64bit resource: fix up printks for resources in ide drivers [PATCH] 64bit resource: fix up printks for resources in mtd drivers [PATCH] 64bit resource: fix up printks for resources in pci core and hotplug drivers [PATCH] 64bit resource: fix up printks for resources in networks drivers [PATCH] 64bit resource: fix up printks for resources in sound drivers [PATCH] 64bit resource: C99 changes for struct resource declarations Fixed up trivial conflict in drivers/ide/pci/cmd64x.c (the printk that was changed by the 64-bit resources had been deleted in the meantime ;)
This commit is contained in:
@@ -95,8 +95,10 @@ pcibios_fixup_resources(struct pci_dev *dev)
|
||||
if (!res->flags)
|
||||
continue;
|
||||
if (res->end == 0xffffffff) {
|
||||
DBG("PCI:%s Resource %d [%08lx-%08lx] is unassigned\n",
|
||||
pci_name(dev), i, res->start, res->end);
|
||||
DBG("PCI:%s Resource %d [%016llx-%016llx] is unassigned\n",
|
||||
pci_name(dev), i,
|
||||
(unsigned long long)res->start,
|
||||
(unsigned long long)res->end);
|
||||
res->end -= res->start;
|
||||
res->start = 0;
|
||||
res->flags |= IORESOURCE_UNSET;
|
||||
@@ -169,18 +171,18 @@ EXPORT_SYMBOL(pcibios_bus_to_resource);
|
||||
* but we want to try to avoid allocating at 0x2900-0x2bff
|
||||
* which might have be mirrored at 0x0100-0x03ff..
|
||||
*/
|
||||
void pcibios_align_resource(void *data, struct resource *res, unsigned long size,
|
||||
unsigned long align)
|
||||
void pcibios_align_resource(void *data, struct resource *res,
|
||||
resource_size_t size, resource_size_t align)
|
||||
{
|
||||
struct pci_dev *dev = data;
|
||||
|
||||
if (res->flags & IORESOURCE_IO) {
|
||||
unsigned long start = res->start;
|
||||
resource_size_t start = res->start;
|
||||
|
||||
if (size > 0x100) {
|
||||
printk(KERN_ERR "PCI: I/O Region %s/%d too large"
|
||||
" (%ld bytes)\n", pci_name(dev),
|
||||
dev->resource - res, size);
|
||||
" (%lld bytes)\n", pci_name(dev),
|
||||
dev->resource - res, (unsigned long long)size);
|
||||
}
|
||||
|
||||
if (start & 0x300) {
|
||||
@@ -251,8 +253,9 @@ pcibios_allocate_bus_resources(struct list_head *bus_list)
|
||||
}
|
||||
}
|
||||
|
||||
DBG("PCI: bridge rsrc %lx..%lx (%lx), parent %p\n",
|
||||
res->start, res->end, res->flags, pr);
|
||||
DBG("PCI: bridge rsrc %llx..%llx (%lx), parent %p\n",
|
||||
(unsigned long long)res->start,
|
||||
(unsigned long long)res->end, res->flags, pr);
|
||||
if (pr) {
|
||||
if (request_resource(pr, res) == 0)
|
||||
continue;
|
||||
@@ -302,8 +305,9 @@ reparent_resources(struct resource *parent, struct resource *res)
|
||||
*pp = NULL;
|
||||
for (p = res->child; p != NULL; p = p->sibling) {
|
||||
p->parent = res;
|
||||
DBG(KERN_INFO "PCI: reparented %s [%lx..%lx] under %s\n",
|
||||
p->name, p->start, p->end, res->name);
|
||||
DBG(KERN_INFO "PCI: reparented %s [%llx..%llx] under %s\n",
|
||||
p->name, (unsigned long long)p->start,
|
||||
(unsigned long long)p->end, res->name);
|
||||
}
|
||||
return 0;
|
||||
}
|
||||
@@ -358,13 +362,15 @@ pci_relocate_bridge_resource(struct pci_bus *bus, int i)
|
||||
try = conflict->start - 1;
|
||||
}
|
||||
if (request_resource(pr, res)) {
|
||||
DBG(KERN_ERR "PCI: huh? couldn't move to %lx..%lx\n",
|
||||
res->start, res->end);
|
||||
DBG(KERN_ERR "PCI: huh? couldn't move to %llx..%llx\n",
|
||||
(unsigned long long)res->start,
|
||||
(unsigned long long)res->end);
|
||||
return -1; /* "can't happen" */
|
||||
}
|
||||
update_bridge_base(bus, i);
|
||||
printk(KERN_INFO "PCI: bridge %d resource %d moved to %lx..%lx\n",
|
||||
bus->number, i, res->start, res->end);
|
||||
printk(KERN_INFO "PCI: bridge %d resource %d moved to %llx..%llx\n",
|
||||
bus->number, i, (unsigned long long)res->start,
|
||||
(unsigned long long)res->end);
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -475,15 +481,17 @@ static inline void alloc_resource(struct pci_dev *dev, int idx)
|
||||
{
|
||||
struct resource *pr, *r = &dev->resource[idx];
|
||||
|
||||
DBG("PCI:%s: Resource %d: %08lx-%08lx (f=%lx)\n",
|
||||
pci_name(dev), idx, r->start, r->end, r->flags);
|
||||
DBG("PCI:%s: Resource %d: %016llx-%016llx (f=%lx)\n",
|
||||
pci_name(dev), idx, (unsigned long long)r->start,
|
||||
(unsigned long long)r->end, r->flags);
|
||||
pr = pci_find_parent_resource(dev, r);
|
||||
if (!pr || request_resource(pr, r) < 0) {
|
||||
printk(KERN_ERR "PCI: Cannot allocate resource region %d"
|
||||
" of device %s\n", idx, pci_name(dev));
|
||||
if (pr)
|
||||
DBG("PCI: parent is %p: %08lx-%08lx (f=%lx)\n",
|
||||
pr, pr->start, pr->end, pr->flags);
|
||||
DBG("PCI: parent is %p: %016llx-%016llx (f=%lx)\n",
|
||||
pr, (unsigned long long)pr->start,
|
||||
(unsigned long long)pr->end, pr->flags);
|
||||
/* We'll assign a new address later */
|
||||
r->flags |= IORESOURCE_UNSET;
|
||||
r->end -= r->start;
|
||||
@@ -952,8 +960,8 @@ static pgprot_t __pci_mmap_set_pgprot(struct pci_dev *dev, struct resource *rp,
|
||||
else
|
||||
prot |= _PAGE_GUARDED;
|
||||
|
||||
printk("PCI map for %s:%lx, prot: %lx\n", pci_name(dev), rp->start,
|
||||
prot);
|
||||
printk("PCI map for %s:%llx, prot: %lx\n", pci_name(dev),
|
||||
(unsigned long long)rp->start, prot);
|
||||
|
||||
return __pgprot(prot);
|
||||
}
|
||||
@@ -1122,7 +1130,7 @@ long sys_pciconfig_iobase(long which, unsigned long bus, unsigned long devfn)
|
||||
|
||||
void pci_resource_to_user(const struct pci_dev *dev, int bar,
|
||||
const struct resource *rsrc,
|
||||
u64 *start, u64 *end)
|
||||
resource_size_t *start, resource_size_t *end)
|
||||
{
|
||||
struct pci_controller *hose = pci_bus_to_hose(dev->bus->number);
|
||||
unsigned long offset = 0;
|
||||
|
Reference in New Issue
Block a user