PERFORCE change 1207529 for review
John-Mark Gurney
jmg at FreeBSD.org
Mon Mar 23 06:36:36 UTC 2015
http://p4web.freebsd.org/@@1207529?ac=10
Change 1207529 by jmg at jmg_pciehp on 2015/03/23 06:36:26
don't pass the domain and bus as we can easily get those from
the dev...
Sponsored by: FreeBSD Foundation
Affected files ...
.. //depot/projects/pciehotplug/sys/dev/acpica/acpi_pci.c#4 edit
.. //depot/projects/pciehotplug/sys/dev/pci/pci.c#7 edit
.. //depot/projects/pciehotplug/sys/dev/pci/pci_if.m#4 edit
.. //depot/projects/pciehotplug/sys/dev/pci/pci_private.h#5 edit
Differences ...
==== //depot/projects/pciehotplug/sys/dev/acpica/acpi_pci.c#4 (text+ko) ====
@@ -83,8 +83,7 @@
int state);
static void acpi_pci_update_device(ACPI_HANDLE handle, device_t pci_child);
static bus_dma_tag_t acpi_pci_get_dma_tag(device_t bus, device_t child);
-static device_t acpi_pci_add_child_method(device_t, uint32_t, uint8_t, uint8_t,
- uint8_t);
+static device_t acpi_pci_add_child_method(device_t, uint8_t, uint8_t);
#ifdef PCI_IOV
static device_t acpi_pci_create_iov_child(device_t bus, device_t pf,
@@ -227,12 +226,11 @@
}
static device_t
-acpi_pci_add_child_method(device_t dev, uint32_t d, uint8_t b, uint8_t s,
+acpi_pci_add_child_method(device_t dev, uint8_t s,
uint8_t f)
{
- return pci_add_child_size(dev, d, b, s, f,
- sizeof(struct acpi_pci_devinfo));
+ return pci_add_child_size(dev, s, f, sizeof(struct acpi_pci_devinfo));
}
static void
==== //depot/projects/pciehotplug/sys/dev/pci/pci.c#7 (text+ko) ====
@@ -122,8 +122,7 @@
static uint16_t pci_get_rid_method(device_t dev, device_t child);
static int pci_child_present(device_t, uint8_t, uint8_t, uint8_t);
static int pci_bus_child_present(device_t dev, device_t child);
-static device_t pci_add_child_method(device_t, uint32_t, uint8_t,
- uint8_t, uint8_t);
+static device_t pci_add_child_method(device_t, uint8_t, uint8_t);
static struct pci_devinfo *pci_fill_devinfo(device_t pcib, int d, int b, int s,
int f, uint16_t vid, uint16_t did, size_t size);
@@ -3528,7 +3527,7 @@
*/
if (pci_child_present(pcib, busno, 0, 0) == -1 &&
pci_find_dbsf(domain, busno, 0, 0) == NULL) {
- child = PCI_ADD_CHILD(dev, domain, busno, 0, 0);
+ child = PCI_ADD_CHILD(dev, 0, 0);
if (pci_enable_ari)
PCIB_TRY_ENABLE_ARI(pcib, child);
}
@@ -3543,7 +3542,6 @@
for (s = 0; s <= maxslots; s++, first_func = 0) {
pcifunchigh = 0;
f = 0;
- DELAY(1); /* work around AMD8111 probe failures */
hdrtype = PCIB_READ_CONFIG(pcib, busno, s, f, PCIR_HDRTYPE, 1);
if ((hdrtype & PCIM_HDRTYPE) > PCI_MAXHDRTYPE)
continue;
@@ -3552,7 +3550,7 @@
for (f = first_func; f <= pcifunchigh; f++) {
if (pci_child_present(pcib, busno, s, f) == -1 &&
pci_find_dbsf(domain, busno, s, f) == NULL)
- PCI_ADD_CHILD(dev, domain, busno, s, f);
+ PCI_ADD_CHILD(dev, s, f);
}
}
}
@@ -3623,20 +3621,24 @@
}
static device_t
-pci_add_child_method(device_t dev, uint32_t d, uint8_t b, uint8_t s, uint8_t f)
+pci_add_child_method(device_t dev, uint8_t s, uint8_t f)
{
- return pci_add_child_size(dev, d, b, s, f, sizeof(struct pci_devinfo));
+ return pci_add_child_size(dev, s, f, sizeof(struct pci_devinfo));
}
device_t
-pci_add_child_size(device_t dev, uint32_t d, uint8_t b, uint8_t s, uint8_t f,
+pci_add_child_size(device_t dev, uint8_t s, uint8_t f,
size_t dinfo_size)
{
device_t pcib;
struct pci_devinfo *dinfo;
+ uint32_t d;
+ uint8_t b;
pcib = device_get_parent(dev);
+ d = pcib_get_domain(dev);
+ b = pcib_get_bus(dev);
dinfo = pci_read_device(pcib, d, b, s, f, dinfo_size);
if (dinfo == NULL)
==== //depot/projects/pciehotplug/sys/dev/pci/pci_if.m#4 (text+ko) ====
@@ -210,8 +210,6 @@
#
METHOD device_t add_child {
device_t dev;
- uint32_t domain;
- uint8_t bus;
uint8_t slot;
uint8_t func;
};
==== //depot/projects/pciehotplug/sys/dev/pci/pci_private.h#5 (text+ko) ====
@@ -50,8 +50,8 @@
void pci_add_children(device_t dev);
void pci_add_child(device_t bus, struct pci_devinfo *dinfo);
-device_t pci_add_child_size(device_t dev, uint32_t d, uint8_t b,
- uint8_t s, uint8_t f, size_t dinfo_size);
+device_t pci_add_child_size(device_t dev, uint8_t s, uint8_t f,
+ size_t dinfo_size);
device_t pci_add_iov_child(device_t bus, device_t pf, size_t dinfo_size,
uint16_t rid, uint16_t vid, uint16_t did);
void pci_add_resources(device_t bus, device_t dev, int force,
More information about the p4-projects
mailing list