linux/drivers/char/xillybus/Kconfig
Baoquan He 806eb9e416 char: xillybus: make XILLYBUS_OF depend on HAS_IOMEM
On s390 systems (aka mainframes), it has classic channel devices for
networking and permanent storage that are currently even more common
than PCI devices. Hence it could have a fully functional s390 kernel
with CONFIG_PCI=n, then the relevant iomem mapping functions
[including ioremap(), devm_ioremap(), etc.] are not available.

Here let XILLYBUS_OF depend on HAS_IOMEM so that it won't be built
to cause below compiling error if PCI is unset:

------
ERROR: modpost: "devm_platform_ioremap_resource" [drivers/char/xillybus/xillybus_of.ko] undefined!
------

Reported-by: kernel test robot <lkp@intel.com>
Closes: https://lore.kernel.org/oe-kbuild-all/202306211329.ticOJCSv-lkp@intel.com/
Signed-off-by: Baoquan He <bhe@redhat.com>
Acked-by: Eli Billauer <eli.billauer@gmail.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Link: https://lore.kernel.org/r/20230707135852.24292-3-bhe@redhat.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2023-08-04 15:39:39 +02:00

53 lines
1.3 KiB
Plaintext

# SPDX-License-Identifier: GPL-2.0-only
#
# Xillybus devices
#
config XILLYBUS_CLASS
tristate
config XILLYBUS
tristate "Xillybus generic FPGA interface"
depends on PCI || OF
select CRC32
select XILLYBUS_CLASS
help
Xillybus is a generic interface for peripherals designed on
programmable logic (FPGA). The driver probes the hardware for
its capabilities, and creates device files accordingly.
If unsure, say N.
if XILLYBUS
config XILLYBUS_PCIE
tristate "Xillybus over PCIe"
depends on PCI_MSI
help
Set to M if you want Xillybus to use PCI Express for communicating
with the FPGA. The module will be called xillybus_pcie.
config XILLYBUS_OF
tristate "Xillybus over Device Tree"
depends on OF && HAS_DMA && HAS_IOMEM
help
Set to M if you want Xillybus to find its resources from the
Open Firmware Flattened Device Tree. If the target is an embedded
system, say M. The module will be called xillybus_of.
endif # if XILLYBUS
# XILLYUSB doesn't depend on XILLYBUS
config XILLYUSB
tristate "XillyUSB: Xillybus generic FPGA interface for USB"
depends on USB
select CRC32
select XILLYBUS_CLASS
help
XillyUSB is the Xillybus variant which uses USB for communicating
with the FPGA.
Set to M if you want Xillybus to use USB for communicating with
the FPGA. The module will be called xillyusb.