xref: /linux/drivers/ufs/host/Kconfig (revision bbb8d98fb4536594cb104fd630ea0f7dce3771d6)
1# SPDX-License-Identifier: GPL-2.0+
2#
3# Kernel configuration file for the UFS host controller drivers.
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_UFSHCD_PCI
12	tristate "PCI bus based UFS Controller support"
13	depends on PCI
14	help
15	  This selects the PCI UFS Host Controller Interface. Select this if
16	  you have UFS Host Controller with PCI Interface.
17
18	  If you have a controller with this interface, say Y or M here.
19
20	  If unsure, say N.
21
22config SCSI_UFS_DWC_TC_PCI
23	tristate "DesignWare pci support using a G210 Test Chip"
24	depends on SCSI_UFSHCD_PCI
25	help
26	  Synopsys Test Chip is a PHY for prototyping purposes.
27
28	  If unsure, say N.
29
30config SCSI_UFSHCD_PLATFORM
31	tristate "Platform bus based UFS Controller support"
32	depends on HAS_IOMEM
33	help
34	  This selects the UFS host controller support. Select this if
35	  you have an UFS controller on Platform bus.
36
37	  If you have a controller with this interface, say Y or M here.
38
39	  If unsure, say N.
40
41config SCSI_UFS_CDNS_PLATFORM
42	tristate "Cadence UFS Controller platform driver"
43	depends on SCSI_UFSHCD_PLATFORM
44	help
45	  This selects the Cadence-specific additions to UFSHCD platform driver.
46
47	  If unsure, say N.
48
49config SCSI_UFS_DWC_TC_PLATFORM
50	tristate "DesignWare platform support using a G210 Test Chip"
51	depends on OF && SCSI_UFSHCD_PLATFORM
52	help
53	  Synopsys Test Chip is a PHY for prototyping purposes.
54
55	  If unsure, say N.
56
57config SCSI_UFS_QCOM
58	tristate "QCOM specific hooks to UFS controller platform driver"
59	depends on SCSI_UFSHCD_PLATFORM && ARCH_QCOM
60	depends on GENERIC_MSI_IRQ
61	depends on RESET_CONTROLLER
62	select QCOM_INLINE_CRYPTO_ENGINE if SCSI_UFS_CRYPTO
63	help
64	  This selects the QCOM specific additions to UFSHCD platform driver.
65	  UFS host on QCOM needs some vendor specific configuration before
66	  accessing the hardware which includes PHY configuration and vendor
67	  specific registers.
68
69	  Select this if you have UFS controller on QCOM chipset.
70	  If unsure, say N.
71
72config SCSI_UFS_MEDIATEK
73	tristate "Mediatek specific hooks to UFS controller platform driver"
74	depends on SCSI_UFSHCD_PLATFORM && ARCH_MEDIATEK
75	depends on PM
76	depends on RESET_CONTROLLER
77	select PHY_MTK_UFS
78	select RESET_TI_SYSCON
79	help
80	  This selects the Mediatek specific additions to UFSHCD platform driver.
81	  UFS host on Mediatek needs some vendor specific configuration before
82	  accessing the hardware which includes PHY configuration and vendor
83	  specific registers.
84
85	  Select this if you have UFS controller on Mediatek chipset.
86
87	  If unsure, say N.
88
89config SCSI_UFS_HISI
90	tristate "Hisilicon specific hooks to UFS controller platform driver"
91	depends on (ARCH_HISI || COMPILE_TEST) && SCSI_UFSHCD_PLATFORM
92	help
93	  This selects the Hisilicon specific additions to UFSHCD platform driver.
94
95	  Select this if you have UFS controller on Hisilicon chipset.
96	  If unsure, say N.
97
98config SCSI_UFS_RENESAS
99	tristate "Renesas specific hooks to UFS controller platform driver"
100	depends on (ARCH_RENESAS || COMPILE_TEST) && SCSI_UFSHCD_PLATFORM
101	help
102	  This selects the Renesas specific additions to UFSHCD platform driver.
103	  UFS host on Renesas needs some vendor specific configuration before
104	  accessing the hardware.
105
106	  Select this if you have UFS controller on Renesas chipset.
107
108	  If unsure, say N.
109
110config SCSI_UFS_TI_J721E
111	tristate "TI glue layer for Cadence UFS Controller"
112	depends on OF && HAS_IOMEM && (ARCH_K3 || COMPILE_TEST)
113	help
114	  This selects driver for TI glue layer for Cadence UFS Host
115	  Controller IP.
116
117	  Selects this if you have TI platform with UFS controller.
118	  If unsure, say N.
119
120config SCSI_UFS_EXYNOS
121	tristate "Exynos specific hooks to UFS controller platform driver"
122	depends on SCSI_UFSHCD_PLATFORM && (ARCH_EXYNOS || COMPILE_TEST)
123	help
124	  This selects the Samsung Exynos SoC specific additions to UFSHCD
125	  platform driver.  UFS host on Samsung Exynos SoC includes HCI and
126	  UNIPRO layer, and associates with UFS-PHY driver.
127
128	  Select this if you have UFS host controller on Samsung Exynos SoC.
129	  If unsure, say N.
130
131config SCSI_UFS_VARIABLE_SG_ENTRY_SIZE
132	bool
133	default y if SCSI_UFS_EXYNOS && SCSI_UFS_CRYPTO
134
135config SCSI_UFS_SPRD
136	tristate "Unisoc specific hooks to UFS controller platform driver"
137	depends on SCSI_UFSHCD_PLATFORM && (ARCH_SPRD || COMPILE_TEST)
138	help
139	  This selects the Unisoc specific additions to UFSHCD platform driver.
140	  UFS host on Unisoc needs some vendor specific configuration before
141	  accessing the hardware which includes PHY configuration and vendor
142	  specific registers.
143
144	  Select this if you have UFS controller on Unisoc chipset.
145	  If unsure, say N.
146
147config SCSI_UFS_ROCKCHIP
148	tristate "Rockchip UFS host controller driver"
149	depends on SCSI_UFSHCD_PLATFORM && (ARCH_ROCKCHIP || COMPILE_TEST)
150	help
151	  This selects the Rockchip specific additions to UFSHCD platform driver.
152	  UFS host on Rockchip needs some vendor specific configuration before
153	  accessing the hardware which includes PHY configuration and vendor
154	  specific registers.
155
156	  Select this if you have UFS controller on Rockchip chipset.
157	  If unsure, say N.
158
159config SCSI_UFS_AMD_VERSAL2
160	tristate "AMD Versal Gen 2 UFS controller platform driver"
161	depends on SCSI_UFSHCD_PLATFORM && (ARCH_ZYNQMP || COMPILE_TEST)
162	help
163	  This selects the AMD Versal Gen 2 specific additions on top of
164	  the UFSHCD DWC and UFSHCD platform driver. UFS host on AMD
165	  Versal Gen 2 needs some vendor specific configurations like PHY
166	  and vendor specific register accesses before accessing the
167	  hardware.
168
169	  Select this if you have UFS controller on AMD Versal Gen 2 SoC.
170	  If unsure, say N.
171