1ec8f24b7SThomas Gleixner# SPDX-License-Identifier: GPL-2.0-only 2394b701cSMatt Porter# 3394b701cSMatt Porter# RapidIO configuration 4394b701cSMatt Porter# 51753d50cSChristoph Hellwig 61753d50cSChristoph Hellwigconfig HAVE_RAPIDIO 71753d50cSChristoph Hellwig bool 81753d50cSChristoph Hellwig 91753d50cSChristoph Hellwigmenuconfig RAPIDIO 101753d50cSChristoph Hellwig tristate "RapidIO support" 111753d50cSChristoph Hellwig depends on HAVE_RAPIDIO || PCI 121753d50cSChristoph Hellwig help 131753d50cSChristoph Hellwig If you say Y here, the kernel will include drivers and 141753d50cSChristoph Hellwig infrastructure code to support RapidIO interconnect devices. 151753d50cSChristoph Hellwig 1648618fb4SAlexandre Bouninesource "drivers/rapidio/devices/Kconfig" 1748618fb4SAlexandre Bounine 18394b701cSMatt Porterconfig RAPIDIO_DISC_TIMEOUT 19394b701cSMatt Porter int "Discovery timeout duration (seconds)" 20394b701cSMatt Porter depends on RAPIDIO 21394b701cSMatt Porter default "30" 22a7f7f624SMasahiro Yamada help 23394b701cSMatt Porter Amount of time a discovery node waits for a host to complete 2409509603SMatt LaPlante enumeration before giving up. 2507590ff0SAlexandre Bounine 26933af4a6SThomas Mollconfig RAPIDIO_ENABLE_RX_TX_PORTS 27933af4a6SThomas Moll bool "Enable RapidIO Input/Output Ports" 28933af4a6SThomas Moll depends on RAPIDIO 29a7f7f624SMasahiro Yamada help 30933af4a6SThomas Moll The RapidIO specification describes a Output port transmit 31933af4a6SThomas Moll enable and a Input port receive enable. The recommended state 32933af4a6SThomas Moll for Input ports and Output ports should be disabled. When 33933af4a6SThomas Moll this switch is set the RapidIO subsystem will enable all 34933af4a6SThomas Moll ports for Input/Output direction to allow other traffic 35933af4a6SThomas Moll than Maintenance transfers. 36933af4a6SThomas Moll 37e42d98ebSAlexandre Bounineconfig RAPIDIO_DMA_ENGINE 38e42d98ebSAlexandre Bounine bool "DMA Engine support for RapidIO" 39e42d98ebSAlexandre Bounine depends on RAPIDIO 40*d2b86100SLaurent Pinchart depends on DMADEVICES 41e42d98ebSAlexandre Bounine select DMA_ENGINE 42e42d98ebSAlexandre Bounine help 43e42d98ebSAlexandre Bounine Say Y here if you want to use DMA Engine frameork for RapidIO data 44e42d98ebSAlexandre Bounine transfers to/from target RIO devices. RapidIO uses NREAD and 45e42d98ebSAlexandre Bounine NWRITE (NWRITE_R, SWRITE) requests to transfer data between local 46e42d98ebSAlexandre Bounine memory and memory on remote target device. You need a DMA controller 47e42d98ebSAlexandre Bounine capable to perform data transfers to/from RapidIO. 48e42d98ebSAlexandre Bounine 49e42d98ebSAlexandre Bounine If you are unsure about this, say Y here. 50e42d98ebSAlexandre Bounine 51011507e4SAlexandre Bounineconfig RAPIDIO_DEBUG 52011507e4SAlexandre Bounine bool "RapidIO subsystem debug messages" 53011507e4SAlexandre Bounine depends on RAPIDIO 54011507e4SAlexandre Bounine help 55011507e4SAlexandre Bounine Say Y here if you want the RapidIO subsystem to produce a bunch of 56011507e4SAlexandre Bounine debug messages to the system log. Select this if you are having a 57011507e4SAlexandre Bounine problem with the RapidIO subsystem and want to see more of what is 58011507e4SAlexandre Bounine going on. 59011507e4SAlexandre Bounine 60011507e4SAlexandre Bounine If you are unsure about this, say N here. 6148618fb4SAlexandre Bounine 62a11650e1SAlexandre Bouninechoice 63a11650e1SAlexandre Bounine prompt "Enumeration method" 64a11650e1SAlexandre Bounine depends on RAPIDIO 65a11650e1SAlexandre Bounine default RAPIDIO_ENUM_BASIC 66a11650e1SAlexandre Bounine help 67a11650e1SAlexandre Bounine There are different enumeration and discovery mechanisms offered 68a11650e1SAlexandre Bounine for RapidIO subsystem. You may select single built-in method or 69a11650e1SAlexandre Bounine or any number of methods to be built as modules. 70a11650e1SAlexandre Bounine Selecting a built-in method disables use of loadable methods. 71a11650e1SAlexandre Bounine 72a11650e1SAlexandre Bounine If unsure, select Basic built-in. 73a11650e1SAlexandre Bounine 74a11650e1SAlexandre Bounineconfig RAPIDIO_ENUM_BASIC 75a11650e1SAlexandre Bounine tristate "Basic" 76a11650e1SAlexandre Bounine help 77a11650e1SAlexandre Bounine This option includes basic RapidIO fabric enumeration and discovery 78a11650e1SAlexandre Bounine mechanism similar to one described in RapidIO specification Annex 1. 79a11650e1SAlexandre Bounine 80a11650e1SAlexandre Bounineendchoice 81a11650e1SAlexandre Bounine 82b6e8d4aaSAlexandre Bounineconfig RAPIDIO_CHMAN 83b6e8d4aaSAlexandre Bounine tristate "RapidIO Channelized Messaging driver" 84b6e8d4aaSAlexandre Bounine depends on RAPIDIO 85b6e8d4aaSAlexandre Bounine help 86b6e8d4aaSAlexandre Bounine This option includes RapidIO channelized messaging driver which 87b6e8d4aaSAlexandre Bounine provides socket-like interface to allow sharing of single RapidIO 88b6e8d4aaSAlexandre Bounine messaging mailbox between multiple user-space applications. 89d2bdd48aSMauro Carvalho Chehab See "Documentation/driver-api/rapidio/rio_cm.rst" for driver description. 90b6e8d4aaSAlexandre Bounine 91e8de3701SAlexandre Bounineconfig RAPIDIO_MPORT_CDEV 92e8de3701SAlexandre Bounine tristate "RapidIO /dev mport device driver" 93e8de3701SAlexandre Bounine depends on RAPIDIO 94e8de3701SAlexandre Bounine help 95e8de3701SAlexandre Bounine This option includes generic RapidIO mport device driver which 96e8de3701SAlexandre Bounine allows to user space applications to perform RapidIO-specific 97e8de3701SAlexandre Bounine operations through selected RapidIO mport. 98e8de3701SAlexandre Bounine 992ec3ba69SAlexandre Bouninemenu "RapidIO Switch drivers" 1002ec3ba69SAlexandre Bounine depends on RAPIDIO 1012ec3ba69SAlexandre Bounine 10248618fb4SAlexandre Bouninesource "drivers/rapidio/switches/Kconfig" 1032ec3ba69SAlexandre Bounine 1042ec3ba69SAlexandre Bounineendmenu 105