summaryrefslogtreecommitdiffstats
path: root/drivers/pci/pci.c
diff options
context:
space:
mode:
authorSascha Hauer <s.hauer@pengutronix.de>2015-04-13 12:57:13 +0200
committerSascha Hauer <s.hauer@pengutronix.de>2015-04-13 12:57:13 +0200
commit9c4cf7d3b6b4ca24b3ebd6e003d3032a90af44b0 (patch)
tree67b5ff0cde85ca0b79bb3b070d78b5422b1f92f8 /drivers/pci/pci.c
parentc41b60fe6a61942d43405709ca2c19742dd99552 (diff)
parentf929fab29c7817356c34be68671df00792fa9a30 (diff)
downloadbarebox-9c4cf7d3b6b4ca24b3ebd6e003d3032a90af44b0.tar.gz
barebox-9c4cf7d3b6b4ca24b3ebd6e003d3032a90af44b0.tar.xz
Merge branch 'for-next/pci'
Diffstat (limited to 'drivers/pci/pci.c')
-rw-r--r--drivers/pci/pci.c36
1 files changed, 16 insertions, 20 deletions
diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c
index 2762511cbb..40e0fe7f87 100644
--- a/drivers/pci/pci.c
+++ b/drivers/pci/pci.c
@@ -1,13 +1,9 @@
+#define pr_fmt(fmt) "pci: " fmt
+
#include <common.h>
#include <linux/sizes.h>
#include <linux/pci.h>
-#ifdef DEBUG
-#define DBG(x...) printk(x)
-#else
-#define DBG(x...)
-#endif
-
static struct pci_controller *hose_head, **hose_tail = &hose_head;
LIST_HEAD(pci_root_buses);
@@ -57,7 +53,7 @@ void register_pci_controller(struct pci_controller *hose)
else
last_mem = 0;
- if (bus->resource[PCI_BUS_RESOURCE_MEM])
+ if (bus->resource[PCI_BUS_RESOURCE_MEM_PREF])
last_mem_pref = bus->resource[PCI_BUS_RESOURCE_MEM_PREF]->start;
else
last_mem_pref = 0;
@@ -150,16 +146,16 @@ static void setup_device(struct pci_dev *dev, int max_bar)
pci_read_config_dword(dev, PCI_BASE_ADDRESS_0 + bar * 4, &mask);
if (mask == 0 || mask == 0xffffffff) {
- DBG(" PCI: pbar%d set bad mask\n", bar);
+ pr_debug("pbar%d set bad mask\n", bar);
continue;
}
if (mask & 0x01) { /* IO */
size = ((~(mask & 0xfffffffe)) & 0xffff) + 1;
- DBG(" PCI: pbar%d: mask=%08x io %d bytes\n", bar, mask, size);
+ pr_debug("pbar%d: mask=%08x io %d bytes\n", bar, mask, size);
if (last_io + size >
dev->bus->resource[PCI_BUS_RESOURCE_IO]->end) {
- DBG("BAR does not fit within bus IO res\n");
+ pr_debug("BAR does not fit within bus IO res\n");
return;
}
pci_write_config_dword(dev, PCI_BASE_ADDRESS_0 + bar * 4, last_io);
@@ -169,11 +165,11 @@ static void setup_device(struct pci_dev *dev, int max_bar)
} else if ((mask & PCI_BASE_ADDRESS_MEM_PREFETCH) &&
last_mem_pref) /* prefetchable MEM */ {
size = (~(mask & 0xfffffff0)) + 1;
- DBG(" PCI: pbar%d: mask=%08x P memory %d bytes\n",
+ pr_debug("pbar%d: mask=%08x P memory %d bytes\n",
bar, mask, size);
if (last_mem_pref + size >
dev->bus->resource[PCI_BUS_RESOURCE_MEM_PREF]->end) {
- DBG("BAR does not fit within bus p-mem res\n");
+ pr_debug("BAR does not fit within bus p-mem res\n");
return;
}
pci_write_config_dword(dev, PCI_BASE_ADDRESS_0 + bar * 4, last_mem_pref);
@@ -183,11 +179,11 @@ static void setup_device(struct pci_dev *dev, int max_bar)
last_mem_pref += size;
} else { /* non-prefetch MEM */
size = (~(mask & 0xfffffff0)) + 1;
- DBG(" PCI: pbar%d: mask=%08x NP memory %d bytes\n",
+ pr_debug("pbar%d: mask=%08x NP memory %d bytes\n",
bar, mask, size);
if (last_mem + size >
dev->bus->resource[PCI_BUS_RESOURCE_MEM]->end) {
- DBG("BAR does not fit within bus np-mem res\n");
+ pr_debug("BAR does not fit within bus np-mem res\n");
return;
}
pci_write_config_dword(dev, PCI_BASE_ADDRESS_0 + bar * 4, last_mem);
@@ -287,8 +283,8 @@ unsigned int pci_scan_bus(struct pci_bus *bus)
unsigned int devfn, l, max, class;
unsigned char cmd, tmp, hdr_type, is_multi = 0;
- DBG("pci_scan_bus for bus %d\n", bus->number);
- DBG(" last_io = 0x%08x, last_mem = 0x%08x, last_mem_pref = 0x%08x\n",
+ pr_debug("pci_scan_bus for bus %d\n", bus->number);
+ pr_debug(" last_io = 0x%08x, last_mem = 0x%08x, last_mem_pref = 0x%08x\n",
last_io, last_mem, last_mem_pref);
max = bus->secondary;
@@ -331,8 +327,8 @@ unsigned int pci_scan_bus(struct pci_bus *bus)
class >>= 8;
dev->hdr_type = hdr_type;
- DBG("PCI: class = %08x, hdr_type = %08x\n", class, hdr_type);
- DBG("PCI: %02x:%02x [%04x:%04x]\n", bus->number, dev->devfn,
+ pr_debug("class = %08x, hdr_type = %08x\n", class, hdr_type);
+ pr_debug("%02x:%02x [%04x:%04x]\n", bus->number, dev->devfn,
dev->vendor, dev->device);
switch (hdr_type & 0x7f) {
@@ -392,7 +388,7 @@ unsigned int pci_scan_bus(struct pci_bus *bus)
}
if (class == PCI_CLASS_BRIDGE_HOST) {
- DBG("PCI: skip pci host bridge\n");
+ pr_debug("skip pci host bridge\n");
continue;
}
}
@@ -405,7 +401,7 @@ unsigned int pci_scan_bus(struct pci_bus *bus)
* Return how far we've got finding sub-buses.
*/
max = bus_index;
- DBG("PCI: pci_scan_bus returning with max=%02x\n", max);
+ pr_debug("pci_scan_bus returning with max=%02x\n", max);
return max;
}