162306a36Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only 262306a36Sopenharmony_ci# 362306a36Sopenharmony_ci# RapidIO configuration 462306a36Sopenharmony_ci# 562306a36Sopenharmony_ci 662306a36Sopenharmony_ciconfig HAVE_RAPIDIO 762306a36Sopenharmony_ci bool 862306a36Sopenharmony_ci 962306a36Sopenharmony_cimenuconfig RAPIDIO 1062306a36Sopenharmony_ci tristate "RapidIO support" 1162306a36Sopenharmony_ci depends on HAVE_RAPIDIO || PCI 1262306a36Sopenharmony_ci help 1362306a36Sopenharmony_ci If you say Y here, the kernel will include drivers and 1462306a36Sopenharmony_ci infrastructure code to support RapidIO interconnect devices. 1562306a36Sopenharmony_ci 1662306a36Sopenharmony_cisource "drivers/rapidio/devices/Kconfig" 1762306a36Sopenharmony_ci 1862306a36Sopenharmony_ciconfig RAPIDIO_DISC_TIMEOUT 1962306a36Sopenharmony_ci int "Discovery timeout duration (seconds)" 2062306a36Sopenharmony_ci depends on RAPIDIO 2162306a36Sopenharmony_ci default "30" 2262306a36Sopenharmony_ci help 2362306a36Sopenharmony_ci Amount of time a discovery node waits for a host to complete 2462306a36Sopenharmony_ci enumeration before giving up. 2562306a36Sopenharmony_ci 2662306a36Sopenharmony_ciconfig RAPIDIO_ENABLE_RX_TX_PORTS 2762306a36Sopenharmony_ci bool "Enable RapidIO Input/Output Ports" 2862306a36Sopenharmony_ci depends on RAPIDIO 2962306a36Sopenharmony_ci help 3062306a36Sopenharmony_ci The RapidIO specification describes a Output port transmit 3162306a36Sopenharmony_ci enable and a Input port receive enable. The recommended state 3262306a36Sopenharmony_ci for Input ports and Output ports should be disabled. When 3362306a36Sopenharmony_ci this switch is set the RapidIO subsystem will enable all 3462306a36Sopenharmony_ci ports for Input/Output direction to allow other traffic 3562306a36Sopenharmony_ci than Maintenance transfers. 3662306a36Sopenharmony_ci 3762306a36Sopenharmony_ciconfig RAPIDIO_DMA_ENGINE 3862306a36Sopenharmony_ci bool "DMA Engine support for RapidIO" 3962306a36Sopenharmony_ci depends on RAPIDIO 4062306a36Sopenharmony_ci depends on DMADEVICES 4162306a36Sopenharmony_ci select DMA_ENGINE 4262306a36Sopenharmony_ci help 4362306a36Sopenharmony_ci Say Y here if you want to use DMA Engine frameork for RapidIO data 4462306a36Sopenharmony_ci transfers to/from target RIO devices. RapidIO uses NREAD and 4562306a36Sopenharmony_ci NWRITE (NWRITE_R, SWRITE) requests to transfer data between local 4662306a36Sopenharmony_ci memory and memory on remote target device. You need a DMA controller 4762306a36Sopenharmony_ci capable to perform data transfers to/from RapidIO. 4862306a36Sopenharmony_ci 4962306a36Sopenharmony_ci If you are unsure about this, say Y here. 5062306a36Sopenharmony_ci 5162306a36Sopenharmony_ciconfig RAPIDIO_DEBUG 5262306a36Sopenharmony_ci bool "RapidIO subsystem debug messages" 5362306a36Sopenharmony_ci depends on RAPIDIO 5462306a36Sopenharmony_ci help 5562306a36Sopenharmony_ci Say Y here if you want the RapidIO subsystem to produce a bunch of 5662306a36Sopenharmony_ci debug messages to the system log. Select this if you are having a 5762306a36Sopenharmony_ci problem with the RapidIO subsystem and want to see more of what is 5862306a36Sopenharmony_ci going on. 5962306a36Sopenharmony_ci 6062306a36Sopenharmony_ci If you are unsure about this, say N here. 6162306a36Sopenharmony_ci 6262306a36Sopenharmony_cichoice 6362306a36Sopenharmony_ci prompt "Enumeration method" 6462306a36Sopenharmony_ci depends on RAPIDIO 6562306a36Sopenharmony_ci default RAPIDIO_ENUM_BASIC 6662306a36Sopenharmony_ci help 6762306a36Sopenharmony_ci There are different enumeration and discovery mechanisms offered 6862306a36Sopenharmony_ci for RapidIO subsystem. You may select single built-in method or 6962306a36Sopenharmony_ci or any number of methods to be built as modules. 7062306a36Sopenharmony_ci Selecting a built-in method disables use of loadable methods. 7162306a36Sopenharmony_ci 7262306a36Sopenharmony_ci If unsure, select Basic built-in. 7362306a36Sopenharmony_ci 7462306a36Sopenharmony_ciconfig RAPIDIO_ENUM_BASIC 7562306a36Sopenharmony_ci tristate "Basic" 7662306a36Sopenharmony_ci help 7762306a36Sopenharmony_ci This option includes basic RapidIO fabric enumeration and discovery 7862306a36Sopenharmony_ci mechanism similar to one described in RapidIO specification Annex 1. 7962306a36Sopenharmony_ci 8062306a36Sopenharmony_ciendchoice 8162306a36Sopenharmony_ci 8262306a36Sopenharmony_ciconfig RAPIDIO_CHMAN 8362306a36Sopenharmony_ci tristate "RapidIO Channelized Messaging driver" 8462306a36Sopenharmony_ci depends on RAPIDIO 8562306a36Sopenharmony_ci help 8662306a36Sopenharmony_ci This option includes RapidIO channelized messaging driver which 8762306a36Sopenharmony_ci provides socket-like interface to allow sharing of single RapidIO 8862306a36Sopenharmony_ci messaging mailbox between multiple user-space applications. 8962306a36Sopenharmony_ci See "Documentation/driver-api/rapidio/rio_cm.rst" for driver description. 9062306a36Sopenharmony_ci 9162306a36Sopenharmony_ciconfig RAPIDIO_MPORT_CDEV 9262306a36Sopenharmony_ci tristate "RapidIO /dev mport device driver" 9362306a36Sopenharmony_ci depends on RAPIDIO 9462306a36Sopenharmony_ci help 9562306a36Sopenharmony_ci This option includes generic RapidIO mport device driver which 9662306a36Sopenharmony_ci allows to user space applications to perform RapidIO-specific 9762306a36Sopenharmony_ci operations through selected RapidIO mport. 9862306a36Sopenharmony_ci 9962306a36Sopenharmony_cimenu "RapidIO Switch drivers" 10062306a36Sopenharmony_ci depends on RAPIDIO 10162306a36Sopenharmony_ci 10262306a36Sopenharmony_cisource "drivers/rapidio/switches/Kconfig" 10362306a36Sopenharmony_ci 10462306a36Sopenharmony_ciendmenu 105