Merge tag 'kbuild-fixes-v6.8-2' of git://git.kernel.org/pub/scm/linux/kernel/git...
[linux-2.6-block.git] / drivers / of / Kconfig
CommitLineData
af6074fc 1# SPDX-License-Identifier: GPL-2.0
5ab5fc7e
GL
2config DTC
3 bool
4
0166dc11
RH
5menuconfig OF
6 bool "Device Tree and Open Firmware support"
7 help
8 This option enables the device tree infrastructure.
9 It is automatically selected by platforms that need it or can
10 be enabled manually for unittests, overlays or
11 compile-coverage.
bcbefae2 12
0166dc11 13if OF
5ab5fc7e 14
19fd7487
GL
15config OF_UNITTEST
16 bool "Device Tree runtime unit tests"
6019a3d0
RH
17 depends on !SPARC
18 select IRQ_DOMAIN
649e0a77 19 select OF_EARLY_FLATTREE
2eb46da2 20 select OF_RESOLVE
53a42093
GL
21 help
22 This option builds in test cases for the device tree infrastructure
5d927086 23 that are executed once at boot time, and the results dumped to the
53a42093
GL
24 console.
25
f381b31a
FR
26 This option should only be enabled for a development kernel. The tests
27 will taint the kernel with TAINT_TEST. The tests will cause ERROR and
28 WARNING messages to print on the console. The tests will cause stack
29 traces to print on the console. It is possible that the tests will
30 leave the devicetree in a corrupted state.
31
32 The unittest output will be verbose. Copy the output to a file
33 via capturing the console output or via the dmesg command. Process
34 this file with scripts/dtc/of_unittest_expect to reduce the
35 verbosity, test whether expected output is present, and to
36 summarize the results.
37
38 If unsure, say N here. This option is not safe to enable.
53a42093 39
1b7c501b
RH
40config OF_ALL_DTBS
41 bool "Build all Device Tree Blobs"
42 depends on COMPILE_TEST
43 select DTC
44 help
45 This option builds all possible Device Tree Blobs (DTBs) for the
46 current architecture.
47
48 If unsure, say N here, but this option is safe to enable.
49
e169cfbe
GL
50config OF_FLATTREE
51 bool
5ab5fc7e 52 select DTC
e6a6928c 53 select LIBFDT
08d53aa5 54 select CRC32
e169cfbe 55
e6ce1324
SN
56config OF_EARLY_FLATTREE
57 bool
7e08baf6 58 select DMA_DECLARE_COHERENT if HAS_DMA && HAS_IOMEM
e6ce1324
SN
59 select OF_FLATTREE
60
3cfc535c
AS
61config OF_PROMTREE
62 bool
63
b56b5528
RH
64config OF_KOBJ
65 def_bool SYSFS
66
0f22dd39
GL
67# Hardly any platforms need this. It is safe to select, but only do so if you
68# need it.
fcdeb7fe 69config OF_DYNAMIC
121c92ca 70 bool "Support for dynamic device trees" if OF_UNITTEST
b56b5528 71 select OF_KOBJ
121c92ca
GU
72 help
73 On some platforms, the device tree can be manipulated at runtime.
74 While this option is selected automatically on such platforms, you
75 can enable it manually to improve device tree unit test coverage.
fcdeb7fe 76
6b884a8d
GL
77config OF_ADDRESS
78 def_bool y
6019a3d0 79 depends on !SPARC && (HAS_IOMEM || UML)
6b884a8d 80
e3873444
GL
81config OF_IRQ
82 def_bool y
63c60e3a 83 depends on !SPARC && IRQ_DOMAIN
e3873444 84
3f0c8206 85config OF_RESERVED_MEM
1ee292a6 86 def_bool OF_EARLY_FLATTREE
3f0c8206 87
7941b27b
PA
88config OF_RESOLVE
89 bool
90
7518b589 91config OF_OVERLAY
5c776064 92 bool "Device Tree overlays"
7518b589 93 select OF_DYNAMIC
39a751a4 94 select OF_FLATTREE
7518b589 95 select OF_RESOLVE
121c92ca
GU
96 help
97 Overlays are a method to dynamically modify part of the kernel's
98 device tree with dynamically loaded data.
99 While this option is selected automatically when needed, you can
100 enable it manually to improve device tree unit test coverage.
7518b589 101
298535c0
DD
102config OF_NUMA
103 bool
104
0166dc11 105endif # OF