summaryrefslogtreecommitdiffstats
path: root/drivers/pci/pci.c
diff options
context:
space:
mode:
authorBjorn Helgaas <bhelgaas@google.com>2015-10-29 18:35:40 -0400
committerBjorn Helgaas <bhelgaas@google.com>2015-10-29 18:35:40 -0400
commit26635112d4d057c9ea38f6284423a30a41a09240 (patch)
treede72f058d87a107018a5d0c0e8627b01c6002e3d /drivers/pci/pci.c
parent111839917fccf4f74d50ad937321acc6a07eb9c3 (diff)
PCI: Make Enhanced Allocation bitmasks more obvious
Expand bitmask #defines completely. This puts the shift in the code instead of in the #define, but it makes it more obvious in the header file how fields in the register are laid out. No functional change. Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Diffstat (limited to 'drivers/pci/pci.c')
-rw-r--r--drivers/pci/pci.c15
1 files changed, 8 insertions, 7 deletions
diff --git a/drivers/pci/pci.c b/drivers/pci/pci.c
index 364f98b30130..e8330b68cecd 100644
--- a/drivers/pci/pci.c
+++ b/drivers/pci/pci.c
@@ -2195,7 +2195,7 @@ static int pci_ea_read(struct pci_dev *dev, int offset)
2195 int ent_size, ent_offset = offset; 2195 int ent_size, ent_offset = offset;
2196 resource_size_t start, end; 2196 resource_size_t start, end;
2197 unsigned long flags; 2197 unsigned long flags;
2198 u32 dw0, base, max_offset; 2198 u32 dw0, bei, base, max_offset;
2199 u8 prop; 2199 u8 prop;
2200 bool support_64 = (sizeof(resource_size_t) >= 8); 2200 bool support_64 = (sizeof(resource_size_t) >= 8);
2201 2201
@@ -2208,20 +2208,21 @@ static int pci_ea_read(struct pci_dev *dev, int offset)
2208 if (!(dw0 & PCI_EA_ENABLE)) /* Entry not enabled */ 2208 if (!(dw0 & PCI_EA_ENABLE)) /* Entry not enabled */
2209 goto out; 2209 goto out;
2210 2210
2211 prop = PCI_EA_PP(dw0); 2211 bei = (dw0 & PCI_EA_BEI) >> 4;
2212 prop = (dw0 & PCI_EA_PP) >> 8;
2213
2212 /* 2214 /*
2213 * If the Property is in the reserved range, try the Secondary 2215 * If the Property is in the reserved range, try the Secondary
2214 * Property instead. 2216 * Property instead.
2215 */ 2217 */
2216 if (prop > PCI_EA_P_BRIDGE_IO && prop < PCI_EA_P_MEM_RESERVED) 2218 if (prop > PCI_EA_P_BRIDGE_IO && prop < PCI_EA_P_MEM_RESERVED)
2217 prop = PCI_EA_SP(dw0); 2219 prop = (dw0 & PCI_EA_SP) >> 16;
2218 if (prop > PCI_EA_P_BRIDGE_IO) 2220 if (prop > PCI_EA_P_BRIDGE_IO)
2219 goto out; 2221 goto out;
2220 2222
2221 res = pci_ea_get_resource(dev, PCI_EA_BEI(dw0), prop); 2223 res = pci_ea_get_resource(dev, bei, prop);
2222 if (!res) { 2224 if (!res) {
2223 dev_err(&dev->dev, "Unsupported EA entry BEI: %u\n", 2225 dev_err(&dev->dev, "Unsupported EA entry BEI: %u\n", bei);
2224 PCI_EA_BEI(dw0));
2225 goto out; 2226 goto out;
2226 } 2227 }
2227 2228
@@ -2293,7 +2294,7 @@ static int pci_ea_read(struct pci_dev *dev, int offset)
2293 res->end = end; 2294 res->end = end;
2294 res->flags = flags; 2295 res->flags = flags;
2295 dev_printk(KERN_DEBUG, &dev->dev, "EA - BEI %2u, Prop 0x%02x: %pR\n", 2296 dev_printk(KERN_DEBUG, &dev->dev, "EA - BEI %2u, Prop 0x%02x: %pR\n",
2296 PCI_EA_BEI(dw0), prop, res); 2297 bei, prop, res);
2297out: 2298out:
2298 return offset + ent_size; 2299 return offset + ent_size;
2299} 2300}