| 1 | # SPDX-License-Identifier: GPL-2.0-only |
| 2 | |
| 3 | menuconfig TARGET_CORE |
| 4 | tristate "Generic Target Core Mod (TCM) and ConfigFS Infrastructure" |
| 5 | depends on BLOCK |
| 6 | select CONFIGFS_FS |
| 7 | select CRC_T10DIF |
| 8 | select SCSI_COMMON |
| 9 | select SGL_ALLOC |
| 10 | default n |
| 11 | help |
| 12 | Say Y or M here to enable the TCM Storage Engine and ConfigFS enabled |
| 13 | control path for target_core_mod. This includes built-in TCM RAMDISK |
| 14 | subsystem logic for virtual LUN 0 access |
| 15 | |
| 16 | if TARGET_CORE |
| 17 | |
| 18 | config TCM_IBLOCK |
| 19 | tristate "TCM/IBLOCK Subsystem Plugin for Linux/BLOCK" |
| 20 | select BLK_DEV_INTEGRITY |
| 21 | help |
| 22 | Say Y here to enable the TCM/IBLOCK subsystem plugin for non-buffered |
| 23 | access to Linux/Block devices using BIO |
| 24 | |
| 25 | config TCM_FILEIO |
| 26 | tristate "TCM/FILEIO Subsystem Plugin for Linux/VFS" |
| 27 | help |
| 28 | Say Y here to enable the TCM/FILEIO subsystem plugin for buffered |
| 29 | access to Linux/VFS struct file or struct block_device |
| 30 | |
| 31 | config TCM_PSCSI |
| 32 | tristate "TCM/pSCSI Subsystem Plugin for Linux/SCSI" |
| 33 | depends on SCSI |
| 34 | help |
| 35 | Say Y here to enable the TCM/pSCSI subsystem plugin for non-buffered |
| 36 | passthrough access to Linux/SCSI device |
| 37 | |
| 38 | config TCM_USER2 |
| 39 | tristate "TCM/USER Subsystem Plugin for Linux" |
| 40 | depends on UIO && NET |
| 41 | help |
| 42 | Say Y here to enable the TCM/USER subsystem plugin for a userspace |
| 43 | process to handle requests. This is version 2 of the ABI; version 1 |
| 44 | is obsolete. |
| 45 | |
| 46 | source "drivers/target/loopback/Kconfig" |
| 47 | source "drivers/target/tcm_fc/Kconfig" |
| 48 | source "drivers/target/iscsi/Kconfig" |
| 49 | source "drivers/target/sbp/Kconfig" |
| 50 | source "drivers/target/tcm_remote/Kconfig" |
| 51 | |
| 52 | endif |