Message ID | 1447732444-30892-14-git-send-email-sjg@chromium.org |
---|---|
State | Superseded |
Delegated to: | Simon Glass |
Headers | show |
On Tue, Nov 17, 2015 at 11:53 AM, Simon Glass <sjg@chromium.org> wrote: > Move this function into the compatibility file so that it is not available > by default. > > Signed-off-by: Simon Glass <sjg@chromium.org> > --- > > drivers/pci/pci_common.c | 42 ------------------------------------------ > drivers/pci/pci_compat.c | 42 ++++++++++++++++++++++++++++++++++++++++++ > 2 files changed, 42 insertions(+), 42 deletions(-) > > diff --git a/drivers/pci/pci_common.c b/drivers/pci/pci_common.c > index a78a812..b46be1b 100644 > --- a/drivers/pci/pci_common.c > +++ b/drivers/pci/pci_common.c > @@ -79,48 +79,6 @@ const char *pci_class_str(u8 class) > }; > } > > -pci_dev_t pci_find_class(uint find_class, int index) > -{ > - int bus; > - int devnum; > - pci_dev_t bdf; > - uint32_t class; > - > - for (bus = 0; bus <= pci_last_busno(); bus++) { > - for (devnum = 0; devnum < PCI_MAX_PCI_DEVICES - 1; devnum++) { > - pci_read_config_dword(PCI_BDF(bus, devnum, 0), > - PCI_CLASS_REVISION, &class); > - if (class >> 16 == 0xffff) > - continue; > - > - for (bdf = PCI_BDF(bus, devnum, 0); > - bdf <= PCI_BDF(bus, devnum, > - PCI_MAX_PCI_FUNCTIONS - 1); > - bdf += PCI_BDF(0, 0, 1)) { > - pci_read_config_dword(bdf, PCI_CLASS_REVISION, > - &class); > - class >>= 8; > - > - if (class != find_class) > - continue; > - /* > - * Decrement the index. We want to return the > - * correct device, so index is 0 for the first > - * matching device, 1 for the second, etc. > - */ > - if (index) { > - index--; > - continue; > - } > - /* Return index'th controller. */ > - return bdf; > - } > - } > - } > - > - return -ENODEV; > -} > - > __weak int pci_skip_dev(struct pci_controller *hose, pci_dev_t dev) > { > /* > diff --git a/drivers/pci/pci_compat.c b/drivers/pci/pci_compat.c > index 688c98a..5f238ca 100644 > --- a/drivers/pci/pci_compat.c > +++ b/drivers/pci/pci_compat.c > @@ -87,3 +87,45 @@ pci_dev_t pci_hose_find_devices(struct pci_controller *hose, int busnum, > > return -1; > } > + > +pci_dev_t pci_find_class(uint find_class, int index) > +{ > + int bus; > + int devnum; > + pci_dev_t bdf; > + uint32_t class; > + > + for (bus = 0; bus <= pci_last_busno(); bus++) { > + for (devnum = 0; devnum < PCI_MAX_PCI_DEVICES - 1; devnum++) { > + pci_read_config_dword(PCI_BDF(bus, devnum, 0), > + PCI_CLASS_REVISION, &class); > + if (class >> 16 == 0xffff) > + continue; > + > + for (bdf = PCI_BDF(bus, devnum, 0); > + bdf <= PCI_BDF(bus, devnum, > + PCI_MAX_PCI_FUNCTIONS - 1); > + bdf += PCI_BDF(0, 0, 1)) { > + pci_read_config_dword(bdf, PCI_CLASS_REVISION, > + &class); > + class >>= 8; > + > + if (class != find_class) > + continue; > + /* > + * Decrement the index. We want to return the > + * correct device, so index is 0 for the first > + * matching device, 1 for the second, etc. > + */ > + if (index) { > + index--; > + continue; > + } > + /* Return index'th controller. */ > + return bdf; > + } > + } > + } > + > + return -ENODEV; > +} > -- Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
diff --git a/drivers/pci/pci_common.c b/drivers/pci/pci_common.c index a78a812..b46be1b 100644 --- a/drivers/pci/pci_common.c +++ b/drivers/pci/pci_common.c @@ -79,48 +79,6 @@ const char *pci_class_str(u8 class) }; } -pci_dev_t pci_find_class(uint find_class, int index) -{ - int bus; - int devnum; - pci_dev_t bdf; - uint32_t class; - - for (bus = 0; bus <= pci_last_busno(); bus++) { - for (devnum = 0; devnum < PCI_MAX_PCI_DEVICES - 1; devnum++) { - pci_read_config_dword(PCI_BDF(bus, devnum, 0), - PCI_CLASS_REVISION, &class); - if (class >> 16 == 0xffff) - continue; - - for (bdf = PCI_BDF(bus, devnum, 0); - bdf <= PCI_BDF(bus, devnum, - PCI_MAX_PCI_FUNCTIONS - 1); - bdf += PCI_BDF(0, 0, 1)) { - pci_read_config_dword(bdf, PCI_CLASS_REVISION, - &class); - class >>= 8; - - if (class != find_class) - continue; - /* - * Decrement the index. We want to return the - * correct device, so index is 0 for the first - * matching device, 1 for the second, etc. - */ - if (index) { - index--; - continue; - } - /* Return index'th controller. */ - return bdf; - } - } - } - - return -ENODEV; -} - __weak int pci_skip_dev(struct pci_controller *hose, pci_dev_t dev) { /* diff --git a/drivers/pci/pci_compat.c b/drivers/pci/pci_compat.c index 688c98a..5f238ca 100644 --- a/drivers/pci/pci_compat.c +++ b/drivers/pci/pci_compat.c @@ -87,3 +87,45 @@ pci_dev_t pci_hose_find_devices(struct pci_controller *hose, int busnum, return -1; } + +pci_dev_t pci_find_class(uint find_class, int index) +{ + int bus; + int devnum; + pci_dev_t bdf; + uint32_t class; + + for (bus = 0; bus <= pci_last_busno(); bus++) { + for (devnum = 0; devnum < PCI_MAX_PCI_DEVICES - 1; devnum++) { + pci_read_config_dword(PCI_BDF(bus, devnum, 0), + PCI_CLASS_REVISION, &class); + if (class >> 16 == 0xffff) + continue; + + for (bdf = PCI_BDF(bus, devnum, 0); + bdf <= PCI_BDF(bus, devnum, + PCI_MAX_PCI_FUNCTIONS - 1); + bdf += PCI_BDF(0, 0, 1)) { + pci_read_config_dword(bdf, PCI_CLASS_REVISION, + &class); + class >>= 8; + + if (class != find_class) + continue; + /* + * Decrement the index. We want to return the + * correct device, so index is 0 for the first + * matching device, 1 for the second, etc. + */ + if (index) { + index--; + continue; + } + /* Return index'th controller. */ + return bdf; + } + } + } + + return -ENODEV; +}
Move this function into the compatibility file so that it is not available by default. Signed-off-by: Simon Glass <sjg@chromium.org> --- drivers/pci/pci_common.c | 42 ------------------------------------------ drivers/pci/pci_compat.c | 42 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 42 insertions(+), 42 deletions(-)