0001 # SPDX-License-Identifier: GPL-2.0-only
0002 #
0003 # RapidIO configuration
0004 #
0005
0006 config HAVE_RAPIDIO
0007 bool
0008
0009 menuconfig RAPIDIO
0010 tristate "RapidIO support"
0011 depends on HAVE_RAPIDIO || PCI
0012 help
0013 If you say Y here, the kernel will include drivers and
0014 infrastructure code to support RapidIO interconnect devices.
0015
0016 source "drivers/rapidio/devices/Kconfig"
0017
0018 config RAPIDIO_DISC_TIMEOUT
0019 int "Discovery timeout duration (seconds)"
0020 depends on RAPIDIO
0021 default "30"
0022 help
0023 Amount of time a discovery node waits for a host to complete
0024 enumeration before giving up.
0025
0026 config RAPIDIO_ENABLE_RX_TX_PORTS
0027 bool "Enable RapidIO Input/Output Ports"
0028 depends on RAPIDIO
0029 help
0030 The RapidIO specification describes a Output port transmit
0031 enable and a Input port receive enable. The recommended state
0032 for Input ports and Output ports should be disabled. When
0033 this switch is set the RapidIO subsystem will enable all
0034 ports for Input/Output direction to allow other traffic
0035 than Maintenance transfers.
0036
0037 config RAPIDIO_DMA_ENGINE
0038 bool "DMA Engine support for RapidIO"
0039 depends on RAPIDIO
0040 depends on DMADEVICES
0041 select DMA_ENGINE
0042 help
0043 Say Y here if you want to use DMA Engine frameork for RapidIO data
0044 transfers to/from target RIO devices. RapidIO uses NREAD and
0045 NWRITE (NWRITE_R, SWRITE) requests to transfer data between local
0046 memory and memory on remote target device. You need a DMA controller
0047 capable to perform data transfers to/from RapidIO.
0048
0049 If you are unsure about this, say Y here.
0050
0051 config RAPIDIO_DEBUG
0052 bool "RapidIO subsystem debug messages"
0053 depends on RAPIDIO
0054 help
0055 Say Y here if you want the RapidIO subsystem to produce a bunch of
0056 debug messages to the system log. Select this if you are having a
0057 problem with the RapidIO subsystem and want to see more of what is
0058 going on.
0059
0060 If you are unsure about this, say N here.
0061
0062 choice
0063 prompt "Enumeration method"
0064 depends on RAPIDIO
0065 default RAPIDIO_ENUM_BASIC
0066 help
0067 There are different enumeration and discovery mechanisms offered
0068 for RapidIO subsystem. You may select single built-in method or
0069 or any number of methods to be built as modules.
0070 Selecting a built-in method disables use of loadable methods.
0071
0072 If unsure, select Basic built-in.
0073
0074 config RAPIDIO_ENUM_BASIC
0075 tristate "Basic"
0076 help
0077 This option includes basic RapidIO fabric enumeration and discovery
0078 mechanism similar to one described in RapidIO specification Annex 1.
0079
0080 endchoice
0081
0082 config RAPIDIO_CHMAN
0083 tristate "RapidIO Channelized Messaging driver"
0084 depends on RAPIDIO
0085 help
0086 This option includes RapidIO channelized messaging driver which
0087 provides socket-like interface to allow sharing of single RapidIO
0088 messaging mailbox between multiple user-space applications.
0089 See "Documentation/driver-api/rapidio/rio_cm.rst" for driver description.
0090
0091 config RAPIDIO_MPORT_CDEV
0092 tristate "RapidIO /dev mport device driver"
0093 depends on RAPIDIO
0094 help
0095 This option includes generic RapidIO mport device driver which
0096 allows to user space applications to perform RapidIO-specific
0097 operations through selected RapidIO mport.
0098
0099 menu "RapidIO Switch drivers"
0100 depends on RAPIDIO
0101
0102 source "drivers/rapidio/switches/Kconfig"
0103
0104 endmenu