xref: /OK3568_Linux_fs/kernel/drivers/soc/rockchip/Kconfig (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1# SPDX-License-Identifier: GPL-2.0-only
2if ARCH_ROCKCHIP || COMPILE_TEST
3
4menu "Rockchip SoC drivers"
5
6source "drivers/soc/rockchip/Kconfig.cpu"
7
8#
9# Rockchip Android Features
10#
11
12config NO_GKI
13	bool "Disable Android GKI support"
14	default y if !GKI_HACKS_TO_FIX
15	help
16	  Say y here to disable Android GKI support. Then
17	  all the ABI compatibilities are not applicable.
18
19	  If unsure, say Y.
20
21#
22# Rockchip Soc drivers
23#
24
25config ROCKCHIP_AMP
26	tristate "Rockchip AMP support"
27	help
28	  Say y here to enable Rockchip AMP support.
29	  This option protects resources used by AMP.
30
31config ROCKCHIP_ARM64_ALIGN_FAULT_FIX
32	bool "Rockchip align fault fix support"
33	depends on ARM64 && NO_GKI
34	help
35	  Say y here to enable Rockchip align fault fix support.
36
37config ROCKCHIP_CPUINFO
38	tristate "Rockchip cpuinfo support"
39	depends on (ROCKCHIP_EFUSE || ROCKCHIP_OTP) && (ARM64 || ARM)
40	help
41	  Say y here to enable Rockchip cpuinfo support.
42	  Set system_serial_low/high from eFuse ID.
43	  Serial can read from /proc/cpuinfo.
44
45	  If unsure, say N.
46
47config ROCKCHIP_GRF
48	tristate "Rockchip General Register Files support"
49	help
50	  The General Register Files are a central component providing
51	  special additional settings registers for a lot of soc-components.
52	  In a lot of cases there also need to be default settings initialized
53	  to make some of them conform to expectations of the kernel.
54
55config ROCKCHIP_HW_DECOMPRESS
56	bool "Rockchip HardWare Decompress Support"
57	help
58	  This driver support Decompress IP built-in Rockchip SoC, support
59	  LZ4, GZIP, ZLIB.
60
61config ROCKCHIP_HW_DECOMPRESS_USER
62	tristate "Rockchip HardWare Decompress User Interface Support"
63	default n
64	select ROCKCHIP_HW_DECOMPRESS
65	help
66	  This driver support user invokes the Decompress IP built-in Rockchip SoC, support
67	  LZ4, GZIP, ZLIB.
68
69config ROCKCHIP_IODOMAIN
70	tristate "Rockchip IO domain support"
71	depends on OF
72	help
73	  Say y here to enable support io domains on Rockchip SoCs. It is
74	  necessary for the io domain setting of the SoC to match the
75	  voltage supplied by the regulators.
76
77config ROCKCHIP_IOMUX
78	tristate "Rockchip IOMUX ioctl support"
79	depends on PINCTRL_ROCKCHIP
80	help
81	  This is the debug option for rockchip pinctrl driver by add a device
82	  /dev/iomux to set or get iomux.
83
84	  If unsure, say N.
85
86config ROCKCHIP_IPA
87	tristate "Rockchip IPA support"
88	depends on THERMAL && OF
89	help
90	  Say y here to enable rockchip IPA.
91	  Add a simple power model for ipa to calculate static power and
92	  dynamic power.
93
94	  If unsure, say N.
95
96config ROCKCHIP_OPP
97	tristate "Rockchip OPP select support"
98	depends on PM_DEVFREQ
99	help
100	  Say y here to enable rockchip OPP support.
101
102config ROCKCHIP_OPTIMIZE_RT_PRIO
103	bool "Rockchip optimize prio for kernel RT thread and kworker"
104	depends on NO_GKI
105	help
106	  In some cases, there are too much userspace high priority RT threads, which
107	  cause kernel RT threads or kworkers block too long time. This config separate
108	  kernel and userspace RT threads into two priority regions, priority 0~49 for
109	  kernel and priority 50~99 for userspace, so that kernel RT threads is always
110	  higher priority than userspace. This config also set RT policy for kworkers.
111
112config ROCKCHIP_PERFORMANCE
113	bool "Rockchip performance configuration support"
114	depends on NO_GKI
115	help
116	  This config aims to support different requests between power consumption
117	  and performance.
118
119config ROCKCHIP_PERFORMANCE_LEVEL
120	int "Rockchip performance default level"
121	depends on ROCKCHIP_PERFORMANCE
122	range 0 2
123	default 1
124	help
125	  Select default performance level:
126
127	  0 for low-performance (powersave),
128	  1 for normal performance,
129	  2 for high-performance.
130
131	  This can also be changed at runtime (via the level module parameter).
132
133config ROCKCHIP_PM_DOMAINS
134        tristate "Rockchip generic power domain"
135        depends on PM
136        select PM_GENERIC_DOMAINS
137        help
138          Say y here to enable power domain support.
139          In order to meet high performance and low power requirements, a power
140          management unit is designed or saving power when RK3288 in low power
141          mode. The RK3288 PMU is dedicated for managing the power of the whole chip.
142
143          If unsure, say N.
144
145config ROCKCHIP_PVTM
146	tristate "Rockchip PVTM support"
147	help
148	  Say y here to enable pvtm support.
149	  The Process-Voltage-Temperature Monitor (PVTM) is used to monitor
150	  the chip performance variance caused by chip process, voltage and
151	  temperature.
152
153config ROCKCHIP_RAMDISK
154	bool "Rockchip RAM disk support"
155	help
156	  Saying Y here will allow you to use reserved RAM memory as a block
157	  device.
158
159config ROCKCHIP_SUSPEND_MODE
160	tristate "Rockchip suspend mode config"
161	depends on ROCKCHIP_SIP
162	help
163	  Say Y here if you want to set the suspend mode to the ATF.
164
165config ROCKCHIP_SYSTEM_MONITOR
166	tristate "Rockchip system monitor support"
167	help
168	  Say y here to enable rockchip system monitor support.
169
170config ROCKCHIP_VENDOR_STORAGE
171	tristate "Rockchip vendor storage support"
172	help
173	  Say y here to enable rockchip vendor storage support.
174
175config ROCKCHIP_MMC_VENDOR_STORAGE
176	tristate "Rockchip mmc vendor storage support"
177	depends on ROCKCHIP_VENDOR_STORAGE && MMC
178	help
179	  Say y here to enable rockchip mmc vendor storage support.
180
181config ROCKCHIP_FLASH_VENDOR_STORAGE
182	tristate "Rockchip flash vendor storage support"
183	depends on ROCKCHIP_VENDOR_STORAGE && RK_FLASH
184	help
185	  Say y here to enable rockchip flash vendor storage support.
186
187config ROCKCHIP_MTD_VENDOR_STORAGE
188	tristate "Rockchip mtd vendor storage support"
189	depends on ROCKCHIP_VENDOR_STORAGE && MTD
190	help
191	  Say y here to enable rockchip mtd vendor storage support.
192
193config ROCKCHIP_RAM_VENDOR_STORAGE
194	tristate "Rockchip ram vendor storage support"
195	depends on ROCKCHIP_VENDOR_STORAGE
196	help
197	  Say y here to enable rockchip ram vendor storage support.
198
199config ROCKCHIP_VENDOR_STORAGE_UPDATE_LOADER
200	bool "Rockchip vendor storage update loader support"
201	default n
202	help
203	  Say y here to enable rockchip vendor storage update loader support.
204	  The /dev/vendor_storage must set root user access only.
205
206menu "FIQ Debugger"
207source "drivers/soc/rockchip/fiq_debugger/Kconfig"
208endmenu
209
210config ROCKCHIP_DEBUG
211	tristate "Rockchip DEBUG"
212	help
213	  Print dbgpcsr for every cpu when panic.
214
215config ROCKCHIP_MINI_KERNEL
216	bool "Rockchip Mini Kernel support"
217	select NO_GKI
218	default y if CPU_RV1106 || CPU_RV1126
219	help
220	  Say y here to enable Rockchip mini kernel support.
221	  This option make the kernel size smaller.
222
223config ROCKCHIP_THUNDER_BOOT
224	bool "Rockchip Thunder Boot support"
225	depends on NO_GKI
226	help
227	  Say y here to enable Rockchip thunder boot support.
228	  This option make the kernel boot faster.
229
230config ROCKCHIP_THUNDER_BOOT_MMC
231	bool "Rockchip Thunder Boot from MMC"
232	depends on ROCKCHIP_THUNDER_BOOT
233	help
234	  Say y if boot from MMC.
235
236config ROCKCHIP_THUNDER_BOOT_SFC
237	bool "Rockchip Thunder Boot from SFC"
238	depends on ROCKCHIP_THUNDER_BOOT
239	help
240	  Say y if boot from SPI Flash from SFC controller.
241
242config ROCKCHIP_THUNDER_BOOT_SERVICE
243	bool "Rockchip Thunder Boot Service"
244	depends on ROCKCHIP_THUNDER_BOOT
245	depends on MAILBOX
246	help
247	  Say y if MCU need to notify AP.
248
249config ROCKCHIP_NPOR_POWERGOOD
250	bool "Rockchip NPOR Powergood"
251	help
252	  Say y if SOC integrate ROCKCHIP NPOR Powergood.
253
254#
255# Rockchip Procfs drivers
256#
257
258config RK_CMA_PROCFS
259	tristate "CMA procfs interface"
260	depends on CMA && PROC_FS
261	help
262	  Turns on the ProcFS interface for CMA, shows the bitmap in hex
263	  format.
264
265config RK_DMABUF_PROCFS
266	tristate "DMABUF procfs support"
267	depends on DMA_SHARED_BUFFER
268	depends on PROC_FS
269	help
270	  Turns on this to create a procfs debug interface for dma-buf, support
271	  get information from db_list by get_each_dmabuf.
272
273	  If unsure, say "N".
274
275config RK_MEMBLOCK_PROCFS
276	bool "Memblock procfs for reserved memory"
277	depends on PROC_FS && ARCH_KEEP_MEMBLOCK
278	help
279	  Extend memblock procfs to show size of each memblock, and shows the
280	  result of total size by KiB format.
281
282source "drivers/soc/rockchip/minidump/Kconfig"
283
284endmenu
285
286endif
287