1# SPDX-License-Identifier: GPL-2.0+
2#
3# Kernel configuration file for the UFS Host Controller core.
4#
5# Copyright (C) 2011-2013 Samsung India Software Operations
6#
7# Authors:
8#	Santosh Yaraganavi <santosh.sy@samsung.com>
9#	Vinayak Holikatti <h.vinayak@samsung.com>
10
11config SCSI_UFS_BSG
12	bool "Universal Flash Storage BSG device node"
13	select BLK_DEV_BSGLIB
14	help
15	  Universal Flash Storage (UFS) is SCSI transport specification for
16	  accessing flash storage on digital cameras, mobile phones and
17	  consumer electronic devices.
18	  A UFS controller communicates with a UFS device by exchanging
19	  UFS Protocol Information Units (UPIUs).
20	  UPIUs can not only be used as a transport layer for the SCSI protocol
21	  but are also used by the UFS native command set.
22	  This transport driver supports exchanging UFS protocol information units
23	  with a UFS device. See also the ufshcd driver, which is a SCSI driver
24	  that supports UFS devices.
25
26	  Select this if you need a bsg device node for your UFS controller.
27	  If unsure, say N.
28
29config SCSI_UFS_CRYPTO
30	bool "UFS Crypto Engine Support"
31	depends on BLK_INLINE_ENCRYPTION
32	help
33	  Enable Crypto Engine Support in UFS.
34	  Enabling this makes it possible for the kernel to use the crypto
35	  capabilities of the UFS device (if present) to perform crypto
36	  operations on data being transferred to/from the device.
37
38config SCSI_UFS_FAULT_INJECTION
39	bool "UFS Fault Injection Support"
40	depends on FAULT_INJECTION
41	help
42	  Enable fault injection support in the UFS driver. This makes it easier
43	  to test the UFS error handler and abort handler.
44
45config SCSI_UFS_HWMON
46	bool "UFS Temperature Notification"
47	depends on SCSI_UFSHCD=HWMON || HWMON=y
48	help
49	  This provides support for UFS hardware monitoring. If enabled,
50	  a hardware monitoring device will be created for the UFS device.
51
52	  If unsure, say N.
53