summaryrefslogtreecommitdiff
path: root/drivers/staging/android/ion/Kconfig
blob: 073fc4c91d4c0e6acbb65aa84060d79f158ba673 (plain)
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
menuconfig ION
	bool "Ion Memory Manager"
	depends on HAVE_MEMBLOCK
	select GENERIC_ALLOCATOR
	select DMA_SHARED_BUFFER
	---help---
	  Chose this option to enable the ION Memory Manager,
	  used by Android to efficiently allocate buffers
	  from userspace that can be shared between drivers.
	  If you're not using Android its probably safe to
	  say N here.

config ION_TEST
	tristate "Ion Test Device"
	depends on ION
	help
	  Choose this option to create a device that can be used to test the
	  kernel and device side ION functions.

config ION_DUMMY
	bool "Dummy Ion driver"
	depends on ION
	help
	  Provides a dummy ION driver that registers the
	  /dev/ion device and some basic heaps. This can
	  be used for testing the ION infrastructure if
	  one doesn't have access to hardware drivers that
	  use ION.

config ION_TEGRA
	tristate "Ion for Tegra"
	depends on ARCH_TEGRA && ION
	help
	  Choose this option if you wish to use ion on an nVidia Tegra.

config ION_JUNO
	bool "Ion for Juno board"
	depends on ION
	help
	  ION support for arm juno reference board.

config ION_COMPOUND_PAGE
	bool "Ion compound page system pool"
	depends on ION
	help
	 Enable use of compound pages (default to 2MB) system memory pool.
	 Backs a buffer with large and aligned pages where possible,
	 to ease TLB pressure and lessen memory fragmentation.

config ION_COMPOUND_PAGE_SIZE
	int "Compound page size, shift amount (9 => 2MB, 10 => 4MB)"
	depends on ION_COMPOUND_PAGE
	range 1 20
	default 9
	help
	 Size of the compound pages to use, when possible.
	 Typically this is set to match the size needed by IOMMUs on the system.
	 The number is the page shift amount, so 1 means shift by one,
	 aka 2 times the page size.

config ION_COMPOUND_PAGE_LOWMARK
	int "Compound page lowmark"
	depends on ION_COMPOUND_PAGE
	range 2 256
	default 16
	help
	 Memory refill will be triggered if the number of pages in the free pool goes below this

config ION_COMPOUND_PAGE_FILLMARK
	int "Compound page fillmark"
	depends on ION_COMPOUND_PAGE
	range 2 512
	default 32
	help
	 Amount of pages memory refill will target

config ION_COMPOUND_PAGE_HIGHMARK
	int "Compound page highmark"
	depends on ION_COMPOUND_PAGE
	range 2 1024
	default 128
	help
	 Maximum number of pages to keep in the free pool

config ION_COMPOUND_PAGE_STATS
	bool "Collect statistics for the compound page pool"
	depends on ION_COMPOUND_PAGE && DEBUG_FS
	help
	 Collect extra usage statistics for the compound page pool.
	 Available via ion's debugfs entry for the pool.