1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
|
if ARCH_TEGRA
comment "NVIDIA Tegra Display Driver options"
config TEGRA_GRHOST
tristate "Tegra graphics host driver"
help
Driver for the Tegra graphics host hardware.
config TEGRA_GRHOST_USE_NVMAP
bool "Use nvmap as graphics memory manager"
default y
help
Use nvmap as the graphics memory manager. This is the only
choice at the moment.
config TEGRA_GRHOST_DEFAULT_TIMEOUT
depends on TEGRA_GRHOST
int "Default timeout for submits"
default 0 if TEGRA_SIMULATION_PLATFORM
default 30000
help
Default timeout for jobs in milliseconds. Set to zero for no timeout.
config TEGRA_DC
tristate "Tegra Display Contoller"
depends on ARCH_TEGRA && TEGRA_GRHOST
select FB_MODE_HELPERS
select I2C
help
Tegra display controller support.
config FB_TEGRA
tristate "Tegra Framebuffer driver"
depends on TEGRA_DC && FB = y
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
default FB
help
Framebuffer device support for the Tegra display controller.
config TEGRA_DC_EXTENSIONS
bool "Tegra Display Controller Extensions"
depends on TEGRA_DC
default y
help
This exposes support for extended capabilities of the Tegra display
controller to userspace drivers.
config TEGRA_NVMAP
bool "Tegra GPU memory management driver (nvmap)"
select ARM_DMA_USE_IOMMU if IOMMU_API
default y
help
Say Y here to include the memory management driver for the Tegra
GPU, multimedia and display subsystems
config NVMAP_RECLAIM_UNPINNED_VM
bool "Virtualize IOVMM memory in nvmap"
depends on TEGRA_NVMAP && (TEGRA_IOVMM || IOMMU_API)
default y
help
Say Y here to enable nvmap to reclaim I/O virtual memory after
it has been unpinned, and re-use it for other handles. This can
allow a larger virtual I/O VM space than would normally be
supported by the hardware, at a slight cost in performance.
config NVMAP_ALLOW_SYSMEM
bool "Allow physical system memory to be used by nvmap"
depends on TEGRA_NVMAP
default n
help
Say Y here to allow nvmap to use physical system memory (i.e.,
shared with the operating system but not translated through
an IOVMM device) for allocations.
config NVMAP_HIGHMEM_ONLY
bool "Use only HIGHMEM for nvmap"
depends on TEGRA_NVMAP && (NVMAP_ALLOW_SYSMEM || TEGRA_IOVMM || IOMMU_API) && HIGHMEM
default n
help
Say Y here to restrict nvmap system memory allocations (both
physical system memory and IOVMM) to just HIGHMEM pages.
config NVMAP_CARVEOUT_KILLER
bool "Reclaim nvmap carveout by killing processes"
depends on TEGRA_NVMAP
default n
help
Say Y here to allow the system to reclaim carveout space by killing
processes. This will kill the largest consumers of lowest priority
first.
config NVMAP_CARVEOUT_COMPACTOR
bool "Compact carveout when it gets fragmented"
depends on TEGRA_NVMAP
default y
help
When carveout allocation attempt fails, compactor defragements
heap and retries the failed allocation.
Say Y here to let nvmap to keep carveout fragmentation under control.
config NVMAP_PAGE_POOLS
bool "Use page pools to reduce allocation overhead"
depends on TEGRA_NVMAP
default y
help
say Y here to reduce the alloction overhead, which is significant
for uncached, writecombine and inner cacheable memories as it
involves changing page attributes during every allocation per page
and flushing cache. Alloc time is reduced by allcoating the pages
ahead and keeping them aside. The reserved pages would be released
when system is low on memory and acquired back during release of
memory.
config NVMAP_PAGE_POOL_SIZE
hex
default 0x0
config NVMAP_CACHE_MAINT_BY_SET_WAYS
bool "Enable cache maintenance by set/ways"
depends on TEGRA_NVMAP
help
Say Y here to reduce cache maintenance overhead by MVA.
This helps in reducing cache maintenance overhead in the systems,
where inner cache includes only L1. For the systems, where inner cache
includes L1 and L2, keep this option disabled.
config NVMAP_OUTER_CACHE_MAINT_BY_SET_WAYS
bool "Enable outer cache maintenance by set/ways"
depends on TEGRA_NVMAP
help
Say Y here if you want to optimize cache maintenance for ranges
bigger than size of outer cache. This option has no effect on
system without outer cache.
config NVMAP_VPR
bool "Enable VPR Heap."
depends on TEGRA_NVMAP
default n
help
Say Y here to enable Video Protection Region(VPR) heap.
if unsure, say N.
config NVMAP_FORCE_ZEROED_USER_PAGES
bool "Only alloc zeroed pages for user space"
depends on TEGRA_NVMAP
help
Say Y here to force zeroing of pages allocated for user space. This
avoids leaking kernel secure data to user space. This can add
significant overhead to allocation operations depending on the
allocation size requested.
config TEGRA_DSI
bool "Enable DSI panel."
default n
help
Say Y here to enable the DSI panel.
config NVMAP_CONVERT_CARVEOUT_TO_IOVMM
bool "Convert carveout to IOVMM"
depends on TEGRA_NVMAP && (TEGRA_IOVMM_SMMU || IOMMU_API)
default y
help
Say Y here to force to convert carveout memory requests to
I/O virtual memory requests.
config TEGRA_NVHDCP
bool "Support NVHDCP content protection on HDMI"
default n
help
Say Y here to support NVHDCP upstream and downstream protocols, this
requires a correctly fused chip to negotiate keys.
config TEGRA_HDMI_74MHZ_LIMIT
bool "Support only up to 74.25 MHz HDMI pixel frequency"
default n
help
Say Y here to make kernel report only low bandwidth modes.
Useful only for boards which can't deliver 148.50 MHz.
endif
|