} else {
                        res->start = l64;
                        res->end = l64 + sz64;
-                       printk(KERN_DEBUG "PCI: %s reg %x 64bit mmio: [%llx, %llx]\n",
-                               pci_name(dev), pos, (unsigned long long)res->start,
-                               (unsigned long long)res->end);
+                       printk(KERN_DEBUG "PCI: %s reg %x 64bit mmio: %pR\n",
+                               pci_name(dev), pos, res);
                }
        } else {
                sz = pci_size(l, sz, mask);
 
                res->start = l;
                res->end = l + sz;
-               printk(KERN_DEBUG "PCI: %s reg %x %s: [%llx, %llx]\n", pci_name(dev),
-                       pos, (res->flags & IORESOURCE_IO) ? "io port":"32bit mmio",
-                       (unsigned long long)res->start, (unsigned long long)res->end);
+               printk(KERN_DEBUG "PCI: %s reg %x %s: %pR\n",
+                      pci_name(dev), pos,
+                      (res->flags & IORESOURCE_IO) ? "io port":"32bit mmio",
+                      res);
        }
 
  out:
                        res->start = base;
                if (!res->end)
                        res->end = limit + 0xfff;
-               printk(KERN_DEBUG "PCI: bridge %s io port: [%llx, %llx]\n",
-                       pci_name(dev), (unsigned long long) res->start,
-                       (unsigned long long) res->end);
+               printk(KERN_DEBUG "PCI: bridge %s io port: %pR\n",
+                      pci_name(dev), res);
        }
 
        res = child->resource[1];
                res->flags = (mem_base_lo & PCI_MEMORY_RANGE_TYPE_MASK) | IORESOURCE_MEM;
                res->start = base;
                res->end = limit + 0xfffff;
-               printk(KERN_DEBUG "PCI: bridge %s 32bit mmio: [%llx, %llx]\n",
-                       pci_name(dev), (unsigned long long) res->start,
-                       (unsigned long long) res->end);
+               printk(KERN_DEBUG "PCI: bridge %s 32bit mmio: %pR\n",
+                      pci_name(dev), res);
        }
 
        res = child->resource[2];
                res->flags = (mem_base_lo & PCI_MEMORY_RANGE_TYPE_MASK) | IORESOURCE_MEM | IORESOURCE_PREFETCH;
                res->start = base;
                res->end = limit + 0xfffff;
-               printk(KERN_DEBUG "PCI: bridge %s %sbit mmio pref: [%llx, %llx]\n",
-                       pci_name(dev), (res->flags & PCI_PREF_RANGE_TYPE_64) ? "64" : "32",
-                       (unsigned long long) res->start, (unsigned long long) res->end);
+               printk(KERN_DEBUG "PCI: bridge %s %sbit mmio pref: %pR\n",
+                      pci_name(dev),
+                      (res->flags & PCI_PREF_RANGE_TYPE_64) ? "64":"32", res);
        }
 }
 
 
                        order = __ffs(align) - 20;
                        if (order > 11) {
                                dev_warn(&dev->dev, "BAR %d bad alignment %llx: "
-                                      "%#016llx-%#016llx\n", i,
-                                      (unsigned long long)align,
-                                      (unsigned long long)r->start,
-                                      (unsigned long long)r->end);
+                                        "%pR\n", i, (unsigned long long)align, r);
                                r->flags = 0;
                                continue;
                        }
                 if (!res)
                         continue;
 
-               printk(KERN_INFO "bus: %02x index %x %s: [%llx, %llx]\n",
-                       bus->number, i,
-                       (res->flags & IORESOURCE_IO) ? "io port" : "mmio",
-                       (unsigned long long) res->start,
-                       (unsigned long long) res->end);
+               printk(KERN_INFO "bus: %02x index %x %s: %pR\n",
+                      bus->number, i,
+                      (res->flags & IORESOURCE_IO) ? "io port" : "mmio", res);
         }
 }
 
 
 
        pcibios_resource_to_bus(dev, ®ion, res);
 
-       dev_dbg(&dev->dev, "BAR %d: got res [%#llx-%#llx] bus [%#llx-%#llx] "
-               "flags %#lx\n", resno,
-                (unsigned long long)res->start,
-                (unsigned long long)res->end,
+       dev_dbg(&dev->dev, "BAR %d: got res %pR bus [%#llx-%#llx] "
+               "flags %#lx\n", resno, res,
                 (unsigned long long)region.start,
                 (unsigned long long)region.end,
                 (unsigned long)res->flags);
                err = insert_resource(root, res);
 
        if (err) {
-               dev_err(&dev->dev, "BAR %d: %s of %s [%#llx-%#llx]\n",
+               dev_err(&dev->dev, "BAR %d: %s of %s %pR\n",
                        resource,
                        root ? "address space collision on" :
                                "no parent found for",
-                       dtype,
-                       (unsigned long long)res->start,
-                       (unsigned long long)res->end);
+                       dtype, res);
        }
 
        return err;
        align = resource_alignment(res);
        if (!align) {
                dev_err(&dev->dev, "BAR %d: can't allocate resource (bogus "
-                       "alignment) [%#llx-%#llx] flags %#lx\n",
-                       resno, (unsigned long long)res->start,
-                       (unsigned long long)res->end, res->flags);
+                       "alignment) %pR flags %#lx\n",
+                       resno, res, res->flags);
                return -EINVAL;
        }
 
        }
 
        if (ret) {
-               dev_err(&dev->dev, "BAR %d: can't allocate %s resource "
-                       "[%#llx-%#llx]\n", resno,
-                       res->flags & IORESOURCE_IO ? "I/O" : "mem",
-                       (unsigned long long)res->start,
-                       (unsigned long long)res->end);
+               dev_err(&dev->dev, "BAR %d: can't allocate %s resource %pR\n",
+                       resno, res->flags & IORESOURCE_IO ? "I/O" : "mem", res);
        } else {
                res->flags &= ~IORESOURCE_STARTALIGN;
                if (resno < PCI_BRIDGE_RESOURCES)
        }
 
        if (ret) {
-               dev_err(&dev->dev, "BAR %d: can't allocate %s resource "
-                       "[%#llx-%#llx\n]", resno,
-                       res->flags & IORESOURCE_IO ? "I/O" : "mem",
-                       (unsigned long long)res->start,
-                       (unsigned long long)res->end);
+               dev_err(&dev->dev, "BAR %d: can't allocate %s resource %pR\n",
+                       resno, res->flags & IORESOURCE_IO ? "I/O" : "mem", res);
        } else if (resno < PCI_BRIDGE_RESOURCES) {
                pci_update_resource(dev, res, resno);
        }
                r_align = resource_alignment(r);
                if (!r_align) {
                        dev_warn(&dev->dev, "BAR %d: bogus alignment "
-                               "[%#llx-%#llx] flags %#lx\n",
-                               i, (unsigned long long)r->start,
-                               (unsigned long long)r->end, r->flags);
+                               "%pR flags %#lx\n",
+                               i, r, r->flags);
                        continue;
                }
                for (list = head; ; list = list->next) {
 
                if (!r->parent) {
                        dev_err(&dev->dev, "device not available because of "
-                               "BAR %d [%#llx-%#llx] collisions\n", i,
-                               (unsigned long long) r->start,
-                               (unsigned long long) r->end);
+                               "BAR %d %pR collisions\n", i, r);
                        return -EINVAL;
                }