• Arnd Bergmann's avatar
    scsi: cxgb4i: fix thermal configuration dependencies · 8d0bb86e
    Arnd Bergmann authored
    I fixed a bug by adding a dependency in the network driver, but that fix
    caused a related bug in the SCSI driver:
    
    WARNING: unmet direct dependencies detected for CHELSIO_T4
      Depends on [m]: NETDEVICES [=y] && ETHERNET [=y] && NET_VENDOR_CHELSIO [=y] && PCI [=y] && (IPV6 [=y] || IPV6 [=y]=n) && (THERMAL [=m] || !THERMAL [=m])
      Selected by [y]:
      - SCSI_CXGB4_ISCSI [=y] && SCSI_LOWLEVEL [=y] && SCSI [=y] && PCI [=y] && INET [=y] && (IPV6 [=y] || IPV6 [=y]=n)
    drivers/net/ethernet/chelsio/cxgb4/cxgb4_thermal.o: In function `cxgb4_thermal_init':
    cxgb4_thermal.c:(.text+0x158): undefined reference to `thermal_zone_device_register'
    drivers/net/ethernet/chelsio/cxgb4/cxgb4_thermal.o: In function `cxgb4_thermal_remove':
    cxgb4_thermal.c:(.text+0x1d8): undefined reference to `thermal_zone_device_unregister'
    /git/arm-soc/Makefile:1042: recipe for target 'vmlinux' failed
    
    The same dependency needs to be propagated here to make it work correctly
    with CONFIG_THERMAL=m and SCSI_CXGB4_ISCSI=y. That change by itself causes
    another problem with a circular dependency, as we use 'select NETDEVICES'.
    This is something we really should not do anyway, as a driver symbol should
    never select another major subsystem, so let's turn that into a 'depends
    on'. I don't see any downsides of that, as NETDEVICES is only disabled in
    rather obscure cases that are not relevant to the users of cxgb4i.
    
    Fixes: e70a57fa ("cxgb4: fix thermal configuration dependencies")
    Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
    Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
    8d0bb86e
Kconfig 327 Bytes