xref: /linux/drivers/ufs/host/Kconfig (revision f4b369c6fe0ceaba2da2daff8c9eb415f85926dd)
1dd11376bSBart Van Assche# SPDX-License-Identifier: GPL-2.0+
2dd11376bSBart Van Assche#
3dd11376bSBart Van Assche# Kernel configuration file for the UFS host controller drivers.
4dd11376bSBart Van Assche#
5dd11376bSBart Van Assche# Copyright (C) 2011-2013 Samsung India Software Operations
6dd11376bSBart Van Assche#
7dd11376bSBart Van Assche# Authors:
8dd11376bSBart Van Assche#	Santosh Yaraganavi <santosh.sy@samsung.com>
9dd11376bSBart Van Assche#	Vinayak Holikatti <h.vinayak@samsung.com>
10dd11376bSBart Van Assche
11dd11376bSBart Van Asscheconfig SCSI_UFSHCD_PCI
12dd11376bSBart Van Assche	tristate "PCI bus based UFS Controller support"
13dd11376bSBart Van Assche	depends on PCI
14dd11376bSBart Van Assche	help
15dd11376bSBart Van Assche	  This selects the PCI UFS Host Controller Interface. Select this if
16dd11376bSBart Van Assche	  you have UFS Host Controller with PCI Interface.
17dd11376bSBart Van Assche
18dd11376bSBart Van Assche	  If you have a controller with this interface, say Y or M here.
19dd11376bSBart Van Assche
20dd11376bSBart Van Assche	  If unsure, say N.
21dd11376bSBart Van Assche
22dd11376bSBart Van Asscheconfig SCSI_UFS_DWC_TC_PCI
23dd11376bSBart Van Assche	tristate "DesignWare pci support using a G210 Test Chip"
24dd11376bSBart Van Assche	depends on SCSI_UFSHCD_PCI
25dd11376bSBart Van Assche	help
26dd11376bSBart Van Assche	  Synopsys Test Chip is a PHY for prototyping purposes.
27dd11376bSBart Van Assche
28dd11376bSBart Van Assche	  If unsure, say N.
29dd11376bSBart Van Assche
30dd11376bSBart Van Asscheconfig SCSI_UFSHCD_PLATFORM
31dd11376bSBart Van Assche	tristate "Platform bus based UFS Controller support"
32dd11376bSBart Van Assche	depends on HAS_IOMEM
33dd11376bSBart Van Assche	help
34dd11376bSBart Van Assche	  This selects the UFS host controller support. Select this if
35dd11376bSBart Van Assche	  you have an UFS controller on Platform bus.
36dd11376bSBart Van Assche
37dd11376bSBart Van Assche	  If you have a controller with this interface, say Y or M here.
38dd11376bSBart Van Assche
39dd11376bSBart Van Assche	  If unsure, say N.
40dd11376bSBart Van Assche
41dd11376bSBart Van Asscheconfig SCSI_UFS_CDNS_PLATFORM
42dd11376bSBart Van Assche	tristate "Cadence UFS Controller platform driver"
43dd11376bSBart Van Assche	depends on SCSI_UFSHCD_PLATFORM
44dd11376bSBart Van Assche	help
45dd11376bSBart Van Assche	  This selects the Cadence-specific additions to UFSHCD platform driver.
46dd11376bSBart Van Assche
47dd11376bSBart Van Assche	  If unsure, say N.
48dd11376bSBart Van Assche
49dd11376bSBart Van Asscheconfig SCSI_UFS_DWC_TC_PLATFORM
50dd11376bSBart Van Assche	tristate "DesignWare platform support using a G210 Test Chip"
51473025a6SBart Van Assche	depends on OF && SCSI_UFSHCD_PLATFORM
52dd11376bSBart Van Assche	help
53dd11376bSBart Van Assche	  Synopsys Test Chip is a PHY for prototyping purposes.
54dd11376bSBart Van Assche
55dd11376bSBart Van Assche	  If unsure, say N.
56dd11376bSBart Van Assche
57dd11376bSBart Van Asscheconfig SCSI_UFS_QCOM
58dd11376bSBart Van Assche	tristate "QCOM specific hooks to UFS controller platform driver"
59dd11376bSBart Van Assche	depends on SCSI_UFSHCD_PLATFORM && ARCH_QCOM
6049f262bcSArnd Bergmann	depends on GENERIC_MSI_IRQ
6149f262bcSArnd Bergmann	depends on RESET_CONTROLLER
6256541c7cSAbel Vesa	select QCOM_INLINE_CRYPTO_ENGINE if SCSI_UFS_CRYPTO
63dd11376bSBart Van Assche	help
64dd11376bSBart Van Assche	  This selects the QCOM specific additions to UFSHCD platform driver.
65dd11376bSBart Van Assche	  UFS host on QCOM needs some vendor specific configuration before
66dd11376bSBart Van Assche	  accessing the hardware which includes PHY configuration and vendor
67dd11376bSBart Van Assche	  specific registers.
68dd11376bSBart Van Assche
69dd11376bSBart Van Assche	  Select this if you have UFS controller on QCOM chipset.
70dd11376bSBart Van Assche	  If unsure, say N.
71dd11376bSBart Van Assche
72dd11376bSBart Van Asscheconfig SCSI_UFS_MEDIATEK
73dd11376bSBart Van Assche	tristate "Mediatek specific hooks to UFS controller platform driver"
74dd11376bSBart Van Assche	depends on SCSI_UFSHCD_PLATFORM && ARCH_MEDIATEK
75*bbb8d98fSArnd Bergmann	depends on PM
7689f7ef7fSRandy Dunlap	depends on RESET_CONTROLLER
77dd11376bSBart Van Assche	select PHY_MTK_UFS
78dd11376bSBart Van Assche	select RESET_TI_SYSCON
79dd11376bSBart Van Assche	help
80dd11376bSBart Van Assche	  This selects the Mediatek specific additions to UFSHCD platform driver.
81dd11376bSBart Van Assche	  UFS host on Mediatek needs some vendor specific configuration before
82dd11376bSBart Van Assche	  accessing the hardware which includes PHY configuration and vendor
83dd11376bSBart Van Assche	  specific registers.
84dd11376bSBart Van Assche
85dd11376bSBart Van Assche	  Select this if you have UFS controller on Mediatek chipset.
86dd11376bSBart Van Assche
87dd11376bSBart Van Assche	  If unsure, say N.
88dd11376bSBart Van Assche
89dd11376bSBart Van Asscheconfig SCSI_UFS_HISI
90dd11376bSBart Van Assche	tristate "Hisilicon specific hooks to UFS controller platform driver"
91dd11376bSBart Van Assche	depends on (ARCH_HISI || COMPILE_TEST) && SCSI_UFSHCD_PLATFORM
92dd11376bSBart Van Assche	help
93dd11376bSBart Van Assche	  This selects the Hisilicon specific additions to UFSHCD platform driver.
94dd11376bSBart Van Assche
95dd11376bSBart Van Assche	  Select this if you have UFS controller on Hisilicon chipset.
96dd11376bSBart Van Assche	  If unsure, say N.
97dd11376bSBart Van Assche
98d6952028SYoshihiro Shimodaconfig SCSI_UFS_RENESAS
99d6952028SYoshihiro Shimoda	tristate "Renesas specific hooks to UFS controller platform driver"
100d6952028SYoshihiro Shimoda	depends on (ARCH_RENESAS || COMPILE_TEST) && SCSI_UFSHCD_PLATFORM
101d6952028SYoshihiro Shimoda	help
102d6952028SYoshihiro Shimoda	  This selects the Renesas specific additions to UFSHCD platform driver.
103d6952028SYoshihiro Shimoda	  UFS host on Renesas needs some vendor specific configuration before
104d6952028SYoshihiro Shimoda	  accessing the hardware.
105d6952028SYoshihiro Shimoda
106d6952028SYoshihiro Shimoda	  Select this if you have UFS controller on Renesas chipset.
107d6952028SYoshihiro Shimoda
108d6952028SYoshihiro Shimoda	  If unsure, say N.
109d6952028SYoshihiro Shimoda
110dd11376bSBart Van Asscheconfig SCSI_UFS_TI_J721E
111dd11376bSBart Van Assche	tristate "TI glue layer for Cadence UFS Controller"
112dd11376bSBart Van Assche	depends on OF && HAS_IOMEM && (ARCH_K3 || COMPILE_TEST)
113dd11376bSBart Van Assche	help
114dd11376bSBart Van Assche	  This selects driver for TI glue layer for Cadence UFS Host
115dd11376bSBart Van Assche	  Controller IP.
116dd11376bSBart Van Assche
117dd11376bSBart Van Assche	  Selects this if you have TI platform with UFS controller.
118dd11376bSBart Van Assche	  If unsure, say N.
119dd11376bSBart Van Assche
120dd11376bSBart Van Asscheconfig SCSI_UFS_EXYNOS
121dd11376bSBart Van Assche	tristate "Exynos specific hooks to UFS controller platform driver"
122dd11376bSBart Van Assche	depends on SCSI_UFSHCD_PLATFORM && (ARCH_EXYNOS || COMPILE_TEST)
123dd11376bSBart Van Assche	help
124dd11376bSBart Van Assche	  This selects the Samsung Exynos SoC specific additions to UFSHCD
125dd11376bSBart Van Assche	  platform driver.  UFS host on Samsung Exynos SoC includes HCI and
126dd11376bSBart Van Assche	  UNIPRO layer, and associates with UFS-PHY driver.
127dd11376bSBart Van Assche
128dd11376bSBart Van Assche	  Select this if you have UFS host controller on Samsung Exynos SoC.
129dd11376bSBart Van Assche	  If unsure, say N.
130ada1e653SEric Biggers
131ada1e653SEric Biggersconfig SCSI_UFS_VARIABLE_SG_ENTRY_SIZE
132ada1e653SEric Biggers	bool
133ada1e653SEric Biggers	default y if SCSI_UFS_EXYNOS && SCSI_UFS_CRYPTO
134df7320baSZhe Wang
135df7320baSZhe Wangconfig SCSI_UFS_SPRD
136df7320baSZhe Wang	tristate "Unisoc specific hooks to UFS controller platform driver"
137df7320baSZhe Wang	depends on SCSI_UFSHCD_PLATFORM && (ARCH_SPRD || COMPILE_TEST)
138df7320baSZhe Wang	help
139df7320baSZhe Wang	  This selects the Unisoc specific additions to UFSHCD platform driver.
140df7320baSZhe Wang	  UFS host on Unisoc needs some vendor specific configuration before
141df7320baSZhe Wang	  accessing the hardware which includes PHY configuration and vendor
142df7320baSZhe Wang	  specific registers.
143df7320baSZhe Wang
144df7320baSZhe Wang	  Select this if you have UFS controller on Unisoc chipset.
145df7320baSZhe Wang	  If unsure, say N.
146d3cbe455SShawn Lin
147d3cbe455SShawn Linconfig SCSI_UFS_ROCKCHIP
148d3cbe455SShawn Lin	tristate "Rockchip UFS host controller driver"
149d3cbe455SShawn Lin	depends on SCSI_UFSHCD_PLATFORM && (ARCH_ROCKCHIP || COMPILE_TEST)
150d3cbe455SShawn Lin	help
151d3cbe455SShawn Lin	  This selects the Rockchip specific additions to UFSHCD platform driver.
152d3cbe455SShawn Lin	  UFS host on Rockchip needs some vendor specific configuration before
153d3cbe455SShawn Lin	  accessing the hardware which includes PHY configuration and vendor
154d3cbe455SShawn Lin	  specific registers.
155d3cbe455SShawn Lin
156d3cbe455SShawn Lin	  Select this if you have UFS controller on Rockchip chipset.
157d3cbe455SShawn Lin	  If unsure, say N.
158769b8b2fSSai Krishna Potthuri
159769b8b2fSSai Krishna Potthuriconfig SCSI_UFS_AMD_VERSAL2
160769b8b2fSSai Krishna Potthuri	tristate "AMD Versal Gen 2 UFS controller platform driver"
161769b8b2fSSai Krishna Potthuri	depends on SCSI_UFSHCD_PLATFORM && (ARCH_ZYNQMP || COMPILE_TEST)
162769b8b2fSSai Krishna Potthuri	help
163769b8b2fSSai Krishna Potthuri	  This selects the AMD Versal Gen 2 specific additions on top of
164769b8b2fSSai Krishna Potthuri	  the UFSHCD DWC and UFSHCD platform driver. UFS host on AMD
165769b8b2fSSai Krishna Potthuri	  Versal Gen 2 needs some vendor specific configurations like PHY
166769b8b2fSSai Krishna Potthuri	  and vendor specific register accesses before accessing the
167769b8b2fSSai Krishna Potthuri	  hardware.
168769b8b2fSSai Krishna Potthuri
169769b8b2fSSai Krishna Potthuri	  Select this if you have UFS controller on AMD Versal Gen 2 SoC.
170769b8b2fSSai Krishna Potthuri	  If unsure, say N.
171