blob: 64cbc304c0968aa3082b766f3e6704b0f14f9c38 [file] [log] [blame]
Bryan Huntsman3f2bc4d2011-08-16 17:27:22 -07001config MSM_KGSL
2 tristate "MSM 3D Graphics driver"
3 default n
4 depends on ARCH_MSM && !ARCH_MSM7X00A && !ARCH_MSM7X25
5 select GENERIC_ALLOCATOR
6 select FW_LOADER
7 ---help---
8 3D graphics driver. Required to use hardware accelerated
9 OpenGL ES 2.0 and 1.1.
10
11config MSM_KGSL_CFF_DUMP
12 bool "Enable KGSL Common File Format (CFF) Dump Feature [Use with caution]"
13 default n
14 depends on MSM_KGSL
15 select RELAY
16 ---help---
17 This is an analysis and diagnostic feature only, and should only be
18 turned on during KGSL GPU diagnostics and will slow down the KGSL
19 performance sigificantly, hence *do not use in production builds*.
20 When enabled, CFF Dump is on at boot. It can be turned off at runtime
21 via 'echo 0 > /d/kgsl/cff_dump'. The log can be captured via
22 /d/kgsl-cff/cpu[0|1].
23
24config MSM_KGSL_CFF_DUMP_NO_CONTEXT_MEM_DUMP
25 bool "When selected will disable KGSL CFF Dump for context switches"
26 default n
27 depends on MSM_KGSL_CFF_DUMP
28 ---help---
29 Dumping all the memory for every context switch can produce quite
30 huge log files, to reduce this, turn this feature on.
31
32config MSM_KGSL_PSTMRTMDMP_CP_STAT_NO_DETAIL
33 bool "Disable human readable CP_STAT fields in post-mortem dump"
34 default n
35 depends on MSM_KGSL
36 ---help---
37 For a more compact kernel log the human readable output of
38 CP_STAT can be turned off with this option.
39
40config MSM_KGSL_PSTMRTMDMP_NO_IB_DUMP
41 bool "Disable dumping current IB1 and IB2 in post-mortem dump"
42 default n
43 depends on MSM_KGSL
44 ---help---
45 For a more compact kernel log the IB1 and IB2 embedded dump
46 can be turned off with this option. Some IB dumps take up
47 so much space that vital other information gets cut from the
48 post-mortem dump.
49
50config MSM_KGSL_PSTMRTMDMP_RB_HEX
51 bool "Use hex version for ring-buffer in post-mortem dump"
52 default n
53 depends on MSM_KGSL
54 ---help---
55 Use hex version for the ring-buffer in the post-mortem dump, instead
56 of the human readable version.
57
58config MSM_KGSL_2D
59 tristate "MSM 2D graphics driver. Required for OpenVG"
60 default y
61 depends on MSM_KGSL && !ARCH_MSM7X27 && !ARCH_MSM7X27A && !(ARCH_QSD8X50 && !MSM_SOC_REV_A)
62
63config MSM_KGSL_DRM
64 bool "Build a DRM interface for the MSM_KGSL driver"
65 depends on MSM_KGSL && DRM
66
67config MSM_KGSL_MMU
68 bool "Enable the GPU MMU in the MSM_KGSL driver"
69 depends on MSM_KGSL && MMU && !MSM_KGSL_CFF_DUMP
70 default y
71
72config KGSL_PER_PROCESS_PAGE_TABLE
73 bool "Enable Per Process page tables for the KGSL driver"
74 default n
75 depends on MSM_KGSL_MMU && !MSM_KGSL_DRM
76 ---help---
77 The MMU will use per process pagetables when enabled.
78
79config MSM_KGSL_PAGE_TABLE_SIZE
80 hex "Size of pagetables"
81 default 0xFFF0000
82 depends on MSM_KGSL_MMU
83 ---help---
84 Sets the pagetable size used by the MMU. The max value
85 is 0xFFF0000 or (256M - 64K).
86
87config MSM_KGSL_PAGE_TABLE_COUNT
88 int "Minimum of concurrent pagetables to support"
89 default 8
90 depends on KGSL_PER_PROCESS_PAGE_TABLE
91 ---help---
92 Specify the number of pagetables to allocate at init time
93 This is the number of concurrent processes that are guaranteed to
94 to run at any time. Additional processes can be created dynamically
95 assuming there is enough contiguous memory to allocate the pagetable.
96
97config MSM_KGSL_MMU_PAGE_FAULT
98 bool "Force the GPU MMU to page fault for unmapped regions"
99 default y
100 depends on MSM_KGSL_MMU
101
102config MSM_KGSL_DISABLE_SHADOW_WRITES
103 bool "Disable register shadow writes for context switches"
104 default n
105 depends on MSM_KGSL