358 lines
		
	
	
		
			10 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
			
		
		
	
	
			358 lines
		
	
	
		
			10 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
	
	
| # SPDX-License-Identifier: GPL-2.0-only
 | |
| if ARCH_ROCKCHIP || COMPILE_TEST
 | |
| 
 | |
| menu "Rockchip SoC drivers"
 | |
| 
 | |
| source "drivers/soc/rockchip/Kconfig.cpu"
 | |
| 
 | |
| #
 | |
| # Rockchip Android Features
 | |
| #
 | |
| 
 | |
| config NO_GKI
 | |
| 	bool "Disable Android GKI support"
 | |
| 	default y if !GKI_HACKS_TO_FIX
 | |
| 	help
 | |
| 	  Say y here to disable Android GKI support. Then
 | |
| 	  all the ABI compatibilities are not applicable.
 | |
| 
 | |
| 	  If unsure, say Y.
 | |
| 
 | |
| config ROCKCHIP_DISABLE_UNUSED
 | |
| 	tristate "Rockchip Disable Unused"
 | |
| 	default m if GKI_HACKS_TO_FIX
 | |
| 	help
 | |
| 	  Disable unused clk and power down after module init.
 | |
| 
 | |
| 	  If unsure, say "N".
 | |
| 
 | |
| #
 | |
| # Rockchip Soc drivers
 | |
| #
 | |
| 
 | |
| config ROCKCHIP_AMP
 | |
| 	tristate "Rockchip AMP support"
 | |
| 	help
 | |
| 	  Say y here to enable Rockchip AMP support.
 | |
| 	  This option protects resources used by AMP.
 | |
| 
 | |
| config ROCKCHIP_ARM64_ALIGN_FAULT_FIX
 | |
| 	bool "Rockchip align fault fix support"
 | |
| 	depends on ARM64 && NO_GKI
 | |
| 	help
 | |
| 	  Say y here to enable Rockchip align fault fix support.
 | |
| 
 | |
| config ROCKCHIP_CPUINFO
 | |
| 	tristate "Rockchip cpuinfo support"
 | |
| 	depends on (NVMEM_ROCKCHIP_EFUSE || NVMEM_ROCKCHIP_OTP) && (ARM64 || ARM)
 | |
| 	help
 | |
| 	  Say y here to enable Rockchip cpuinfo support.
 | |
| 	  Set system_serial_low/high from eFuse ID.
 | |
| 	  Serial can read from /proc/cpuinfo.
 | |
| 
 | |
| 	  If unsure, say N.
 | |
| 
 | |
| config ROCKCHIP_CSU
 | |
| 	tristate "Rockchip Clock Subunit Driver"
 | |
| 	depends on ARCH_ROCKCHIP
 | |
| 	help
 | |
| 	  This adds the clock subunit driver for Rockchip SoCs.
 | |
| 
 | |
| config ROCKCHIP_GRF
 | |
| 	tristate "Rockchip General Register Files support"
 | |
| 	help
 | |
| 	  The General Register Files are a central component providing
 | |
| 	  special additional settings registers for a lot of soc-components.
 | |
| 	  In a lot of cases there also need to be default settings initialized
 | |
| 	  to make some of them conform to expectations of the kernel.
 | |
| 
 | |
| config ROCKCHIP_HW_DECOMPRESS
 | |
| 	bool "Rockchip HardWare Decompress Support"
 | |
| 	help
 | |
| 	  This driver support Decompress IP built-in Rockchip SoC, support
 | |
| 	  LZ4, GZIP, ZLIB.
 | |
| 
 | |
| config ROCKCHIP_HW_DECOMPRESS_USER
 | |
| 	tristate "Rockchip HardWare Decompress User Interface Support"
 | |
| 	default n
 | |
| 	select ROCKCHIP_HW_DECOMPRESS
 | |
| 	help
 | |
| 	  This driver support user invokes the Decompress IP built-in Rockchip SoC, support
 | |
| 	  LZ4, GZIP, ZLIB.
 | |
| 
 | |
| config ROCKCHIP_IODOMAIN
 | |
| 	tristate "Rockchip IO domain support"
 | |
| 	depends on OF
 | |
| 	help
 | |
| 	  Say y here to enable support io domains on Rockchip SoCs. It is
 | |
| 	  necessary for the io domain setting of the SoC to match the
 | |
| 	  voltage supplied by the regulators.
 | |
| 
 | |
| config ROCKCHIP_IOMUX
 | |
| 	tristate "Rockchip IOMUX ioctl support"
 | |
| 	depends on PINCTRL_ROCKCHIP
 | |
| 	help
 | |
| 	  This is the debug option for rockchip pinctrl driver by add a device
 | |
| 	  /dev/iomux to set or get iomux.
 | |
| 
 | |
| 	  If unsure, say N.
 | |
| 
 | |
| config ROCKCHIP_IPA
 | |
| 	tristate "Rockchip IPA support"
 | |
| 	depends on THERMAL && OF
 | |
| 	help
 | |
| 	  Say y here to enable rockchip IPA.
 | |
| 	  Add a simple power model for ipa to calculate static power and
 | |
| 	  dynamic power.
 | |
| 
 | |
| 	  If unsure, say N.
 | |
| 
 | |
| config ROCKCHIP_OPP
 | |
| 	tristate "Rockchip OPP select support"
 | |
| 	depends on PM_DEVFREQ
 | |
| 	help
 | |
| 	  Say y here to enable rockchip OPP support.
 | |
| 
 | |
| config ROCKCHIP_OPTIMIZE_RT_PRIO
 | |
| 	bool "Rockchip optimize prio for kernel RT thread and kworker"
 | |
| 	depends on NO_GKI
 | |
| 	help
 | |
| 	  In some cases, there are too much userspace high priority RT threads, which
 | |
| 	  cause kernel RT threads or kworkers block too long time. This config separate
 | |
| 	  kernel and userspace RT threads into two priority regions, priority 0~49 for
 | |
| 	  kernel and priority 50~99 for userspace, so that kernel RT threads is always
 | |
| 	  higher priority than userspace. This config also set RT policy for kworkers.
 | |
| 
 | |
| config ROCKCHIP_PERFORMANCE
 | |
| 	bool "Rockchip performance configuration support"
 | |
| 	depends on NO_GKI
 | |
| 	help
 | |
| 	  This config aims to support different requests between power consumption
 | |
| 	  and performance.
 | |
| 
 | |
| config ROCKCHIP_PERFORMANCE_LEVEL
 | |
| 	int "Rockchip performance default level"
 | |
| 	depends on ROCKCHIP_PERFORMANCE
 | |
| 	range 0 2
 | |
| 	default 1
 | |
| 	help
 | |
| 	  Select default performance level:
 | |
| 
 | |
| 	  0 for low-performance (powersave),
 | |
| 	  1 for normal performance,
 | |
| 	  2 for high-performance.
 | |
| 
 | |
| 	  This can also be changed at runtime (via the level module parameter).
 | |
| 
 | |
| config ROCKCHIP_PM_DOMAINS
 | |
| 	tristate "Rockchip generic power domain"
 | |
| 	depends on PM
 | |
| 	select PM_GENERIC_DOMAINS
 | |
| 	help
 | |
| 	  Say y here to enable power domain support.
 | |
| 	  In order to meet high performance and low power requirements, a power
 | |
| 	  management unit is designed or saving power when RK3288 in low power
 | |
| 	  mode. The RK3288 PMU is dedicated for managing the power of the whole chip.
 | |
| 
 | |
| 	  If unsure, say N.
 | |
| 
 | |
| config ROCKCHIP_DTPM
 | |
| 	tristate "Rockchip DTPM hierarchy"
 | |
| 	depends on DTPM && m
 | |
| 	help
 | |
| 	  Describe the hierarchy for the Dynamic Thermal Power Management tree
 | |
| 	  on this platform. That will create all the power capping capable
 | |
| 	  devices.
 | |
| 
 | |
| config ROCKCHIP_PVTM
 | |
| 	tristate "Rockchip PVTM support"
 | |
| 	help
 | |
| 	  Say y here to enable pvtm support.
 | |
| 	  The Process-Voltage-Temperature Monitor (PVTM) is used to monitor
 | |
| 	  the chip performance variance caused by chip process, voltage and
 | |
| 	  temperature.
 | |
| 
 | |
| config ROCKCHIP_RAMDISK
 | |
| 	bool "Rockchip RAM disk support"
 | |
| 	help
 | |
| 	  Saying Y here will allow you to use reserved RAM memory as a block
 | |
| 	  device.
 | |
| 
 | |
| config ROCKCHIP_LITE_ULTRA_SUSPEND
 | |
| 	bool "Enable lite/ultra suspend"
 | |
| 	depends on SUSPEND && NO_GKI
 | |
| 	help
 | |
| 	  Add mem_sleep_states options lite/ultra for RK ebook project
 | |
| 
 | |
| config ROCKCHIP_SUSPEND_MODE
 | |
| 	tristate "Rockchip suspend mode config"
 | |
| 	depends on SUSPEND
 | |
| 	help
 | |
| 	  Say Y here if you want to set the suspend mode to the ATF.
 | |
| 
 | |
| config ROCKCHIP_SYSTEM_MONITOR
 | |
| 	tristate "Rockchip system monitor support"
 | |
| 	help
 | |
| 	  Say y here to enable rockchip system monitor support.
 | |
| 
 | |
| config HAS_EARLYSUSPEND
 | |
| 	bool
 | |
| 
 | |
| config ROCKCHIP_EARLYSUSPEND
 | |
| 	bool "Rockchip early suspend"
 | |
| 	select HAS_EARLYSUSPEND
 | |
| 	depends on !EARLYSUSPEND
 | |
| 	depends on !FB_NOTIFY
 | |
| 	depends on ROCKCHIP_SYSTEM_MONITOR
 | |
| 	help
 | |
| 	  Call early suspend handlers when the user requested sleep state
 | |
| 	  changes.
 | |
| 
 | |
| config ROCKCHIP_VENDOR_STORAGE
 | |
| 	tristate "Rockchip vendor storage support"
 | |
| 	help
 | |
| 	  Say y here to enable rockchip vendor storage support.
 | |
| 
 | |
| config ROCKCHIP_MMC_VENDOR_STORAGE
 | |
| 	tristate "Rockchip mmc vendor storage support"
 | |
| 	depends on ROCKCHIP_VENDOR_STORAGE && MMC
 | |
| 	help
 | |
| 	  Say y here to enable rockchip mmc vendor storage support.
 | |
| 
 | |
| config ROCKCHIP_FLASH_VENDOR_STORAGE
 | |
| 	tristate "Rockchip flash vendor storage support"
 | |
| 	depends on ROCKCHIP_VENDOR_STORAGE && RK_FLASH
 | |
| 	help
 | |
| 	  Say y here to enable rockchip flash vendor storage support.
 | |
| 
 | |
| config ROCKCHIP_MTD_VENDOR_STORAGE
 | |
| 	tristate "Rockchip mtd vendor storage support"
 | |
| 	depends on ROCKCHIP_VENDOR_STORAGE && MTD
 | |
| 	help
 | |
| 	  Say y here to enable rockchip mtd vendor storage support.
 | |
| 
 | |
| config ROCKCHIP_RAM_VENDOR_STORAGE
 | |
| 	tristate "Rockchip ram vendor storage support"
 | |
| 	depends on ROCKCHIP_VENDOR_STORAGE
 | |
| 	help
 | |
| 	  Say y here to enable rockchip ram vendor storage support.
 | |
| 
 | |
| config ROCKCHIP_VENDOR_STORAGE_UPDATE_LOADER
 | |
| 	bool "Rockchip vendor storage update loader support"
 | |
| 	default n
 | |
| 	help
 | |
| 	  Say y here to enable rockchip vendor storage update loader support.
 | |
| 	  The /dev/vendor_storage must set root user access only.
 | |
| 
 | |
| menu "FIQ Debugger"
 | |
| source "drivers/soc/rockchip/fiq_debugger/Kconfig"
 | |
| endmenu
 | |
| 
 | |
| config ROCKCHIP_DEBUG
 | |
| 	tristate "Rockchip DEBUG"
 | |
| 	help
 | |
| 	  Print dbgpcsr for every cpu when panic.
 | |
| 
 | |
| config ROCKCHIP_MINI_KERNEL
 | |
| 	bool "Rockchip Mini Kernel support"
 | |
| 	select NO_GKI
 | |
| 	default y if CPU_RV1103B || CPU_RV1106 || CPU_RV1126
 | |
| 	help
 | |
| 	  Say y here to enable Rockchip mini kernel support.
 | |
| 	  This option make the kernel size smaller.
 | |
| 
 | |
| if ROCKCHIP_MINI_KERNEL
 | |
| 
 | |
| config ROCKCHIP_KMALLOC_NO_USE_ARCH_DMA_MINALIGN
 | |
| 	bool "Rockchip kmalloc no use ARCH_DMA_MINALIGN"
 | |
| 	default y if CPU_RV1103B || CPU_RV1106 || CPU_RV1126
 | |
| 	help
 | |
| 	  Say y here to make ARCH_KMALLOC_MINALIGN != ARCH_DMA_MINALIGN
 | |
| 	  This option can save kmalloc memory but break drivers which
 | |
| 	  assume kmalloc returned memory is aligned for DMA.
 | |
| 	  If unsure, say N.
 | |
| 
 | |
| endif
 | |
| 
 | |
| config ROCKCHIP_THUNDER_BOOT
 | |
| 	bool "Rockchip Thunder Boot support"
 | |
| 	default n
 | |
| 	depends on NO_GKI
 | |
| 	select ROCKCHIP_THUNDER_BOOT_DEFER_FREE_MEMBLOCK if SMP
 | |
| 	help
 | |
| 	  Say y here to enable Rockchip thunder boot support.
 | |
| 	  This option make the kernel boot faster.
 | |
| 
 | |
| config ROCKCHIP_THUNDER_BOOT_DEFER_FREE_MEMBLOCK
 | |
| 	bool "Defer free large memblock to Buddy allocator"
 | |
| 	depends on ROCKCHIP_THUNDER_BOOT
 | |
| 	depends on SMP
 | |
| 	depends on NO_GKI
 | |
| 	help
 | |
| 	  The physical memory of a system is divided into several types, like
 | |
| 	  memory reserved for device, for kernel pagetable, etc. The remaining
 | |
| 	  area is for Buddy allocator. Normally, The memory for Buddy is consist
 | |
| 	  of different size blocks, so, under meeting the memory request of kernel
 | |
| 	  booting, we can defer free the large block size to Buddy which can be
 | |
| 	  done later in work queue in parallel to other kernel threads, and the
 | |
| 	  size of the large block can be defined in kernel command line
 | |
| 	  by "defer_free_block_size" boot parameter.
 | |
| 
 | |
| config ROCKCHIP_THUNDER_BOOT_MMC
 | |
| 	bool "Rockchip Thunder Boot from MMC"
 | |
| 	depends on ROCKCHIP_THUNDER_BOOT
 | |
| 	help
 | |
| 	  Say y if boot from MMC.
 | |
| 
 | |
| config ROCKCHIP_THUNDER_BOOT_SFC
 | |
| 	bool "Rockchip Thunder Boot from SFC"
 | |
| 	depends on ROCKCHIP_THUNDER_BOOT
 | |
| 	help
 | |
| 	  Say y if boot from SPI Flash from SFC controller.
 | |
| 
 | |
| config ROCKCHIP_THUNDER_BOOT_SERVICE
 | |
| 	bool "Rockchip Thunder Boot Service"
 | |
| 	depends on ROCKCHIP_THUNDER_BOOT
 | |
| 	depends on MAILBOX
 | |
| 	help
 | |
| 	  Say y if MCU need to notify AP.
 | |
| 
 | |
| config ROCKCHIP_NPOR_POWERGOOD
 | |
| 	bool "Rockchip NPOR Powergood"
 | |
| 	help
 | |
| 	  Say y if SOC integrate ROCKCHIP NPOR Powergood.
 | |
| 
 | |
| #
 | |
| # Rockchip Procfs drivers
 | |
| #
 | |
| 
 | |
| config RK_CMA_PROCFS
 | |
| 	tristate "CMA procfs interface"
 | |
| 	depends on CMA && PROC_FS
 | |
| 	help
 | |
| 	  Turns on the ProcFS interface for CMA, shows the bitmap in hex
 | |
| 	  format.
 | |
| 
 | |
| config RK_DMABUF_PROCFS
 | |
| 	tristate "DMABUF procfs support"
 | |
| 	depends on DMA_SHARED_BUFFER
 | |
| 	depends on PROC_FS
 | |
| 	help
 | |
| 	  Turns on this to create a procfs debug interface for dma-buf, support
 | |
| 	  get information from db_list by dma_buf_get_each.
 | |
| 
 | |
| 	  If unsure, say "N".
 | |
| 
 | |
| config RK_MEMBLOCK_PROCFS
 | |
| 	bool "Memblock procfs for reserved memory"
 | |
| 	depends on PROC_FS && ARCH_KEEP_MEMBLOCK
 | |
| 	help
 | |
| 	  Extend memblock procfs to show size of each memblock, and shows the
 | |
| 	  result of total size by KiB format.
 | |
| 
 | |
| source "drivers/soc/rockchip/minidump/Kconfig"
 | |
| 
 | |
| endmenu
 | |
| 
 | |
| endif
 |