
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>
1.3 KiB
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.