[+cc Arnd, Rafael, Thomas, Matthew, Lorenzo] On Tue, Dec 05, 2017 at 02:39:20PM -0600, Bjorn Helgaas wrote: > [+cc Sinan] > > On Tue, Nov 28, 2017 at 02:31:21PM -0800, Randy Dunlap wrote: > > From: Randy Dunlap <rdunlap@xxxxxxxxxxxxx> > > > > The coretemp driver build fails when CONFIG_PCI is not enabled > > because it uses a function that does not have a stub for that > > config case, so add the function stub. > > > > ../drivers/hwmon/coretemp.c: In function 'adjust_tjmax': > > ../drivers/hwmon/coretemp.c:250:9: error: implicit declaration of function 'pci_get_domain_bus_and_slot' [-Werror=implicit-function-declaration] > > struct pci_dev *host_bridge = pci_get_domain_bus_and_slot(0, 0, devfn); > > ../drivers/hwmon/coretemp.c:250:32: warning: initialization makes pointer from integer without a cast [enabled by default] > > struct pci_dev *host_bridge = pci_get_domain_bus_and_slot(0, 0, devfn); > > > > Signed-off-by: Randy Dunlap <rdunlap@xxxxxxxxxxxxx> > > Applied with Guenter's ack to pci/enumeration for v4.16, thanks! > > Apparently no other code calls pci_get_domain_bus_and_slot() when > CONFIG_PCI isn't enabled. > > 15ab6790f628 ("hwmon: (coretemp) deprecate pci_get_bus_and_slot()") is > already in linux-next via hwmon-staging. > > The pci tree is merged into next slightly before hwmon-staging, so > this should be resolved as soon as the 0-day builder builds my > pci/enumeration branch and I merge it into my next branch. On Arnd's advice, I moved this to for-linus for v4.15 in case any of the conversion patches get merged before PCI during the v4.16 merge window. > > --- > > include/linux/pci.h | 3 +++ > > 1 file changed, 3 insertions(+) > > > > --- linux-next-20171128.orig/include/linux/pci.h > > +++ linux-next-20171128/include/linux/pci.h > > @@ -1660,6 +1660,9 @@ static inline struct pci_dev *pci_get_sl > > static inline struct pci_dev *pci_get_bus_and_slot(unsigned int bus, > > unsigned int devfn) > > { return NULL; } > > +static inline struct pci_dev *pci_get_domain_bus_and_slot(int domain, > > + unsigned int bus, unsigned int devfn) > > +{ return NULL; } > > > > static inline int pci_domain_nr(struct pci_bus *bus) { return 0; } > > static inline struct pci_dev *pci_dev_get(struct pci_dev *dev) { return NULL; } > > > >