net: mana: fix PCI_HYPERV dependency
authorArnd Bergmann <arnd@arndb.de>
Thu, 22 Apr 2021 13:34:34 +0000 (15:34 +0200)
committerDavid S. Miller <davem@davemloft.net>
Thu, 22 Apr 2021 20:22:28 +0000 (13:22 -0700)
The MANA driver causes a build failure in some configurations when
it selects an unavailable symbol:

WARNING: unmet direct dependencies detected for PCI_HYPERV
  Depends on [n]: PCI [=y] && X86_64 [=y] && HYPERV [=n] && PCI_MSI [=y] && PCI_MSI_IRQ_DOMAIN [=y] && SYSFS [=y]
  Selected by [y]:
  - MICROSOFT_MANA [=y] && NETDEVICES [=y] && ETHERNET [=y] && NET_VENDOR_MICROSOFT [=y] && PCI_MSI [=y] && X86_64 [=y]
drivers/pci/controller/pci-hyperv.c: In function 'hv_irq_unmask':
drivers/pci/controller/pci-hyperv.c:1217:9: error: implicit declaration of function 'hv_set_msi_entry_from_desc' [-Werror=implicit-function-declaration]
 1217 |         hv_set_msi_entry_from_desc(&params->int_entry.msi_entry, msi_desc);
      |         ^~~~~~~~~~~~~~~~~~~~~~~~~~

A PCI driver should never depend on a particular host bridge
implementation in the first place, but if we have this dependency
it's better to express it as a 'depends on' rather than 'select'.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Dexuan Cui <decui@microsoft.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/microsoft/Kconfig

index e1ac0a5d808db6b6a513281b7a6370ba8f602500..fe4e7a7d9c0b5647e40b8362195bf41d26ed2a95 100644 (file)
@@ -18,7 +18,7 @@ if NET_VENDOR_MICROSOFT
 config MICROSOFT_MANA
        tristate "Microsoft Azure Network Adapter (MANA) support"
        depends on PCI_MSI && X86_64
-       select PCI_HYPERV
+       depends on PCI_HYPERV
        help
          This driver supports Microsoft Azure Network Adapter (MANA).
          So far, the driver is only supported on X86_64.