Merge tag 'block-5.11-2021-01-10' of git://git.kernel.dk/linux-block
[linux/fpc-iii.git] / drivers / of / Kconfig
blob18450437d5d5ae8265291a4685d5b269a1985214
1 # SPDX-License-Identifier: GPL-2.0
2 config DTC
3         bool
5 menuconfig 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.
13 if OF
15 config OF_UNITTEST
16         bool "Device Tree runtime unit tests"
17         depends on !SPARC
18         select IRQ_DOMAIN
19         select OF_EARLY_FLATTREE
20         select OF_RESOLVE
21         help
22           This option builds in test cases for the device tree infrastructure
23           that are executed once at boot time, and the results dumped to the
24           console.
26           If unsure, say N here, but this option is safe to enable.
28 config OF_ALL_DTBS
29         bool "Build all Device Tree Blobs"
30         depends on COMPILE_TEST
31         select DTC
32         help
33           This option builds all possible Device Tree Blobs (DTBs) for the
34           current architecture.
36           If unsure, say N here, but this option is safe to enable.
38 config OF_FLATTREE
39         bool
40         select DTC
41         select LIBFDT
42         select CRC32
44 config OF_EARLY_FLATTREE
45         bool
46         select DMA_DECLARE_COHERENT if HAS_DMA
47         select OF_FLATTREE
49 config OF_PROMTREE
50         bool
52 config OF_KOBJ
53         def_bool SYSFS
55 # Hardly any platforms need this.  It is safe to select, but only do so if you
56 # need it.
57 config OF_DYNAMIC
58         bool "Support for dynamic device trees" if OF_UNITTEST
59         select OF_KOBJ
60         help
61           On some platforms, the device tree can be manipulated at runtime.
62           While this option is selected automatically on such platforms, you
63           can enable it manually to improve device tree unit test coverage.
65 config OF_ADDRESS
66         def_bool y
67         depends on !SPARC && (HAS_IOMEM || UML)
69 config OF_IRQ
70         def_bool y
71         depends on !SPARC && IRQ_DOMAIN
73 config OF_NET
74         depends on NETDEVICES
75         def_bool y
77 config OF_RESERVED_MEM
78         bool
79         depends on OF_EARLY_FLATTREE
80         default y if DMA_DECLARE_COHERENT || DMA_CMA
82 config OF_RESOLVE
83         bool
85 config OF_OVERLAY
86         bool "Device Tree overlays"
87         select OF_DYNAMIC
88         select OF_FLATTREE
89         select OF_RESOLVE
90         help
91           Overlays are a method to dynamically modify part of the kernel's
92           device tree with dynamically loaded data.
93           While this option is selected automatically when needed, you can
94           enable it manually to improve device tree unit test coverage.
96 config OF_NUMA
97         bool
99 config OF_DMA_DEFAULT_COHERENT
100         # arches should select this if DMA is coherent by default for OF devices
101         bool
103 endif # OF