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