Matias Bjørling | cd9e980 | 2015-10-28 19:54:55 +0100 | [diff] [blame] | 1 | # |
| 2 | # Open-Channel SSD NVM configuration |
| 3 | # |
| 4 | |
| 5 | menuconfig NVM |
| 6 | bool "Open-Channel SSD target support" |
Greg Kroah-Hartman | 08cf860 | 2022-04-29 11:31:23 +0200 | [diff] [blame] | 7 | depends on BLOCK && HAS_DMA && BROKEN |
Matias Bjørling | cd9e980 | 2015-10-28 19:54:55 +0100 | [diff] [blame] | 8 | help |
| 9 | Say Y here to get to enable Open-channel SSDs. |
| 10 | |
| 11 | Open-Channel SSDs implement a set of extension to SSDs, that |
| 12 | exposes direct access to the underlying non-volatile memory. |
| 13 | |
| 14 | If you say N, all options in this submenu will be skipped and disabled |
| 15 | only do this if you know what you are doing. |
| 16 | |
| 17 | if NVM |
| 18 | |
| 19 | config NVM_DEBUG |
| 20 | bool "Open-Channel SSD debugging support" |
Matias Bjørling | 4158624 | 2015-12-06 11:25:51 +0100 | [diff] [blame] | 21 | default n |
Matias Bjørling | cd9e980 | 2015-10-28 19:54:55 +0100 | [diff] [blame] | 22 | ---help--- |
| 23 | Exposes a debug management interface to create/remove targets at: |
| 24 | |
| 25 | /sys/module/lnvm/parameters/configure_debug |
| 26 | |
| 27 | It is required to create/remove targets without IOCTLs. |
| 28 | |
Matias Bjørling | 48add0f | 2015-10-28 19:54:56 +0100 | [diff] [blame] | 29 | config NVM_GENNVM |
Matias Bjørling | 5e60edb | 2016-07-07 09:54:15 +0200 | [diff] [blame] | 30 | tristate "General Non-Volatile Memory Manager for Open-Channel SSDs" |
Matias Bjørling | 48add0f | 2015-10-28 19:54:56 +0100 | [diff] [blame] | 31 | ---help--- |
Matias Bjørling | 5e60edb | 2016-07-07 09:54:15 +0200 | [diff] [blame] | 32 | Non-volatile memory media manager for Open-Channel SSDs that implements |
| 33 | physical media metadata management and block provisioning API. |
| 34 | |
| 35 | This is the standard media manager for using Open-Channel SSDs, and |
| 36 | required for targets to be instantiated. |
Matias Bjørling | 48add0f | 2015-10-28 19:54:56 +0100 | [diff] [blame] | 37 | |
Matias Bjørling | ae1519e | 2015-10-28 19:54:57 +0100 | [diff] [blame] | 38 | config NVM_RRPC |
| 39 | tristate "Round-robin Hybrid Open-Channel SSD target" |
| 40 | ---help--- |
| 41 | Allows an open-channel SSD to be exposed as a block device to the |
| 42 | host. The target is implemented using a linear mapping table and |
| 43 | cost-based garbage collection. It is optimized for 4K IO sizes. |
| 44 | |
Matias Bjørling | cd9e980 | 2015-10-28 19:54:55 +0100 | [diff] [blame] | 45 | endif # NVM |