mirror of
git://nv-tegra.nvidia.com/linux-nvgpu.git
synced 2025-12-23 01:50:07 +03:00
Add the following changes to build dgpu sources for kernels after 4.14: 1. tegra_alloc_fd is defined by downstream tegra mc driver built with the flag CONFIG_NV_TEGRA_MC, hence make the nvgpu config NVGPU_USE_TEGRA_ALLOC_FD dependent on it. 2. dma_buf_ops.map_atomic is removed in kernel version 4.17. 3. gk20a_vidbuf_ops.set_drvdata and .get_drvdata are to be set under the config CONFIG_NVGPU_DMABUF_HAS_DRVDATA Bug 2834141 Change-Id: If2351beddfd6f22a1a1da4499cacf6a1880ede76 Signed-off-by: Sagar Kamble <skamble@nvidia.com> Reviewed-on: https://git-master.nvidia.com/r/c/linux-nvgpu/+/2316486 Reviewed-by: automaticguardword <automaticguardword@nvidia.com> Reviewed-by: Deepak Nibade <dnibade@nvidia.com> Reviewed-by: Alex Waterman <alexw@nvidia.com> Reviewed-by: mobile promotions <svcmobile_promotions@nvidia.com> GVS: Gerrit_Virtual_Submit Tested-by: mobile promotions <svcmobile_promotions@nvidia.com>
236 lines
5.6 KiB
Plaintext
236 lines
5.6 KiB
Plaintext
config GK20A
|
|
tristate "Nvidia GK20A GPU support"
|
|
default n
|
|
help
|
|
Choose this option if you have an SoC with integrated
|
|
Nvidia GPU IP.
|
|
|
|
config GK20A_PMU
|
|
bool "Support GK20A PMU"
|
|
depends on GK20A
|
|
default n
|
|
help
|
|
Say Y here to enable GK20A PMU features.
|
|
|
|
choice
|
|
depends on GK20A
|
|
prompt "Enable GK20A frequency scaling"
|
|
default GK20A_DEVFREQ
|
|
optional
|
|
help
|
|
Select this entry to enable gk20a scaling
|
|
|
|
config GK20A_DEVFREQ
|
|
depends on COMMON_CLK && PM_DEVFREQ
|
|
bool "Use Devfreq"
|
|
help
|
|
Select this to use devfreq based scaling.
|
|
Devfreq is a common framework that allows using
|
|
variety of different governors and changing
|
|
between governors on the fly. By default, no
|
|
governor is selected.
|
|
|
|
endchoice
|
|
|
|
config GK20A_PM_QOS
|
|
depends on GK20A_DEVFREQ
|
|
bool "Use PM_QOS constraints for devfreq based scaling"
|
|
default y
|
|
help
|
|
Enable support to pass PM_QOS constraints to devfreq based
|
|
scaling.
|
|
|
|
config NVGPU_TRACK_MEM_USAGE
|
|
bool "Track the usage of system memory in nvgpu"
|
|
depends on GK20A
|
|
default n
|
|
help
|
|
Say Y here to allow nvgpu to track and keep statistics on
|
|
the system memory used by the driver. This does recreate
|
|
some of the kmem_leak tracking but this is also applicable
|
|
to other OSes which do not have Linux' kmem_leak.
|
|
|
|
|
|
config NVGPU_CYCLESTATS
|
|
bool "Support GPU CYCLE STATS"
|
|
depends on GK20A
|
|
default y
|
|
help
|
|
Say Y here to enable the cycle stats debugging features.
|
|
|
|
config NVGPU_FECS_TRACE
|
|
bool "Support NVGPU FECS Context Switch tracing"
|
|
depends on GK20A
|
|
default y
|
|
help
|
|
Enable support for the NVGPU Context Switch Tracing. In this mode,
|
|
FECS collects timestamps for contexts loaded on GR engine. This
|
|
allows tracking context switches on GR engine, as well as
|
|
identifying processes that submitted work.
|
|
|
|
config TEGRA_GK20A_NVHOST
|
|
bool "Support interfacing with nvhost hardware"
|
|
depends on TEGRA_GRHOST || TEGRA_HOST1X
|
|
depends on GK20A
|
|
default y
|
|
help
|
|
Enable support in GK20A for the nvhost (host1x) dma engine hardware
|
|
that includes things like hardware syncpts. This requires either
|
|
TEGRA_GRHOST or TEGRA_HOST1X.
|
|
|
|
config TEGRA_GK20A
|
|
bool "Enable the GK20A GPU on Tegra"
|
|
depends on GK20A
|
|
default y
|
|
help
|
|
Enable support for the GK20A graphics engine on Tegra
|
|
by adding a Tegra platfrom interface to the GK20A driver.
|
|
|
|
config TEGRA_ACR
|
|
bool "Enable HS bin support on GM20B GPU on Tegra"
|
|
depends on GK20A && GK20A_PMU
|
|
default n
|
|
help
|
|
Enable Support for Loading High Secure binary, and using
|
|
Write Protected Regions (WPR) for storing ucodes, and bootstrap
|
|
PMU, FECS and GPCCS in Low Secure mode.
|
|
|
|
config TEGRA_USE_NA_GPCPLL
|
|
bool "Enable noise aware mode of GM20B GPCPLL on Tegra"
|
|
depends on GK20A
|
|
depends on COMMON_CLK
|
|
default n
|
|
help
|
|
Enable noise aware (NA) mode of GM20b GPCPLL. In this mode PLL output
|
|
frequency is automatically adjusted when GM20b voltage is fluctuating
|
|
because of transient PMIC or power distribution tree noise.
|
|
|
|
config GK20A_PCI
|
|
bool "Support PCIe NVIDIA GPUs on nvgpu"
|
|
depends on PCI && GK20A
|
|
default y
|
|
help
|
|
Enable support for GPUs on PCIe bus.
|
|
|
|
config GK20A_TRACE_PRINTK
|
|
bool "Support trace_printk debugging"
|
|
depends on GK20A && TRACING
|
|
default n
|
|
help
|
|
Enable nvgpu debug facility to redirect debug spew to ftrace. This
|
|
affects kernel memory use, so should not be enabled by default.
|
|
|
|
config NVGPU_USE_TEGRA_ALLOC_FD
|
|
bool "Use tegra_alloc_fd() for allocating dma_buf fds for vidmem"
|
|
depends on GK20A
|
|
depends on NV_TEGRA_MC
|
|
default y
|
|
help
|
|
Use tegra_alloc_fd() for allocating dma_buf fds. This allocates
|
|
the fds above 1024 which exempts them from counting against process
|
|
fd limit.
|
|
|
|
It is only available in Tegra kernel.
|
|
|
|
config NVGPU_SUPPORT_TURING
|
|
bool "Turing family GPU"
|
|
depends on GK20A && ARCH_TEGRA_19x_SOC
|
|
default y
|
|
help
|
|
Support for NVIDIA Turing family of GPU
|
|
|
|
config NVGPU_DEBUGGER
|
|
bool "Support debugger APIs"
|
|
depends on GK20A
|
|
default y
|
|
help
|
|
Support for debugger APIs
|
|
|
|
config NVGPU_LS_PMU
|
|
bool "LS PMU support"
|
|
depends on GK20A
|
|
default y
|
|
help
|
|
Support for iGPU LS PMU enable/disable
|
|
|
|
config NVGPU_LOGGING
|
|
bool "NVGPU logging"
|
|
depends on GK20A
|
|
default y
|
|
help
|
|
Enable/Disable NVGPU logging
|
|
|
|
config NVGPU_HAL_NON_FUSA
|
|
bool "Support non-functionally safe HALs"
|
|
depends on GK20A
|
|
default y
|
|
help
|
|
Enable/Disable the support of HALs from chips that do not have functional
|
|
safety certification
|
|
|
|
config NVGPU_RECOVERY
|
|
bool "Recovery support"
|
|
depends on GK20A
|
|
default y
|
|
help
|
|
Support recovery on failure (which may involve engine reset)
|
|
|
|
config NVGPU_NVLINK
|
|
bool "Nvlink support"
|
|
depends on TEGRA_NVLINK
|
|
default y
|
|
help
|
|
Support Nvlink
|
|
|
|
config NVGPU_GR_VIRTUALIZATION
|
|
bool "NVGPU Virtualization Support"
|
|
depends on TEGRA_GR_VIRTUALIZATION
|
|
default y
|
|
help
|
|
Support NVGPU Virtualization
|
|
|
|
config NVGPU_DMABUF_HAS_DRVDATA
|
|
bool "NVGPU DMABUF private driver data support"
|
|
depends on GK20A
|
|
default y
|
|
help
|
|
Support NVGPU DMABUF private driver data needed for compression
|
|
|
|
config NVGPU_COMPRESSION
|
|
bool "Compression support"
|
|
depends on GK20A
|
|
depends on NVGPU_DMABUF_HAS_DRVDATA
|
|
default y
|
|
help
|
|
Support for compression
|
|
|
|
config NVGPU_SUPPORT_CDE
|
|
bool "Support extraction of comptags for CDE"
|
|
depends on GK20A
|
|
depends on NVGPU_COMPRESSION
|
|
default y
|
|
help
|
|
Enable support for extraction of comptags for CDE.
|
|
|
|
config NVGPU_DGPU
|
|
bool "NVGPU DGPU support"
|
|
depends on GK20A
|
|
depends on GK20A_PCI
|
|
default y
|
|
help
|
|
Support for NVGPU DGPU
|
|
|
|
config NVGPU_VPR
|
|
bool "NVGPU VPR support"
|
|
depends on GK20A
|
|
default y
|
|
help
|
|
Support for NVGPU VPR
|
|
|
|
config NVGPU_TEGRA_FUSE
|
|
bool "Tegra fuse Support"
|
|
depends on GK20A
|
|
default y
|
|
help
|
|
Support Tegra fuse
|